From ced989528f1218ee4a0a56506aa088482b2a54a6 Mon Sep 17 00:00:00 2001 From: Hiroshi Hatake Date: Wed, 5 Nov 2025 21:26:19 +0900 Subject: [PATCH 1/6] build: Tweak linker flags for zstd Signed-off-by: Hiroshi Hatake --- CMakeLists.txt | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e586dec2891..00dd414105c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -599,14 +599,32 @@ add_subdirectory(${FLB_PATH_LIB_MINIZ} EXCLUDE_FROM_ALL) # Zstd (zstd) if(FLB_PREFER_SYSTEM_LIB_ZSTD) - find_package(PkgConfig) - pkg_check_modules(LIBZSTD libzstd>=1.4.8) + find_package(ZSTD 1.4.8 QUIET) + if(ZSTD_FOUND) + set(LIBZSTD_FOUND TRUE) + set(LIBZSTD_LIBRARIES ZSTD::ZSTD) + else() + find_package(PkgConfig) + pkg_check_modules(LIBZSTD libzstd>=1.4.8) + if(LIBZSTD_FOUND) + include_directories(${LIBZSTD_INCLUDE_DIRS}) + link_directories(${LIBZSTD_LIBRARY_DIRS}) + add_library(ZSTD::ZSTD INTERFACE IMPORTED) + set_property(TARGET ZSTD::ZSTD PROPERTY + INTERFACE_LINK_LIBRARIES "${LIBZSTD_LIBRARIES}") + set(LIBZSTD_LIBRARIES ZSTD::ZSTD) + endif() + endif() endif() -if(LIBZSTD_FOUND) - include_directories(${LIBZSTD_INCLUDE_DIRS}) - link_directories(${LIBZSTD_LIBRARY_DIRS}) -else() + +if(NOT LIBZSTD_FOUND) include(cmake/zstd.cmake) + + if(NOT MSVC) + target_compile_options(libzstd_static PRIVATE -fvisibility=hidden) + endif() + + set(LIBZSTD_LIBRARIES libzstd_static) endif() # ring buffer library From 62645f793bcd2d8cbb958fefd4f87cdb19a8ecc2 Mon Sep 17 00:00:00 2001 From: Hiroshi Hatake Date: Wed, 10 Dec 2025 17:18:11 +0900 Subject: [PATCH 2/6] packaging: distros: almalinux: Use system installed libzstd only for 10 This is because almalinux 10's libzstd and bundled libzstd could cause symbol collisions. Signed-off-by: Hiroshi Hatake --- packaging/distros/almalinux/Dockerfile | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/packaging/distros/almalinux/Dockerfile b/packaging/distros/almalinux/Dockerfile index e95075ee613..8fc050b02e7 100644 --- a/packaging/distros/almalinux/Dockerfile +++ b/packaging/distros/almalinux/Dockerfile @@ -23,6 +23,9 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD + # almalinux/8.arm64v8 base image # hadolint ignore=DL3029 FROM --platform=arm64 almalinux:8 AS almalinux-8.arm64v8-base @@ -40,6 +43,8 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" ENV FLB_JEMALLOC_OPTIONS=$FLB_JEMALLOC_OPTIONS @@ -57,6 +62,9 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD + # almalinux/8.arm64v8 base image # hadolint ignore=DL3029 FROM --platform=arm64 almalinux:9 AS almalinux-9.arm64v8-base @@ -74,6 +82,8 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" ENV FLB_JEMALLOC_OPTIONS=$FLB_JEMALLOC_OPTIONS @@ -88,9 +98,14 @@ RUN yum -y update && \ yum install -y --allowerasing rpm-build curl ca-certificates gcc gcc-c++ cmake make bash \ wget unzip systemd-devel wget flex bison \ postgresql-libs postgresql-devel postgresql-server postgresql \ - cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ + cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config \ + libzstd-devel && \ yum clean all +# Use system installed libzstd library. +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=On +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD + # almalinux/8.arm64v8 base image # hadolint ignore=DL3029 FROM --platform=arm64 almalinux:10 AS almalinux-10.arm64v8-base @@ -105,9 +120,13 @@ RUN yum -y update && \ yum install -y --allowerasing rpm-build curl ca-certificates gcc gcc-c++ cmake make bash \ wget unzip systemd-devel wget flex bison \ postgresql-libs postgresql-devel postgresql-server postgresql \ - cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ + cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config \ + libzstd-devel && \ yum clean all +# Use system installed libzstd library. +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=On +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" ENV FLB_JEMALLOC_OPTIONS=$FLB_JEMALLOC_OPTIONS @@ -155,6 +174,7 @@ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ -DFLB_JEMALLOC="${FLB_JEMALLOC}" \ -DFLB_CHUNK_TRACE="${FLB_CHUNK_TRACE}" \ -DFLB_UNICODE_ENCODER="${FLB_UNICODE_ENCODER}" \ + -DFLB_PREFER_SYSTEM_LIB_ZSTD="${FLB_PREFER_SYSTEM_LIB_ZSTD}" \ ../ VOLUME [ "/output" ] From 8460518df72e084b2c7363b19737d84b202c141e Mon Sep 17 00:00:00 2001 From: Hiroshi Hatake Date: Thu, 11 Dec 2025 17:14:19 +0900 Subject: [PATCH 3/6] packaging: distros: centos: Use system libzstd on Stream 10 Signed-off-by: Hiroshi Hatake --- packaging/distros/centos/Dockerfile | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/packaging/distros/centos/Dockerfile b/packaging/distros/centos/Dockerfile index fc427764455..68628aed5c7 100644 --- a/packaging/distros/centos/Dockerfile +++ b/packaging/distros/centos/Dockerfile @@ -41,6 +41,8 @@ ARG FLB_UNICODE_ENCODER=Off ENV FLB_UNICODE_ENCODER=$FLB_UNICODE_ENCODER ARG FLB_KAFKA=Off ENV FLB_KAFKA=$FLB_KAFKA +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # centos/7.arm64v8 base image FROM arm64v8/centos:7 AS centos-7.arm64v8-base @@ -77,6 +79,8 @@ ARG FLB_UNICODE_ENCODER=Off ENV FLB_UNICODE_ENCODER=$FLB_UNICODE_ENCODER ARG FLB_KAFKA=Off ENV FLB_KAFKA=$FLB_KAFKA +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" @@ -118,6 +122,8 @@ ARG FLB_UNICODE_ENCODER=On ENV FLB_UNICODE_ENCODER=$FLB_UNICODE_ENCODER ARG FLB_KAFKA=On ENV FLB_KAFKA=$FLB_KAFKA +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # centos/8.arm64v8 base image FROM arm64v8/centos:8 AS centos-8.arm64v8-base @@ -157,6 +163,8 @@ ARG FLB_UNICODE_ENCODER=On ENV FLB_UNICODE_ENCODER=$FLB_UNICODE_ENCODER ARG FLB_KAFKA=On ENV FLB_KAFKA=$FLB_KAFKA +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" @@ -187,6 +195,8 @@ ENV PATH="${CMAKE_HOME}/bin:${PATH}" ARG FLB_OUT_PGSQL=On ENV FLB_OUT_PGSQL=$FLB_OUT_PGSQL +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # hadolint ignore=DL3029 FROM --platform=arm64 quay.io/centos/centos:stream9 AS centos-9.arm64v8-base @@ -220,6 +230,8 @@ ARG FLB_UNICODE_ENCODER=On ENV FLB_UNICODE_ENCODER=$FLB_UNICODE_ENCODER ARG FLB_KAFKA=On ENV FLB_KAFKA=$FLB_KAFKA +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" @@ -238,7 +250,7 @@ RUN dnf -y install 'dnf-command(config-manager)' && dnf -y config-manager --set- wget unzip systemd-devel wget flex bison \ postgresql-libs postgresql-devel postgresql-server postgresql \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libcurl-devel pkgconf-pkg-config \ - libyaml-devel zlib-devel \ + libyaml-devel zlib-devel libzstd-devel \ tar gzip && \ dnf clean all && \ mkdir -p "${CMAKE_HOME}" && \ @@ -250,6 +262,9 @@ ENV PATH="${CMAKE_HOME}/bin:${PATH}" ARG FLB_OUT_PGSQL=On ENV FLB_OUT_PGSQL=$FLB_OUT_PGSQL +# Use system installed libzstd library. +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=On +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # hadolint ignore=DL3029 FROM --platform=arm64 quay.io/centos/centos:stream10 AS centos-10.arm64v8-base @@ -267,7 +282,7 @@ RUN dnf -y install 'dnf-command(config-manager)' && dnf -y config-manager --set- wget unzip systemd-devel wget flex bison \ postgresql-libs postgresql-devel postgresql-server postgresql \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libcurl-devel pkgconf-pkg-config \ - libyaml-devel zlib-devel \ + libyaml-devel zlib-devel libzstd-devel \ tar gzip && \ dnf clean all && \ mkdir -p "${CMAKE_HOME}" && \ @@ -283,6 +298,9 @@ ARG FLB_UNICODE_ENCODER=On ENV FLB_UNICODE_ENCODER=$FLB_UNICODE_ENCODER ARG FLB_KAFKA=On ENV FLB_KAFKA=$FLB_KAFKA +# Use system installed libzstd library. +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=On +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" @@ -328,6 +346,7 @@ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ -DFLB_JEMALLOC="${FLB_JEMALLOC}" \ -DFLB_CHUNK_TRACE="${FLB_CHUNK_TRACE}" \ -DFLB_UNICODE_ENCODER="${FLB_UNICODE_ENCODER}" \ + -DFLB_PREFER_SYSTEM_LIB_ZSTD="${FLB_PREFER_SYSTEM_LIB_ZSTD}" \ ../ VOLUME [ "/output" ] From d809aa80cdaa57a3a6444e4297554fb1ba8b7130 Mon Sep 17 00:00:00 2001 From: Hiroshi Hatake Date: Thu, 11 Dec 2025 17:17:48 +0900 Subject: [PATCH 4/6] packaging: distros: rockylinux: Use system's libzstd on Rockylinux10 Signed-off-by: Hiroshi Hatake --- packaging/distros/rockylinux/Dockerfile | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/packaging/distros/rockylinux/Dockerfile b/packaging/distros/rockylinux/Dockerfile index 3de0bcaa78e..8a30978fbd7 100644 --- a/packaging/distros/rockylinux/Dockerfile +++ b/packaging/distros/rockylinux/Dockerfile @@ -23,6 +23,9 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD + # rockylinux/8.arm64v8 base image # hadolint ignore=DL3029 FROM --platform=arm64 rockylinux/rockylinux:8 AS rockylinux-8.arm64v8-base @@ -40,6 +43,8 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" ENV FLB_JEMALLOC_OPTIONS=$FLB_JEMALLOC_OPTIONS @@ -57,6 +62,9 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD + # rockylinux/9.arm64v8 base image # hadolint ignore=DL3029 FROM --platform=arm64 rockylinux/rockylinux:9 AS rockylinux-9.arm64v8-base @@ -74,6 +82,8 @@ RUN yum -y update && \ cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ yum clean all +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=Off +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" ENV FLB_JEMALLOC_OPTIONS=$FLB_JEMALLOC_OPTIONS @@ -88,9 +98,14 @@ RUN yum -y update && \ yum install -y --allowerasing rpm-build curl ca-certificates gcc gcc-c++ cmake make bash \ wget unzip systemd-devel wget flex bison \ postgresql-libs postgresql-devel postgresql-server postgresql \ - cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ + cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config \ + libzstd-devel && \ yum clean all +# Use system installed libzstd library. +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=On +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD + # rockylinux/10.arm64v8 base image # hadolint ignore=DL3029 FROM --platform=arm64 rockylinux/rockylinux:10 AS rockylinux-10.arm64v8-base @@ -105,9 +120,13 @@ RUN yum -y update && \ yum install -y --allowerasing rpm-build curl ca-certificates gcc gcc-c++ cmake make bash \ wget unzip systemd-devel wget flex bison \ postgresql-libs postgresql-devel postgresql-server postgresql \ - cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config && \ + cyrus-sasl-lib cyrus-sasl-devel openssl openssl-libs openssl-devel libyaml-devel pkgconf-pkg-config \ + libzstd-devel && \ yum clean all +# Use system installed libzstd library. +ARG FLB_PREFER_SYSTEM_LIB_ZSTD=On +ENV FLB_PREFER_SYSTEM_LIB_ZSTD=$FLB_PREFER_SYSTEM_LIB_ZSTD # Need larger page size ARG FLB_JEMALLOC_OPTIONS="--with-lg-page=16 --with-lg-quantum=3" ENV FLB_JEMALLOC_OPTIONS=$FLB_JEMALLOC_OPTIONS @@ -155,6 +174,7 @@ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ -DFLB_JEMALLOC="${FLB_JEMALLOC}" \ -DFLB_CHUNK_TRACE="${FLB_CHUNK_TRACE}" \ -DFLB_UNICODE_ENCODER="${FLB_UNICODE_ENCODER}" \ + -DFLB_PREFER_SYSTEM_LIB_ZSTD="${FLB_PREFER_SYSTEM_LIB_ZSTD}" \ ../ VOLUME [ "/output" ] From acf66d9fe0a8ecdd52c82e5fbd54e9a9fc26659d Mon Sep 17 00:00:00 2001 From: Hiroshi Hatake Date: Fri, 12 Dec 2025 22:57:22 +0900 Subject: [PATCH 5/6] build: Use bundled namespace instead of the simple zstd one Signed-off-by: Hiroshi Hatake --- CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 00dd414105c..83c0debbc31 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -602,17 +602,17 @@ if(FLB_PREFER_SYSTEM_LIB_ZSTD) find_package(ZSTD 1.4.8 QUIET) if(ZSTD_FOUND) set(LIBZSTD_FOUND TRUE) - set(LIBZSTD_LIBRARIES ZSTD::ZSTD) + set(LIBZSTD_LIBRARIES BUNDLED::ZSTD) else() find_package(PkgConfig) pkg_check_modules(LIBZSTD libzstd>=1.4.8) if(LIBZSTD_FOUND) include_directories(${LIBZSTD_INCLUDE_DIRS}) link_directories(${LIBZSTD_LIBRARY_DIRS}) - add_library(ZSTD::ZSTD INTERFACE IMPORTED) - set_property(TARGET ZSTD::ZSTD PROPERTY + add_library(BUNDLED::ZSTD INTERFACE IMPORTED) + set_property(TARGET BUNDLED::ZSTD PROPERTY INTERFACE_LINK_LIBRARIES "${LIBZSTD_LIBRARIES}") - set(LIBZSTD_LIBRARIES ZSTD::ZSTD) + set(LIBZSTD_LIBRARIES BUNDLED::ZSTD) endif() endif() endif() From 0e0343410c260f665004a78e9f15dd08b555e7a5 Mon Sep 17 00:00:00 2001 From: Hiroshi Hatake Date: Sat, 13 Dec 2025 22:14:29 +0900 Subject: [PATCH 6/6] build: Address fallbacking issue of finding libzstd Signed-off-by: Hiroshi Hatake --- CMakeLists.txt | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 83c0debbc31..4741b6b2025 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -602,8 +602,28 @@ if(FLB_PREFER_SYSTEM_LIB_ZSTD) find_package(ZSTD 1.4.8 QUIET) if(ZSTD_FOUND) set(LIBZSTD_FOUND TRUE) - set(LIBZSTD_LIBRARIES BUNDLED::ZSTD) - else() + # Use the target provided by find_package(ZSTD) + # Modern FindZSTD provides ZSTD::libzstd_static or ZSTD::libzstd_shared + if(TARGET ZSTD::libzstd_static) + set(LIBZSTD_LIBRARIES ZSTD::libzstd_static) + elseif(TARGET ZSTD::libzstd_shared) + set(LIBZSTD_LIBRARIES ZSTD::libzstd_shared) + elseif(TARGET ZSTD::ZSTD) + set(LIBZSTD_LIBRARIES ZSTD::ZSTD) + else() + # Fallback: create a wrapper if no target is provided + add_library(BUNDLED::ZSTD INTERFACE IMPORTED) + if(ZSTD_LIBRARIES) + set_property(TARGET BUNDLED::ZSTD PROPERTY + INTERFACE_LINK_LIBRARIES "${ZSTD_LIBRARIES}") + endif() + if(ZSTD_INCLUDE_DIRS) + set_property(TARGET BUNDLED::ZSTD PROPERTY + INTERFACE_INCLUDE_DIRECTORIES "${ZSTD_INCLUDE_DIRS}") + endif() + set(LIBZSTD_LIBRARIES BUNDLED::ZSTD) + endif() + else() find_package(PkgConfig) pkg_check_modules(LIBZSTD libzstd>=1.4.8) if(LIBZSTD_FOUND)