cmState: Move ProjectName from cmMakefile.

This commit is contained in:
Stephen Kelly 2015-08-02 09:41:06 +02:00
parent 6ce940ac97
commit b3f2299e06
4 changed files with 18 additions and 5 deletions

View File

@ -1525,7 +1525,7 @@ void cmMakefile::InitializeFromParent(cmMakefile* parent)
parent->GetProperty("LINK_DIRECTORIES")); parent->GetProperty("LINK_DIRECTORIES"));
// the initial project name // the initial project name
this->ProjectName = parent->ProjectName; this->SetProjectName(parent->GetProjectName());
// Copy include regular expressions. // Copy include regular expressions.
this->ComplainFileRegularExpression = parent->ComplainFileRegularExpression; this->ComplainFileRegularExpression = parent->ComplainFileRegularExpression;
@ -2046,12 +2046,12 @@ void cmMakefile::RemoveCacheDefinition(const std::string& name)
void cmMakefile::SetProjectName(std::string const& p) void cmMakefile::SetProjectName(std::string const& p)
{ {
this->ProjectName = p; this->StateSnapshot.SetProjectName(p);
} }
std::string cmMakefile::GetProjectName() const std::string cmMakefile::GetProjectName() const
{ {
return this->ProjectName.c_str(); return this->StateSnapshot.GetProjectName();
} }
void cmMakefile::AddGlobalLinkInformation(const std::string& name, void cmMakefile::AddGlobalLinkInformation(const std::string& name,

View File

@ -810,8 +810,6 @@ protected:
mutable std::set<cmListFileContext> CMP0054ReportedIds; mutable std::set<cmListFileContext> CMP0054ReportedIds;
std::string ProjectName; // project name
// libraries, classes, and executables // libraries, classes, and executables
mutable cmTargets Targets; mutable cmTargets Targets;
#if defined(CMAKE_BUILD_WITH_CMAKE) #if defined(CMAKE_BUILD_WITH_CMAKE)

View File

@ -75,6 +75,8 @@ struct cmState::BuildsystemDirectoryStateType
std::vector<std::string> CompileOptions; std::vector<std::string> CompileOptions;
std::vector<cmListFileBacktrace> CompileOptionsBacktraces; std::vector<cmListFileBacktrace> CompileOptionsBacktraces;
std::string ProjectName;
cmPropertyMap Properties; cmPropertyMap Properties;
}; };
@ -1312,6 +1314,16 @@ cmState::Directory cmState::Snapshot::GetDirectory() const
return Directory(this->Position->BuildSystemDirectory, *this); return Directory(this->Position->BuildSystemDirectory, *this);
} }
void cmState::Snapshot::SetProjectName(const std::string& name)
{
this->Position->BuildSystemDirectory->ProjectName = name;
}
std::string cmState::Snapshot::GetProjectName() const
{
return this->Position->BuildSystemDirectory->ProjectName;
}
cmState::Directory::Directory( cmState::Directory::Directory(
cmLinkedTree<BuildsystemDirectoryStateType>::iterator iter, cmLinkedTree<BuildsystemDirectoryStateType>::iterator iter,
const cmState::Snapshot& snapshot) const cmState::Snapshot& snapshot)

View File

@ -86,6 +86,9 @@ public:
Directory GetDirectory() const; Directory GetDirectory() const;
void SetProjectName(std::string const& name);
std::string GetProjectName() const;
struct StrictWeakOrder struct StrictWeakOrder
{ {
bool operator()(const cmState::Snapshot& lhs, bool operator()(const cmState::Snapshot& lhs,