build_handwritten.yaml 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. '#1': This file describes the list of targets and dependencies.
  2. '#2': It is used among other things to generate all of our project files.
  3. '#3': Please refer to the templates directory for more information.
  4. settings:
  5. '#01': The public version number of the library.
  6. '#02': ===
  7. '#03': Please update the 'g_stands_for' field periodically with a new g word
  8. '#04': not listed in doc/g_stands_for.md - and update that document to list the
  9. '#05': new word. When doing so, please also update BUILD.
  10. '#06': ===
  11. '#07': Master always has a "-dev" suffix
  12. '#08': Use "-preN" suffixes to identify pre-release versions
  13. '#09': Per-language overrides are possible with (eg) ruby_version tag here
  14. '#10': See the expand_version.py for all the quirks here
  15. core_version: 23.0.0
  16. csharp_major_version: 2
  17. g_stands_for: gravity
  18. protobuf_version: 3.19.4
  19. version: 1.45.2
  20. targets:
  21. - name: check_epollexclusive
  22. build: tool
  23. language: c
  24. src:
  25. - test/build/check_epollexclusive.c
  26. deps:
  27. - grpc
  28. - gpr
  29. - name: gen_hpack_tables
  30. build: tool
  31. language: c++
  32. src:
  33. - tools/codegen/core/gen_hpack_tables.cc
  34. deps:
  35. - grpc
  36. - gpr
  37. uses_polling: false
  38. configs:
  39. asan:
  40. CC: clang
  41. CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize=address -fno-omit-frame-pointer
  42. -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
  43. CXX: clang++
  44. LD: clang++
  45. LDFLAGS: -fsanitize=address
  46. LDXX: clang++
  47. compile_the_world: true
  48. test_environ:
  49. ASAN_OPTIONS: detect_leaks=1:color=always
  50. LSAN_OPTIONS: suppressions=test/core/util/lsan_suppressions.txt:report_objects=1
  51. asan-noleaks:
  52. CC: clang
  53. CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize=address -fno-omit-frame-pointer
  54. -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
  55. CXX: clang++
  56. LD: clang++
  57. LDFLAGS: fsanitize=address
  58. LDXX: clang++
  59. compile_the_world: true
  60. test_environ:
  61. ASAN_OPTIONS: detect_leaks=0:color=always
  62. asan-trace-cmp:
  63. CC: clang
  64. CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize-coverage=trace-cmp
  65. -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument
  66. -DGPR_NO_DIRECT_SYSCALLS
  67. CXX: clang++
  68. LD: clang++
  69. LDFLAGS: -fsanitize=address
  70. LDXX: clang++
  71. compile_the_world: true
  72. test_environ:
  73. ASAN_OPTIONS: detect_leaks=1:color=always
  74. LSAN_OPTIONS: suppressions=test/core/util/lsan_suppressions.txt:report_objects=1
  75. basicprof:
  76. CPPFLAGS: -O2 -DGRPC_BASIC_PROFILER -DGRPC_TIMERS_RDTSC
  77. DEFINES: NDEBUG
  78. c++-compat:
  79. CFLAGS: -Wc++-compat
  80. CPPFLAGS: -O0
  81. DEFINES: _DEBUG DEBUG
  82. counters:
  83. CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS
  84. DEFINES: NDEBUG
  85. counters_with_memory_counter:
  86. CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS -DGPR_WRAP_MEMORY_COUNTER
  87. DEFINES: NDEBUG
  88. LDFLAGS: -Wl,--wrap=malloc -Wl,--wrap=calloc -Wl,--wrap=realloc -Wl,--wrap=free
  89. dbg:
  90. CPPFLAGS: -O0
  91. DEFINES: _DEBUG DEBUG
  92. gcov:
  93. CC: gcc
  94. CPPFLAGS: -O0 -fprofile-arcs -ftest-coverage -Wno-return-type
  95. CXX: g++
  96. DEFINES: _DEBUG DEBUG GPR_GCOV
  97. LD: gcc
  98. LDFLAGS: -fprofile-arcs -ftest-coverage -rdynamic -lstdc++
  99. LDXX: g++
  100. helgrind:
  101. CPPFLAGS: -O0
  102. DEFINES: _DEBUG DEBUG
  103. LDFLAGS: -rdynamic
  104. valgrind: --tool=helgrind
  105. lto:
  106. CPPFLAGS: -O2
  107. DEFINES: NDEBUG
  108. memcheck:
  109. CPPFLAGS: -O0
  110. DEFINES: _DEBUG DEBUG
  111. LDFLAGS: -rdynamic
  112. valgrind: --tool=memcheck --leak-check=full
  113. msan:
  114. CC: clang
  115. CPPFLAGS: -O0 -stdlib=libc++ -fsanitize-coverage=edge,trace-pc-guard -fsanitize=memory
  116. -fsanitize-memory-track-origins -fsanitize-memory-use-after-dtor -fno-omit-frame-pointer
  117. -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -Wno-unused-command-line-argument
  118. -fPIE -pie -DGPR_NO_DIRECT_SYSCALLS
  119. CXX: clang++
  120. DEFINES: NDEBUG
  121. LD: clang++
  122. LDFLAGS: -stdlib=libc++ -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
  123. -fPIE -pie $(if $(JENKINS_BUILD),-Wl$(comma)-Ttext-segment=0x7e0000000000,)
  124. LDXX: clang++
  125. compile_the_world: true
  126. test_environ:
  127. MSAN_OPTIONS: poison_in_dtor=1
  128. mutrace:
  129. CPPFLAGS: -O3 -fno-omit-frame-pointer
  130. DEFINES: NDEBUG
  131. LDFLAGS: -rdynamic
  132. noexcept:
  133. CPPFLAGS: -O2 -Wframe-larger-than=16384
  134. CXXFLAGS: -fno-exceptions
  135. DEFINES: NDEBUG
  136. opt:
  137. CPPFLAGS: -O2 -Wframe-larger-than=16384
  138. DEFINES: NDEBUG
  139. stapprof:
  140. CPPFLAGS: -O2 -DGRPC_STAP_PROFILER
  141. DEFINES: NDEBUG
  142. tsan:
  143. CC: clang
  144. CPPFLAGS: -O0 -fsanitize=thread -fno-omit-frame-pointer -Wno-unused-command-line-argument
  145. -DGPR_NO_DIRECT_SYSCALLS
  146. CXX: clang++
  147. DEFINES: GRPC_TSAN
  148. LD: clang++
  149. LDFLAGS: -fsanitize=thread
  150. LDXX: clang++
  151. compile_the_world: true
  152. test_environ:
  153. TSAN_OPTIONS: suppressions=test/core/util/tsan_suppressions.txt:halt_on_error=1:second_deadlock_stack=1
  154. ubsan:
  155. CC: clang
  156. CPPFLAGS: -O0 -stdlib=libc++ -fsanitize-coverage=edge,trace-pc-guard -fsanitize=undefined
  157. -fno-omit-frame-pointer -Wno-unused-command-line-argument -Wvarargs
  158. CXX: clang++
  159. DEFINES: NDEBUG GRPC_UBSAN
  160. LD: clang++
  161. LDFLAGS: -stdlib=libc++ -fsanitize=undefined,unsigned-integer-overflow
  162. LDXX: clang++
  163. compile_the_world: true
  164. test_environ:
  165. UBSAN_OPTIONS: halt_on_error=1:print_stacktrace=1:suppressions=test/core/util/ubsan_suppressions.txt
  166. defaults:
  167. abseil:
  168. CPPFLAGS: -g -Ithird_party/abseil-cpp
  169. ares:
  170. CFLAGS: -g
  171. CPPFLAGS: -Ithird_party/cares/cares/include -Ithird_party/cares -Ithird_party/cares/cares
  172. -fvisibility=hidden -D_GNU_SOURCE $(if $(subst Darwin,,$(SYSTEM)),,-Ithird_party/cares/config_darwin)
  173. $(if $(subst FreeBSD,,$(SYSTEM)),,-Ithird_party/cares/config_freebsd) $(if $(subst
  174. Linux,,$(SYSTEM)),,-Ithird_party/cares/config_linux) $(if $(subst OpenBSD,,$(SYSTEM)),,-Ithird_party/cares/config_openbsd)
  175. -DWIN32_LEAN_AND_MEAN -D_HAS_EXCEPTIONS=0 -DNOMINMAX $(if $(subst MINGW32,,$(SYSTEM)),-DHAVE_CONFIG_H,)
  176. benchmark:
  177. CPPFLAGS: -Ithird_party/benchmark/include -DHAVE_POSIX_REGEX
  178. boringssl:
  179. CFLAGS: -g
  180. CPPFLAGS: -Ithird_party/boringssl-with-bazel/src/include -fvisibility=hidden -DOPENSSL_NO_ASM
  181. -D_GNU_SOURCE -DWIN32_LEAN_AND_MEAN -D_HAS_EXCEPTIONS=0 -DNOMINMAX
  182. CXXFLAGS: -fno-exceptions
  183. global:
  184. CFLAGS: -g
  185. COREFLAGS: -fno-exceptions
  186. CPPFLAGS: -g -Wall -Wextra -DOSATOMIC_USE_INLINED=1 -Ithird_party/abseil-cpp -Ithird_party/re2
  187. -Ithird_party/upb -Isrc/core/ext/upb-generated -Isrc/core/ext/upbdefs-generated
  188. -Ithird_party/xxhash
  189. LDFLAGS: -g
  190. zlib:
  191. CFLAGS: -fvisibility=hidden
  192. CPPFLAGS: -DHAVE_UNISTD_H
  193. php_config_m4:
  194. deps:
  195. - grpc
  196. - address_sorting
  197. - boringssl
  198. - re2
  199. - z
  200. headers:
  201. - src/php/ext/grpc/byte_buffer.h
  202. - src/php/ext/grpc/call.h
  203. - src/php/ext/grpc/call_credentials.h
  204. - src/php/ext/grpc/channel.h
  205. - src/php/ext/grpc/channel_credentials.h
  206. - src/php/ext/grpc/completion_queue.h
  207. - src/php/ext/grpc/php7_wrapper.h
  208. - src/php/ext/grpc/php_grpc.h
  209. - src/php/ext/grpc/server.h
  210. - src/php/ext/grpc/server_credentials.h
  211. - src/php/ext/grpc/timeval.h
  212. - src/php/ext/grpc/version.h
  213. src:
  214. - src/php/ext/grpc/byte_buffer.c
  215. - src/php/ext/grpc/call.c
  216. - src/php/ext/grpc/call_credentials.c
  217. - src/php/ext/grpc/channel.c
  218. - src/php/ext/grpc/channel_credentials.c
  219. - src/php/ext/grpc/completion_queue.c
  220. - src/php/ext/grpc/php_grpc.c
  221. - src/php/ext/grpc/server.c
  222. - src/php/ext/grpc/server_credentials.c
  223. - src/php/ext/grpc/timeval.c
  224. python_dependencies:
  225. deps:
  226. - grpc
  227. - address_sorting
  228. - ares
  229. - boringssl
  230. - re2
  231. - z
  232. ruby_gem:
  233. deps:
  234. - grpc
  235. - address_sorting
  236. - ares
  237. - boringssl
  238. - re2
  239. - z