CMakeLists.txt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. cmake_minimum_required(VERSION 3.15)
  2. if (BUILD_SHARED_LIBS)
  3. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ../bin)
  4. endif ()
  5. if (BUILD_BOOST_ASIO)
  6. add_subdirectory("boost-asio")
  7. endif()
  8. if (BUILD_EV)
  9. add_subdirectory("ev")
  10. endif()
  11. if (BUILD_BOOST_ASIO AND BUILD_EV AND NOT BUILD_THREAD_UNSAFE)
  12. add_executable(ping-pong-ev_and_asio ping-pong-ev_and_asio.cpp)
  13. target_link_libraries(ping-pong-ev_and_asio rotor_ev rotor_asio)
  14. add_test(ping-pong-ev_and_asio "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping-pong-ev_and_asio")
  15. endif()
  16. if (BUILD_THREAD)
  17. add_subdirectory("thread")
  18. endif()
  19. add_executable(autoshutdown autoshutdown.cpp)
  20. target_link_libraries(autoshutdown rotor)
  21. add_test(autoshutdown "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/autoshutdown")
  22. add_executable(hello_loopless hello_loopless.cpp)
  23. target_link_libraries(hello_loopless rotor)
  24. add_test(hello_loopless "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/hello_loopless")
  25. add_executable(escalate-failure escalate-failure.cpp)
  26. target_link_libraries(escalate-failure rotor)
  27. add_test(escalate-failure "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/escalate-failure")
  28. add_executable(ping_pong ping_pong.cpp)
  29. target_link_libraries(ping_pong rotor)
  30. add_test(ping_pong "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping_pong")
  31. add_executable(ping_pong-lambda ping_pong-lambda.cpp)
  32. target_link_libraries(ping_pong-lambda rotor)
  33. add_test(ping_pong-lambda "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ping_pong-lambda")
  34. add_executable(pub_sub pub_sub.cpp)
  35. target_link_libraries(pub_sub rotor)
  36. add_test(pub_sub "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/pub_sub")