summaryrefslogtreecommitdiffstats
path: root/Source/cmXCodeObject.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2011-06-06 21:34:43 (GMT)
committerBrad King <brad.king@kitware.com>2011-06-06 21:44:11 (GMT)
commit44cdae921d627bc4b113dad971350db64e3c277a (patch)
tree826d5db324609618eed6e307eb2be4caf2d8a15a /Source/cmXCodeObject.h
parent4b652ad0d9c83b30ac34f53a1b90fc0a153c6293 (diff)
downloadCMake-44cdae921d627bc4b113dad971350db64e3c277a.zip
CMake-44cdae921d627bc4b113dad971350db64e3c277a.tar.gz
CMake-44cdae921d627bc4b113dad971350db64e3c277a.tar.bz2
Xcode: Fix parallel build depends with universal binaries (#11844)
A post-build phase of each target invokes the XCODE_DEPEND_HELPER.make file to erase any targets that link to it. Narrow the set of targets tested by each post-build phase to those that depend on the newly completed target. This avoids removing files from partially built unrelated targets that happen to be building in parallel.
Diffstat (limited to 'Source/cmXCodeObject.h')
-rw-r--r--Source/cmXCodeObject.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/Source/cmXCodeObject.h b/Source/cmXCodeObject.h
index bdb4f15..369fe66 100644
--- a/Source/cmXCodeObject.h
+++ b/Source/cmXCodeObject.h
@@ -139,6 +139,19 @@ public:
{
return this->DependLibraries;
}
+ void AddDependTarget(const char* configName,
+ const char* tName)
+ {
+ if(!configName)
+ {
+ configName = "";
+ }
+ this->DependTargets[configName].push_back(tName);
+ }
+ std::map<cmStdString, StringVec> const& GetDependTargets()
+ {
+ return this->DependTargets;
+ }
std::vector<cmXCodeObject*> const& GetObjectList() { return this->List;}
void SetComment(const char* c) { this->Comment = c;}
static void PrintString(std::ostream& os,cmStdString String);
@@ -156,6 +169,7 @@ protected:
cmXCodeObject* PBXTargetDependencyValue;
std::vector<cmXCodeObject*> List;
std::map<cmStdString, StringVec> DependLibraries;
+ std::map<cmStdString, StringVec> DependTargets;
std::map<cmStdString, cmXCodeObject*> ObjectAttributes;
};
#endif