diff options
author | Brad King <brad.king@kitware.com> | 2011-01-19 19:28:15 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2011-01-19 19:28:15 (GMT) |
commit | 20d11b9a33e1d1c9d472b04d1b4f18cabdaecb2d (patch) | |
tree | a01fedc6fb8472d3df2500eedc71e8825cc297c0 /Source/cmGlobalXCodeGenerator.cxx | |
parent | e4f2a9317a8cf9a2f7eb03c7f17a1f78f35a16bb (diff) | |
parent | 809ef3086d27a79d25c53680e738ceb7bb9b18fc (diff) | |
download | CMake-20d11b9a33e1d1c9d472b04d1b4f18cabdaecb2d.zip CMake-20d11b9a33e1d1c9d472b04d1b4f18cabdaecb2d.tar.gz CMake-20d11b9a33e1d1c9d472b04d1b4f18cabdaecb2d.tar.bz2 |
Merge topic 'xcode-subdir-regen-dependencies'
809ef30 Xcode: Make generation depend on all input directories
Diffstat (limited to 'Source/cmGlobalXCodeGenerator.cxx')
-rw-r--r-- | Source/cmGlobalXCodeGenerator.cxx | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index edb8e0e..1395865 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -355,7 +355,7 @@ cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root, cmCustomCommandLines commandLines; commandLines.push_back(makecommand); // Add Re-Run CMake rules - this->CreateReRunCMakeFile(root); + this->CreateReRunCMakeFile(root, gens); // now make the allbuild depend on all the non-utility targets // in the project @@ -403,10 +403,18 @@ cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root, } //---------------------------------------------------------------------------- -void cmGlobalXCodeGenerator::CreateReRunCMakeFile(cmLocalGenerator* root) +void cmGlobalXCodeGenerator::CreateReRunCMakeFile( + cmLocalGenerator* root, std::vector<cmLocalGenerator*> const& gens) { cmMakefile* mf = root->GetMakefile(); - std::vector<std::string> lfiles = mf->GetListFiles(); + std::vector<std::string> lfiles; + for(std::vector<cmLocalGenerator*>::const_iterator gi = gens.begin(); + gi != gens.end(); ++gi) + { + std::vector<std::string> const& lf = (*gi)->GetMakefile()->GetListFiles(); + lfiles.insert(lfiles.end(), lf.begin(), lf.end()); + } + // sort the array std::sort(lfiles.begin(), lfiles.end(), std::less<std::string>()); std::vector<std::string>::iterator new_end = |