summaryrefslogtreecommitdiffstats
path: root/Source/cmCustomCommandGenerator.h
diff options
context:
space:
mode:
authorKyle Edwards <kyle.edwards@kitware.com>2020-12-09 21:39:15 (GMT)
committerBrad King <brad.king@kitware.com>2020-12-15 12:01:21 (GMT)
commitdcf9f4d2f71d7c608ce24b690d30d465df51dc71 (patch)
tree0868f3cd8176eb883063a77350864b70782b2dad /Source/cmCustomCommandGenerator.h
parent15467f12f796205f97721f43ae7d9ee7cdc47466 (diff)
downloadCMake-dcf9f4d2f71d7c608ce24b690d30d465df51dc71.zip
CMake-dcf9f4d2f71d7c608ce24b690d30d465df51dc71.tar.gz
CMake-dcf9f4d2f71d7c608ce24b690d30d465df51dc71.tar.bz2
Ninja Multi-Config: Add support for cross-config custom commands
Co-Author: Brad King <brad.king@kitware.com>
Diffstat (limited to 'Source/cmCustomCommandGenerator.h')
-rw-r--r--Source/cmCustomCommandGenerator.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/Source/cmCustomCommandGenerator.h b/Source/cmCustomCommandGenerator.h
index dac3596..4be5b3f 100644
--- a/Source/cmCustomCommandGenerator.h
+++ b/Source/cmCustomCommandGenerator.h
@@ -9,6 +9,8 @@
#include <utility>
#include <vector>
+#include <cm/optional>
+
#include "cmCustomCommandLines.h"
#include "cmListFileCache.h"
@@ -18,7 +20,8 @@ class cmLocalGenerator;
class cmCustomCommandGenerator
{
cmCustomCommand const* CC;
- std::string Config;
+ std::string OutputConfig;
+ std::string CommandConfig;
cmLocalGenerator* LG;
bool OldStyle;
bool MakeVars;
@@ -36,7 +39,8 @@ class cmCustomCommandGenerator
public:
cmCustomCommandGenerator(cmCustomCommand const& cc, std::string config,
- cmLocalGenerator* lg, bool transformDepfile = true);
+ cmLocalGenerator* lg, bool transformDepfile = true,
+ cm::optional<std::string> crossConfig = {});
cmCustomCommandGenerator(const cmCustomCommandGenerator&) = delete;
cmCustomCommandGenerator(cmCustomCommandGenerator&&) = default;
cmCustomCommandGenerator& operator=(const cmCustomCommandGenerator&) =
@@ -55,4 +59,7 @@ public:
bool HasOnlyEmptyCommandLines() const;
std::string GetFullDepfile() const;
std::string GetInternalDepfile() const;
+
+ const std::string& GetOutputConfig() const { return this->OutputConfig; }
+ const std::string& GetCommandConfig() const { return this->CommandConfig; }
};