Skip to content

Commit 06f3c40

Browse files
MythicLionManadamtharani
authored andcommitted
Created explicit dependency between mailcore and libetpan targets
libetpan needs to be built before Mailcore in order to ensure that mailcore doesn't download a new version of libetpan, and so that mailcore can link against the built version of libetpan. Since dependencies can only be created within a project (and not within a workspace) I've added the libetpan project to the mailcore2 project. This is pretty gross for several reasons. Chiefly, the reference to the libetpan project will only work when checked out within our build system. I believe that this will just make the dependency fail silently when built elsewhere (and thus use the normal mailcore2 build strategy of downloading libetpan) but it may make builds of this project fail altogether. I did try another approach where I created a project in our repo that included both projects, and then created an explicit dependency there. That didn't work, but I also hadn't realized that there was a bug mapping dependencies to products at the time, so it may be worth revisiting that approach if this is just too awful.
1 parent 5c9c3b2 commit 06f3c40

File tree

1 file changed

+116
-1
lines changed

1 file changed

+116
-1
lines changed

build-mac/mailcore2.xcodeproj/project.pbxproj

Lines changed: 116 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1995,6 +1995,55 @@
19951995
/* End PBXBuildFile section */
19961996

19971997
/* Begin PBXContainerItemProxy section */
1998+
9208D616232C1D08002EF3DA /* PBXContainerItemProxy */ = {
1999+
isa = PBXContainerItemProxy;
2000+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2001+
proxyType = 2;
2002+
remoteGlobalIDString = 8DC2EF5B0486A6940098B216;
2003+
remoteInfo = libetpan;
2004+
};
2005+
9208D618232C1D08002EF3DA /* PBXContainerItemProxy */ = {
2006+
isa = PBXContainerItemProxy;
2007+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2008+
proxyType = 2;
2009+
remoteGlobalIDString = C69AB10A10546FE500F32FBD;
2010+
remoteInfo = "static libetpan";
2011+
};
2012+
9208D61A232C1D08002EF3DA /* PBXContainerItemProxy */ = {
2013+
isa = PBXContainerItemProxy;
2014+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2015+
proxyType = 2;
2016+
remoteGlobalIDString = C682E2C015B315EF00BE9DA7;
2017+
remoteInfo = "libetpan ios";
2018+
};
2019+
92B644A4232C41CB00A3E07B /* PBXContainerItemProxy */ = {
2020+
isa = PBXContainerItemProxy;
2021+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2022+
proxyType = 1;
2023+
remoteGlobalIDString = C69AB10910546FE500F32FBD;
2024+
remoteInfo = "static libetpan";
2025+
};
2026+
92B644A6232C41E700A3E07B /* PBXContainerItemProxy */ = {
2027+
isa = PBXContainerItemProxy;
2028+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2029+
proxyType = 1;
2030+
remoteGlobalIDString = C682E21815B315EF00BE9DA7;
2031+
remoteInfo = "libetpan ios";
2032+
};
2033+
92B644A8232C420300A3E07B /* PBXContainerItemProxy */ = {
2034+
isa = PBXContainerItemProxy;
2035+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2036+
proxyType = 1;
2037+
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
2038+
remoteInfo = libetpan;
2039+
};
2040+
92B644AA232C421300A3E07B /* PBXContainerItemProxy */ = {
2041+
isa = PBXContainerItemProxy;
2042+
containerPortal = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
2043+
proxyType = 1;
2044+
remoteGlobalIDString = C682E21815B315EF00BE9DA7;
2045+
remoteInfo = "libetpan ios";
2046+
};
19982047
C600B61E1A244BD8000728F1 /* PBXContainerItemProxy */ = {
19992048
isa = PBXContainerItemProxy;
20002049
containerPortal = C64EA52E169E772200778456 /* Project object */;
@@ -2603,6 +2652,7 @@
26032652
8B0095C81A00DDC500F84BC0 /* MCSMTPLoginOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSMTPLoginOperation.h; sourceTree = "<group>"; };
26042653
8B0095CA1A00DDE700F84BC0 /* MCOSMTPLoginOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCOSMTPLoginOperation.h; sourceTree = "<group>"; };
26052654
8B0095CB1A00DDE700F84BC0 /* MCOSMTPLoginOperation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MCOSMTPLoginOperation.mm; sourceTree = "<group>"; };
2655+
9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = libetpan.xcodeproj; path = "/Users/progersmc/Developer/apps/ThirdParty/../Dependencies/Carthage/Checkouts/libetpan/build-mac/libetpan.xcodeproj"; sourceTree = "<absolute>"; };
26062656
943F1A9817D964F600F0C798 /* MCIMAPConnectOperation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MCIMAPConnectOperation.cpp; sourceTree = "<group>"; };
26072657
943F1A9917D964F600F0C798 /* MCIMAPConnectOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCIMAPConnectOperation.h; sourceTree = "<group>"; };
26082658
9E774D871767C54E0065EB9B /* MCIMAPFolderStatus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCIMAPFolderStatus.h; sourceTree = "<group>"; };
@@ -3327,6 +3377,16 @@
33273377
path = nntp;
33283378
sourceTree = "<group>";
33293379
};
3380+
9208D60F232C1D08002EF3DA /* Products */ = {
3381+
isa = PBXGroup;
3382+
children = (
3383+
9208D617232C1D08002EF3DA /* libetpan.framework */,
3384+
9208D619232C1D08002EF3DA /* libetpan.a */,
3385+
9208D61B232C1D08002EF3DA /* libetpan-ios.a */,
3386+
);
3387+
name = Products;
3388+
sourceTree = "<group>";
3389+
};
33303390
BDCD7C691A70771B0001DCC3 /* icu-ucsdet */ = {
33313391
isa = PBXGroup;
33323392
children = (
@@ -3884,6 +3944,7 @@
38843944
C64EA78E169F259200778456 /* Frameworks */ = {
38853945
isa = PBXGroup;
38863946
children = (
3947+
9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */,
38873948
C600B6221A244CC3000728F1 /* CFNetwork.framework */,
38883949
C6B5AE1119F63496001352A6 /* Foundation.framework */,
38893950
C6B5AE0F19F6347C001352A6 /* Security.framework */,
@@ -4737,6 +4798,7 @@
47374798
buildRules = (
47384799
);
47394800
dependencies = (
4801+
92B644AB232C421300A3E07B /* PBXTargetDependency */,
47404802
);
47414803
name = "mailcore ios";
47424804
productName = "mailcore framework";
@@ -4774,6 +4836,7 @@
47744836
buildRules = (
47754837
);
47764838
dependencies = (
4839+
92B644A5232C41CB00A3E07B /* PBXTargetDependency */,
47774840
);
47784841
name = "static mailcore2 osx";
47794842
productName = mailcore;
@@ -4847,6 +4910,7 @@
48474910
buildRules = (
48484911
);
48494912
dependencies = (
4913+
92B644A7232C41E700A3E07B /* PBXTargetDependency */,
48504914
);
48514915
name = "static mailcore2 ios";
48524916
productName = mailcore;
@@ -4866,6 +4930,7 @@
48664930
buildRules = (
48674931
);
48684932
dependencies = (
4933+
92B644A9232C420300A3E07B /* PBXTargetDependency */,
48694934
);
48704935
name = "mailcore osx";
48714936
productName = "mailcore framework";
@@ -4900,6 +4965,12 @@
49004965
mainGroup = C64EA52C169E772200778456;
49014966
productRefGroup = C64EA538169E772200778456 /* Products */;
49024967
projectDirPath = "";
4968+
projectReferences = (
4969+
{
4970+
ProductGroup = 9208D60F232C1D08002EF3DA /* Products */;
4971+
ProjectRef = 9208D60E232C1D08002EF3DA /* libetpan.xcodeproj */;
4972+
},
4973+
);
49034974
projectRoot = "";
49044975
targets = (
49054976
C64EA536169E772200778456 /* static mailcore2 osx */,
@@ -4914,6 +4985,30 @@
49144985
};
49154986
/* End PBXProject section */
49164987

4988+
/* Begin PBXReferenceProxy section */
4989+
9208D617232C1D08002EF3DA /* libetpan.framework */ = {
4990+
isa = PBXReferenceProxy;
4991+
fileType = wrapper.framework;
4992+
path = libetpan.framework;
4993+
remoteRef = 9208D616232C1D08002EF3DA /* PBXContainerItemProxy */;
4994+
sourceTree = BUILT_PRODUCTS_DIR;
4995+
};
4996+
9208D619232C1D08002EF3DA /* libetpan.a */ = {
4997+
isa = PBXReferenceProxy;
4998+
fileType = archive.ar;
4999+
path = libetpan.a;
5000+
remoteRef = 9208D618232C1D08002EF3DA /* PBXContainerItemProxy */;
5001+
sourceTree = BUILT_PRODUCTS_DIR;
5002+
};
5003+
9208D61B232C1D08002EF3DA /* libetpan-ios.a */ = {
5004+
isa = PBXReferenceProxy;
5005+
fileType = archive.ar;
5006+
path = "libetpan-ios.a";
5007+
remoteRef = 9208D61A232C1D08002EF3DA /* PBXContainerItemProxy */;
5008+
sourceTree = BUILT_PRODUCTS_DIR;
5009+
};
5010+
/* End PBXReferenceProxy section */
5011+
49175012
/* Begin PBXResourcesBuildPhase section */
49185013
27780C3519CF9CD100C77E44 /* Resources */ = {
49195014
isa = PBXResourcesBuildPhase;
@@ -4976,7 +5071,7 @@
49765071
);
49775072
runOnlyForDeploymentPostprocessing = 0;
49785073
shellPath = /bin/sh;
4979-
shellScript = "\"$SRCROOT/../scripts/get-ios.sh\"";
5074+
shellScript = "\"$SRCROOT/../scripts/get-ios.sh\"\n";
49805075
};
49815076
4C4E4FE51EFC3B3A00C6B5DF /* ShellScript */ = {
49825077
isa = PBXShellScriptBuildPhase;
@@ -6076,6 +6171,26 @@
60766171
/* End PBXSourcesBuildPhase section */
60776172

60786173
/* Begin PBXTargetDependency section */
6174+
92B644A5232C41CB00A3E07B /* PBXTargetDependency */ = {
6175+
isa = PBXTargetDependency;
6176+
name = "static libetpan";
6177+
targetProxy = 92B644A4232C41CB00A3E07B /* PBXContainerItemProxy */;
6178+
};
6179+
92B644A7232C41E700A3E07B /* PBXTargetDependency */ = {
6180+
isa = PBXTargetDependency;
6181+
name = "libetpan ios";
6182+
targetProxy = 92B644A6232C41E700A3E07B /* PBXContainerItemProxy */;
6183+
};
6184+
92B644A9232C420300A3E07B /* PBXTargetDependency */ = {
6185+
isa = PBXTargetDependency;
6186+
name = libetpan;
6187+
targetProxy = 92B644A8232C420300A3E07B /* PBXContainerItemProxy */;
6188+
};
6189+
92B644AB232C421300A3E07B /* PBXTargetDependency */ = {
6190+
isa = PBXTargetDependency;
6191+
name = "libetpan ios";
6192+
targetProxy = 92B644AA232C421300A3E07B /* PBXContainerItemProxy */;
6193+
};
60796194
C600B61F1A244BD8000728F1 /* PBXTargetDependency */ = {
60806195
isa = PBXTargetDependency;
60816196
target = C64EA536169E772200778456 /* static mailcore2 osx */;

0 commit comments

Comments
 (0)