From 63fbf587509c63395c024026b7bf264dbae446a1 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 12 Apr 2017 15:11:57 -0400 Subject: Xcode: Inline relevant parts of UseObjectLibraries --- Source/cmGlobalXCodeGenerator.cxx | 34 ++++++++++++++++++++++------------ 1 file 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 objs; - gtgt->UseObjectLibraries(objs, ""); - for (std::vector::const_iterator oi = objs.begin(); + std::vector objs; + gtgt->GetExternalObjects(objs, ""); + for (std::vector::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 objs; - gt->UseObjectLibraries(objs, ""); - for (std::vector::const_iterator oi = objs.begin(); + std::vector objs; + gt->GetExternalObjects(objs, ""); + for (std::vector::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 objs; - gtgt->UseObjectLibraries(objs, ""); - for (std::vector::const_iterator oi = objs.begin(); + std::vector objs; + gtgt->GetExternalObjects(objs, ""); + for (std::vector::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 = -- cgit v0.12