瀏覽代碼

stringapi: Use strings for AddSubdirectory paths

Ben Boeckel 11 年之前
父節點
當前提交
adcd812917
共有 3 個文件被更改,包括 13 次插入10 次删除
  1. 1 1
      Source/cmGlobalGenerator.h
  2. 5 4
      Source/cmMakefile.cxx
  3. 7 5
      Source/cmMakefile.h

+ 1 - 1
Source/cmGlobalGenerator.h

@@ -287,7 +287,7 @@ public:
                    std::string const& content);
 
   /** Return whether the given binary directory is unused.  */
-  bool BinaryDirectoryIsNew(const char* dir)
+  bool BinaryDirectoryIsNew(const std::string& dir)
     {
     return this->BinaryDirectories.insert(dir).second;
     }

+ 5 - 4
Source/cmMakefile.cxx

@@ -1648,7 +1648,7 @@ void cmMakefile::ConfigureSubDirectory(cmLocalGenerator *lg2)
     }
 }
 
-void cmMakefile::AddSubDirectory(const char* sub,
+void cmMakefile::AddSubDirectory(const std::string& sub,
                                  bool excludeFromAll, bool preorder)
 {
   // the source path must be made full if it isn't already
@@ -1675,7 +1675,8 @@ void cmMakefile::AddSubDirectory(const char* sub,
 }
 
 
-void cmMakefile::AddSubDirectory(const char* srcPath, const char *binPath,
+void cmMakefile::AddSubDirectory(const std::string& srcPath,
+                                 const std::string& binPath,
                                  bool excludeFromAll, bool preorder,
                                  bool immediate)
 {
@@ -4185,8 +4186,8 @@ bool cmMakefile::EnforceUniqueName(std::string const& name, std::string& msg,
 }
 
 //----------------------------------------------------------------------------
-bool cmMakefile::EnforceUniqueDir(const char* srcPath,
-                                  const char* binPath) const
+bool cmMakefile::EnforceUniqueDir(const std::string& srcPath,
+                                  const std::string& binPath) const
 {
   // Make sure the binary directory is unique.
   cmGlobalGenerator* gg = this->LocalGenerator->GetGlobalGenerator();

+ 7 - 5
Source/cmMakefile.h

@@ -263,9 +263,10 @@ public:
   /**
    * Add a subdirectory to the build.
    */
-  void AddSubDirectory(const char*, bool excludeFromAll=false,
+  void AddSubDirectory(const std::string&, bool excludeFromAll=false,
                        bool preorder = false);
-  void AddSubDirectory(const char* fullSrcDir,const char *fullBinDir,
+  void AddSubDirectory(const std::string& fullSrcDir,
+                       const std::string& fullBinDir,
                        bool excludeFromAll, bool preorder,
                        bool immediate);
 
@@ -430,7 +431,7 @@ public:
    * recursing up the tree starting at the StartDirectory and going up until
    * it reaches the HomeDirectory.
    */
-  void SetStartDirectory(const char* dir)
+  void SetStartDirectory(const std::string& dir)
     {
       this->cmStartDirectory = dir;
       cmSystemTools::ConvertToUnixSlashes(this->cmStartDirectory);
@@ -443,7 +444,7 @@ public:
     {
       return this->cmStartDirectory.c_str();
     }
-  void SetStartOutputDirectory(const char* lib)
+  void SetStartOutputDirectory(const std::string& lib)
     {
       this->StartOutputDirectory = lib;
       cmSystemTools::ConvertToUnixSlashes(this->StartOutputDirectory);
@@ -949,7 +950,8 @@ private:
 
   bool ParseDefineFlag(std::string const& definition, bool remove);
 
-  bool EnforceUniqueDir(const char* srcPath, const char* binPath) const;
+  bool EnforceUniqueDir(const std::string& srcPath,
+                        const std::string& binPath) const;
 
   friend class cmMakeDepend;    // make depend needs direct access
                                 // to the Sources array