diff options
author | Brad King <brad.king@kitware.com> | 2020-10-28 11:26:40 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2020-10-28 11:26:47 (GMT) |
commit | e09400e3607c3e4d86e97f4f2e1ce8e61be7d0bb (patch) | |
tree | e2da0b94b371db082720e8275470b8cc67bdbcdc | |
parent | 910fc4d880426c0c0469eeaa26624e5989d02802 (diff) | |
parent | 5dc23300b1c320db1e0690f769c4fda11adc6376 (diff) | |
download | CMake-e09400e3607c3e4d86e97f4f2e1ce8e61be7d0bb.zip CMake-e09400e3607c3e4d86e97f4f2e1ce8e61be7d0bb.tar.gz CMake-e09400e3607c3e4d86e97f4f2e1ce8e61be7d0bb.tar.bz2 |
Merge topic 'xcode-fix-source-linking'
5dc23300b1 Xcode: Fix regression that automatically links libraries in source list
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5432
-rw-r--r-- | Source/cmGlobalXCodeGenerator.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 952a179..e7bbf72 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1423,7 +1423,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget( cmGeneratorTarget::SourceFileFlags tsFlags = gtgt->GetTargetSourceFileFlags(sourceFile); - if (filetype && IsLibraryType(filetype->GetString())) { + if (filetype && filetype->GetString() == "compiled.mach-o.objfile") { if (sourceFile->GetObjectLibrary().empty()) { externalObjFiles.push_back(xsf); } @@ -1591,7 +1591,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget( } } - // always create framework build phase + // Always create Link Binary With Libraries build phase cmXCodeObject* frameworkBuildPhase = nullptr; frameworkBuildPhase = this->CreateObject(cmXCodeObject::PBXFrameworksBuildPhase); @@ -1600,6 +1600,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget( this->CreateString("2147483647")); buildFiles = this->CreateObject(cmXCodeObject::OBJECT_LIST); frameworkBuildPhase->AddAttribute("files", buildFiles); + // Add all collected .o files to this build phase for (auto& externalObjFile : externalObjFiles) { buildFiles->AddObject(externalObjFile); } |