summaryrefslogtreecommitdiff
path: root/externals/find-modules/Findzstd.cmake
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--externals/find-modules/Findzstd.cmake41
1 files changed, 41 insertions, 0 deletions
diff --git a/externals/find-modules/Findzstd.cmake b/externals/find-modules/Findzstd.cmake
new file mode 100644
index 000000000..cd0158b0c
--- /dev/null
+++ b/externals/find-modules/Findzstd.cmake
@@ -0,0 +1,41 @@
1
2find_package(PkgConfig QUIET)
3pkg_check_modules(PC_zstd QUIET libzstd)
4
5find_path(zstd_INCLUDE_DIR
6 NAMES zstd.h
7 PATHS ${PC_zstd_INCLUDE_DIRS}
8)
9find_library(zstd_LIBRARY
10 NAMES zstd
11 PATHS ${PC_zstd_LIBRARY_DIRS}
12)
13
14include(FindPackageHandleStandardArgs)
15find_package_handle_standard_args(zstd
16 FOUND_VAR zstd_FOUND
17 REQUIRED_VARS
18 zstd_LIBRARY
19 zstd_INCLUDE_DIR
20 VERSION_VAR zstd_VERSION
21)
22
23if(zstd_FOUND)
24 set(zstd_LIBRARIES ${zstd_LIBRARY})
25 set(zstd_INCLUDE_DIRS ${zstd_INCLUDE_DIR})
26 set(zstd_DEFINITIONS ${PC_zstd_CFLAGS_OTHER})
27endif()
28
29if(zstd_FOUND AND NOT TARGET zstd::zstd)
30 add_library(zstd::zstd UNKNOWN IMPORTED)
31 set_target_properties(zstd::zstd PROPERTIES
32 IMPORTED_LOCATION "${zstd_LIBRARY}"
33 INTERFACE_COMPILE_OPTIONS "${PC_zstd_CFLAGS_OTHER}"
34 INTERFACE_INCLUDE_DIRECTORIES "${zstd_INCLUDE_DIR}"
35 )
36endif()
37
38mark_as_advanced(
39 zstd_INCLUDE_DIR
40 zstd_LIBRARY
41)