cmInstallCMakeConfigExportGenerator.cxx 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing for details. */
  3. #include "cmInstallCMakeConfigExportGenerator.h"
  4. #include <utility>
  5. #include <cm/memory>
  6. #include "cmExportInstallCMakeConfigGenerator.h"
  7. #include "cmExportInstallFileGenerator.h"
  8. #include "cmListFileCache.h"
  9. class cmExportSet;
  10. cmInstallCMakeConfigExportGenerator::cmInstallCMakeConfigExportGenerator(
  11. cmExportSet* exportSet, std::string destination, std::string filePermissions,
  12. std::vector<std::string> const& configurations, std::string component,
  13. MessageLevel message, bool excludeFromAll, std::string filename,
  14. std::string targetNamespace, std::string cxxModulesDirectory, bool exportOld,
  15. bool exportPackageDependencies, cmListFileBacktrace backtrace)
  16. : cmInstallExportGenerator(
  17. exportSet, std::move(destination), std::move(filePermissions),
  18. configurations, std::move(component), message, excludeFromAll,
  19. std::move(filename), std::move(targetNamespace),
  20. std::move(cxxModulesDirectory), std::move(backtrace))
  21. , ExportOld(exportOld)
  22. , ExportPackageDependencies(exportPackageDependencies)
  23. {
  24. this->EFGen = cm::make_unique<cmExportInstallCMakeConfigGenerator>(this);
  25. }
  26. cmInstallCMakeConfigExportGenerator::~cmInstallCMakeConfigExportGenerator() =
  27. default;
  28. void cmInstallCMakeConfigExportGenerator::GenerateScript(std::ostream& os)
  29. {
  30. auto* const efgen =
  31. static_cast<cmExportInstallCMakeConfigGenerator*>(this->EFGen.get());
  32. efgen->SetExportOld(this->ExportOld);
  33. efgen->SetExportPackageDependencies(this->ExportPackageDependencies);
  34. this->cmInstallExportGenerator::GenerateScript(os);
  35. }