示例#1
0
        // name may be null
        public static PBXCopyFilesBuildPhaseData Create(string name, string subfolderSpec)
        {
            var res = new PBXCopyFilesBuildPhaseData();

            res.guid = PBXGUID.Generate();
            res.SetPropertyString("isa", "PBXCopyFilesBuildPhase");
            res.SetPropertyString("buildActionMask", "2147483647");
            res.SetPropertyString("dstPath", "");
            res.SetPropertyString("dstSubfolderSpec", subfolderSpec);
            res.files = new List <string>();
            res.SetPropertyString("runOnlyForDeploymentPostprocessing", "0");
            res.name = name;
            return(res);
        }
示例#2
0
        public static PBXFileReferenceData CreateFromFile(string path, string projectFileName,
                                                          PBXSourceTree tree)
        {
            string guid = PBXGUID.Generate();

            PBXFileReferenceData fileRef = new PBXFileReferenceData();

            fileRef.SetPropertyString("isa", "PBXFileReference");
            fileRef.guid = guid;
            fileRef.path = path;
            fileRef.name = projectFileName;
            fileRef.tree = tree;
            return(fileRef);
        }
示例#3
0
        public static PBXShellScriptBuildPhaseData Create(string name, string shellPath, string shellScript)
        {
            var res = new PBXShellScriptBuildPhaseData();

            res.guid = PBXGUID.Generate();
            res.SetPropertyString("isa", "PBXShellScriptBuildPhase");
            res.SetPropertyString("buildActionMask", "2147483647");
            res.files = new List <string>();
            res.SetPropertyString("runOnlyForDeploymentPostprocessing", "0");
            res.name        = name;
            res.shellPath   = shellPath;
            res.shellScript = shellScript;
            return(res);
        }
示例#4
0
        public static PBXShellScriptBuildPhaseData Create(string name, string shellPath, string shellScript, List <string> inputPaths)
        {
            PBXShellScriptBuildPhaseData scriptBuildPhaseData = new PBXShellScriptBuildPhaseData();

            scriptBuildPhaseData.guid = PBXGUID.Generate();
            scriptBuildPhaseData.SetPropertyString("isa", "PBXShellScriptBuildPhase");
            scriptBuildPhaseData.SetPropertyString("buildActionMask", "2147483647");
            scriptBuildPhaseData.files = (GUIDList) new List <string>();
            scriptBuildPhaseData.SetPropertyString("runOnlyForDeploymentPostprocessing", "0");
            scriptBuildPhaseData.name        = name;
            scriptBuildPhaseData.shellPath   = shellPath;
            scriptBuildPhaseData.shellScript = shellScript;
            scriptBuildPhaseData.inputPaths  = inputPaths;
            return(scriptBuildPhaseData);
        }
示例#5
0
        public static PBXGroupData Create(string name, string path, PBXSourceTree tree)
        {
            if (name.Contains("/"))
            {
                throw new Exception("Group name must not contain '/'");
            }
            PBXGroupData pbxGroupData = new PBXGroupData();

            pbxGroupData.guid = PBXGUID.Generate();
            pbxGroupData.SetPropertyString("isa", "PBXGroup");
            pbxGroupData.name     = name;
            pbxGroupData.path     = path;
            pbxGroupData.tree     = PBXSourceTree.Group;
            pbxGroupData.children = new GUIDList();
            return(pbxGroupData);
        }
示例#6
0
        public static PBXNativeTarget Create(string name, string productRef, string productType, string buildConfigList)
        {
            var res = new PBXNativeTarget();

            res.guid = PBXGUID.Generate();
            res.SetPropertyString("isa", "PBXNativeTarget");
            res.buildConfigList = buildConfigList;
            res.phases          = new GUIDList();
            res.SetPropertyList("buildRules", new List <string>());
            res.dependencies = new GUIDList();
            res.name         = name;
            res.SetPropertyString("productName", name);
            res.SetPropertyString("productReference", productRef);
            res.SetPropertyString("productType", productType);
            return(res);
        }
        public static PBXNativeTargetData Create(string name, string productRef, string productType, string buildConfigList)
        {
            PBXNativeTargetData data = new PBXNativeTargetData {
                guid = PBXGUID.Generate()
            };

            data.SetPropertyString("isa", "PBXNativeTarget");
            data.buildConfigList = buildConfigList;
            data.phases          = new GUIDList();
            data.SetPropertyList("buildRules", new List <string>());
            data.dependencies = new GUIDList();
            data.name         = name;
            data.SetPropertyString("productName", name);
            data.SetPropertyString("productReference", productRef);
            data.SetPropertyString("productType", productType);
            return(data);
        }
示例#8
0
        // name must not contain '/'
        public static PBXGroup Create(string name, string path, PBXSourceTree tree)
        {
            if (name.Contains("/"))
            {
                throw new Exception("Group name must not contain '/'");
            }

            PBXGroup gr = new PBXGroup();

            gr.guid = PBXGUID.Generate();
            gr.SetPropertyString("isa", "PBXGroup");
            gr.name     = name;
            gr.path     = path;
            gr.tree     = PBXSourceTree.Group;
            gr.children = new GUIDList();

            return(gr);
        }
示例#9
0
 public static string Generate()
 {
     return(PBXGUID.guidGenerator());
 }