diff --git a/cmake/httplibConfig.cmake.in b/cmake/httplibConfig.cmake.in index bf57364..19dbe69 100644 --- a/cmake/httplibConfig.cmake.in +++ b/cmake/httplibConfig.cmake.in @@ -39,7 +39,25 @@ if(@HTTPLIB_IS_USING_BROTLI@) endif() if(@HTTPLIB_IS_USING_ZSTD@) - find_dependency(zstd) + set(httplib_fd_zstd_quiet_arg) + if(${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY) + set(httplib_fd_zstd_quiet_arg QUIET) + endif() + set(httplib_fd_zstd_required_arg) + if(${CMAKE_FIND_PACKAGE_NAME}_FIND_REQUIRED) + set(httplib_fd_zstd_required_arg REQUIRED) + endif() + find_package(zstd QUIET) + if(NOT zstd_FOUND) + find_package(PkgConfig ${httplib_fd_zstd_quiet_arg} ${httplib_fd_zstd_required_arg}) + if(PKG_CONFIG_FOUND) + pkg_check_modules(zstd ${httplib_fd_zstd_quiet_arg} ${httplib_fd_zstd_required_arg} IMPORTED_TARGET libzstd) + + if(TARGET PkgConfig::zstd) + add_library(zstd::libzstd ALIAS PkgConfig::zstd) + endif() + endif() + endif() set(httplib_zstd_FOUND ${zstd_FOUND}) endif()