CMakeLists.txt 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. add_definitions(-DHV_SOURCE=1)
  2. aux_source_directory(../base BASE_SRCS)
  3. aux_source_directory(../utils UTILS_SRCS)
  4. aux_source_directory(../event EVENT_SRCS)
  5. aux_source_directory(../http HTTP_SRCS)
  6. aux_source_directory(../http/client HTTP_CLIENT_SRCS)
  7. aux_source_directory(../http/server HTTP_SERVER_SRCS)
  8. aux_source_directory(../consul CONSUL_SRCS)
  9. aux_source_directory(httpd HTTPD_SRCS)
  10. add_executable(hmain_test hmain_test.cpp ${BASE_SRCS} ${UTILS_SRCS})
  11. target_include_directories(hmain_test PRIVATE .. ../base ../utils)
  12. target_link_libraries(hmain_test ${LIBS})
  13. add_executable(htimer_test htimer_test.c ${BASE_SRCS} ${EVENT_SRCS})
  14. target_include_directories(htimer_test PRIVATE .. ../base ../event)
  15. target_link_libraries(htimer_test ${LIBS})
  16. add_executable(hloop_test hloop_test.c ${BASE_SRCS} ${EVENT_SRCS})
  17. target_include_directories(hloop_test PRIVATE .. ../base ../event)
  18. target_link_libraries(hloop_test ${LIBS})
  19. add_executable(tcp tcp.c ${BASE_SRCS} ${EVENT_SRCS})
  20. target_include_directories(tcp PRIVATE .. ../base ../event)
  21. target_link_libraries(tcp ${LIBS})
  22. add_executable(udp udp.c ${BASE_SRCS} ${EVENT_SRCS})
  23. target_include_directories(udp PRIVATE .. ../base ../event)
  24. target_link_libraries(udp ${LIBS})
  25. add_executable(nc nc.c ${BASE_SRCS} ${EVENT_SRCS})
  26. target_include_directories(nc PRIVATE .. ../base ../event)
  27. target_link_libraries(nc ${LIBS})
  28. add_executable(nmap nmap.cpp ${BASE_SRCS} ${EVENT_SRCS})
  29. target_compile_definitions(nmap PRIVATE -DPRINT_DEBUG)
  30. target_include_directories(nmap PRIVATE .. ../base ../event)
  31. target_link_libraries(nmap ${LIBS})
  32. add_executable(httpd ${BASE_SRCS} ${UTILS_SRCS} ${EVENT_SRCS} ${HTTP_SRCS} ${HTTP_SERVER_SRCS} ${HTTPD_SRCS})
  33. target_include_directories(httpd PRIVATE .. ../base ../utils ../event ../http ../http/server httpd)
  34. target_link_libraries(httpd ${LIBS})
  35. if(WITH_CURL)
  36. set(CURL_TARGET_NAME hv_curl)
  37. else()
  38. set(CURL_TARGET_NAME curl)
  39. endif()
  40. add_executable(${CURL_TARGET_NAME} curl.cpp ${BASE_SRCS} ${UTILS_SRCS} ${HTTP_SRCS} ${HTTP_CLIENT_SRCS})
  41. if(WITH_CURL)
  42. set_target_properties(${CURL_TARGET_NAME} PROPERTIES OUTPUT_NAME curl)
  43. endif()
  44. target_include_directories(${CURL_TARGET_NAME} PRIVATE .. ../base ../utils ../http ../http/client)
  45. target_link_libraries(${CURL_TARGET_NAME} ${LIBS})
  46. add_executable(consul_cli consul_cli.cpp ${BASE_SRCS} ${UTILS_SRCS} ${HTTP_SRCS} ${HTTP_CLIENT_SRCS} ${CONSUL_SRCS})
  47. target_compile_definitions(consul_cli PRIVATE PRINT_DEBUG)
  48. target_include_directories(consul_cli PRIVATE .. ../base ../utils ../http ../http/client ../consul)
  49. target_link_libraries(consul_cli ${LIBS})
  50. add_custom_target(examples DEPENDS
  51. hmain_test
  52. htimer_test
  53. hloop_test
  54. tcp
  55. udp
  56. nc
  57. nmap
  58. httpd
  59. ${CURL_TARGET_NAME}
  60. consul_cli
  61. )