CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
69 lines
2.7 KiB
CMake
69 lines
2.7 KiB
CMake
# Try to find the zstd library
|
|
#
|
|
# If successful, the following variables will be defined:
|
|
# zstd_INCLUDE_DIR
|
|
# zstd_LIBRARY
|
|
# zstd_STATIC_LIBRARY
|
|
# zstd_FOUND
|
|
#
|
|
# Additionally, one of the following import targets will be defined:
|
|
# zstd::libzstd_shared
|
|
# zstd::libzstd_static
|
|
|
|
if(MSVC OR "${CMAKE_CXX_SIMULATE_ID}" STREQUAL "MSVC")
|
|
set(zstd_STATIC_LIBRARY_SUFFIX "_static\\${CMAKE_STATIC_LIBRARY_SUFFIX}$")
|
|
else()
|
|
set(zstd_STATIC_LIBRARY_SUFFIX "\\${CMAKE_STATIC_LIBRARY_SUFFIX}$")
|
|
endif()
|
|
|
|
find_path(zstd_INCLUDE_DIR NAMES zstd.h)
|
|
find_library(zstd_LIBRARY NAMES zstd zstd_static)
|
|
find_library(zstd_STATIC_LIBRARY NAMES
|
|
zstd_static
|
|
"${CMAKE_STATIC_LIBRARY_PREFIX}zstd${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
|
|
|
include(FindPackageHandleStandardArgs)
|
|
find_package_handle_standard_args(
|
|
zstd DEFAULT_MSG
|
|
zstd_LIBRARY zstd_INCLUDE_DIR
|
|
)
|
|
|
|
if(zstd_FOUND)
|
|
if(zstd_LIBRARY MATCHES "${zstd_STATIC_LIBRARY_SUFFIX}$" AND NOT zstd_LIBRARY MATCHES "\\.dll\\.a$")
|
|
set(zstd_STATIC_LIBRARY "${zstd_LIBRARY}")
|
|
elseif (NOT TARGET zstd::libzstd_shared)
|
|
add_library(zstd::libzstd_shared SHARED IMPORTED)
|
|
if(WIN32 OR CYGWIN)
|
|
include(GNUInstallDirs) # For CMAKE_INSTALL_LIBDIR and friends.
|
|
# IMPORTED_LOCATION is the path to the DLL and IMPORTED_IMPLIB is the "library".
|
|
get_filename_component(zstd_DIRNAME "${zstd_LIBRARY}" DIRECTORY)
|
|
if(NOT "${CMAKE_INSTALL_LIBDIR}" STREQUAL "" AND NOT "${CMAKE_INSTALL_BINDIR}" STREQUAL "")
|
|
string(REGEX REPLACE "${CMAKE_INSTALL_LIBDIR}$" "${CMAKE_INSTALL_BINDIR}" zstd_DIRNAME "${zstd_DIRNAME}")
|
|
endif()
|
|
get_filename_component(zstd_BASENAME "${zstd_LIBRARY}" NAME)
|
|
string(REGEX REPLACE "\\${CMAKE_LINK_LIBRARY_SUFFIX}$" "${CMAKE_SHARED_LIBRARY_SUFFIX}" zstd_BASENAME "${zstd_BASENAME}")
|
|
set_target_properties(zstd::libzstd_shared PROPERTIES
|
|
INTERFACE_INCLUDE_DIRECTORIES "${zstd_INCLUDE_DIR}"
|
|
IMPORTED_LOCATION "${zstd_DIRNAME}/${zstd_BASENAME}"
|
|
IMPORTED_IMPLIB "${zstd_LIBRARY}")
|
|
unset(zstd_DIRNAME)
|
|
unset(zstd_BASENAME)
|
|
else()
|
|
set_target_properties(zstd::libzstd_shared PROPERTIES
|
|
INTERFACE_INCLUDE_DIRECTORIES "${zstd_INCLUDE_DIR}"
|
|
IMPORTED_LOCATION "${zstd_LIBRARY}")
|
|
endif()
|
|
endif()
|
|
if(zstd_STATIC_LIBRARY MATCHES "${zstd_STATIC_LIBRARY_SUFFIX}$" AND
|
|
NOT TARGET zstd::libzstd_static)
|
|
add_library(zstd::libzstd_static STATIC IMPORTED)
|
|
set_target_properties(zstd::libzstd_static PROPERTIES
|
|
INTERFACE_INCLUDE_DIRECTORIES "${zstd_INCLUDE_DIR}"
|
|
IMPORTED_LOCATION "${zstd_STATIC_LIBRARY}")
|
|
endif()
|
|
endif()
|
|
|
|
unset(zstd_STATIC_LIBRARY_SUFFIX)
|
|
|
|
mark_as_advanced(zstd_INCLUDE_DIR zstd_LIBRARY zstd_STATIC_LIBRARY)
|