cmTargetExport.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  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. #include "cmConfigure.h" // IWYU pragma: keep
  5. #include <string>
  6. class cmFileSet;
  7. class cmGeneratorTarget;
  8. class cmInstallCxxModuleBmiGenerator;
  9. class cmInstallFileSetGenerator;
  10. class cmInstallFilesGenerator;
  11. class cmInstallTargetGenerator;
  12. /** \brief A member of an ExportSet
  13. *
  14. * This struct holds pointers to target and all relevant generators.
  15. */
  16. class cmTargetExport
  17. {
  18. public:
  19. std::string TargetName;
  20. cmGeneratorTarget* Target;
  21. ///@name Generators
  22. ///@{
  23. cmInstallTargetGenerator* ArchiveGenerator;
  24. cmInstallTargetGenerator* RuntimeGenerator;
  25. cmInstallTargetGenerator* LibraryGenerator;
  26. cmInstallTargetGenerator* ObjectsGenerator;
  27. cmInstallTargetGenerator* FrameworkGenerator;
  28. cmInstallTargetGenerator* BundleGenerator;
  29. cmInstallFilesGenerator* HeaderGenerator;
  30. std::map<cmFileSet*, cmInstallFileSetGenerator*> FileSetGenerators;
  31. cmInstallCxxModuleBmiGenerator* CxxModuleBmiGenerator;
  32. ///@}
  33. bool NamelinkOnly = false;
  34. };