From 9d9961815a4ea819a3cda30dd075cca8383affaf Mon Sep 17 00:00:00 2001 From: Zehua Zou <41586196+HuaHuaY@users.noreply.github.com> Date: Fri, 21 Nov 2025 15:11:57 +0800 Subject: [PATCH] fix: shared library uses hidden visibility by default --- cmake_modules/IcebergBuildUtils.cmake | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/cmake_modules/IcebergBuildUtils.cmake b/cmake_modules/IcebergBuildUtils.cmake index edcb1d93c..99f57d926 100644 --- a/cmake_modules/IcebergBuildUtils.cmake +++ b/cmake_modules/IcebergBuildUtils.cmake @@ -152,6 +152,10 @@ function(add_iceberg_lib LIB_NAME) string(TOUPPER ${LIB_NAME} VISIBILITY_NAME) target_compile_definitions(${LIB_NAME}_shared PRIVATE ${VISIBILITY_NAME}_EXPORTING) + set_target_properties(${LIB_NAME}_shared + PROPERTIES C_VISIBILITY_PRESET hidden CXX_VISIBILITY_PRESET + hidden + VISIBILITY_INLINES_HIDDEN 1) install(TARGETS ${LIB_NAME}_shared EXPORT iceberg_targets @@ -211,8 +215,10 @@ function(add_iceberg_lib LIB_NAME) target_link_libraries(${LIB_NAME}_static PUBLIC "$") - string(TOUPPER ${LIB_NAME} VISIBILITY_NAME) - target_compile_definitions(${LIB_NAME}_static PUBLIC ${VISIBILITY_NAME}_STATIC) + if(WIN32) + string(TOUPPER ${LIB_NAME} VISIBILITY_NAME) + target_compile_definitions(${LIB_NAME}_static PUBLIC ${VISIBILITY_NAME}_STATIC) + endif() install(TARGETS ${LIB_NAME}_static EXPORT iceberg_targets