CMakeLists.txt 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. add_subdirectory(UtilDemo)
  2. add_subdirectory(CoroutineDemo)
  3. add_subdirectory(HttpDemo)
  4. if(TARS_PROTOBUF)
  5. if(TARS_HTTP2)
  6. add_subdirectory(GrpcDemo)
  7. endif()
  8. endif()
  9. add_subdirectory(CustomDemo)
  10. add_subdirectory(AuthDemo)
  11. if(TARS_SSL)
  12. add_subdirectory(SSLDemo)
  13. endif()
  14. add_subdirectory(PushDemo)
  15. add_subdirectory(QuickStartDemo)
  16. add_subdirectory(StressDemo)
  17. add_subdirectory(UdpDemo)
  18. set(WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
  19. if(WIN32)
  20. add_custom_target(run-quick-start
  21. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  22. DEPENDS QuickStartDemo QuickStartDemoClient
  23. USES_TERMINAL
  24. COMMAND ../examples/scripts/run-quick-start.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  25. COMMENT "call quick start")
  26. add_custom_target(run-http
  27. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  28. DEPENDS HttpServer HttpClient
  29. USES_TERMINAL
  30. COMMAND ../examples/scripts/run-http.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  31. COMMENT "call run http")
  32. add_custom_target(run-auth
  33. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  34. DEPENDS AuthServer AuthClient
  35. USES_TERMINAL
  36. COMMAND ../examples/scripts/run-auth.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  37. COMMENT "call run auth")
  38. add_custom_target(run-udp
  39. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  40. DEPENDS UdpServer UdpClient
  41. USES_TERMINAL
  42. COMMAND ../examples/scripts/run-udp.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  43. COMMENT "call run udp")
  44. if(TARS_HTTP2)
  45. add_custom_target(run-http2
  46. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  47. DEPENDS Http2Server Http2Client
  48. USES_TERMINAL
  49. COMMAND ../examples/scripts/run-http2.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  50. COMMENT "call run http2")
  51. endif()
  52. if(TARS_SSL)
  53. add_custom_target(run-ssl
  54. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  55. DEPENDS SSLServer SSLClient
  56. USES_TERMINAL
  57. COMMAND ../examples/scripts/run-ssl.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  58. COMMENT "call run ssl")
  59. endif()
  60. add_custom_target(run-co
  61. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  62. DEPENDS CoroutineDemoAServer CoroutineDemoBServer CoroutineDemoClient testCoro testParallelCoro
  63. USES_TERMINAL
  64. COMMAND ../examples/scripts/run-co.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  65. COMMENT "call run co")
  66. add_custom_target(run-custom
  67. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  68. DEPENDS CustomServer CustomClient
  69. USES_TERMINAL
  70. COMMAND ../examples/scripts/run-custom.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  71. COMMENT "call run custom")
  72. add_custom_target(run-push
  73. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  74. DEPENDS PushServer PushClient
  75. USES_TERMINAL
  76. COMMAND ../examples/scripts/run-push.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  77. COMMENT "call run push")
  78. if(TARS_SSL)
  79. add_custom_target(run-all
  80. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  81. DEPENDS QuickStartDemo QuickStartDemoClient HttpServer HttpClient AuthServer AuthClient SSLServer SSLClient CoroutineDemoAServer CoroutineDemoBServer CoroutineDemoClient testCoro testParallelCoro PushServer PushClient
  82. USES_TERMINAL
  83. COMMAND ../examples/scripts/run-quick-start.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  84. COMMAND ../examples/scripts/run-http.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  85. COMMAND ../examples/scripts/run-co.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  86. COMMAND ../examples/scripts/run-push.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  87. COMMAND ../examples/scripts/run-auth.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  88. COMMAND ../examples/scripts/run-ssl.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  89. COMMENT "call run all")
  90. else()
  91. add_custom_target(run-all
  92. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  93. USES_TERMINAL
  94. DEPENDS QuickStartDemo QuickStartDemoClient HttpServer HttpClient AuthServer AuthClient CoroutineDemoAServer CoroutineDemoBServer CoroutineDemoClient testCoro testParallelCoro PushServer PushClient
  95. COMMAND ../examples/scripts/run-quick-start.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  96. COMMAND ../examples/scripts/run-http.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  97. COMMAND ../examples/scripts/run-co.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  98. COMMAND ../examples/scripts/run-push.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  99. COMMAND ../examples/scripts/run-auth.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  100. COMMENT "call run all")
  101. endif()
  102. add_custom_target(run-kill
  103. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  104. USES_TERMINAL
  105. COMMAND ../examples/scripts/run-kill.bat ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  106. COMMENT "call run kill")
  107. else(WIN32)
  108. add_custom_target(run-quick-start
  109. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  110. DEPENDS QuickStartDemo QuickStartDemoClient
  111. COMMAND sh ../examples/scripts/run-quick-start.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  112. COMMENT "call quick start")
  113. add_custom_target(run-http
  114. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  115. DEPENDS HttpServer HttpClient
  116. COMMAND sh ../examples/scripts/run-http.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  117. COMMENT "call run http")
  118. add_custom_target(run-udp
  119. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  120. DEPENDS UdpServer UdpClient
  121. COMMAND sh ../examples/scripts/run-udp.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  122. COMMENT "call run udp")
  123. add_custom_target(run-auth
  124. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  125. DEPENDS AuthServer AuthClient
  126. COMMAND sh ../examples/scripts/run-auth.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  127. COMMENT "call run auth")
  128. if(TARS_HTTP2)
  129. add_custom_target(run-http2
  130. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  131. DEPENDS Http2Server Http2Client
  132. COMMAND sh ../examples/scripts/run-http2.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  133. COMMENT "call run http2")
  134. endif()
  135. if(TARS_SSL)
  136. add_custom_target(run-ssl
  137. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  138. DEPENDS SSLServer SSLClient
  139. COMMAND sh ../examples/scripts/run-ssl.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  140. COMMENT "call run ssl")
  141. endif()
  142. add_custom_target(run-co
  143. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  144. DEPENDS CoroutineDemoAServer CoroutineDemoBServer CoroutineDemoClient testCoro testParallelCoro
  145. COMMAND sh ../examples/scripts/run-co.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  146. COMMENT "call run co")
  147. add_custom_target(run-custom
  148. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  149. DEPENDS CustomServer CustomClient
  150. COMMAND sh ../examples/scripts/run-custom.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  151. COMMENT "call run custom")
  152. add_custom_target(run-push
  153. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  154. DEPENDS PushServer PushClient
  155. COMMAND sh ../examples/scripts/run-push.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  156. COMMENT "call run push")
  157. if(TARS_SSL)
  158. add_custom_target(run-all
  159. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  160. DEPENDS QuickStartDemo QuickStartDemoClient HttpServer HttpClient AuthServer AuthClient SSLServer SSLClient CoroutineDemoAServer CoroutineDemoBServer CoroutineDemoClient testCoro testParallelCoro PushServer PushClient
  161. COMMAND sh ../examples/scripts/run-quick-start.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  162. COMMAND sh ../examples/scripts/run-http.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  163. COMMAND sh ../examples/scripts/run-co.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  164. COMMAND sh ../examples/scripts/run-push.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  165. COMMAND sh ../examples/scripts/run-auth.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  166. COMMAND sh ../examples/scripts/run-ssl.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  167. COMMENT "call run all")
  168. else()
  169. add_custom_target(run-all
  170. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  171. DEPENDS QuickStartDemo QuickStartDemoClient HttpServer HttpClient AuthServer AuthClient CoroutineDemoAServer CoroutineDemoBServer CoroutineDemoClient testCoro testParallelCoro PushServer PushClient
  172. COMMAND sh ../examples/scripts/run-quick-start.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  173. COMMAND sh ../examples/scripts/run-http.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  174. COMMAND sh ../examples/scripts/run-co.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  175. COMMAND sh ../examples/scripts/run-push.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  176. COMMAND sh ../examples/scripts/run-auth.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  177. COMMENT "call run all")
  178. endif()
  179. add_custom_target(run-kill
  180. WORKING_DIRECTORY ${WORKING_DIRECTORY}
  181. COMMAND sh ../examples/scripts/run-kill.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${WORKING_DIRECTORY}
  182. COMMENT "call run kill")
  183. endif(WIN32)