diff options
Diffstat (limited to 'Source/cmUnixMakefileGenerator.cxx')
-rw-r--r-- | Source/cmUnixMakefileGenerator.cxx | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Source/cmUnixMakefileGenerator.cxx b/Source/cmUnixMakefileGenerator.cxx index 225cd33..24f4036 100644 --- a/Source/cmUnixMakefileGenerator.cxx +++ b/Source/cmUnixMakefileGenerator.cxx @@ -723,7 +723,15 @@ OutputSubDirectoryVars(std::ostream& fout, for(unsigned int i =0; i < SubDirectories.size(); i++) { std::string subdir = FixDirectoryName(SubDirectories[i].c_str()); - fout << target << "_" << subdir.c_str() << ":\n"; + fout << target << "_" << subdir.c_str() << ":"; + const std::set<std::string>& subdirDepends = m_Makefile->GetSubdirDepends(SubDirectories[i].c_str()); + for(std::set<std::string>::const_iterator d = subdirDepends.begin(); + d != subdirDepends.end(); ++d) + { + std::string fixed_d = FixDirectoryName(d->c_str()); + fout << " " << target << "_" << fixed_d.c_str(); + } + fout << "\n"; if(target1) { fout << "\t@if test ! -d " << SubDirectories[i].c_str() << "; then ${MAKE} rebuild_cache; fi\n" |