cmLocalGenerator: Refactor custom command generator construction

Add support for constructing and using multiple generators for one
custom command.  cmGeneratorTarget contains a code path that needs this
behavior when used with Ninja but not other generators, so use virtual
dispatch through cmLocalGenerator.
This commit is contained in:
Brad King
2020-10-22 13:57:54 -04:00
parent d29da8ed3e
commit 7b64b0cd5a
5 changed files with 115 additions and 87 deletions

View File

@@ -70,6 +70,9 @@ public:
const std::string& fileConfig,
cmNinjaTargetDepends depends);
std::vector<cmCustomCommandGenerator> MakeCustomCommandGenerators(
cmCustomCommand const& cc, std::string const& config) override;
void AddCustomCommandTarget(cmCustomCommand const* cc,
cmGeneratorTarget* target);
void AppendCustomCommandLines(cmCustomCommandGenerator const& ccg,