summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2021-11-04 16:17:35 +0100
committerSergei Golubchik <serg@mariadb.org>2021-12-08 10:31:00 +0100
commit60d565e66a76e42b4fb9c0c09aa0898e4a65d71d (patch)
treee0737b40b7741e55b719ac578cec8a9b60876391
parent182bf9b333e397b3b1e3293ff20e38c24b19e4a3 (diff)
downloadmariadb-git-60d565e66a76e42b4fb9c0c09aa0898e4a65d71d.tar.gz
cmake: detect lz4 version, require >= 1.6
-rw-r--r--cmake/FindLZ4.cmake12
-rw-r--r--plugin/provider_lz4/CMakeLists.txt2
2 files changed, 11 insertions, 3 deletions
diff --git a/cmake/FindLZ4.cmake b/cmake/FindLZ4.cmake
index 48a7790afcd..eebd85969e3 100644
--- a/cmake/FindLZ4.cmake
+++ b/cmake/FindLZ4.cmake
@@ -1,9 +1,17 @@
find_path(LZ4_INCLUDE_DIRS NAMES lz4.h)
find_library(LZ4_LIBRARIES NAMES lz4)
+if(LZ4_INCLUDE_DIRS AND EXISTS "${LZ4_INCLUDE_DIRS}/lz4.h")
+ file(STRINGS "${LZ4_INCLUDE_DIRS}/lz4.h" LZ4_H REGEX "^#define LZ4_VERSION_[MR]")
+ string(REGEX REPLACE "LZ4_VERSION" "" LZ4_H "${LZ4_H}")
+ string(REGEX MATCHALL "[0-9]+" LZ4_H "${LZ4_H}")
+ string(REGEX REPLACE ";" "." LZ4_VERSION_STRING "${LZ4_H}")
+endif()
+
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(
- LZ4 DEFAULT_MSG
- LZ4_LIBRARIES LZ4_INCLUDE_DIRS)
+ LZ4
+ REQUIRED_VARS LZ4_LIBRARIES LZ4_INCLUDE_DIRS
+ VERSION_VAR LZ4_VERSION_STRING)
mark_as_advanced(LZ4_INCLUDE_DIRS LZ4_LIBRARIES)
diff --git a/plugin/provider_lz4/CMakeLists.txt b/plugin/provider_lz4/CMakeLists.txt
index 9d47ab80602..514fa2cbe52 100644
--- a/plugin/provider_lz4/CMakeLists.txt
+++ b/plugin/provider_lz4/CMakeLists.txt
@@ -1,4 +1,4 @@
-FIND_PACKAGE(LZ4)
+FIND_PACKAGE(LZ4 1.6)
IF (LZ4_FOUND)
GET_PROPERTY(dirs DIRECTORY PROPERTY INCLUDE_DIRECTORIES)