diff options
author | Alexander Neundorf <neundorf@kde.org> | 2009-09-16 22:01:23 (GMT) |
---|---|---|
committer | Alexander Neundorf <neundorf@kde.org> | 2009-09-16 22:01:23 (GMT) |
commit | 298de4374b99a98dd336620d6d049c725e48faf8 (patch) | |
tree | 2234e26d10b89df1af80d5ce8df9b45f99c1381a /Source/cmLocalUnixMakefileGenerator3.h | |
parent | 229b67a2499586a9aaf54d3d5a88fee7a3f37e2c (diff) | |
download | CMake-298de4374b99a98dd336620d6d049c725e48faf8.zip CMake-298de4374b99a98dd336620d6d049c725e48faf8.tar.gz CMake-298de4374b99a98dd336620d6d049c725e48faf8.tar.bz2 |
Major improvement of the generated targets in Eclipse.
Before this change all targets were displayed in the top level directory of
the project. Now the targets are displayed in the correct directory.
The targets "clean" and "all" are now created in every subdirectory.
Also now the targets for just compiling one file, preprocessing one file,
assembling one file are are created for Eclipse.
Additionally all targets get a prefix now in eclipse, so that they are
sorted in a way which makes sense (global targets first, then executable and
libraries, then object files, then preprocessed, then assembly). Also
this prefix gives the user a hint what the target is, i.e. whether it's a
library or an executable or something else.
Alex
Diffstat (limited to 'Source/cmLocalUnixMakefileGenerator3.h')
-rw-r--r-- | Source/cmLocalUnixMakefileGenerator3.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator3.h b/Source/cmLocalUnixMakefileGenerator3.h index 0bb0314..ce6b45f 100644 --- a/Source/cmLocalUnixMakefileGenerator3.h +++ b/Source/cmLocalUnixMakefileGenerator3.h @@ -246,6 +246,10 @@ public: struct LocalObjectInfo: public std::vector<LocalObjectEntry> { bool HasSourceExtension; + bool HasPreprocessRule; + bool HasAssembleRule; + LocalObjectInfo():HasSourceExtension(false), HasPreprocessRule(false), + HasAssembleRule(false) {} }; std::map<cmStdString, LocalObjectInfo> const& GetLocalObjectFiles() { return this->LocalObjectFiles;} @@ -266,6 +270,12 @@ public: // Get the directories into which the .o files will go for this target void GetTargetObjectFileDirectories(cmTarget* target, std::vector<std::string>& dirs); + + // Fill the vector with the target names for the object files, + // preprocessed files and assembly files. Currently only used by the + // Eclipse generator. + void GetIndividualFileTargets(std::vector<std::string>& targets); + protected: void WriteLocalMakefile(); |