cmMakefile: Move IncludeScope to ReadDependentFile.

Add replacement simple push/pop in the other two callers of
ReadListFile.
This commit is contained in:
Stephen Kelly 2015-06-21 19:51:46 +02:00
parent e53072d638
commit 826b6e6818
2 changed files with 15 additions and 11 deletions

View File

@ -532,8 +532,10 @@ bool cmMakefile::ProcessBuildsystemFile(const char* listfile)
{
this->AddDefinition("CMAKE_PARENT_LIST_FILE", listfile);
std::string curSrc = this->GetCurrentSourceDirectory();
bool result = this->ReadListFile(listfile, true,
this->PushPolicyBarrier();
bool result = this->ReadListFile(listfile,
curSrc == this->GetHomeDirectory());
this->PopPolicyBarrier(!cmSystemTools::GetFatalErrorOccured());
this->EnforceDirectoryLevelRules();
return result;
}
@ -542,24 +544,31 @@ bool cmMakefile::ReadDependentFile(const char* listfile, bool noPolicyScope)
{
this->AddDefinition("CMAKE_PARENT_LIST_FILE",
this->GetDefinition("CMAKE_CURRENT_LIST_FILE"));
bool result = this->ReadListFile(listfile, noPolicyScope, false);
bool result = false;
{
IncludeScope incScope(this, noPolicyScope);
result = this->ReadListFile(listfile, false);
if(cmSystemTools::GetFatalErrorOccured())
{
incScope.Quiet();
}
}
this->ListFileStack.pop_back();
return result;
}
bool cmMakefile::ReadListFile(const char* listfile)
{
bool result = this->ReadListFile(listfile, true, false);
this->PushPolicyBarrier();
bool result = this->ReadListFile(listfile, false);
this->PopPolicyBarrier(!cmSystemTools::GetFatalErrorOccured());
this->ListFileStack.pop_back();
return result;
}
bool cmMakefile::ReadListFile(const char* listfile,
bool noPolicyScope,
bool requireProjectCommand)
{
IncludeScope incScope(this, noPolicyScope);
std::string filenametoread =
cmSystemTools::CollapseFullPath(listfile,
this->GetCurrentSourceDirectory());
@ -590,10 +599,6 @@ bool cmMakefile::ReadListFile(const char* listfile,
this->MarkVariableAsUsed("CMAKE_CURRENT_LIST_DIR");
this->ReadListFileInternal(listFile);
if(cmSystemTools::GetFatalErrorOccured())
{
incScope.Quiet();
}
this->CheckForUnusedVariables();
this->AddDefinition("CMAKE_PARENT_LIST_FILE", currentParentFile.c_str());

View File

@ -915,7 +915,6 @@ private:
cmState::Snapshot StateSnapshot;
bool ReadListFile(const char* listfile,
bool noPolicyScope,
bool requireProjectCommand);
void ReadListFileInternal(cmListFile const& listFile);