public SingleArchitecture(XCodePlatforms platform, XCodeSDKs sdk, XCodeArchitectures architecture)
            {
                Platform     = platform;
                SimulatorSdk = sdk;
                DeviceSdk    = sdk;

                SimulatorArchitectures = architecture;
                DeviceArchitectures    = architecture;
            }
示例#2
0
 public BuildArchitectureOutput this[XCodeArchitectures arch]
 {
     get
     {
         if (!intermediates.ContainsKey(arch))
         {
             intermediates.Add(arch, new BuildArchitectureOutput(TargetOutput)
             {
                 Architecture = arch
             });
         }
         return(intermediates[arch]);
     }
 }
 public static IEnumerable <XCodeArchitectures> SplitArchitecture(XCodeArchitectures architectures)
 {
     if (architectures.HasFlag(XCodeArchitectures.i386))
     {
         yield return(XCodeArchitectures.i386);
     }
     if (architectures.HasFlag(XCodeArchitectures.x86_64))
     {
         yield return(XCodeArchitectures.x86_64);
     }
     if (architectures.HasFlag(XCodeArchitectures.ARM64))
     {
         yield return(XCodeArchitectures.ARM64);
     }
     if (architectures.HasFlag(XCodeArchitectures.ARMv7))
     {
         yield return(XCodeArchitectures.ARMv7);
     }
     if (architectures.HasFlag(XCodeArchitectures.ARMv7s))
     {
         yield return(XCodeArchitectures.ARMv7s);
     }
 }
 public virtual XCodeSDKs GetSdk(XCodeArchitectures arch)
 {
     return(XCodeArchitectures.Allx86.HasFlag(arch) ? SimulatorSdk : DeviceSdk);
 }
 public string GetArtifactDirectoryName(string configuration, XCodeArchitectures arch)
 {
     return(GetArtifactDirectoryName(configuration, GetSdk(arch)));
 }
示例#6
0
        private XCodeBuildOutputs BuildPodfileXCodeProject(string podfileRoot, string[] targets, XCodeArchitectures architectures, bool framework)
        {
            var parameters = new XCodeBuildParameters
            {
                ArchitectureSettings = XCodeBuildArchitecture,
                ArtifactsDirectory   = CrossPath.CombineSsh(podfileRoot, "build"),
                OutputDirectory      = CrossPath.CombineSsh(podfileRoot, "out"),
                IsFrameworks         = framework,
                ProjectFilePath      = CrossPath.CombineSsh(podfileRoot, "Pods/Pods.xcodeproj"),
                BuildTargets         = new[] { "Pods-MSBuildTask" },
                OutputTargets        = targets,
                ArchitectureOverride = architectures
            };
            var outputs = new XCodeBuildOutputs();

            if (XCodeBuild.BuildXCodeProject(parameters, outputs))
            {
                return(outputs);
            }
            else
            {
                return(null);
            }
        }