diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2008-01-30 17:04:38 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2008-01-30 17:04:38 (GMT) |
commit | 8a83f096371ecc4f73afe43830e94899c704d5cf (patch) | |
tree | e035e45d661fcc35189daafa686484577b502ddc /Source/cmGlobalGenerator.h | |
parent | 21e6791789be947c471d0c551e69364e9f475b7e (diff) | |
download | CMake-8a83f096371ecc4f73afe43830e94899c704d5cf.zip CMake-8a83f096371ecc4f73afe43830e94899c704d5cf.tar.gz CMake-8a83f096371ecc4f73afe43830e94899c704d5cf.tar.bz2 |
ENH: fix for bug 3218 dependant projects are written out automatically if they are in the project. Also fix bug 5829, remove hard coded CMAKE_CONFIGURATION_TYPES from vs 7 generator
Diffstat (limited to 'Source/cmGlobalGenerator.h')
-rw-r--r-- | Source/cmGlobalGenerator.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h index 4654a41..b40b5d8 100644 --- a/Source/cmGlobalGenerator.h +++ b/Source/cmGlobalGenerator.h @@ -234,8 +234,9 @@ public: // Class to track a set of dependencies. class TargetDependSet: public std::set<cmTarget const*> {}; - // what targets does the specified target depend on - TargetDependSet const& GetTargetDepends(cmTarget const& target); + // what targets does the specified target depend on directly + // via a target_link_libraries or add_dependencies + TargetDependSet const& GetTargetDirectDepends(cmTarget const& target); const std::map<cmStdString, std::vector<cmLocalGenerator*> >& GetProjectMap() const {return this->ProjectMap;} @@ -245,6 +246,15 @@ public: void GetFilesReplacedDuringGenerate(std::vector<std::string>& filenames); protected: + // for a project collect all its targets by following depend + // information, and also collect all the targets + void GetTargetSets(cmGlobalGenerator::TargetDependSet& projectTargets, + cmGlobalGenerator::TargetDependSet& originalTargets, + cmLocalGenerator* root, + std::vector<cmLocalGenerator*> const& generators); + void AddTargetDepends(cmTarget* target, + cmGlobalGenerator::TargetDependSet& + projectTargets); void SetLanguageEnabledFlag(const char* l, cmMakefile* mf); void SetLanguageEnabledMaps(const char* l, cmMakefile* mf); |