@@ -160,7 +160,7 @@ set (THREADS_PREFER_PTHREAD_FLAG TRUE)
160160find_package (Threads QUIET )
161161
162162if (TARGET Threads::Threads)
163- set (SEQAN3_LIBRARIES ${ SEQAN3_LIBRARIES} Threads::Threads)
163+ list ( APPEND SEQAN3_LIBRARIES Threads::Threads)
164164 if ("${CMAKE_THREAD_LIBS_INIT} " STREQUAL "" )
165165 seqan3_config_print ("Thread support: builtin." )
166166 else ()
@@ -181,7 +181,7 @@ else ()
181181endif ()
182182
183183if (TARGET cereal::cereal)
184- set (SEQAN3_LIBRARIES ${ SEQAN3_LIBRARIES} cereal::cereal)
184+ list ( APPEND SEQAN3_LIBRARIES cereal::cereal)
185185 seqan3_config_print ("Optional dependency: Cereal found." )
186186else ()
187187 set (SEQAN3_DEFINITIONS ${SEQAN3_DEFINITIONS} "-DSEQAN3_HAS_CEREAL=0" )
@@ -195,7 +195,7 @@ endif ()
195195find_package (ZLIB QUIET )
196196
197197if (TARGET ZLIB::ZLIB)
198- set (SEQAN3_LIBRARIES ${ SEQAN3_LIBRARIES} ZLIB::ZLIB)
198+ list ( APPEND SEQAN3_LIBRARIES ZLIB::ZLIB)
199199 seqan3_config_print ("Optional dependency: ZLIB-${ZLIB_VERSION_STRING} found." )
200200else ()
201201 set (SEQAN3_DEFINITIONS ${SEQAN3_DEFINITIONS} "-DSEQAN3_HAS_ZLIB=0" )
@@ -209,7 +209,7 @@ endif ()
209209find_package (BZip2 QUIET )
210210
211211if (TARGET ZLIB::ZLIB AND TARGET BZip2::BZip2)
212- set (SEQAN3_LIBRARIES ${ SEQAN3_LIBRARIES} BZip2::BZip2)
212+ list ( APPEND SEQAN3_LIBRARIES BZip2::BZip2)
213213 seqan3_config_print ("Optional dependency: BZip2-${BZIP2_VERSION_STRING} found." )
214214else ()
215215 set (SEQAN3_DEFINITIONS ${SEQAN3_DEFINITIONS} "-DSEQAN3_HAS_BZIP2=0" )
@@ -227,13 +227,13 @@ endif ()
227227# librt
228228find_library (SEQAN3_RT_LIB klrt )
229229if (SEQAN3_RT_LIB)
230- set (SEQAN3_LIBRARIES ${ SEQAN3_LIBRARIES} ${SEQAN3_RT_LIB} )
230+ list ( APPEND SEQAN3_LIBRARIES ${SEQAN3_RT_LIB} )
231231endif ()
232232
233233# libexecinfo -- implicit
234234find_package (Backtrace QUIET )
235235if (TARGET Backtrace::Backtrace)
236- set (SEQAN3_LIBRARIES ${ SEQAN3_LIBRARIES} Backtrace::Backtrace)
236+ list ( APPEND SEQAN3_LIBRARIES Backtrace::Backtrace)
237237 seqan3_config_print ("Optional dependency: libexecinfo found." )
238238else ()
239239 seqan3_config_print ("Optional dependency: libexecinfo not found." )
@@ -249,13 +249,17 @@ set (CXXSTD_TEST_SOURCE "#include <seqan3/core/platform.hpp>
249249# using try_compile instead of check_cxx_source_compiles to capture output in case of failure
250250file (WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY} /CMakeTmp/src.cxx" "${CXXSTD_TEST_SOURCE} \n " )
251251
252+ # cereal::cereal is an interface target and cannot be used in try_compile:
253+ # There is no shared or static library to link against.
254+ set (SEQAN3_TRYCOMPILE_LIBRARIES ${SEQAN3_LIBRARIES} )
255+ list (REMOVE_ITEM SEQAN3_TRYCOMPILE_LIBRARIES cereal::cereal)
252256# cmake-format: off
253257try_compile (SEQAN3_PLATFORM_TEST
254258 ${CMAKE_BINARY_DIR}
255259 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY} /CMakeTmp/src.cxx
256260 CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_INCLUDE_PATH} ;${SEQAN3_INCLUDE_DIR} "
257261 COMPILE_DEFINITIONS ${SEQAN3_DEFINITIONS}
258- LINK_LIBRARIES ${SEQAN3_LIBRARIES }
262+ LINK_LIBRARIES ${SEQAN3_TRYCOMPILE_LIBRARIES }
259263 CXX_STANDARD 23
260264 CXX_STANDARD_REQUIRED ON
261265 CXX_EXTENSIONS OFF
0 commit comments