Files
voice-cat/server/CMakeLists.txt

34 lines
1.5 KiB
CMake
Raw Permalink Normal View History

2026-06-15 23:48:44 +02:00
# voicecat-server-lib — all server implementation except main.cpp.
# Linked by the server binary AND by tests (test_m1_integration).
file(GLOB_RECURSE VOICECAT_SERVER_LIB_SOURCES CONFIGURE_DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp")
2026-06-15 23:48:44 +02:00
list(FILTER VOICECAT_SERVER_LIB_SOURCES EXCLUDE REGEX ".*[/\\\\]main\\.cpp$")
2026-06-15 23:48:44 +02:00
add_library(voicecat-server-lib STATIC ${VOICECAT_SERVER_LIB_SOURCES})
target_compile_features(voicecat-server-lib PRIVATE cxx_std_20)
target_link_libraries(voicecat-server-lib PUBLIC voicecat::voicecat)
target_include_directories(voicecat-server-lib PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/src
${CMAKE_SOURCE_DIR}/core/src)
add_library(voicecat::server ALIAS voicecat-server-lib)
if(VOICECAT_USE_VCPKG_DEPS)
find_package(unofficial-sqlite3 CONFIG REQUIRED)
find_package(unofficial-sodium CONFIG REQUIRED)
find_package(MbedTLS CONFIG REQUIRED)
find_package(asio CONFIG REQUIRED)
target_link_libraries(voicecat-server-lib PUBLIC
unofficial::sqlite3::sqlite3
unofficial-sodium::sodium
MbedTLS::mbedtls MbedTLS::mbedcrypto MbedTLS::mbedx509
asio::asio)
if(WIN32)
target_link_libraries(voicecat-server-lib PUBLIC ws2_32 mswsock)
endif()
endif()
# The server binary is just main.cpp calling Server::run().
add_executable(voicecat-server ${CMAKE_CURRENT_SOURCE_DIR}/src/main.cpp)
target_link_libraries(voicecat-server PRIVATE voicecat::server)
target_compile_features(voicecat-server PRIVATE cxx_std_20)