Przeglądaj źródła

Codelite: Consume the CMAKE_CODELITE_USE_TARGETS setting globally

Stephen Kelly 9 lat temu
rodzic
commit
80574a38e6

+ 3 - 2
Help/variable/CMAKE_CODELITE_USE_TARGETS.rst

@@ -3,5 +3,6 @@ CMAKE_CODELITE_USE_TARGETS
 
 Change the way the CodeLite generator creates projectfiles.
 
-If this variable is set to ``ON`` the generator creates projectfiles
-based on targets rather than projects.
+If this variable evaluates to ``ON`` at the end of the top-level
+``CMakeLists.txt`` file, the generator creates projectfiles based on targets
+rather than projects.

+ 1 - 3
Source/cmExtraCodeLiteGenerator.cxx

@@ -60,7 +60,6 @@ void cmExtraCodeLiteGenerator::Generate()
   // loop projects and locate the root project.
   // and extract the information for creating the worspace
   // root makefile
-  const cmMakefile* rmf = CM_NULLPTR;
   for (std::map<std::string, std::vector<cmLocalGenerator*> >::const_iterator
          it = projectMap.begin();
        it != projectMap.end(); ++it) {
@@ -75,7 +74,6 @@ void cmExtraCodeLiteGenerator::Generate()
       workspaceFileName = workspaceOutputDir + "/";
       workspaceFileName += workspaceProjectName + ".workspace";
       this->WorkspacePath = it->second[0]->GetCurrentBinaryDirectory();
-      rmf = it->second[0]->GetMakefile();
       ;
       break;
     }
@@ -89,7 +87,7 @@ void cmExtraCodeLiteGenerator::Generate()
   xml.Attribute("Name", workspaceProjectName);
 
   bool const targetsAreProjects =
-    rmf && rmf->IsOn("CMAKE_CODELITE_USE_TARGETS");
+    this->GlobalGenerator->GlobalSettingIsOn("CMAKE_CODELITE_USE_TARGETS");
 
   std::vector<std::string> ProjectNames;
   if (targetsAreProjects) {