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; }
// 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; }