diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2012-04-30 03:25:37 (GMT) |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2012-05-16 21:56:42 (GMT) |
commit | d807aab28fd86586e8ecb5e4f4d35b43bc68d5f8 (patch) | |
tree | f0dadaedd74bfa4a2d42d00209c2ecb3eabf5591 | |
parent | e78483c08e1f7753509afa4d4aab94274cd6b861 (diff) | |
download | CMake-d807aab28fd86586e8ecb5e4f4d35b43bc68d5f8.zip CMake-d807aab28fd86586e8ecb5e4f4d35b43bc68d5f8.tar.gz CMake-d807aab28fd86586e8ecb5e4f4d35b43bc68d5f8.tar.bz2 |
Ninja: apply CMAKE_<LANG>_FLAGS_<TYPE> to executable targets (#13069)
Based on a patch by Zaheer Chothia!
-rw-r--r-- | Source/cmLocalGenerator.cxx | 5 | ||||
-rw-r--r-- | Source/cmNinjaNormalTargetGenerator.cxx | 11 |
2 files changed, 7 insertions, 9 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 6362d80..8265d72 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -1548,13 +1548,10 @@ void cmLocalGenerator::GetTargetFlags(std::string& linkLibs, target.GetName()); return; } - std::string langVar = "CMAKE_"; - langVar += linkLanguage; - std::string flagsVar = langVar + "_FLAGS"; + this->AddLanguageFlags(flags, linkLanguage, buildType.c_str()); std::string sharedFlagsVar = "CMAKE_SHARED_LIBRARY_"; sharedFlagsVar += linkLanguage; sharedFlagsVar += "_FLAGS"; - flags += this->Makefile->GetSafeDefinition(flagsVar.c_str()); flags += " "; flags += this->Makefile->GetSafeDefinition(sharedFlagsVar.c_str()); flags += " "; diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx index 63ba58d..8b86a98 100644 --- a/Source/cmNinjaNormalTargetGenerator.cxx +++ b/Source/cmNinjaNormalTargetGenerator.cxx @@ -193,12 +193,13 @@ cmNinjaNormalTargetGenerator vars.LinkFlags = "$LINK_FLAGS"; std::string langFlags; - this->GetLocalGenerator()->AddLanguageFlags(langFlags, - this->TargetLinkLanguage, - this->GetConfigName()); - if (targetType != cmTarget::EXECUTABLE) + if (targetType != cmTarget::EXECUTABLE) { + this->GetLocalGenerator()->AddLanguageFlags(langFlags, + this->TargetLinkLanguage, + this->GetConfigName()); langFlags += " $ARCH_FLAGS"; - vars.LanguageCompileFlags = langFlags.c_str(); + vars.LanguageCompileFlags = langFlags.c_str(); + } // Rule for linking library. std::vector<std::string> linkCmds = this->ComputeLinkCmd(); |