Skip to content

Commit 6d6372b

Browse files
cosmo0920edsiper
authored andcommitted
build: Tweak linker flags for zstd
Signed-off-by: Hiroshi Hatake <hiroshi@chronosphere.io>
1 parent 275ef3b commit 6d6372b

1 file changed

Lines changed: 24 additions & 6 deletions

File tree

CMakeLists.txt

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -599,14 +599,32 @@ add_subdirectory(${FLB_PATH_LIB_MINIZ} EXCLUDE_FROM_ALL)
599599

600600
# Zstd (zstd)
601601
if(FLB_PREFER_SYSTEM_LIB_ZSTD)
602-
find_package(PkgConfig)
603-
pkg_check_modules(LIBZSTD libzstd>=1.4.8)
602+
find_package(ZSTD 1.4.8 QUIET)
603+
if(ZSTD_FOUND)
604+
set(LIBZSTD_FOUND TRUE)
605+
set(LIBZSTD_LIBRARIES ZSTD::ZSTD)
606+
else()
607+
find_package(PkgConfig)
608+
pkg_check_modules(LIBZSTD libzstd>=1.4.8)
609+
if(LIBZSTD_FOUND)
610+
include_directories(${LIBZSTD_INCLUDE_DIRS})
611+
link_directories(${LIBZSTD_LIBRARY_DIRS})
612+
add_library(ZSTD::ZSTD INTERFACE IMPORTED)
613+
set_property(TARGET ZSTD::ZSTD PROPERTY
614+
INTERFACE_LINK_LIBRARIES "${LIBZSTD_LIBRARIES}")
615+
set(LIBZSTD_LIBRARIES ZSTD::ZSTD)
616+
endif()
617+
endif()
604618
endif()
605-
if(LIBZSTD_FOUND)
606-
include_directories(${LIBZSTD_INCLUDE_DIRS})
607-
link_directories(${LIBZSTD_LIBRARY_DIRS})
608-
else()
619+
620+
if(NOT LIBZSTD_FOUND)
609621
include(cmake/zstd.cmake)
622+
623+
if(NOT MSVC)
624+
target_compile_options(libzstd_static PRIVATE -fvisibility=hidden)
625+
endif()
626+
627+
set(LIBZSTD_LIBRARIES libzstd_static)
610628
endif()
611629

612630
# ring buffer library

0 commit comments

Comments
 (0)