diff options
author | Jon Chronopoulos <patches@crondog.com> | 2018-11-29 10:11:07 (GMT) |
---|---|---|
committer | Craig Scott <craig.scott@crascit.com> | 2018-12-22 22:03:38 (GMT) |
commit | 25cae1e85d501c463141388e4eb580bdfae6ed2f (patch) | |
tree | 5028fc6c22c526e2b67a4539b6d0a7b69747b17a /Source/cmInstallScriptGenerator.h | |
parent | cb995ddea2d633310b270e99d020fe490fff5ec7 (diff) | |
download | CMake-25cae1e85d501c463141388e4eb580bdfae6ed2f.zip CMake-25cae1e85d501c463141388e4eb580bdfae6ed2f.tar.gz CMake-25cae1e85d501c463141388e4eb580bdfae6ed2f.tar.bz2 |
install: Teach CODE,SCRIPT modes to evaluate generator expressions
This also introduces CMP0087 which will keep the OLD behaviour of not
evaluating generator expressions
Fixes: #15785
Diffstat (limited to 'Source/cmInstallScriptGenerator.h')
-rw-r--r-- | Source/cmInstallScriptGenerator.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/cmInstallScriptGenerator.h b/Source/cmInstallScriptGenerator.h index fe0f7c6..05199d7 100644 --- a/Source/cmInstallScriptGenerator.h +++ b/Source/cmInstallScriptGenerator.h @@ -6,10 +6,13 @@ #include "cmConfigure.h" // IWYU pragma: keep #include "cmInstallGenerator.h" +#include "cmScriptGenerator.h" #include <iosfwd> #include <string> +class cmLocalGenerator; + /** \class cmInstallScriptGenerator * \brief Generate target installation rules. */ @@ -20,10 +23,19 @@ public: const char* component, bool exclude_from_all); ~cmInstallScriptGenerator() override; + void Compute(cmLocalGenerator* lg) override; + protected: - void GenerateScript(std::ostream& os) override; + void GenerateScriptActions(std::ostream& os, Indent indent) override; + void GenerateScriptForConfig(std::ostream& os, const std::string& config, + Indent indent) override; + void AddScriptInstallRule(std::ostream& os, Indent indent, + std::string const& script); + std::string Script; bool Code; + cmLocalGenerator* LocalGenerator; + bool AllowGenex; }; #endif |