summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorRosen Penev <rosenp@gmail.com>2022-09-30 01:51:08 -0700
committerRosen Penev <rosenp@gmail.com>2022-09-30 01:51:08 -0700
commit77175a3f8566596138fae21402164fd7578a47fe (patch)
tree22457803b8cb3a15ddfd97c9fcbeb740f2c5557f /CMakeLists.txt
parent01a280fbf0794f575eb39d718a558896add18d30 (diff)
downloadlibarchive-77175a3f8566596138fae21402164fd7578a47fe.tar.gz
cmake: use pkgconfig for zstd lookup
As libzstd typically comes with a pkgconfig file, use it. Fixes compilation at least on OpenWrt where host paths were leaking into the build. Signed-off-by: Rosen Penev <rosenp@gmail.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt9
1 files changed, 7 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index df83ed18..93b86371 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -610,8 +610,13 @@ IF(ENABLE_ZSTD)
SET(ZSTD_FIND_QUIETLY TRUE)
ENDIF (ZSTD_INCLUDE_DIR)
- FIND_PATH(ZSTD_INCLUDE_DIR zstd.h)
- FIND_LIBRARY(ZSTD_LIBRARY NAMES zstd libzstd)
+ IF(UNIX)
+ FIND_PACKAGE(PkgConfig QUIET)
+ PKG_SEARCH_MODULE(PC_ZSTD libzstd)
+ ENDIF()
+
+ FIND_PATH(ZSTD_INCLUDE_DIR zstd.h HINTS ${PC_ZSTD_INCLUDEDIR} ${PC_ZSTD_INCLUDE_DIRS})
+ FIND_LIBRARY(ZSTD_LIBRARY NAMES zstd libzstd HINTS ${PC_ZSTD_LIBDIR} ${PC_ZSTD_LIBRARY_DIRS})
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(ZSTD DEFAULT_MSG ZSTD_LIBRARY ZSTD_INCLUDE_DIR)
ELSE(ENABLE_ZSTD)