cmCPackFreeBSDGenerator.h 959 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing for details. */
  3. #ifndef cmCPackFreeBSDGenerator_h
  4. #define cmCPackFreeBSDGenerator_h
  5. #include <cmConfigure.h>
  6. #include "cmCPackArchiveGenerator.h"
  7. #include "cmCPackGenerator.h"
  8. class cmGeneratedFileStream;
  9. /** \class cmCPackFreeBSDGenerator
  10. * \brief A generator for FreeBSD package files (TXZ with a manifest)
  11. *
  12. */
  13. class cmCPackFreeBSDGenerator : public cmCPackArchiveGenerator
  14. {
  15. public:
  16. cmCPackTypeMacro(cmCPackFreeBSDGenerator, cmCPackArchiveGenerator);
  17. /**
  18. * Construct generator
  19. */
  20. cmCPackFreeBSDGenerator();
  21. ~cmCPackFreeBSDGenerator() override;
  22. int InitializeInternal() override;
  23. int PackageFiles() override;
  24. protected:
  25. const char* GetOutputExtension() override { return ".txz"; }
  26. std::string var_lookup(const char* var_name);
  27. void write_manifest_fields(cmGeneratedFileStream&);
  28. };
  29. #endif