diff options
author | Brad King <brad.king@kitware.com> | 2017-04-12 19:11:57 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-04-12 19:38:35 (GMT) |
commit | 63fbf587509c63395c024026b7bf264dbae446a1 (patch) | |
tree | 8320e535611da31529c7095e3b840507e0b9543e /Source/cmGlobalXCodeGenerator.cxx | |
parent | 1afacebee9c42a0dccaf554db9cb048204913d38 (diff) | |
download | CMake-63fbf587509c63395c024026b7bf264dbae446a1.zip CMake-63fbf587509c63395c024026b7bf264dbae446a1.tar.gz CMake-63fbf587509c63395c024026b7bf264dbae446a1.tar.bz2 |
Xcode: Inline relevant parts of UseObjectLibraries
Diffstat (limited to 'Source/cmGlobalXCodeGenerator.cxx')
-rw-r--r-- | Source/cmGlobalXCodeGenerator.cxx | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index b7ff7f3..9d1f771 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1051,11 +1051,14 @@ bool cmGlobalXCodeGenerator::CreateXCodeTargets( // Add object library contents as external objects. (Equivalent to // the externalObjFiles above, except each one is not a cmSourceFile // within the target.) - std::vector<std::string> objs; - gtgt->UseObjectLibraries(objs, ""); - for (std::vector<std::string>::const_iterator oi = objs.begin(); + std::vector<cmSourceFile const*> objs; + gtgt->GetExternalObjects(objs, ""); + for (std::vector<cmSourceFile const*>::const_iterator oi = objs.begin(); oi != objs.end(); ++oi) { - std::string obj = *oi; + if ((*oi)->GetObjectLibrary().empty()) { + continue; + } + std::string const& obj = (*oi)->GetFullPath(); cmXCodeObject* xsf = this->CreateXCodeSourceFileFromPath(obj, gtgt, "", 0); externalObjFiles.push_back(xsf); @@ -2669,13 +2672,16 @@ void cmGlobalXCodeGenerator::AddDependAndLinkInformation(cmXCodeObject* target) // Add object library contents as link flags. std::string linkObjs; const char* sep = ""; - std::vector<std::string> objs; - gt->UseObjectLibraries(objs, ""); - for (std::vector<std::string>::const_iterator oi = objs.begin(); + std::vector<cmSourceFile const*> objs; + gt->GetExternalObjects(objs, ""); + for (std::vector<cmSourceFile const*>::const_iterator oi = objs.begin(); oi != objs.end(); ++oi) { + if ((*oi)->GetObjectLibrary().empty()) { + continue; + } linkObjs += sep; sep = " "; - linkObjs += this->XCodeEscapePath(*oi); + linkObjs += this->XCodeEscapePath((*oi)->GetFullPath()); } this->AppendBuildSettingAttribute( target, this->GetTargetLinkFlagsVar(gt), linkObjs.c_str(), configName); @@ -2801,11 +2807,15 @@ bool cmGlobalXCodeGenerator::CreateGroups( if (this->XcodeVersion < 50) { // Put OBJECT_LIBRARY objects in proper groups: - std::vector<std::string> objs; - gtgt->UseObjectLibraries(objs, ""); - for (std::vector<std::string>::const_iterator oi = objs.begin(); + std::vector<cmSourceFile const*> objs; + gtgt->GetExternalObjects(objs, ""); + for (std::vector<cmSourceFile const*>::const_iterator oi = + objs.begin(); oi != objs.end(); ++oi) { - std::string const& source = *oi; + if ((*oi)->GetObjectLibrary().empty()) { + continue; + } + std::string const& source = (*oi)->GetFullPath(); cmSourceGroup* sourceGroup = mf->FindSourceGroup(source.c_str(), sourceGroups); cmXCodeObject* pbxgroup = |