diff options
author | Alexander Neundorf <neundorf@kde.org> | 2007-05-09 12:25:45 (GMT) |
---|---|---|
committer | Alexander Neundorf <neundorf@kde.org> | 2007-05-09 12:25:45 (GMT) |
commit | 7f11536704d9f971cf5c8b0a2b490ccc6af58588 (patch) | |
tree | 05b5b24050a629bf9ceb59d743f77ca909448229 /Source/cmLocalGenerator.h | |
parent | 5af310502142252995ad5d74e66355be4094b7cc (diff) | |
download | CMake-7f11536704d9f971cf5c8b0a2b490ccc6af58588.zip CMake-7f11536704d9f971cf5c8b0a2b490ccc6af58588.tar.gz CMake-7f11536704d9f971cf5c8b0a2b490ccc6af58588.tar.bz2 |
ENH: now target names can be used in add_custom_command() and
add_custom_target() as COMMAND, and cmake will recognize them and replace
them with the actual output path of these executables. Also the dependency
will be added automatically. Test included.
ENH: moved TraceVSDependencies() to the end of GlobalGenerator::Configure(),
so it is done now in one central place
Alex
Diffstat (limited to 'Source/cmLocalGenerator.h')
-rw-r--r-- | Source/cmLocalGenerator.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/cmLocalGenerator.h b/Source/cmLocalGenerator.h index 6519889..a9f5682 100644 --- a/Source/cmLocalGenerator.h +++ b/Source/cmLocalGenerator.h @@ -42,7 +42,7 @@ public: /** * Generate the makefile for this directory. */ - virtual void Generate() {}; + virtual void Generate() {} /** * Process the CMakeLists files for this directory to fill in the @@ -50,6 +50,11 @@ public: */ virtual void Configure(); + /** + * Calls TraceVSDependencies() on all targets of this generator. + */ + virtual void TraceDependencies(); + /** * Perform any final calculations prior to generation */ @@ -137,6 +142,11 @@ public: the source directory of this generator. This should only be used for dependencies of custom commands. */ std::string GetRealDependency(const char* name, const char* config); + + /** Translate a command as given in CMake code to the location of the + executable if the command is the name of a CMake executable target. + If that's not the case, just return the original name. */ + std::string GetRealLocation(const char* inName, const char* config); ///! for existing files convert to output path and short path if spaces std::string ConvertToOutputForExisting(const char* p); @@ -298,6 +308,8 @@ protected: bool IgnoreLibPrefix; bool Configured; bool EmitUniversalBinaryFlags; + // A type flag is not nice. It's used only in TraceDependencies(). + bool IsMakefileGenerator; // Hack for ExpandRuleVariable until object-oriented version is // committed. std::string TargetImplib; |