1 /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
2 file Copyright.txt or https://cmake.org/licensing for details. */
5 #include "cmConfigure.h" // IWYU pragma: keep
10 #include "cmInstallGenerator.h"
12 class cmListFileBacktrace;
13 class cmLocalGenerator;
16 /** \class cmInstallSubdirectoryGenerator
17 * \brief Generate target installation rules.
19 class cmInstallSubdirectoryGenerator : public cmInstallGenerator
22 cmInstallSubdirectoryGenerator(cmMakefile* makefile,
23 std::string binaryDirectory,
24 cmListFileBacktrace backtrace);
25 ~cmInstallSubdirectoryGenerator() override;
27 bool HaveInstall() override;
28 void CheckCMP0082(bool& haveSubdirectoryInstall,
29 bool& haveInstallAfterSubdirectory) override;
31 bool Compute(cmLocalGenerator* lg) override;
34 void GenerateScript(std::ostream& os) override;
36 cmMakefile* const Makefile;
37 std::string const BinaryDirectory;
38 cmLocalGenerator* LocalGenerator;