diff options
author | Gusts Kaksis <gusts.kaksis@sonarworks.com> | 2019-07-10 09:32:16 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2020-07-14 12:07:55 (GMT) |
commit | e637744c515b1e61d58bfd3539a2ab5afc78f5bb (patch) | |
tree | fd70f5eea9cf08401dd2bf75ba5123954d41cd48 /Source/cmGlobalXCodeGenerator.h | |
parent | fd1df4995b6c1e063bb978e034a264b0e2d59f63 (diff) | |
download | CMake-e637744c515b1e61d58bfd3539a2ab5afc78f5bb.zip CMake-e637744c515b1e61d58bfd3539a2ab5afc78f5bb.tar.gz CMake-e637744c515b1e61d58bfd3539a2ab5afc78f5bb.tar.bz2 |
Xcode: Use "Link Binary With Libraries" to link any library
Add external libraries as fileRefs to Xcode project and add those
references to Link Binary With Libraries build phase. This allows
linking .a, .o, .dylib, .framework and .tbd libraries through "Link
Binary With Libraries" build phase, as opposed to `OTHER_LINKER_FLAGS`.
This improves on the approach added by commit 58c05e1c73 (Xcode: Use
"Link Binary With Libraries" build phase when possible, 2020-06-12).
Diffstat (limited to 'Source/cmGlobalXCodeGenerator.h')
-rw-r--r-- | Source/cmGlobalXCodeGenerator.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index 11b9312..276a9ee 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -203,10 +203,10 @@ private: cmGeneratorTarget* target, const std::string& lang, cmSourceFile* sf); - cmXCodeObject* CreateXCodeSourceFileFromPath(const std::string& fullpath, - cmGeneratorTarget* target, - const std::string& lang, - cmSourceFile* sf); + cmXCodeObject* CreateXCodeBuildFileFromPath(const std::string& fullpath, + cmGeneratorTarget* target, + const std::string& lang, + cmSourceFile* sf); cmXCodeObject* CreateXCodeFileReference(cmSourceFile* sf, cmGeneratorTarget* target); cmXCodeObject* CreateXCodeSourceFile(cmLocalGenerator* gen, cmSourceFile* sf, @@ -281,6 +281,7 @@ private: std::string PostBuildMakeTarget(std::string const& tName, std::string const& configName); cmXCodeObject* MainGroupChildren; + cmXCodeObject* FrameworkGroup; cmMakefile* CurrentMakefile; cmLocalGenerator* CurrentLocalGenerator; std::vector<std::string> CurrentConfigurationTypes; @@ -294,6 +295,7 @@ private: std::map<std::string, cmXCodeObject*> GroupNameMap; std::map<std::string, cmXCodeObject*> TargetGroup; std::map<std::string, cmXCodeObject*> FileRefs; + std::map<std::string, cmXCodeObject*> ExternalLibRefs; std::map<cmGeneratorTarget const*, cmXCodeObject*> XCodeObjectMap; std::map<cmXCodeObject*, cmXCodeObject*> FileRefToBuildFileMap; std::vector<std::string> Architectures; |