BUILD.bazel 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library")
  2. cc_binary(
  3. name = "hloop_test",
  4. srcs = ["hloop_test.c"],
  5. deps = ["//:hv"]
  6. )
  7. cc_binary(
  8. name = "htimer_test",
  9. srcs = ["htimer_test.c"],
  10. deps = ["//:hv"]
  11. )
  12. cc_binary(
  13. name = "nc",
  14. srcs = ["nc.c"],
  15. deps = ["//:hv"]
  16. )
  17. cc_binary(
  18. name = "tinyhttpd",
  19. srcs = ["tinyhttpd.c"],
  20. deps = ["//:hv"]
  21. )
  22. cc_binary(
  23. name = "tinyproxyd",
  24. srcs = ["tinyproxyd.c"],
  25. deps = ["//:hv"]
  26. )
  27. cc_binary(
  28. name = "tcp_client_test",
  29. srcs = ["tcp_client_test.c"],
  30. deps = ["//:hv"]
  31. )
  32. cc_binary(
  33. name = "tcp_echo_server",
  34. srcs = ["tcp_echo_server.c"],
  35. deps = ["//:hv"]
  36. )
  37. cc_binary(
  38. name = "tcp_chat_server",
  39. srcs = ["tcp_chat_server.c"],
  40. deps = ["//:hv"]
  41. )
  42. cc_binary(
  43. name = "tcp_proxy_server",
  44. srcs = ["tcp_proxy_server.c"],
  45. deps = ["//:hv"]
  46. )
  47. cc_binary(
  48. name = "udp_echo_server",
  49. srcs = ["udp_echo_server.c"],
  50. deps = ["//:hv"]
  51. )
  52. cc_binary(
  53. name = "udp_proxy_server",
  54. srcs = ["udp_proxy_server.c"],
  55. deps = ["//:hv"]
  56. )
  57. cc_binary(
  58. name = "socks5_proxy_server",
  59. srcs = ["socks5_proxy_server.c"],
  60. deps = ["//:hv"]
  61. )
  62. cc_binary(
  63. name = "jsonrpc_client",
  64. srcs = ["jsonrpc/jsonrpc_client.c", "jsonrpc/cJSON.c"] + glob(["jsonrpc/*.h"]),
  65. copts = ["-DCJSON_HIDE_SYMBOLS"],
  66. deps = ["//:hv"]
  67. )
  68. cc_binary(
  69. name = "jsonrpc_server",
  70. srcs = ["jsonrpc/jsonrpc_server.c", "jsonrpc/cJSON.c"] + glob(["jsonrpc/*.h"]),
  71. copts = ["-DCJSON_HIDE_SYMBOLS"],
  72. deps = ["//:hv"]
  73. )
  74. cc_binary(
  75. name = "hmain_test",
  76. srcs = ["hmain_test.cpp"],
  77. deps = ["//:hv"]
  78. )
  79. cc_binary(
  80. name = "nmap",
  81. srcs = glob(["nmap/*"]),
  82. copts = ["-DPRINT_DEBUG"],
  83. deps = ["//:hv"]
  84. )
  85. cc_binary(
  86. name = "wrk",
  87. srcs = ["wrk.cpp"],
  88. deps = ["//:hv"]
  89. )
  90. cc_binary(
  91. name = "http_server_test",
  92. srcs = ["http_server_test.cpp"],
  93. deps = ["//:hv"]
  94. )
  95. cc_binary(
  96. name = "websocket_server_test",
  97. srcs = ["websocket_server_test.cpp"],
  98. deps = ["//:hv"]
  99. )
  100. cc_binary(
  101. name = "curl",
  102. srcs = ["curl.cpp"],
  103. deps = ["//:hv"]
  104. )
  105. cc_binary(
  106. name = "wget",
  107. srcs = ["wget.cpp"],
  108. deps = ["//:hv"]
  109. )
  110. cc_binary(
  111. name = "consul",
  112. srcs = glob(["consul/*"]),
  113. copts = ["-DPRINT_DEBUG"],
  114. deps = ["//:hv"]
  115. )
  116. cc_binary(
  117. name = "http_client_test",
  118. srcs = ["http_client_test.cpp"],
  119. deps = ["//:hv"]
  120. )
  121. cc_binary(
  122. name = "websocket_client_test",
  123. srcs = ["websocket_client_test.cpp"],
  124. deps = ["//:hv"]
  125. )
  126. cc_binary(
  127. name = "httpd",
  128. srcs = glob(["httpd/*"]),
  129. copts = ["-DPRINT_DEBUG"],
  130. deps = ["//:hv"]
  131. )
  132. cc_binary(
  133. name = "mqtt_sub",
  134. srcs = ["mqtt/mqtt_sub.c"],
  135. deps = ["//:hv"]
  136. )
  137. cc_binary(
  138. name = "mqtt_pub",
  139. srcs = ["mqtt/mqtt_pub.c"],
  140. deps = ["//:hv"]
  141. )
  142. cc_binary(
  143. name = "mqtt_client_test",
  144. srcs = ["mqtt/mqtt_client_test.cpp"],
  145. deps = ["//:hv"]
  146. )
  147. config_setting(
  148. name = "with_http_server_client",
  149. define_values = {
  150. "WITH_EVPP": "ON",
  151. "WITH_HTTP": "ON",
  152. "WITH_HTTP_SERVER": "ON",
  153. "WITH_HTTP_CLIENT": "ON",
  154. },
  155. )
  156. filegroup(
  157. name = "examples",
  158. srcs = [
  159. ":hloop_test",
  160. ":htimer_test",
  161. ":nc",
  162. ":tinyhttpd",
  163. ":tinyproxyd",
  164. ":tcp_client_test",
  165. ":tcp_echo_server",
  166. ":tcp_chat_server",
  167. ":tcp_proxy_server",
  168. ":udp_echo_server",
  169. ":udp_proxy_server",
  170. ":socks5_proxy_server",
  171. ":jsonrpc_client",
  172. ":jsonrpc_server",
  173. ] + select({
  174. "//:with_evpp": [":hmain_test", ":nmap"],
  175. "//conditions:default": [],
  176. }) + select({
  177. "//:with_http": [":wrk"],
  178. "//conditions:default": [],
  179. }) + select({
  180. "//:with_http_server": [":http_server_test", ":websocket_server_test"],
  181. "//conditions:default": [],
  182. }) + select({
  183. "//:with_http_client": [":curl", ":wget", ":consul", ":http_client_test", ":websocket_client_test"],
  184. "//conditions:default": [],
  185. }) + select({
  186. "with_http_server_client": [":httpd"],
  187. "//conditions:default": [],
  188. }) + select({
  189. "//:with_mqtt": ["mqtt_sub", "mqtt_pub", "mqtt_client_test"],
  190. "//conditions:default": [],
  191. }),
  192. visibility = ["//:__pkg__"]
  193. )