diff options
author | Marc Chevrier <marc.chevrier@gmail.com> | 2021-04-15 12:13:57 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2021-04-15 16:17:31 (GMT) |
commit | d67cc4882d54a18abbd5d01365ce1fc72d702a0e (patch) | |
tree | d609494ba1f13292a45d92630b47c4094ad2cc82 /Source/cmCustomCommandGenerator.h | |
parent | 498b916cdd96330baa33bc10667b43cbb78674d4 (diff) | |
download | CMake-d67cc4882d54a18abbd5d01365ce1fc72d702a0e.zip CMake-d67cc4882d54a18abbd5d01365ce1fc72d702a0e.tar.gz CMake-d67cc4882d54a18abbd5d01365ce1fc72d702a0e.tar.bz2 |
Xcode: Add support of DEPFILE for add_custom_command
Issue: #20286
Diffstat (limited to 'Source/cmCustomCommandGenerator.h')
-rw-r--r-- | Source/cmCustomCommandGenerator.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Source/cmCustomCommandGenerator.h b/Source/cmCustomCommandGenerator.h index 53e5573..e70909a 100644 --- a/Source/cmCustomCommandGenerator.h +++ b/Source/cmCustomCommandGenerator.h @@ -4,6 +4,7 @@ #include "cmConfigure.h" // IWYU pragma: keep +#include <functional> #include <set> #include <string> #include <utility> @@ -19,6 +20,8 @@ class cmLocalGenerator; class cmCustomCommandGenerator { + std::string GetInternalDepfileName(const std::string&, const std::string&); + cmCustomCommand const* CC; std::string OutputConfig; std::string CommandConfig; @@ -32,15 +35,19 @@ class cmCustomCommandGenerator std::vector<std::string> Depends; std::string WorkingDirectory; std::set<BT<std::pair<std::string, bool>>> Utilities; + std::function<std::string(const std::string&, const std::string&)> + ComputeInternalDepfile; void FillEmulatorsWithArguments(); std::vector<std::string> GetCrossCompilingEmulator(unsigned int c) const; const char* GetArgv0Location(unsigned int c) const; public: - cmCustomCommandGenerator(cmCustomCommand const& cc, std::string config, - cmLocalGenerator* lg, bool transformDepfile = true, - cm::optional<std::string> crossConfig = {}); + cmCustomCommandGenerator( + cmCustomCommand const& cc, std::string config, cmLocalGenerator* lg, + bool transformDepfile = true, cm::optional<std::string> crossConfig = {}, + std::function<std::string(const std::string&, const std::string&)> + computeInternalDepfile = {}); cmCustomCommandGenerator(const cmCustomCommandGenerator&) = delete; cmCustomCommandGenerator(cmCustomCommandGenerator&&) = default; cmCustomCommandGenerator& operator=(const cmCustomCommandGenerator&) = |