summaryrefslogtreecommitdiff
path: root/Source/cmInstallScriptGenerator.h
diff options
context:
space:
mode:
authorJon Chronopoulos <patches@crondog.com>2018-05-29 21:37:26 +1000
committerBrad King <brad.king@kitware.com>2018-06-07 13:18:23 -0400
commit6dad812143ae50df5ed0de4c5c2d433b6d59aea2 (patch)
tree9a20cd5510a8275bbef5405c8342fd316392ca90 /Source/cmInstallScriptGenerator.h
parentacaaca968c512fa420f3564649be1f49acfa6a6a (diff)
downloadcmake-6dad812143ae50df5ed0de4c5c2d433b6d59aea2.tar.gz
install: Teach CODE,SCRIPT modes to evaluate generator expressions
Fixes: #15785
Diffstat (limited to 'Source/cmInstallScriptGenerator.h')
-rw-r--r--Source/cmInstallScriptGenerator.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/Source/cmInstallScriptGenerator.h b/Source/cmInstallScriptGenerator.h
index fe0f7c6f11..534bc1dec7 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,18 @@ 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;
};
#endif