1 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2    file Copyright.txt or https://cmake.org/licensing for details.  */
3 #pragma once
4 
5 #include "cmConfigure.h" // IWYU pragma: keep
6 
7 #include <string>
8 
9 #include "cmNinjaTargetGenerator.h"
10 
11 class cmGeneratorTarget;
12 
13 class cmNinjaUtilityTargetGenerator : public cmNinjaTargetGenerator
14 {
15 public:
16   cmNinjaUtilityTargetGenerator(cmGeneratorTarget* target);
17   ~cmNinjaUtilityTargetGenerator() override;
18 
19   void Generate(const std::string& config) override;
20 
21 private:
22   void WriteUtilBuildStatements(std::string const& config,
23                                 std::string const& fileConfig);
24 };
25