Build: Check for zstd headers

Modify the CMakeLists.txt so that it doesn't try to use a shared zstd library
that doesn't have header files. This was a support issue on Macs because
homebrew was installing headerless zstd libraries with Qt.
This commit is contained in:
Skyler Saleh 2021-04-02 11:11:14 -07:00
parent a2fa9aab5b
commit b0d91a5399
1 changed files with 7 additions and 2 deletions

View File

@ -615,11 +615,16 @@ else()
endif()
pkg_check_modules(ZSTD QUIET libzstd>=1.4.0)
if(ZSTD_FOUND)
check_include_file(zstd.h HAVE_ZSTD_H)
if(ZSTD_FOUND AND HAVE_ZSTD_H)
message(STATUS "Using shared zstd version: " ${ZSTD_VERSION})
else()
check_vendoring_approved(zstd)
message(STATUS "Shared zstd not found, falling back to the static library")
if(ZSTD_FOUND AND NOT HAVE_ZSTD_H)
message(STATUS "Shared zstd found but lacks headers, falling back to the static library")
else()
message(STATUS "Shared zstd not found, falling back to the static library")
endif()
add_subdirectory(Externals/zstd)
endif()