diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index d4bf6c12f4..3ac77e9ea6 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -1485,10 +1485,8 @@ void cmMakefile::AddLinkDirectory(const std::string& dir) } } -void cmMakefile::InitializeFromParent() +void cmMakefile::InitializeFromParent(cmMakefile* parent) { - cmMakefile *parent = this->LocalGenerator->GetParent()->GetMakefile(); - // Initialize definitions with the closure of the parent scope. this->Internal->InitializeDefinitions(parent); @@ -1672,7 +1670,7 @@ void cmMakefile::Configure() void cmMakefile::ConfigureSubDirectory(cmMakefile *mf) { - mf->InitializeFromParent(); + mf->InitializeFromParent(this); std::string currentStart = mf->GetCurrentSourceDirectory(); if (this->GetCMakeInstance()->GetDebugOutput()) { diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index 85451ad5e6..def0c23e9e 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -728,7 +728,7 @@ public: cmPropertyMap &GetProperties() { return this->Properties; } ///! Initialize a makefile from its parent - void InitializeFromParent(); + void InitializeFromParent(cmMakefile* parent); void AddInstallGenerator(cmInstallGenerator* g) { if(g) this->InstallGenerators.push_back(g); }