Bläddra i källkod

cmGlobalGenerator: Add interface to call ForceLinkerLanguages

Avoid calling it too early when cmGeneratorTarget instances don't
yet exist.
Stephen Kelly 11 år sedan
förälder
incheckning
857d30b52e
3 ändrade filer med 9 tillägg och 1 borttagningar
  1. 7 0
      Source/cmGlobalGenerator.cxx
  2. 2 0
      Source/cmGlobalGenerator.h
  3. 0 1
      Source/cmGlobalXCodeGenerator.cxx

+ 7 - 0
Source/cmGlobalGenerator.cxx

@@ -216,6 +216,11 @@ bool cmGlobalGenerator::GenerateImportFile(const std::string &file)
   return false;
 }
 
+void cmGlobalGenerator::ForceLinkerLanguages()
+{
+
+}
+
 bool
 cmGlobalGenerator::IsExportedTargetsFile(const std::string &filename) const
 {
@@ -1194,6 +1199,8 @@ void cmGlobalGenerator::Generate()
   // Create per-target generator information.
   this->CreateGeneratorTargets();
 
+  this->ForceLinkerLanguages();
+
 #ifdef CMAKE_BUILD_WITH_CMAKE
   for (AutogensType::iterator it = autogens.begin(); it != autogens.end();
        ++it)

+ 2 - 0
Source/cmGlobalGenerator.h

@@ -423,6 +423,8 @@ private:
   void WriteSummary(cmTarget* target);
   void FinalizeTargetCompileInfo();
 
+  virtual void ForceLinkerLanguages();
+
   virtual void PrintCompilerAdvice(std::ostream& os, std::string const& lang,
                                    const char* envVar) const;
   void CheckCompilerIdCompatibility(cmMakefile* mf,

+ 0 - 1
Source/cmGlobalXCodeGenerator.cxx

@@ -343,7 +343,6 @@ void cmGlobalXCodeGenerator::Generate()
     // add ALL_BUILD, INSTALL, etc
     this->AddExtraTargets(root, it->second);
     }
-  this->ForceLinkerLanguages();
   this->cmGlobalGenerator::Generate();
   if(cmSystemTools::GetErrorOccuredFlag())
     {