Skip to content

Commit a1532e7

Browse files
crondaemonAndersBroman
authored andcommitted
cmake: check minimum zstd library version.
The APIs used in the kafka dissector have been introduced in version 1.0.0, then we need at least that version to work. Change-Id: I80ded2362d4f324ec26392bd7a9781ea6d9ba630 Reviewed-on: https://code.wireshark.org/review/34382 Petri-Dish: Dario Lombardo <[email protected]> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <[email protected]>
1 parent b3f67fa commit a1532e7

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1139,7 +1139,7 @@ ws_find_package(LZ4 ENABLE_LZ4 HAVE_LZ4)
11391139
ws_find_package(SNAPPY ENABLE_SNAPPY HAVE_SNAPPY)
11401140

11411141
# zstd compression
1142-
ws_find_package(ZSTD ENABLE_ZSTD HAVE_ZSTD)
1142+
ws_find_package(ZSTD ENABLE_ZSTD HAVE_ZSTD "1.0.0")
11431143

11441144
# Enhanced HTTP/2 dissection
11451145
ws_find_package(NGHTTP2 ENABLE_NGHTTP2 HAVE_NGHTTP2)

cmake/modules/FindZSTD.cmake

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,21 @@ find_library(ZSTD_LIBRARY
3131
/usr/local/lib
3232
)
3333

34+
file(STRINGS ${ZSTD_INCLUDE_DIR}/zstd.h ZSTD_VERSION_MAJOR
35+
REGEX "#define[ ]+ZSTD_VERSION_MAJOR[ ]+[0-9]+")
36+
string(REGEX MATCH "[0-9]+" ZSTD_VERSION_MAJOR ${ZSTD_VERSION_MAJOR})
37+
file(STRINGS ${ZSTD_INCLUDE_DIR}/zstd.h ZSTD_VERSION_MINOR
38+
REGEX "#define[ ]+ZSTD_VERSION_MINOR[ ]+[0-9]+")
39+
string(REGEX MATCH "[0-9]+" ZSTD_VERSION_MINOR ${ZSTD_VERSION_MINOR})
40+
file(STRINGS ${ZSTD_INCLUDE_DIR}/zstd.h ZSTD_VERSION_RELEASE
41+
REGEX "#define[ ]+ZSTD_VERSION_RELEASE[ ]+[0-9]+")
42+
string(REGEX MATCH "[0-9]+" ZSTD_VERSION_RELEASE ${ZSTD_VERSION_RELEASE})
43+
set(ZSTD_VERSION ${ZSTD_VERSION_MAJOR}.${ZSTD_VERSION_MINOR}.${ZSTD_VERSION_RELEASE})
44+
3445
include(FindPackageHandleStandardArgs)
35-
find_package_handle_standard_args( ZSTD DEFAULT_MSG ZSTD_LIBRARY ZSTD_INCLUDE_DIR )
46+
find_package_handle_standard_args(ZSTD
47+
REQUIRED_VARS ZSTD_LIBRARY ZSTD_INCLUDE_DIR
48+
VERSION_VAR ZSTD_VERSION)
3649

3750
if( ZSTD_FOUND )
3851
set( ZSTD_INCLUDE_DIRS ${ZSTD_INCLUDE_DIR} )

0 commit comments

Comments
 (0)