@@ -78,6 +78,7 @@ set(ICEBERG_SOURCES
7878
7979set (ICEBERG_STATIC_BUILD_INTERFACE_LIBS)
8080set (ICEBERG_SHARED_BUILD_INTERFACE_LIBS)
81+ set (ICEBERG_SHARED_PRIVATE_BUILD_INTERFACE_LIBS)
8182set (ICEBERG_STATIC_INSTALL_INTERFACE_LIBS)
8283set (ICEBERG_SHARED_INSTALL_INTERFACE_LIBS)
8384
@@ -88,22 +89,22 @@ list(APPEND
8889 roaring::roaring
8990 spdlog::spdlog
9091 ZLIB::ZLIB)
92+ list (APPEND ICEBERG_SHARED_BUILD_INTERFACE_LIBS nanoarrow::nanoarrow_shared)
9193list (APPEND
92- ICEBERG_SHARED_BUILD_INTERFACE_LIBS
93- nanoarrow::nanoarrow_shared
94+ ICEBERG_SHARED_PRIVATE_BUILD_INTERFACE_LIBS
9495 nlohmann_json::nlohmann_json
9596 roaring::roaring
9697 spdlog::spdlog
9798 ZLIB::ZLIB)
9899list (APPEND
99100 ICEBERG_STATIC_INSTALL_INTERFACE_LIBS
100- "$<IF :$<BOOL :${NANOARROW_VENDORED} >,iceberg ::nanoarrow_static ,$< IF :$< TARGET_EXISTS : nanoarrow ::nanoarrow_static >, nanoarrow :: nanoarrow_static , nanoarrow :: nanoarrow_shared > >"
101+ "$<IF :$<BOOL :${NANOARROW_VENDORED} >,iceberg ::nanoarrow_static ,nanoarrow ::nanoarrow_static >"
101102 "$<IF :$<BOOL :${NLOHMANN_JSON_VENDORED} >,iceberg ::nlohmann_json ,nlohmann_json ::nlohmann_json >"
102103 "$<IF :$<BOOL :${CROARING_VENDORED} >,iceberg ::roaring ,roaring ::roaring >"
103104 "$<IF :$<BOOL :${SPDLOG_VENDORED} >,iceberg ::spdlog ,spdlog ::spdlog >" )
104105list (APPEND
105106 ICEBERG_SHARED_INSTALL_INTERFACE_LIBS
106- "$<IF :$<BOOL :${NANOARROW_VENDORED} >,iceberg ::nanoarrow_shared ,$< IF :$< TARGET_EXISTS : nanoarrow ::nanoarrow_shared >, nanoarrow :: nanoarrow_shared , nanoarrow :: nanoarrow_static > >"
107+ "$<IF :$<BOOL :${NANOARROW_VENDORED} >,iceberg ::nanoarrow_shared ,nanoarrow ::nanoarrow_shared >"
107108 "$<IF :$<BOOL :${NLOHMANN_JSON_VENDORED} >,iceberg ::nlohmann_json ,nlohmann_json ::nlohmann_json >"
108109 "$<IF :$<BOOL :${CROARING_VENDORED} >,iceberg ::roaring ,roaring ::roaring >"
109110 "$<IF :$<BOOL :${SPDLOG_VENDORED} >,iceberg ::spdlog ,spdlog ::spdlog >" )
@@ -115,6 +116,8 @@ add_iceberg_lib(iceberg
115116 ${ICEBERG_INCLUDES}
116117 SHARED_LINK_LIBS
117118 ${ICEBERG_SHARED_BUILD_INTERFACE_LIBS}
119+ SHARED_PRIVATE_LINK_LIBS
120+ ${ICEBERG_SHARED_PRIVATE_BUILD_INTERFACE_LIBS}
118121 STATIC_LINK_LIBS
119122 ${ICEBERG_STATIC_BUILD_INTERFACE_LIBS}
120123 STATIC_INSTALL_INTERFACE_LIBS
@@ -149,44 +152,42 @@ if(ICEBERG_BUILD_BUNDLE)
149152 # Libraries to link with exported libiceberg_bundle.{so,a}.
150153 set (ICEBERG_BUNDLE_STATIC_BUILD_INTERFACE_LIBS)
151154 set (ICEBERG_BUNDLE_SHARED_BUILD_INTERFACE_LIBS)
155+ set (ICEBERG_BUNDLE_SHARED_PRIVATE_BUILD_INTERFACE_LIBS)
152156 set (ICEBERG_BUNDLE_STATIC_INSTALL_INTERFACE_LIBS)
153157 set (ICEBERG_BUNDLE_SHARED_INSTALL_INTERFACE_LIBS)
154158
155159 list (APPEND
156160 ICEBERG_BUNDLE_STATIC_BUILD_INTERFACE_LIBS
157- "$< IF :$< TARGET_EXISTS : iceberg_static >, iceberg_static , iceberg_shared >"
158- "$< IF :$< TARGET_EXISTS : Arrow ::arrow_static >, Arrow :: arrow_static , Arrow :: arrow_shared >"
159- "$< IF :$< TARGET_EXISTS : Parquet ::parquet_static >, Parquet :: parquet_static , Parquet :: parquet_shared >"
160- "$< IF :$< TARGET_EXISTS : avro -cpp ::avrocpp_static >, avro - cpp :: avrocpp_static , avro - cpp :: avrocpp_shared >"
161- )
161+ iceberg_static
162+ Arrow::arrow_static
163+ Parquet::parquet_static
164+ avro-cpp::avrocpp_static)
165+ list ( APPEND ICEBERG_BUNDLE_SHARED_BUILD_INTERFACE_LIBS iceberg_shared )
162166 list (APPEND
163- ICEBERG_BUNDLE_SHARED_BUILD_INTERFACE_LIBS
164- "$<IF :$<TARGET_EXISTS :iceberg_shared >,iceberg_shared ,iceberg_static >"
165- "$<IF :$<TARGET_EXISTS :Arrow ::arrow_shared >,Arrow ::arrow_shared ,Arrow ::arrow_static >"
166- "$<IF :$<TARGET_EXISTS :Parquet ::parquet_shared >,Parquet ::parquet_shared ,Parquet ::parquet_static >"
167- "$<IF :$<TARGET_EXISTS :avro -cpp ::avrocpp_shared >,avro -cpp ::avrocpp_shared ,avro -cpp ::avrocpp_static >"
168- )
169-
167+ ICEBERG_BUNDLE_SHARED_PRIVATE_BUILD_INTERFACE_LIBS
168+ Arrow::arrow_static
169+ Parquet::parquet_static
170+ avro-cpp::avrocpp_static)
170171 list (APPEND
171172 ICEBERG_BUNDLE_STATIC_INSTALL_INTERFACE_LIBS
172- "$<IF :$<TARGET_EXISTS :iceberg ::iceberg_static >,iceberg ::iceberg_static ,iceberg ::iceberg_shared >"
173- "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::arrow_static ,$<IF :$<TARGET_EXISTS :Arrow ::arrow_static >,Arrow ::arrow_static ,Arrow ::arrow_shared >>"
174- "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::parquet_static ,$<IF :$<TARGET_EXISTS :Parquet ::parquet_static >,Parquet ::parquet_static ,Parquet ::parquet_shared >>"
175- "$<IF :$<BOOL :${AVRO_VENDORED} >,iceberg ::avrocpp_s ,$<IF :$<TARGET_EXISTS :avro -cpp ::avrocpp_static >,avro -cpp ::avrocpp_static ,avro -cpp ::avrocpp_shared >>"
176- )
173+ iceberg::iceberg_static
174+ "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::arrow_static ,Arrow ::arrow_static >"
175+ "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::parquet_static ,Parquet ::parquet_static >"
176+ "$<IF :$<BOOL :${AVRO_VENDORED} >,iceberg ::avrocpp_s ,avro -cpp ::avrocpp_static >" )
177177 list (APPEND
178178 ICEBERG_BUNDLE_SHARED_INSTALL_INTERFACE_LIBS
179- "$<IF :$<TARGET_EXISTS :iceberg ::iceberg_shared >,iceberg ::iceberg_shared ,iceberg ::iceberg_static >"
180- "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::arrow_static ,$<IF :$<TARGET_EXISTS :Arrow ::arrow_shared >,Arrow ::arrow_shared ,Arrow ::arrow_static >>"
181- "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::parquet_static ,$<IF :$<TARGET_EXISTS :Parquet ::parquet_shared >,Parquet ::parquet_shared ,Parquet ::parquet_static >>"
182- "$<IF :$<BOOL :${AVRO_VENDORED} >,iceberg ::avrocpp_s ,$<IF :$<TARGET_EXISTS :avro -cpp ::avrocpp_shared >,avro -cpp ::avrocpp_shared ,avro -cpp ::avrocpp_static >>"
183- )
179+ iceberg::iceberg_shared
180+ "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::arrow_static ,Arrow ::arrow_static >"
181+ "$<IF :$<BOOL :${ARROW_VENDORED} >,iceberg ::parquet_static ,Parquet ::parquet_static >"
182+ "$<IF :$<BOOL :${AVRO_VENDORED} >,iceberg ::avrocpp_s ,avro -cpp ::avrocpp_static >" )
184183
185184 add_iceberg_lib (iceberg_bundle
186185 SOURCES
187186 ${ICEBERG_BUNDLE_SOURCES}
188187 SHARED_LINK_LIBS
189188 ${ICEBERG_BUNDLE_SHARED_BUILD_INTERFACE_LIBS}
189+ SHARED_PRIVATE_LINK_LIBS
190+ ${ICEBERG_BUNDLE_SHARED_PRIVATE_BUILD_INTERFACE_LIBS}
190191 STATIC_LINK_LIBS
191192 ${ICEBERG_BUNDLE_STATIC_BUILD_INTERFACE_LIBS}
192193 STATIC_INSTALL_INTERFACE_LIBS
0 commit comments