From b52a9567520570bd6c850bcad3a6966f68639ef7 Mon Sep 17 00:00:00 2001 From: David Oberhollenzer Date: Thu, 17 Sep 2020 13:09:06 +0200 Subject: Add a check whether libzstd supports stream compression Streaming compression was added fairly recently to zstd (and then the API was changed a few times). Rather than rely on libzstd versioning macros, this commit adds an m4 script to test at configure time if the enums/functions we need are available by trying to compile a small sample. Signed-off-by: David Oberhollenzer --- lib/fstream/uncompress/istream_compressor.c | 2 +- lib/fstream/uncompress/zstd.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'lib/fstream/uncompress') diff --git a/lib/fstream/uncompress/istream_compressor.c b/lib/fstream/uncompress/istream_compressor.c index bc8ef39..75edd1b 100644 --- a/lib/fstream/uncompress/istream_compressor.c +++ b/lib/fstream/uncompress/istream_compressor.c @@ -40,7 +40,7 @@ istream_t *istream_compressor_create(istream_t *strm, int comp_id) #endif break; case FSTREAM_COMPRESSOR_ZSTD: -#ifdef WITH_ZSTD +#if defined(WITH_ZSTD) && defined(HAVE_ZSTD_STREAM) comp = istream_zstd_create(strm->get_filename(strm)); #endif break; diff --git a/lib/fstream/uncompress/zstd.c b/lib/fstream/uncompress/zstd.c index 1838af5..fd22cbf 100644 --- a/lib/fstream/uncompress/zstd.c +++ b/lib/fstream/uncompress/zstd.c @@ -8,6 +8,7 @@ #include +#ifdef HAVE_ZSTD_STREAM typedef struct { istream_comp_t base; @@ -77,3 +78,4 @@ istream_comp_t *istream_zstd_create(const char *filename) base->cleanup = cleanup; return base; } +#endif /* HAVE_ZSTD_STREAM */ -- cgit v1.2.3