aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/server/main/CMakeLists.txt
blob: 39fe0b40c8bab8ccdc4c8cd5cfeeda583f43a3dc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
option(DEBUG_ASIO "enable debug output for Boost.Asio" OFF)

file(GLOB server_cpp "*.cpp")
file(GLOB server_hpp "*.hpp")
add_executable(server ${server_cpp} ${server_hpp})
target_link_libraries(server PRIVATE common parser)
set_target_properties(server PROPERTIES OUTPUT_NAME math-server)

set(CMAKE_THREAD_PREFER_PTHREAD ON)
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
target_link_libraries(server PRIVATE Threads::Threads)

find_package(Boost 1.66.0 REQUIRED COMPONENTS filesystem program_options)
target_link_libraries(server PRIVATE
    Boost::disable_autolinking
    Boost::filesystem
    Boost::program_options)

if(DEBUG_ASIO)
    target_compile_definitions(server PRIVATE BOOST_ASIO_ENABLE_HANDLER_TRACKING)
endif()

install(TARGETS server RUNTIME DESTINATION bin)
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
    install(FILES "$<TARGET_PDB_FILE:server>" DESTINATION bin OPTIONAL)
endif()