1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-19 19:43:23 +08:00

CPack/DEB: Add zstd compression for deb packages

This commit is contained in:
Russell Greene
2021-07-26 14:36:04 -04:00
parent 6c01bbe180
commit 051da997da
3 changed files with 26 additions and 4 deletions

View File

@@ -274,10 +274,23 @@ List of CPack DEB generator specific variables:
Possible values are:
- lzma
- xz
- bzip2
- gzip
``lzma``
LempelZivMarkov chain algorithm
``xz``
XZ Utils compression
``bzip2``
bzip2 BurrowsWheeler algorithm
``gzip``
GNU Gzip compression
``zstd``
.. versionadded:: 3.22
Zstandard compression
.. variable:: CPACK_DEBIAN_PACKAGE_PRIORITY
CPACK_DEBIAN_<COMPONENT>_PACKAGE_PRIORITY

View File

@@ -0,0 +1,6 @@
cpack-deb-add-zstd-compression
------------------------------
* The :cpack_gen:`CPack DEB Generator` gained the
option to set :variable:`CPACK_DEBIAN_COMPRESSION_TYPE` to zstd,
which enables Zstandard compression for deb packages.

View File

@@ -111,6 +111,9 @@ DebGenerator::DebGenerator(
} else if (!std::strcmp(debianCompressionType, "gzip")) {
this->CompressionSuffix = ".gz";
this->TarCompressionType = cmArchiveWrite::CompressGZip;
} else if (!std::strcmp(debianCompressionType, "zstd")) {
this->CompressionSuffix = ".zst";
this->TarCompressionType = cmArchiveWrite::CompressZstd;
} else if (!std::strcmp(debianCompressionType, "none")) {
this->CompressionSuffix.clear();
this->TarCompressionType = cmArchiveWrite::CompressNone;