cmake: Make implicit libbitcoinkernel dependencies explicit

This change fixes a regression introduced by enabling the
`OPTIMIZE_DEPENDENCIES` property.
This commit is contained in:
Hennadii Stepanov 2025-02-18 12:30:41 +00:00
parent 3fd64efb43
commit 3b42e05aa9
No known key found for this signature in database
GPG key ID: 410108112E7EA81F

View file

@ -102,6 +102,10 @@ set_target_properties(bitcoinkernel PROPERTIES
CXX_VISIBILITY_PRESET default CXX_VISIBILITY_PRESET default
) )
# Add a convenience libbitcoinkernel target as a synonym for bitcoinkernel.
add_custom_target(libbitcoinkernel)
add_dependencies(libbitcoinkernel bitcoinkernel)
# When building the static library, install all static libraries the # When building the static library, install all static libraries the
# bitcoinkernel depends on. # bitcoinkernel depends on.
if(NOT BUILD_SHARED_LIBS) if(NOT BUILD_SHARED_LIBS)
@ -110,6 +114,7 @@ if(NOT BUILD_SHARED_LIBS)
get_target_property(linked_libraries ${target} LINK_LIBRARIES) get_target_property(linked_libraries ${target} LINK_LIBRARIES)
foreach(dep ${linked_libraries}) foreach(dep ${linked_libraries})
if(TARGET ${dep}) if(TARGET ${dep})
add_dependencies(libbitcoinkernel ${dep})
get_target_property(dep_type ${dep} TYPE) get_target_property(dep_type ${dep} TYPE)
if(dep_type STREQUAL "STATIC_LIBRARY") if(dep_type STREQUAL "STATIC_LIBRARY")
list(APPEND ${libs_out} ${dep}) list(APPEND ${libs_out} ${dep})
@ -132,10 +137,6 @@ endif()
configure_file(${PROJECT_SOURCE_DIR}/libbitcoinkernel.pc.in ${PROJECT_BINARY_DIR}/libbitcoinkernel.pc @ONLY) configure_file(${PROJECT_SOURCE_DIR}/libbitcoinkernel.pc.in ${PROJECT_BINARY_DIR}/libbitcoinkernel.pc @ONLY)
install(FILES ${PROJECT_BINARY_DIR}/libbitcoinkernel.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" COMPONENT libbitcoinkernel) install(FILES ${PROJECT_BINARY_DIR}/libbitcoinkernel.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" COMPONENT libbitcoinkernel)
# Add a convenience libbitcoinkernel target as a synonym for bitcoinkernel.
add_custom_target(libbitcoinkernel)
add_dependencies(libbitcoinkernel bitcoinkernel)
install(TARGETS bitcoinkernel install(TARGETS bitcoinkernel
RUNTIME RUNTIME
DESTINATION ${CMAKE_INSTALL_BINDIR} DESTINATION ${CMAKE_INSTALL_BINDIR}