diff options
author | Brad King <brad.king@kitware.com> | 2017-08-28 13:49:26 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2017-08-28 13:49:31 (GMT) |
commit | 072296fc1644eee8e824522dfac431316d7dbf14 (patch) | |
tree | b10c0f1a6c6eb3abb0081fb0ce8a354fafbb1c75 | |
parent | f267505c537fbb0c04650db4bc80cb06539d4b1e (diff) | |
parent | d2d7ae0738b2bb59ee5a701794e73802795b2ce6 (diff) | |
download | CMake-072296fc1644eee8e824522dfac431316d7dbf14.zip CMake-072296fc1644eee8e824522dfac431316d7dbf14.tar.gz CMake-072296fc1644eee8e824522dfac431316d7dbf14.tar.bz2 |
Merge topic 'gnu-to-ms-ninja-support'
d2d7ae07 Ninja: Implement support for GNUToMS
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1165
-rw-r--r-- | Source/cmNinjaNormalTargetGenerator.cxx | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx index f029a3f..ddac20e 100644 --- a/Source/cmNinjaNormalTargetGenerator.cxx +++ b/Source/cmNinjaNormalTargetGenerator.cxx @@ -485,7 +485,16 @@ std::vector<std::string> cmNinjaNormalTargetGenerator::ComputeLinkCmd() this->TargetLinkLanguage, this->GetConfigName()); const char* linkCmd = mf->GetDefinition(linkCmdVar); if (linkCmd) { - cmSystemTools::ExpandListArgument(linkCmd, linkCmds); + std::string linkCmdStr = linkCmd; + if (this->GetGeneratorTarget()->HasImplibGNUtoMS()) { + std::string ruleVar = "CMAKE_"; + ruleVar += this->GeneratorTarget->GetLinkerLanguage(this->ConfigName); + ruleVar += "_GNUtoMS_RULE"; + if (const char* rule = this->Makefile->GetDefinition(ruleVar)) { + linkCmdStr += rule; + } + } + cmSystemTools::ExpandListArgument(linkCmdStr, linkCmds); if (this->GetGeneratorTarget()->GetPropertyAsBool("LINK_WHAT_YOU_USE")) { std::string cmakeCommand = this->GetLocalGenerator()->ConvertToOutputFormat( |