diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 8a3d19701..720a5e45b 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -1756,11 +1756,6 @@ void cmMakefile::AddSubDirectory(const std::string& srcPath, cmMakefile* subMf = new cmMakefile(this->GlobalGenerator, newSnapshot); this->GetGlobalGenerator()->AddMakefile(subMf); - // create a new local generator and set its parent - cmLocalGenerator *lg2 = this->GetGlobalGenerator() - ->CreateLocalGenerator(subMf); - this->GetGlobalGenerator()->AddLocalGenerator(lg2); - // set the subdirs start dirs subMf->SetCurrentSourceDirectory(srcPath); subMf->SetCurrentBinaryDirectory(binPath); @@ -1777,6 +1772,11 @@ void cmMakefile::AddSubDirectory(const std::string& srcPath, { this->UnConfiguredDirectories.push_back(subMf); } + + // create a new local generator and set its parent + cmLocalGenerator *lg2 = this->GetGlobalGenerator() + ->CreateLocalGenerator(subMf); + this->GetGlobalGenerator()->AddLocalGenerator(lg2); } void cmMakefile::SetCurrentSourceDirectory(const std::string& dir)