This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
stellar-stellar/infra/CMakeLists.txt
2024-08-29 18:16:37 +08:00

23 lines
1.1 KiB
CMake

set(INFRA log tuple packet_parser packet_io snowflake ip_reassembly tcp_reassembly session_manager plugin_manager core)
set(DEPS bitmap dablooms interval_tree nmx_pool rbtree timeout toml)
set(DECODERS http lpi)
set(WHOLE_ARCHIVE ${DEPS} ${INFRA} ${DECODERS})
foreach(infra ${INFRA})
add_subdirectory(${infra})
endforeach()
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/stellar_devel.c "")
add_library(stellar_devel SHARED stellar_devel.c)
set_target_properties(stellar_devel PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_LIST_DIR}/version.map")
target_link_libraries(stellar_devel PRIVATE pthread -Wl,--whole-archive ${WHOLE_ARCHIVE} -Wl,--no-whole-archive)
target_link_options(stellar_devel PRIVATE -rdynamic)
add_executable(stellar main.c)
set_target_properties(stellar PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_LIST_DIR}/version.map")
target_link_libraries(stellar PRIVATE pthread -Wl,--whole-archive ${WHOLE_ARCHIVE} -Wl,--no-whole-archive)
target_link_options(stellar PRIVATE -rdynamic)
install(TARGETS stellar_devel LIBRARY DESTINATION lib COMPONENT LIBRARIES)
install(TARGETS stellar RUNTIME DESTINATION bin COMPONENT PROGRAM)