cmMakefile: Use std::string in ProjectName API.

This commit is contained in:
Stephen Kelly 2015-08-02 10:57:31 +02:00
parent e8c0341d86
commit 6ce940ac97
4 changed files with 8 additions and 6 deletions

View File

@ -115,7 +115,9 @@ void CCONV cmAddCacheDefinition(void *arg, const char* name,
const char* CCONV cmGetProjectName(void *arg)
{
cmMakefile *mf = static_cast<cmMakefile *>(arg);
return mf->GetProjectName();
static std::string name;
name = mf->GetProjectName();
return name.c_str();
}
const char* CCONV cmGetHomeDirectory(void *arg)

View File

@ -2044,12 +2044,12 @@ void cmMakefile::RemoveCacheDefinition(const std::string& name)
this->GetState()->RemoveCacheEntry(name);
}
void cmMakefile::SetProjectName(const char* p)
void cmMakefile::SetProjectName(std::string const& p)
{
this->ProjectName = p;
}
const char* cmMakefile::GetProjectName() const
std::string cmMakefile::GetProjectName() const
{
return this->ProjectName.c_str();
}

View File

@ -274,12 +274,12 @@ public:
/**
* Specify the name of the project for this build.
*/
void SetProjectName(const char*);
void SetProjectName(std::string const& name);
/**
* Get the name of the project for this build.
*/
const char* GetProjectName() const;
std::string GetProjectName() const;
/** Get the configurations to be generated. */
std::string GetConfigurations(std::vector<std::string>& configs,

View File

@ -20,7 +20,7 @@ bool cmProjectCommand
this->SetError("PROJECT called with incorrect number of arguments");
return false;
}
this->Makefile->SetProjectName(args[0].c_str());
this->Makefile->SetProjectName(args[0]);
std::string bindir = args[0];
bindir += "_BINARY_DIR";