diff options
Diffstat (limited to 'Source/cmMakefile.cxx')
-rw-r--r-- | Source/cmMakefile.cxx | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index d537f34..ffc6bf9 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -1599,6 +1599,15 @@ void cmMakefile::ConfigureSubDirectory(cmLocalGenerator *lg2) } // finally configure the subdir lg2->Configure(); + + // at the end handle any old style subdirs + for (std::vector<cmLocalGenerator *>::iterator sdi = + this->UnConfiguredDirectories.begin(); + sdi != this->UnConfiguredDirectories.end(); ++sdi) + { + this->ConfigureSubDirectory(*sdi); + } + if (this->GetCMakeInstance()->GetDebugOutput()) { std::string msg=" Returning to "; @@ -1638,6 +1647,10 @@ void cmMakefile::AddSubDirectory(const std::string& srcPath, { this->ConfigureSubDirectory(lg2); } + else + { + this->UnConfiguredDirectories.push_back(lg2); + } } void cmMakefile::SetCurrentSourceDirectory(const std::string& dir) |