summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Purcell <me@seanp.xyz>2017-04-20 14:02:08 -0700
committerSean Purcell <iburinoc@gmail.com>2017-05-15 23:06:48 -0400
commit60635a8986c616122e65abf5ac2b7ce0d7ec5f22 (patch)
tree660346c9f2676a6872f501c21f4866b0ef2c5b82
parentae1b76ab8ee761667a7c60351767668cf3bc3241 (diff)
downloadlibarchive-60635a8986c616122e65abf5ac2b7ce0d7ec5f22.tar.gz
Fix compile errors with cmake and when zstd isn't present
-rw-r--r--libarchive/CMakeLists.txt1
-rw-r--r--libarchive/archive_write_add_filter_zstd.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/libarchive/CMakeLists.txt b/libarchive/CMakeLists.txt
index db239240..1e561f3f 100644
--- a/libarchive/CMakeLists.txt
+++ b/libarchive/CMakeLists.txt
@@ -130,6 +130,7 @@ SET(libarchive_SOURCES
archive_write_add_filter_gzip.c
archive_write_add_filter_lrzip.c
archive_write_add_filter_lz4.c
+ archive_write_add_filter_zstd.c
archive_write_add_filter_lzop.c
archive_write_add_filter_none.c
archive_write_add_filter_program.c
diff --git a/libarchive/archive_write_add_filter_zstd.c b/libarchive/archive_write_add_filter_zstd.c
index 29ba6cca..2b56040a 100644
--- a/libarchive/archive_write_add_filter_zstd.c
+++ b/libarchive/archive_write_add_filter_zstd.c
@@ -147,7 +147,12 @@ archive_compressor_zstd_options(struct archive_write_filter *f, const char *key,
if (strcmp(key, "compression-level") == 0) {
int level = atoi(value);
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
if (level < 1 || level > ZSTD_maxCLevel()) {
+#else
+ /* If we don't have the library, hard-code the max level */
+ if (level < 1 || level > 22) {
+#endif
return (ARCHIVE_WARN);
}
data->compression_level = level;