summaryrefslogtreecommitdiffstats
path: root/Source/cmInstallTargetGenerator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-01-18 20:46:09 (GMT)
committerBrad King <brad.king@kitware.com>2021-01-28 17:46:32 (GMT)
commit599027622652421deca0ca9ef749a48a24eea509 (patch)
treec398f06427811aff8367df97d310a422b0bd23a1 /Source/cmInstallTargetGenerator.h
parentc9e87e34479fb931c49c93bb8d9edefc3803adc4 (diff)
downloadCMake-599027622652421deca0ca9ef749a48a24eea509.zip
CMake-599027622652421deca0ca9ef749a48a24eea509.tar.gz
CMake-599027622652421deca0ca9ef749a48a24eea509.tar.bz2
cmInstallTargetGenerator: Factor out method to get list of target files
Diffstat (limited to 'Source/cmInstallTargetGenerator.h')
-rw-r--r--Source/cmInstallTargetGenerator.h28
1 files changed, 25 insertions, 3 deletions
diff --git a/Source/cmInstallTargetGenerator.h b/Source/cmInstallTargetGenerator.h
index fe54ca6..512394a 100644
--- a/Source/cmInstallTargetGenerator.h
+++ b/Source/cmInstallTargetGenerator.h
@@ -9,6 +9,7 @@
#include <vector>
#include "cmInstallGenerator.h"
+#include "cmInstallType.h"
#include "cmListFileCache.h"
#include "cmScriptGenerator.h"
@@ -67,12 +68,33 @@ public:
cmListFileBacktrace const& GetBacktrace() const { return this->Backtrace; }
+ struct Files
+ {
+ // Names or paths of files to be read from the source or build tree.
+ // The paths may be computed as [FromDir/] + From[i].
+ std::vector<std::string> From;
+
+ // Corresponding names of files to be written in the install directory.
+ // The paths may be computed as Destination/ + [ToDir/] + To[i].
+ std::vector<std::string> To;
+
+ // Prefix for all files in From.
+ std::string FromDir;
+
+ // Prefix for all files in To.
+ std::string ToDir;
+
+ bool NoTweak = false;
+ bool UseSourcePermissions = false;
+ cmInstallType Type = cmInstallType();
+ };
+ Files GetFiles(std::string const& config) const;
+
+ bool GetOptional() const { return this->Optional; }
+
protected:
void GenerateScriptForConfig(std::ostream& os, const std::string& config,
Indent indent) override;
- void GenerateScriptForConfigObjectLibrary(std::ostream& os,
- const std::string& config,
- Indent indent);
using TweakMethod = void (cmInstallTargetGenerator::*)(std::ostream&, Indent,
const std::string&,
const std::string&);