summaryrefslogtreecommitdiffstats
path: root/Source/cmArchiveWrite.cxx
diff options
context:
space:
mode:
authorRussell Greene <russellgreene8@gmail.com>2022-02-17 22:12:16 (GMT)
committerBrad King <brad.king@kitware.com>2022-02-23 13:39:32 (GMT)
commit525faec4e9d7a25431504d6fe47313f1478b26e9 (patch)
treee072d26d49d5c3222dabf6e2280ef8a485d4a8a8 /Source/cmArchiveWrite.cxx
parent215c4efd3ef620233c42530d4b237f60e9876958 (diff)
downloadCMake-525faec4e9d7a25431504d6fe47313f1478b26e9.zip
CMake-525faec4e9d7a25431504d6fe47313f1478b26e9.tar.gz
CMake-525faec4e9d7a25431504d6fe47313f1478b26e9.tar.bz2
CPack: Add parallel zstd compression
Diffstat (limited to 'Source/cmArchiveWrite.cxx')
-rw-r--r--Source/cmArchiveWrite.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/Source/cmArchiveWrite.cxx b/Source/cmArchiveWrite.cxx
index 31a2a5a..cfde37c 100644
--- a/Source/cmArchiveWrite.cxx
+++ b/Source/cmArchiveWrite.cxx
@@ -188,6 +188,15 @@ cmArchiveWrite::cmArchiveWrite(std::ostream& os, Compress c,
cm_archive_error_string(this->Archive));
return;
}
+
+#if ARCHIVE_VERSION_NUMBER >= 3006000
+ if (archive_write_set_filter_option(this->Archive, "zstd", "threads",
+ sNumThreads.c_str()) != ARCHIVE_OK) {
+ this->Error = cmStrCat("archive_compressor_zstd_options: ",
+ cm_archive_error_string(this->Archive));
+ return;
+ }
+#endif
break;
}