From 6dbd4a5f17db42d12cdddcdacf5f9bd4d67951d6 Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Tue, 18 Jun 2013 13:41:50 -0400 Subject: [PATCH] cmMakefile: Refactor AddCMakeDependFile and AddCMakeOutputFile. AddCMakeDependFile and AddCMakeOutputFile both store as std::string and all calling sites use std::string. So instead of creating more temporary objects, lets just use std::strings. --- Source/cmCoreTryCompile.cxx | 2 +- Source/cmMakefile.cxx | 2 +- Source/cmMakefile.h | 4 ++-- Source/cmOSXBundleGenerator.cxx | 18 +++++++++--------- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx index b43a7a7df..860417fc9 100644 --- a/Source/cmCoreTryCompile.cxx +++ b/Source/cmCoreTryCompile.cxx @@ -396,7 +396,7 @@ int cmCoreTryCompile::TryCompileCode(std::vector const& argv) // Add dependencies on any non-temporary sources. if(si->find("CMakeTmp") == si->npos) { - this->Makefile->AddCMakeDependFile(si->c_str()); + this->Makefile->AddCMakeDependFile(*si); } } fprintf(fout, ")\n"); diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 7d58d68f5..d5d99a03a 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -3369,7 +3369,7 @@ int cmMakefile::ConfigureFile(const char* infile, const char* outfile, } std::string soutfile = outfile; std::string sinfile = infile; - this->AddCMakeDependFile(infile); + this->AddCMakeDependFile(sinfile); cmSystemTools::ConvertToUnixSlashes(soutfile); mode_t perm = 0; cmSystemTools::GetPermissions(sinfile.c_str(), perm); diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index 0a877529a..42971559e 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -648,7 +648,7 @@ public: const std::vector& GetListFiles() const { return this->ListFiles; } ///! When the file changes cmake will be re-run from the build system. - void AddCMakeDependFile(const char* file) + void AddCMakeDependFile(const std::string& file) { this->ListFiles.push_back(file);} /** @@ -666,7 +666,7 @@ public: */ const std::vector& GetOutputFiles() const { return this->OutputFiles; } - void AddCMakeOutputFile(const char* file) + void AddCMakeOutputFile(const std::string& file) { this->OutputFiles.push_back(file);} /** diff --git a/Source/cmOSXBundleGenerator.cxx b/Source/cmOSXBundleGenerator.cxx index d3cdf854b..a475c7cfa 100644 --- a/Source/cmOSXBundleGenerator.cxx +++ b/Source/cmOSXBundleGenerator.cxx @@ -49,7 +49,7 @@ void cmOSXBundleGenerator::CreateAppBundle(const std::string& targetName, out += "/"; out += this->Target->GetAppBundleDirectory(this->ConfigName, false); cmSystemTools::MakeDirectory(out.c_str()); - this->Makefile->AddCMakeOutputFile(out.c_str()); + this->Makefile->AddCMakeOutputFile(out); std::string newoutpath = out; @@ -62,7 +62,7 @@ void cmOSXBundleGenerator::CreateAppBundle(const std::string& targetName, this->LocalGenerator->GenerateAppleInfoPList(this->Target, targetName.c_str(), plist.c_str()); - this->Makefile->AddCMakeOutputFile(plist.c_str()); + this->Makefile->AddCMakeOutputFile(plist); outpath = newoutpath; } @@ -114,7 +114,7 @@ void cmOSXBundleGenerator::CreateFramework( newName += "/Current"; cmSystemTools::RemoveFile(newName.c_str()); cmSystemTools::CreateSymlink(oldName.c_str(), newName.c_str()); - this->Makefile->AddCMakeOutputFile(newName.c_str()); + this->Makefile->AddCMakeOutputFile(newName); // foo -> Versions/Current/foo oldName = "Versions/Current/"; @@ -123,7 +123,7 @@ void cmOSXBundleGenerator::CreateFramework( newName += name; cmSystemTools::RemoveFile(newName.c_str()); cmSystemTools::CreateSymlink(oldName.c_str(), newName.c_str()); - this->Makefile->AddCMakeOutputFile(newName.c_str()); + this->Makefile->AddCMakeOutputFile(newName); // Resources -> Versions/Current/Resources if(this->MacContentFolders->find("Resources") != @@ -134,7 +134,7 @@ void cmOSXBundleGenerator::CreateFramework( newName += "Resources"; cmSystemTools::RemoveFile(newName.c_str()); cmSystemTools::CreateSymlink(oldName.c_str(), newName.c_str()); - this->Makefile->AddCMakeOutputFile(newName.c_str()); + this->Makefile->AddCMakeOutputFile(newName); } // Headers -> Versions/Current/Headers @@ -146,7 +146,7 @@ void cmOSXBundleGenerator::CreateFramework( newName += "Headers"; cmSystemTools::RemoveFile(newName.c_str()); cmSystemTools::CreateSymlink(oldName.c_str(), newName.c_str()); - this->Makefile->AddCMakeOutputFile(newName.c_str()); + this->Makefile->AddCMakeOutputFile(newName); } // PrivateHeaders -> Versions/Current/PrivateHeaders @@ -158,7 +158,7 @@ void cmOSXBundleGenerator::CreateFramework( newName += "PrivateHeaders"; cmSystemTools::RemoveFile(newName.c_str()); cmSystemTools::CreateSymlink(oldName.c_str(), newName.c_str()); - this->Makefile->AddCMakeOutputFile(newName.c_str()); + this->Makefile->AddCMakeOutputFile(newName); } } @@ -174,7 +174,7 @@ void cmOSXBundleGenerator::CreateCFBundle(const std::string& targetName, out += "/"; out += this->Target->GetCFBundleDirectory(this->ConfigName, false); cmSystemTools::MakeDirectory(out.c_str()); - this->Makefile->AddCMakeOutputFile(out.c_str()); + this->Makefile->AddCMakeOutputFile(out); // Configure the Info.plist file. Note that it needs the executable name // to be set. @@ -184,7 +184,7 @@ void cmOSXBundleGenerator::CreateCFBundle(const std::string& targetName, this->LocalGenerator->GenerateAppleInfoPList(this->Target, targetName.c_str(), plist.c_str()); - this->Makefile->AddCMakeOutputFile(plist.c_str()); + this->Makefile->AddCMakeOutputFile(plist); } //----------------------------------------------------------------------------