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

View File

@ -615,11 +615,16 @@ else()
endif() endif()
pkg_check_modules(ZSTD QUIET libzstd>=1.4.0) 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}) message(STATUS "Using shared zstd version: " ${ZSTD_VERSION})
else() else()
check_vendoring_approved(zstd) check_vendoring_approved(zstd)
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") message(STATUS "Shared zstd not found, falling back to the static library")
endif()
add_subdirectory(Externals/zstd) add_subdirectory(Externals/zstd)
endif() endif()