1
0
Эх сурвалжийг харах

cmLocalCommonGenerator: Adopt ConfigName member

De-duplicate the member from the local Makefile and Ninja generators.
Brad King 10 жил өмнө
parent
commit
9d41f6d87b

+ 17 - 0
Source/cmLocalCommonGenerator.cxx

@@ -11,6 +11,8 @@
 ============================================================================*/
 #include "cmLocalCommonGenerator.h"
 
+#include "cmMakefile.h"
+
 cmLocalCommonGenerator::cmLocalCommonGenerator(cmGlobalGenerator* gg,
                                                cmLocalGenerator* parent,
                                                cmState::Snapshot snapshot):
@@ -21,3 +23,18 @@ cmLocalCommonGenerator::cmLocalCommonGenerator(cmGlobalGenerator* gg,
 cmLocalCommonGenerator::~cmLocalCommonGenerator()
 {
 }
+
+void cmLocalCommonGenerator::SetConfigName()
+{
+  // Store the configuration name that will be generated.
+  if(const char* config = this->Makefile->GetDefinition("CMAKE_BUILD_TYPE"))
+    {
+    // Use the build type given by the user.
+    this->ConfigName = config;
+    }
+  else
+    {
+    // No configuration type given.
+    this->ConfigName = "";
+    }
+}

+ 6 - 0
Source/cmLocalCommonGenerator.h

@@ -24,6 +24,12 @@ public:
                          cmLocalGenerator* parent,
                          cmState::Snapshot snapshot);
   ~cmLocalCommonGenerator();
+
+  std::string const& GetConfigName() { return this->ConfigName; }
+
+protected:
+  void SetConfigName();
+  std::string ConfigName;
 };
 
 #endif

+ 0 - 17
Source/cmLocalNinjaGenerator.cxx

@@ -26,7 +26,6 @@ cmLocalNinjaGenerator::cmLocalNinjaGenerator(cmGlobalGenerator* gg,
                                              cmLocalGenerator* parent,
                                              cmState::Snapshot snapshot)
   : cmLocalCommonGenerator(gg, parent, snapshot)
-  , ConfigName("")
   , HomeRelativeOutputPath("")
 {
   this->TargetImplib = "$TARGET_IMPLIB";
@@ -261,22 +260,6 @@ void cmLocalNinjaGenerator::WriteNinjaFilesInclusion(std::ostream& os)
   os << "\n";
 }
 
-void cmLocalNinjaGenerator::SetConfigName()
-{
-  // Store the configuration name that will be generated.
-  if(const char* config =
-       this->GetMakefile()->GetDefinition("CMAKE_BUILD_TYPE"))
-    {
-    // Use the build type given by the user.
-    this->ConfigName = config;
-    }
-  else
-    {
-    // No configuration type given.
-    this->ConfigName = "";
-    }
-}
-
 //----------------------------------------------------------------------------
 void cmLocalNinjaGenerator::ComputeObjectFilenames(
                         std::map<cmSourceFile const*, std::string>& mapping,

+ 0 - 6
Source/cmLocalNinjaGenerator.h

@@ -46,9 +46,6 @@ public:
   const cmake* GetCMakeInstance() const;
   cmake* GetCMakeInstance();
 
-  std::string const& GetConfigName() const
-  { return this->ConfigName; }
-
   /// @returns the relative path between the HomeOutputDirectory and this
   /// local generators StartOutputDirectory.
   std::string GetHomeRelativeOutputPath() const
@@ -110,8 +107,6 @@ private:
   void WriteProcessedMakefile(std::ostream& os);
   void WritePools(std::ostream& os);
 
-  void SetConfigName();
-
   void WriteCustomCommandRule();
   void WriteCustomCommandBuildStatement(cmCustomCommand const *cc,
                                         const cmNinjaDeps& orderOnlyDeps);
@@ -120,7 +115,6 @@ private:
 
   std::string MakeCustomLauncher(cmCustomCommandGenerator const& ccg);
 
-  std::string ConfigName;
   std::string HomeRelativeOutputPath;
 
   typedef std::map<cmCustomCommand const*, std::set<cmTarget*> >

+ 1 - 11
Source/cmLocalUnixMakefileGenerator3.cxx

@@ -100,17 +100,7 @@ cmLocalUnixMakefileGenerator3::~cmLocalUnixMakefileGenerator3()
 //----------------------------------------------------------------------------
 void cmLocalUnixMakefileGenerator3::Generate()
 {
-  // Store the configuration name that will be generated.
-  if(const char* config = this->Makefile->GetDefinition("CMAKE_BUILD_TYPE"))
-    {
-    // Use the build type given by the user.
-    this->ConfigName = config;
-    }
-  else
-    {
-    // No configuration type given.
-    this->ConfigName = "";
-    }
+  this->SetConfigName();
 
   // Record whether some options are enabled to avoid checking many
   // times later.

+ 0 - 4
Source/cmLocalUnixMakefileGenerator3.h

@@ -46,8 +46,6 @@ public:
    */
   virtual void Generate();
 
-  std::string const& GetConfigName() { return this->ConfigName; }
-
   // this returns the relative path between the HomeOutputDirectory and this
   // local generators StartOutputDirectory
   const std::string &GetHomeRelativeOutputPath();
@@ -254,8 +252,6 @@ private:
 
   ImplicitDependTargetMap ImplicitDepends;
 
-  std::string ConfigName;
-
   std::string HomeRelativeOutputPath;
 
   struct LocalObjectEntry