[msbuild] Xcode10 changed the copySceneKitAssets command-line arguments (#4469)
Fixes https://github.com/xamarin/xamarin-macios/issues/4467
This commit is contained in:
Родитель
26b500ab27
Коммит
21936948bb
|
@ -599,6 +599,7 @@ Copyright (C) 2014 Xamarin. All rights reserved.
|
|||
IntermediateOutputPath="$(IntermediateOutputPath)"
|
||||
ProjectDir="$(MSBuildProjectDirectory)"
|
||||
ResourcePrefix="$(XamMacResourcePrefix)"
|
||||
SdkPlatform="MacOSX"
|
||||
SdkDevPath="$(_SdkDevPath)"
|
||||
SdkRoot="$(_SdkRoot)"
|
||||
SdkVersion="$(MacOSXSdkVersion)">
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
namespace Xamarin.MacDev.Tasks
|
||||
{
|
||||
public static class PlatformUtils
|
||||
{
|
||||
public static string GetTargetPlatform (string sdkPlatform, bool isWatchApp)
|
||||
{
|
||||
switch (sdkPlatform) {
|
||||
case "iPhoneSimulator":
|
||||
return isWatchApp ? "watchsimulator" : "iphonesimulator";
|
||||
case "iPhoneOS":
|
||||
return isWatchApp ? "watchos" : "iphoneos";
|
||||
case "MacOSX":
|
||||
return "macosx";
|
||||
case "WatchSimulator":
|
||||
return "watchsimulator";
|
||||
case "WatchOS":
|
||||
return "watchos";
|
||||
case "AppleTVSimulator":
|
||||
return "appletvsimulator";
|
||||
case "AppleTVOS":
|
||||
return "appletvos";
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -178,29 +178,10 @@ namespace Xamarin.MacDev.Tasks
|
|||
|
||||
args.Add ("--minimum-deployment-target", minimumDeploymentTarget);
|
||||
|
||||
switch (SdkPlatform) {
|
||||
case "iPhoneSimulator":
|
||||
args.Add ("--platform", IsWatchApp ? "watchsimulator" : "iphonesimulator");
|
||||
break;
|
||||
case "iPhoneOS":
|
||||
args.Add ("--platform", IsWatchApp ? "watchos" : "iphoneos");
|
||||
break;
|
||||
case "MacOSX":
|
||||
args.Add ("--platform", "macosx");
|
||||
break;
|
||||
case "WatchSimulator":
|
||||
args.Add ("--platform", "watchsimulator");
|
||||
break;
|
||||
case "WatchOS":
|
||||
args.Add ("--platform", "watchos");
|
||||
break;
|
||||
case "AppleTVSimulator":
|
||||
args.Add ("--platform", "appletvsimulator");
|
||||
break;
|
||||
case "AppleTVOS":
|
||||
args.Add ("--platform", "appletvos");
|
||||
break;
|
||||
}
|
||||
var platform = PlatformUtils.GetTargetPlatform (SdkPlatform, IsWatchApp);
|
||||
|
||||
if (platform != null)
|
||||
args.Add ("--platform", platform);
|
||||
}
|
||||
|
||||
IEnumerable<ITaskItem> GetCompiledBundleResources (PDictionary output, string intermediateBundleDir)
|
||||
|
|
|
@ -21,6 +21,8 @@ namespace Xamarin.MacDev.Tasks
|
|||
[Required]
|
||||
public string IntermediateOutputPath { get; set; }
|
||||
|
||||
public bool IsWatchApp { get; set; }
|
||||
|
||||
[Required]
|
||||
public string ProjectDir { get; set; }
|
||||
|
||||
|
@ -33,6 +35,9 @@ namespace Xamarin.MacDev.Tasks
|
|||
[Required]
|
||||
public string SdkDevPath { get; set; }
|
||||
|
||||
[Required]
|
||||
public string SdkPlatform { get; set; }
|
||||
|
||||
[Required]
|
||||
public string SdkRoot { get; set; }
|
||||
|
||||
|
@ -106,7 +111,16 @@ namespace Xamarin.MacDev.Tasks
|
|||
args.Add ("-o");
|
||||
args.AddQuoted (Path.GetFullPath (output));
|
||||
args.AddQuotedFormat ("--sdk-root={0}", SdkRoot);
|
||||
args.AddQuotedFormat ("--target-version-{0}={1}", OperatingSystem, SdkVersion);
|
||||
|
||||
if (AppleSdkSettings.XcodeVersion.Major >= 10) {
|
||||
var platform = PlatformUtils.GetTargetPlatform (SdkPlatform, IsWatchApp);
|
||||
if (platform != null)
|
||||
args.Add ("--target-platform", platform);
|
||||
|
||||
args.AddQuotedFormat ("--target-version={0}", SdkVersion);
|
||||
} else {
|
||||
args.AddQuotedFormat ("--target-version-{0}={1}", OperatingSystem, SdkVersion);
|
||||
}
|
||||
args.AddQuotedFormat ("--target-build-dir={0}", Path.GetFullPath (intermediate));
|
||||
|
||||
var startInfo = GetProcessStartInfo (environment, GetFullPathToTool (), args.ToString ());
|
||||
|
|
|
@ -54,6 +54,7 @@
|
|||
<!-- Mono has a different implementation of the Move task, so when building on a Mac we need to include XBuildMoveTaskBase.cs -->
|
||||
<Compile Include="MsBuildTasks\MoveTaskBase.cs" Condition="'$(OS)' == 'Windows_NT'" />
|
||||
<Compile Include="MsBuildTasks\XBuildMoveTaskBase.cs" Condition="'$(OS)' != 'Windows_NT'" />
|
||||
<Compile Include="PlatformUtils.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="MsBuildTasks\CopyBase.cs" />
|
||||
|
|
|
@ -1285,6 +1285,8 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved.
|
|||
IntermediateOutputPath="$(DeviceSpecificIntermediateOutputPath)"
|
||||
ProjectDir="$(MSBuildProjectDirectory)"
|
||||
ResourcePrefix="$(IPhoneResourcePrefix)"
|
||||
IsWatchApp="$(IsWatchApp)"
|
||||
SdkPlatform="$(_SdkPlatform)"
|
||||
SdkDevPath="$(_SdkDevPath)"
|
||||
SdkRoot="$(_SdkRoot)"
|
||||
SdkVersion="$(MtouchSdkVersion)">
|
||||
|
|
Загрузка…
Ссылка в новой задаче