[CMakeLists] Fix linking error on FreeBSD; clarify IOCore dependency scopes
All checks were successful
buildbot/IOCore-linux-builder Build done.
buildbot/IOCore-macos-builder Build done.
buildbot/IOCore-freebsd-builder Build done.

This commit is contained in:
S David 2024-07-29 13:29:33 -04:00
parent 14bf605b06
commit 999b58d632
2 changed files with 14 additions and 18 deletions

View File

@ -21,15 +21,22 @@ if (USE_BOOST_STACKTRACE)
target_link_options(IOCore PUBLIC -rdynamic)
endif()
set(LIBRARY_DEP_LIBS
${STACKTRACE_DEP_LIBS}
set(IOCORE_HEADER_LIBS
fmt::fmt-header-only
)
target_link_libraries(IOCore PUBLIC
fmt::fmt-header-only
set(IOCORE_DEP_LIBS
${STACKTRACE_DEP_LIBS}
tomlplusplus::tomlplusplus
)
target_link_libraries(IOCore PUBLIC
${IOCORE_HEADER_LIBS}
)
target_link_libraries(IOCore INTERFACE
${IOCORE_DEP_LIBS}
)
add_library(IOCoreStatic STATIC)
add_library(IOCore::Static ALIAS IOCoreStatic )
set_target_properties(IOCoreStatic PROPERTIES OUTPUT_NAME "IOCore")
@ -38,21 +45,10 @@ add_library(IOCoreShared SHARED )
add_library(IOCore::Shared ALIAS IOCoreShared )
set_target_properties(IOCoreShared PROPERTIES OUTPUT_NAME "IOCore")
target_link_libraries(IOCoreStatic PRIVATE IOCore)
target_link_libraries(IOCoreShared PRIVATE IOCore)
target_link_libraries(IOCoreStatic PUBLIC
fmt::fmt-header-only
tomlplusplus::tomlplusplus
)
target_link_libraries(IOCoreShared PUBLIC
fmt::fmt-header-only
tomlplusplus::tomlplusplus
)
target_link_libraries(IOCoreStatic PUBLIC IOCore)
target_link_libraries(IOCoreShared PUBLIC IOCore)
target_include_directories(IOCoreStatic INTERFACE ${IOCore_INCLUDE_OUTPUT_DIR})
target_include_directories(IOCoreShared INTERFACE ${IOCore_INCLUDE_OUTPUT_DIR})
# vim: ts=2 sw=2 noet foldmethod=indent :

View File

@ -15,7 +15,7 @@ target_include_directories(test-runner PRIVATE
target_link_libraries(test-runner
PRIVATE
IOCoreStatic
IOCoreShared
Catch2::Catch2WithMain
)