CMakeLists.txt 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. cmake_minimum_required(VERSION 3.15)
  2. find_package(Boost
  3. COMPONENTS
  4. date_time system regex program_options
  5. REQUIRED)
  6. if (BUILD_SHARED_LIBS)
  7. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ../../bin)
  8. endif ()
  9. if (WIN32)
  10. add_compile_definitions(
  11. _SILENCE_CXX17_ALLOCATOR_VOID_DEPRECATION_WARNING
  12. _WIN32_WINNT=0x600
  13. )
  14. endif()
  15. add_executable(hello_asio hello_asio.cpp)
  16. target_link_libraries(hello_asio rotor_asio ${Boost_LIBRARIES})
  17. add_test(hello_asio "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/hello_asio")
  18. add_executable(request-response request-response.cpp)
  19. target_link_libraries(request-response rotor_asio ${Boost_LIBRARIES})
  20. add_test(request-response "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/request-response")
  21. add_executable(request-response-discovery request-response-discovery.cpp)
  22. target_link_libraries(request-response-discovery rotor_asio ${Boost_LIBRARIES})
  23. add_test(request-response-discovery "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/request-response-discovery")
  24. add_executable(ping-pong-single-simple ping-pong-single-simple.cpp)
  25. target_link_libraries(ping-pong-single-simple rotor_asio ${Boost_LIBRARIES})
  26. add_test(ping-pong-single-simple "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping-pong-single-simple")
  27. add_executable(ping-pong-timer ping-pong-timer.cpp)
  28. target_link_libraries(ping-pong-timer rotor_asio ${Boost_LIBRARIES})
  29. add_test(ping-pong-timer "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping-pong-timer")
  30. add_executable(one-shot-lambda-subscriber one-shot-lambda-subscriber.cpp)
  31. target_link_libraries(one-shot-lambda-subscriber rotor_asio ${Boost_LIBRARIES})
  32. add_test(one-shot-lambda-subscriber "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/one-shot-lambda-subscriber")
  33. if (NOT BUILD_THREAD_UNSAFE)
  34. add_executable(ping-pong-2-threads ping-pong-2-threads.cpp)
  35. target_link_libraries(ping-pong-2-threads rotor_asio ${Boost_LIBRARIES})
  36. add_test(ping-pong-2-threads "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping-pong-2-threads")
  37. add_executable(ping-pong-2-threads-preemt ping-pong-2-threads-preemt.cpp)
  38. target_link_libraries(ping-pong-2-threads-preemt rotor_asio ${Boost_LIBRARIES})
  39. add_test(ping-pong-2-threads-preemt "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping-pong-2-threads-preemt")
  40. endif()
  41. add_executable(beast-scrapper beast-scrapper.cpp)
  42. target_link_libraries(beast-scrapper rotor_asio ${Boost_LIBRARIES})
  43. add_test(beast-scrapper "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/beast-scrapper")