Browse Source

Merge topic 'ninja-comment-ComputeLinkCmd'

de7083f3 Ninja: Document why ComputeLinkCmd is structured the way it is.
Brad King 9 years ago
parent
commit
d608cfb6bf
1 changed files with 3 additions and 0 deletions
  1. 3 0
      Source/cmNinjaNormalTargetGenerator.cxx

+ 3 - 0
Source/cmNinjaNormalTargetGenerator.cxx

@@ -332,6 +332,9 @@ std::vector<std::string> cmNinjaNormalTargetGenerator::ComputeLinkCmd()
   std::vector<std::string> linkCmds;
   cmMakefile* mf = this->GetMakefile();
   {
+    // If we have a rule variable prefer it. In the case of static libraries
+    // this occurs when things like IPO is enabled, and we need to use the
+    // CMAKE_<lang>_CREATE_STATIC_LIBRARY_IPO define instead.
     std::string linkCmdVar = this->GetGeneratorTarget()->GetCreateRuleVariable(
       this->TargetLinkLanguage, this->GetConfigName());
     const char* linkCmd = mf->GetDefinition(linkCmdVar);