示例#1
0
        void EnsureSdkPath()
        {
            var sdkVersion = MacOSXSdkVersion.GetDefault(MacOSXSdks.Native);

            if (!MacOSXSdks.Native.SdkIsInstalled(sdkVersion))
            {
                Log.LogError("The Apple macOS SDK is not installed.");
                return;
            }

            SdkVersion = sdkVersion.ToString();

            SdkRoot = MacOSXSdks.Native.GetSdkPath(sdkVersion);
            if (string.IsNullOrEmpty(SdkRoot))
            {
                Log.LogError("Could not locate the macOS '{0}' SDK at path '{1}'", SdkVersion, SdkRoot);
            }

            SdkUsrPath = DirExists("SDK usr directory", Path.Combine(MacOSXSdks.Native.DeveloperRoot, "usr"));
            if (string.IsNullOrEmpty(SdkUsrPath))
            {
                Log.LogError("Could not locate the macOS '{0}' SDK usr path at '{1}'", SdkVersion, SdkRoot);
            }

            SdkBinPath = DirExists("SDK bin directory", Path.Combine(SdkUsrPath, "bin"));
            if (string.IsNullOrEmpty(SdkBinPath))
            {
                Log.LogError("Could not locate SDK bin directory");
            }
        }
        void EnsureSdkPath()
        {
            var sdkVersion = MacOSXSdkVersion.GetDefault(MacOSXSdks.Native);

            if (!MacOSXSdks.Native.SdkIsInstalled(sdkVersion))
            {
                Log.LogError(MSBStrings.E0083);
                return;
            }

            SdkVersion = sdkVersion.ToString();

            SdkRoot = MacOSXSdks.Native.GetSdkPath(sdkVersion);
            if (string.IsNullOrEmpty(SdkRoot))
            {
                Log.LogError(MSBStrings.E0084, SdkVersion, SdkRoot);
            }

            SdkUsrPath = DirExists("SDK usr directory", Path.Combine(MacOSXSdks.Native.DeveloperRoot, "usr"));
            if (string.IsNullOrEmpty(SdkUsrPath))
            {
                Log.LogError(MSBStrings.E0085, SdkVersion, SdkRoot);
            }

            SdkBinPath = DirExists("SDK bin directory", Path.Combine(SdkUsrPath, "bin"));
            if (string.IsNullOrEmpty(SdkBinPath))
            {
                Log.LogError(MSBStrings.E0032);
            }
        }
        void EnsureSdkPath()
        {
            MacOSXSdkVersion requestedSdkVersion;

            if (string.IsNullOrEmpty(SdkVersion))
            {
                requestedSdkVersion = MacOSXSdkVersion.UseDefault;
            }
            else if (!MacOSXSdkVersion.TryParse(SdkVersion, out requestedSdkVersion))
            {
                Log.LogError("Could not parse the SDK version '{0}'", SdkVersion);
                return;
            }

            var sdkVersion = requestedSdkVersion.ResolveIfDefault(MacOSXSdks.Native);

            if (!MacOSXSdks.Native.SdkIsInstalled(sdkVersion))
            {
                sdkVersion = MacOSXSdks.Native.GetClosestInstalledSdk(sdkVersion);

                if (sdkVersion.IsUseDefault || !MacOSXSdks.Native.SdkIsInstalled(sdkVersion))
                {
                    if (requestedSdkVersion.IsUseDefault)
                    {
                        Log.LogError("The Apple MacOSX SDK is not installed.");
                    }
                    else
                    {
                        Log.LogError("The MacOSX SDK version '{0}' is not installed, and no newer version was found.", requestedSdkVersion.ToString());
                    }
                    return;
                }
                Log.LogWarning("The MacOSX SDK version '{0}' is not installed. Using newer version '{1}' instead'.", requestedSdkVersion, sdkVersion);
            }

            SdkVersion = sdkVersion.ToString();

            SdkRoot = MacOSXSdks.Native.GetSdkPath(sdkVersion);
            if (string.IsNullOrEmpty(SdkRoot))
            {
                Log.LogError("Could not locate the MacOSX '{0}' SDK at path '{1}'", SdkVersion, SdkRoot);
            }

            SdkUsrPath = DirExists("SDK usr directory", Path.Combine(MacOSXSdks.Native.DeveloperRoot, "usr"));
            if (string.IsNullOrEmpty(SdkUsrPath))
            {
                Log.LogError("Could not locate the MacOSX '{0}' SDK usr path at '{1}'", SdkVersion, SdkRoot);
            }

            SdkBinPath = DirExists("SDK bin directory", Path.Combine(SdkUsrPath, "bin"));
            if (string.IsNullOrEmpty(SdkBinPath))
            {
                Log.LogError("Could not locate SDK bin directory");
            }
        }
示例#4
0
 protected override IAppleSdkVersion GetDefaultSdkVersion()
 {
     return(MacOSXSdkVersion.GetDefault(CurrentSdk));
 }