BUILD 78 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301
  1. # gRPC Bazel BUILD file.
  2. #
  3. # Copyright 2016 gRPC authors.
  4. #
  5. # Licensed under the Apache License, Version 2.0 (the "License");
  6. # you may not use this file except in compliance with the License.
  7. # You may obtain a copy of the License at
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. # Unless required by applicable law or agreed to in writing, software
  12. # distributed under the License is distributed on an "AS IS" BASIS,
  13. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. # See the License for the specific language governing permissions and
  15. # limitations under the License.
  16. licenses(["notice"]) # Apache v2
  17. exports_files(["LICENSE"])
  18. package(
  19. default_visibility = ["//visibility:public"],
  20. features = [
  21. "-layering_check",
  22. "-parse_headers",
  23. ],
  24. )
  25. load(
  26. "//bazel:grpc_build_system.bzl",
  27. "grpc_cc_library",
  28. "grpc_generate_one_off_targets",
  29. "grpc_proto_plugin",
  30. )
  31. config_setting(
  32. name = "grpc_no_ares",
  33. values = {"define": "grpc_no_ares=true"},
  34. )
  35. config_setting(
  36. name = "grpc_allow_exceptions",
  37. values = {"define": "GRPC_ALLOW_EXCEPTIONS=1"},
  38. )
  39. config_setting(
  40. name = "grpc_disallow_exceptions",
  41. values = {"define": "GRPC_ALLOW_EXCEPTIONS=0"},
  42. )
  43. config_setting(
  44. name = "remote_execution",
  45. values = {"define": "GRPC_PORT_ISOLATED_RUNTIME=1"},
  46. )
  47. config_setting(
  48. name = "windows",
  49. values = {"cpu": "x64_windows"},
  50. )
  51. config_setting(
  52. name = "windows_msvc",
  53. values = {"cpu": "x64_windows_msvc"},
  54. )
  55. # This should be updated along with build.yaml
  56. g_stands_for = "gold"
  57. core_version = "7.0.0"
  58. version = "1.19.0-pre1"
  59. GPR_PUBLIC_HDRS = [
  60. "include/grpc/support/alloc.h",
  61. "include/grpc/support/atm.h",
  62. "include/grpc/support/atm_gcc_atomic.h",
  63. "include/grpc/support/atm_gcc_sync.h",
  64. "include/grpc/support/atm_windows.h",
  65. "include/grpc/support/cpu.h",
  66. "include/grpc/support/log.h",
  67. "include/grpc/support/log_windows.h",
  68. "include/grpc/support/port_platform.h",
  69. "include/grpc/support/string_util.h",
  70. "include/grpc/support/sync.h",
  71. "include/grpc/support/sync_custom.h",
  72. "include/grpc/support/sync_generic.h",
  73. "include/grpc/support/sync_posix.h",
  74. "include/grpc/support/sync_windows.h",
  75. "include/grpc/support/thd_id.h",
  76. "include/grpc/support/time.h",
  77. ]
  78. GRPC_PUBLIC_HDRS = [
  79. "include/grpc/byte_buffer.h",
  80. "include/grpc/byte_buffer_reader.h",
  81. "include/grpc/compression.h",
  82. "include/grpc/fork.h",
  83. "include/grpc/grpc.h",
  84. "include/grpc/grpc_posix.h",
  85. "include/grpc/grpc_security_constants.h",
  86. "include/grpc/slice.h",
  87. "include/grpc/slice_buffer.h",
  88. "include/grpc/status.h",
  89. "include/grpc/load_reporting.h",
  90. "include/grpc/support/workaround_list.h",
  91. ]
  92. GRPC_SECURE_PUBLIC_HDRS = [
  93. "include/grpc/grpc_security.h",
  94. ]
  95. # TODO(ctiller): layer grpc atop grpc_unsecure, layer grpc++ atop grpc++_unsecure
  96. GRPCXX_SRCS = [
  97. "src/cpp/client/channel_cc.cc",
  98. "src/cpp/client/client_context.cc",
  99. "src/cpp/client/client_interceptor.cc",
  100. "src/cpp/client/create_channel.cc",
  101. "src/cpp/client/create_channel_internal.cc",
  102. "src/cpp/client/create_channel_posix.cc",
  103. "src/cpp/client/credentials_cc.cc",
  104. "src/cpp/client/generic_stub.cc",
  105. "src/cpp/common/alarm.cc",
  106. "src/cpp/common/channel_arguments.cc",
  107. "src/cpp/common/channel_filter.cc",
  108. "src/cpp/common/completion_queue_cc.cc",
  109. "src/cpp/common/core_codegen.cc",
  110. "src/cpp/common/resource_quota_cc.cc",
  111. "src/cpp/common/rpc_method.cc",
  112. "src/cpp/common/version_cc.cc",
  113. "src/cpp/server/async_generic_service.cc",
  114. "src/cpp/server/channel_argument_option.cc",
  115. "src/cpp/server/create_default_thread_pool.cc",
  116. "src/cpp/server/dynamic_thread_pool.cc",
  117. "src/cpp/server/health/default_health_check_service.cc",
  118. "src/cpp/server/health/health_check_service.cc",
  119. "src/cpp/server/health/health_check_service_server_builder_option.cc",
  120. "src/cpp/server/server_builder.cc",
  121. "src/cpp/server/server_cc.cc",
  122. "src/cpp/server/server_context.cc",
  123. "src/cpp/server/server_credentials.cc",
  124. "src/cpp/server/server_posix.cc",
  125. "src/cpp/thread_manager/thread_manager.cc",
  126. "src/cpp/util/byte_buffer_cc.cc",
  127. "src/cpp/util/status.cc",
  128. "src/cpp/util/string_ref.cc",
  129. "src/cpp/util/time_cc.cc",
  130. ]
  131. GRPCXX_HDRS = [
  132. "src/cpp/client/create_channel_internal.h",
  133. "src/cpp/common/channel_filter.h",
  134. "src/cpp/server/dynamic_thread_pool.h",
  135. "src/cpp/server/health/default_health_check_service.h",
  136. "src/cpp/server/thread_pool_interface.h",
  137. "src/cpp/thread_manager/thread_manager.h",
  138. ]
  139. GRPCXX_PUBLIC_HDRS = [
  140. "include/grpc++/alarm.h",
  141. "include/grpc++/channel.h",
  142. "include/grpc++/client_context.h",
  143. "include/grpc++/completion_queue.h",
  144. "include/grpc++/create_channel.h",
  145. "include/grpc++/create_channel_posix.h",
  146. "include/grpc++/ext/health_check_service_server_builder_option.h",
  147. "include/grpc++/generic/async_generic_service.h",
  148. "include/grpc++/generic/generic_stub.h",
  149. "include/grpc++/grpc++.h",
  150. "include/grpc++/health_check_service_interface.h",
  151. "include/grpc++/impl/call.h",
  152. "include/grpc++/impl/channel_argument_option.h",
  153. "include/grpc++/impl/client_unary_call.h",
  154. "include/grpc++/impl/codegen/core_codegen.h",
  155. "include/grpc++/impl/grpc_library.h",
  156. "include/grpc++/impl/method_handler_impl.h",
  157. "include/grpc++/impl/rpc_method.h",
  158. "include/grpc++/impl/rpc_service_method.h",
  159. "include/grpc++/impl/serialization_traits.h",
  160. "include/grpc++/impl/server_builder_option.h",
  161. "include/grpc++/impl/server_builder_plugin.h",
  162. "include/grpc++/impl/server_initializer.h",
  163. "include/grpc++/impl/service_type.h",
  164. "include/grpc++/impl/sync_cxx11.h",
  165. "include/grpc++/impl/sync_no_cxx11.h",
  166. "include/grpc++/resource_quota.h",
  167. "include/grpc++/security/auth_context.h",
  168. "include/grpc++/security/auth_metadata_processor.h",
  169. "include/grpc++/security/credentials.h",
  170. "include/grpc++/security/server_credentials.h",
  171. "include/grpc++/server.h",
  172. "include/grpc++/server_builder.h",
  173. "include/grpc++/server_context.h",
  174. "include/grpc++/server_posix.h",
  175. "include/grpc++/support/async_stream.h",
  176. "include/grpc++/support/async_unary_call.h",
  177. "include/grpc++/support/byte_buffer.h",
  178. "include/grpc++/support/channel_arguments.h",
  179. "include/grpc++/support/config.h",
  180. "include/grpc++/support/slice.h",
  181. "include/grpc++/support/status.h",
  182. "include/grpc++/support/status_code_enum.h",
  183. "include/grpc++/support/string_ref.h",
  184. "include/grpc++/support/stub_options.h",
  185. "include/grpc++/support/sync_stream.h",
  186. "include/grpc++/support/time.h",
  187. "include/grpcpp/alarm.h",
  188. "include/grpcpp/alarm_impl.h",
  189. "include/grpcpp/channel.h",
  190. "include/grpcpp/client_context.h",
  191. "include/grpcpp/completion_queue.h",
  192. "include/grpcpp/create_channel.h",
  193. "include/grpcpp/create_channel_posix.h",
  194. "include/grpcpp/ext/health_check_service_server_builder_option.h",
  195. "include/grpcpp/generic/async_generic_service.h",
  196. "include/grpcpp/generic/generic_stub.h",
  197. "include/grpcpp/grpcpp.h",
  198. "include/grpcpp/health_check_service_interface.h",
  199. "include/grpcpp/impl/call.h",
  200. "include/grpcpp/impl/channel_argument_option.h",
  201. "include/grpcpp/impl/client_unary_call.h",
  202. "include/grpcpp/impl/codegen/core_codegen.h",
  203. "include/grpcpp/impl/grpc_library.h",
  204. "include/grpcpp/impl/method_handler_impl.h",
  205. "include/grpcpp/impl/rpc_method.h",
  206. "include/grpcpp/impl/rpc_service_method.h",
  207. "include/grpcpp/impl/serialization_traits.h",
  208. "include/grpcpp/impl/server_builder_option.h",
  209. "include/grpcpp/impl/server_builder_plugin.h",
  210. "include/grpcpp/impl/server_initializer.h",
  211. "include/grpcpp/impl/service_type.h",
  212. "include/grpcpp/impl/sync_cxx11.h",
  213. "include/grpcpp/impl/sync_no_cxx11.h",
  214. "include/grpcpp/resource_quota.h",
  215. "include/grpcpp/security/auth_context.h",
  216. "include/grpcpp/security/auth_metadata_processor.h",
  217. "include/grpcpp/security/credentials.h",
  218. "include/grpcpp/security/server_credentials.h",
  219. "include/grpcpp/server.h",
  220. "include/grpcpp/server_builder.h",
  221. "include/grpcpp/server_context.h",
  222. "include/grpcpp/server_posix.h",
  223. "include/grpcpp/support/async_stream.h",
  224. "include/grpcpp/support/async_unary_call.h",
  225. "include/grpcpp/support/byte_buffer.h",
  226. "include/grpcpp/support/channel_arguments.h",
  227. "include/grpcpp/support/client_callback.h",
  228. "include/grpcpp/support/client_interceptor.h",
  229. "include/grpcpp/support/config.h",
  230. "include/grpcpp/support/interceptor.h",
  231. "include/grpcpp/support/proto_buffer_reader.h",
  232. "include/grpcpp/support/proto_buffer_writer.h",
  233. "include/grpcpp/support/server_callback.h",
  234. "include/grpcpp/support/server_interceptor.h",
  235. "include/grpcpp/support/slice.h",
  236. "include/grpcpp/support/status.h",
  237. "include/grpcpp/support/status_code_enum.h",
  238. "include/grpcpp/support/string_ref.h",
  239. "include/grpcpp/support/stub_options.h",
  240. "include/grpcpp/support/sync_stream.h",
  241. "include/grpcpp/support/time.h",
  242. ]
  243. grpc_cc_library(
  244. name = "gpr",
  245. language = "c++",
  246. public_hdrs = GPR_PUBLIC_HDRS,
  247. standalone = True,
  248. deps = [
  249. "gpr_base",
  250. ],
  251. )
  252. grpc_cc_library(
  253. name = "grpc_unsecure",
  254. srcs = [
  255. "src/core/lib/surface/init.cc",
  256. "src/core/lib/surface/init_unsecure.cc",
  257. "src/core/plugin_registry/grpc_unsecure_plugin_registry.cc",
  258. ],
  259. language = "c++",
  260. public_hdrs = GRPC_PUBLIC_HDRS,
  261. standalone = True,
  262. deps = [
  263. "grpc_common",
  264. "grpc_lb_policy_grpclb",
  265. "grpc_lb_policy_xds",
  266. ],
  267. )
  268. grpc_cc_library(
  269. name = "grpc",
  270. srcs = [
  271. "src/core/lib/surface/init.cc",
  272. "src/core/plugin_registry/grpc_plugin_registry.cc",
  273. ],
  274. language = "c++",
  275. public_hdrs = GRPC_PUBLIC_HDRS + GRPC_SECURE_PUBLIC_HDRS,
  276. standalone = True,
  277. deps = [
  278. "grpc_common",
  279. "grpc_lb_policy_grpclb_secure",
  280. "grpc_lb_policy_xds_secure",
  281. "grpc_secure",
  282. "grpc_transport_chttp2_client_secure",
  283. "grpc_transport_chttp2_server_secure",
  284. ],
  285. )
  286. grpc_cc_library(
  287. name = "grpc_cronet",
  288. srcs = [
  289. "src/core/lib/surface/init.cc",
  290. "src/core/plugin_registry/grpc_cronet_plugin_registry.cc",
  291. ],
  292. language = "c++",
  293. deps = [
  294. "grpc_base",
  295. "grpc_http_filters",
  296. "grpc_transport_chttp2_client_secure",
  297. "grpc_transport_cronet_client_secure",
  298. ],
  299. )
  300. grpc_cc_library(
  301. name = "grpc++_public_hdrs",
  302. hdrs = GRPCXX_PUBLIC_HDRS,
  303. )
  304. grpc_cc_library(
  305. name = "grpc++",
  306. srcs = [
  307. "src/cpp/client/insecure_credentials.cc",
  308. "src/cpp/client/secure_credentials.cc",
  309. "src/cpp/common/auth_property_iterator.cc",
  310. "src/cpp/common/secure_auth_context.cc",
  311. "src/cpp/common/secure_channel_arguments.cc",
  312. "src/cpp/common/secure_create_auth_context.cc",
  313. "src/cpp/server/insecure_server_credentials.cc",
  314. "src/cpp/server/secure_server_credentials.cc",
  315. ],
  316. hdrs = [
  317. "src/cpp/client/secure_credentials.h",
  318. "src/cpp/common/secure_auth_context.h",
  319. "src/cpp/server/secure_server_credentials.h",
  320. ],
  321. language = "c++",
  322. public_hdrs = GRPCXX_PUBLIC_HDRS,
  323. standalone = True,
  324. deps = [
  325. "gpr",
  326. "grpc",
  327. "grpc++_base",
  328. "grpc++_codegen_base",
  329. "grpc++_codegen_base_src",
  330. "grpc++_codegen_proto",
  331. ],
  332. )
  333. grpc_cc_library(
  334. name = "grpc++_unsecure",
  335. srcs = [
  336. "src/cpp/client/insecure_credentials.cc",
  337. "src/cpp/common/insecure_create_auth_context.cc",
  338. "src/cpp/server/insecure_server_credentials.cc",
  339. ],
  340. language = "c++",
  341. standalone = True,
  342. deps = [
  343. "gpr",
  344. "grpc++_base_unsecure",
  345. "grpc++_codegen_base",
  346. "grpc++_codegen_base_src",
  347. "grpc++_codegen_proto",
  348. "grpc_unsecure",
  349. ],
  350. )
  351. grpc_cc_library(
  352. name = "grpc++_error_details",
  353. srcs = [
  354. "src/cpp/util/error_details.cc",
  355. ],
  356. hdrs = [
  357. "include/grpc++/support/error_details.h",
  358. "include/grpcpp/support/error_details.h",
  359. ],
  360. language = "c++",
  361. standalone = True,
  362. deps = [
  363. "grpc++",
  364. "//src/proto/grpc/status:status_proto",
  365. ],
  366. )
  367. grpc_cc_library(
  368. name = "grpc_plugin_support",
  369. srcs = [
  370. "src/compiler/cpp_generator.cc",
  371. "src/compiler/csharp_generator.cc",
  372. "src/compiler/node_generator.cc",
  373. "src/compiler/objective_c_generator.cc",
  374. "src/compiler/php_generator.cc",
  375. "src/compiler/python_generator.cc",
  376. "src/compiler/ruby_generator.cc",
  377. ],
  378. hdrs = [
  379. "src/compiler/config.h",
  380. "src/compiler/cpp_generator.h",
  381. "src/compiler/cpp_generator_helpers.h",
  382. "src/compiler/csharp_generator.h",
  383. "src/compiler/csharp_generator_helpers.h",
  384. "src/compiler/generator_helpers.h",
  385. "src/compiler/node_generator.h",
  386. "src/compiler/node_generator_helpers.h",
  387. "src/compiler/objective_c_generator.h",
  388. "src/compiler/objective_c_generator_helpers.h",
  389. "src/compiler/php_generator.h",
  390. "src/compiler/php_generator_helpers.h",
  391. "src/compiler/protobuf_plugin.h",
  392. "src/compiler/python_generator.h",
  393. "src/compiler/python_generator_helpers.h",
  394. "src/compiler/python_private_generator.h",
  395. "src/compiler/ruby_generator.h",
  396. "src/compiler/ruby_generator_helpers-inl.h",
  397. "src/compiler/ruby_generator_map-inl.h",
  398. "src/compiler/ruby_generator_string-inl.h",
  399. "src/compiler/schema_interface.h",
  400. ],
  401. external_deps = [
  402. "protobuf_clib",
  403. ],
  404. language = "c++",
  405. deps = [
  406. "grpc++_config_proto",
  407. ],
  408. )
  409. grpc_proto_plugin(
  410. name = "grpc_cpp_plugin",
  411. srcs = ["src/compiler/cpp_plugin.cc"],
  412. deps = [":grpc_plugin_support"],
  413. )
  414. grpc_proto_plugin(
  415. name = "grpc_csharp_plugin",
  416. srcs = ["src/compiler/csharp_plugin.cc"],
  417. deps = [":grpc_plugin_support"],
  418. )
  419. grpc_proto_plugin(
  420. name = "grpc_node_plugin",
  421. srcs = ["src/compiler/node_plugin.cc"],
  422. deps = [":grpc_plugin_support"],
  423. )
  424. grpc_proto_plugin(
  425. name = "grpc_objective_c_plugin",
  426. srcs = ["src/compiler/objective_c_plugin.cc"],
  427. deps = [":grpc_plugin_support"],
  428. )
  429. grpc_proto_plugin(
  430. name = "grpc_php_plugin",
  431. srcs = ["src/compiler/php_plugin.cc"],
  432. deps = [":grpc_plugin_support"],
  433. )
  434. grpc_proto_plugin(
  435. name = "grpc_python_plugin",
  436. srcs = ["src/compiler/python_plugin.cc"],
  437. deps = [":grpc_plugin_support"],
  438. )
  439. grpc_proto_plugin(
  440. name = "grpc_ruby_plugin",
  441. srcs = ["src/compiler/ruby_plugin.cc"],
  442. deps = [":grpc_plugin_support"],
  443. )
  444. grpc_cc_library(
  445. name = "grpc_csharp_ext",
  446. srcs = [
  447. "src/csharp/ext/grpc_csharp_ext.c",
  448. ],
  449. language = "csharp",
  450. deps = [
  451. "gpr",
  452. "grpc",
  453. ],
  454. )
  455. grpc_cc_library(
  456. name = "census",
  457. srcs = [
  458. "src/core/ext/filters/census/grpc_context.cc",
  459. ],
  460. language = "c++",
  461. public_hdrs = [
  462. "include/grpc/census.h",
  463. ],
  464. deps = [
  465. "grpc_base",
  466. ],
  467. )
  468. grpc_cc_library(
  469. name = "gpr_base",
  470. srcs = [
  471. "src/core/lib/gpr/alloc.cc",
  472. "src/core/lib/gpr/arena.cc",
  473. "src/core/lib/gpr/atm.cc",
  474. "src/core/lib/gpr/cpu_iphone.cc",
  475. "src/core/lib/gpr/cpu_linux.cc",
  476. "src/core/lib/gpr/cpu_posix.cc",
  477. "src/core/lib/gpr/cpu_windows.cc",
  478. "src/core/lib/gpr/env_linux.cc",
  479. "src/core/lib/gpr/env_posix.cc",
  480. "src/core/lib/gpr/env_windows.cc",
  481. "src/core/lib/gpr/host_port.cc",
  482. "src/core/lib/gpr/log.cc",
  483. "src/core/lib/gpr/log_android.cc",
  484. "src/core/lib/gpr/log_linux.cc",
  485. "src/core/lib/gpr/log_posix.cc",
  486. "src/core/lib/gpr/log_windows.cc",
  487. "src/core/lib/gpr/mpscq.cc",
  488. "src/core/lib/gpr/murmur_hash.cc",
  489. "src/core/lib/gpr/string.cc",
  490. "src/core/lib/gpr/string_posix.cc",
  491. "src/core/lib/gpr/string_util_windows.cc",
  492. "src/core/lib/gpr/string_windows.cc",
  493. "src/core/lib/gpr/sync.cc",
  494. "src/core/lib/gpr/sync_posix.cc",
  495. "src/core/lib/gpr/sync_windows.cc",
  496. "src/core/lib/gpr/time.cc",
  497. "src/core/lib/gpr/time_posix.cc",
  498. "src/core/lib/gpr/time_precise.cc",
  499. "src/core/lib/gpr/time_windows.cc",
  500. "src/core/lib/gpr/tls_pthread.cc",
  501. "src/core/lib/gpr/tmpfile_msys.cc",
  502. "src/core/lib/gpr/tmpfile_posix.cc",
  503. "src/core/lib/gpr/tmpfile_windows.cc",
  504. "src/core/lib/gpr/wrap_memcpy.cc",
  505. "src/core/lib/gprpp/fork.cc",
  506. "src/core/lib/gprpp/thd_posix.cc",
  507. "src/core/lib/gprpp/thd_windows.cc",
  508. "src/core/lib/profiling/basic_timers.cc",
  509. "src/core/lib/profiling/stap_timers.cc",
  510. ],
  511. hdrs = [
  512. "src/core/lib/gpr/alloc.h",
  513. "src/core/lib/gpr/arena.h",
  514. "src/core/lib/gpr/env.h",
  515. "src/core/lib/gpr/host_port.h",
  516. "src/core/lib/gpr/mpscq.h",
  517. "src/core/lib/gpr/murmur_hash.h",
  518. "src/core/lib/gpr/spinlock.h",
  519. "src/core/lib/gpr/string.h",
  520. "src/core/lib/gpr/string_windows.h",
  521. "src/core/lib/gpr/time_precise.h",
  522. "src/core/lib/gpr/tls.h",
  523. "src/core/lib/gpr/tls_gcc.h",
  524. "src/core/lib/gpr/tls_msvc.h",
  525. "src/core/lib/gpr/tls_pthread.h",
  526. "src/core/lib/gpr/tmpfile.h",
  527. "src/core/lib/gpr/useful.h",
  528. "src/core/lib/gprpp/abstract.h",
  529. "src/core/lib/gprpp/fork.h",
  530. "src/core/lib/gprpp/manual_constructor.h",
  531. "src/core/lib/gprpp/memory.h",
  532. "src/core/lib/gprpp/mutex_lock.h",
  533. "src/core/lib/gprpp/thd.h",
  534. "src/core/lib/profiling/timers.h",
  535. ],
  536. language = "c++",
  537. public_hdrs = GPR_PUBLIC_HDRS,
  538. deps = [
  539. "gpr_codegen",
  540. ],
  541. )
  542. grpc_cc_library(
  543. name = "gpr_codegen",
  544. language = "c++",
  545. public_hdrs = [
  546. "include/grpc/impl/codegen/atm.h",
  547. "include/grpc/impl/codegen/atm_gcc_atomic.h",
  548. "include/grpc/impl/codegen/atm_gcc_sync.h",
  549. "include/grpc/impl/codegen/atm_windows.h",
  550. "include/grpc/impl/codegen/fork.h",
  551. "include/grpc/impl/codegen/gpr_slice.h",
  552. "include/grpc/impl/codegen/gpr_types.h",
  553. "include/grpc/impl/codegen/log.h",
  554. "include/grpc/impl/codegen/port_platform.h",
  555. "include/grpc/impl/codegen/sync.h",
  556. "include/grpc/impl/codegen/sync_custom.h",
  557. "include/grpc/impl/codegen/sync_generic.h",
  558. "include/grpc/impl/codegen/sync_posix.h",
  559. "include/grpc/impl/codegen/sync_windows.h",
  560. ],
  561. )
  562. grpc_cc_library(
  563. name = "grpc_trace",
  564. srcs = ["src/core/lib/debug/trace.cc"],
  565. hdrs = ["src/core/lib/debug/trace.h"],
  566. language = "c++",
  567. public_hdrs = GRPC_PUBLIC_HDRS,
  568. deps = [
  569. "grpc_codegen",
  570. ":gpr",
  571. ],
  572. )
  573. grpc_cc_library(
  574. name = "atomic",
  575. hdrs = [
  576. "src/core/lib/gprpp/atomic_with_atm.h",
  577. "src/core/lib/gprpp/atomic_with_std.h",
  578. ],
  579. language = "c++",
  580. public_hdrs = [
  581. "src/core/lib/gprpp/atomic.h",
  582. ],
  583. deps = [
  584. "gpr",
  585. ],
  586. )
  587. grpc_cc_library(
  588. name = "inlined_vector",
  589. language = "c++",
  590. public_hdrs = [
  591. "src/core/lib/gprpp/inlined_vector.h",
  592. ],
  593. deps = [
  594. "gpr_base",
  595. ],
  596. )
  597. grpc_cc_library(
  598. name = "debug_location",
  599. language = "c++",
  600. public_hdrs = ["src/core/lib/gprpp/debug_location.h"],
  601. )
  602. grpc_cc_library(
  603. name = "optional",
  604. language = "c++",
  605. public_hdrs = [
  606. "src/core/lib/gprpp/optional.h",
  607. ],
  608. deps = [
  609. "gpr_base",
  610. ],
  611. )
  612. grpc_cc_library(
  613. name = "orphanable",
  614. language = "c++",
  615. public_hdrs = ["src/core/lib/gprpp/orphanable.h"],
  616. deps = [
  617. "debug_location",
  618. "gpr_base",
  619. "grpc_trace",
  620. "ref_counted",
  621. "ref_counted_ptr",
  622. ],
  623. )
  624. grpc_cc_library(
  625. name = "ref_counted",
  626. language = "c++",
  627. public_hdrs = ["src/core/lib/gprpp/ref_counted.h"],
  628. deps = [
  629. "debug_location",
  630. "gpr_base",
  631. "grpc_trace",
  632. "ref_counted_ptr",
  633. ],
  634. )
  635. grpc_cc_library(
  636. name = "ref_counted_ptr",
  637. language = "c++",
  638. public_hdrs = ["src/core/lib/gprpp/ref_counted_ptr.h"],
  639. deps = [
  640. "gpr_base",
  641. ],
  642. )
  643. grpc_cc_library(
  644. name = "grpc_base_c",
  645. srcs = [
  646. "src/core/lib/avl/avl.cc",
  647. "src/core/lib/backoff/backoff.cc",
  648. "src/core/lib/channel/channel_args.cc",
  649. "src/core/lib/channel/channel_stack.cc",
  650. "src/core/lib/channel/channel_stack_builder.cc",
  651. "src/core/lib/channel/channel_trace.cc",
  652. "src/core/lib/channel/channelz.cc",
  653. "src/core/lib/channel/channelz_registry.cc",
  654. "src/core/lib/channel/connected_channel.cc",
  655. "src/core/lib/channel/handshaker.cc",
  656. "src/core/lib/channel/handshaker_registry.cc",
  657. "src/core/lib/channel/status_util.cc",
  658. "src/core/lib/compression/compression.cc",
  659. "src/core/lib/compression/compression_internal.cc",
  660. "src/core/lib/compression/message_compress.cc",
  661. "src/core/lib/compression/stream_compression.cc",
  662. "src/core/lib/compression/stream_compression_gzip.cc",
  663. "src/core/lib/compression/stream_compression_identity.cc",
  664. "src/core/lib/debug/stats.cc",
  665. "src/core/lib/debug/stats_data.cc",
  666. "src/core/lib/http/format_request.cc",
  667. "src/core/lib/http/httpcli.cc",
  668. "src/core/lib/http/parser.cc",
  669. "src/core/lib/iomgr/buffer_list.cc",
  670. "src/core/lib/iomgr/call_combiner.cc",
  671. "src/core/lib/iomgr/combiner.cc",
  672. "src/core/lib/iomgr/endpoint.cc",
  673. "src/core/lib/iomgr/endpoint_pair_posix.cc",
  674. "src/core/lib/iomgr/endpoint_pair_uv.cc",
  675. "src/core/lib/iomgr/endpoint_pair_windows.cc",
  676. "src/core/lib/iomgr/error.cc",
  677. "src/core/lib/iomgr/ev_epoll1_linux.cc",
  678. "src/core/lib/iomgr/ev_epollex_linux.cc",
  679. "src/core/lib/iomgr/ev_poll_posix.cc",
  680. "src/core/lib/iomgr/ev_posix.cc",
  681. "src/core/lib/iomgr/ev_windows.cc",
  682. "src/core/lib/iomgr/exec_ctx.cc",
  683. "src/core/lib/iomgr/executor.cc",
  684. "src/core/lib/iomgr/fork_posix.cc",
  685. "src/core/lib/iomgr/fork_windows.cc",
  686. "src/core/lib/iomgr/gethostname_fallback.cc",
  687. "src/core/lib/iomgr/gethostname_host_name_max.cc",
  688. "src/core/lib/iomgr/gethostname_sysconf.cc",
  689. "src/core/lib/iomgr/grpc_if_nametoindex_posix.cc",
  690. "src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc",
  691. "src/core/lib/iomgr/internal_errqueue.cc",
  692. "src/core/lib/iomgr/iocp_windows.cc",
  693. "src/core/lib/iomgr/iomgr.cc",
  694. "src/core/lib/iomgr/iomgr_custom.cc",
  695. "src/core/lib/iomgr/iomgr_internal.cc",
  696. "src/core/lib/iomgr/iomgr_posix.cc",
  697. "src/core/lib/iomgr/iomgr_windows.cc",
  698. "src/core/lib/iomgr/is_epollexclusive_available.cc",
  699. "src/core/lib/iomgr/load_file.cc",
  700. "src/core/lib/iomgr/lockfree_event.cc",
  701. "src/core/lib/iomgr/polling_entity.cc",
  702. "src/core/lib/iomgr/pollset.cc",
  703. "src/core/lib/iomgr/pollset_custom.cc",
  704. "src/core/lib/iomgr/pollset_set.cc",
  705. "src/core/lib/iomgr/pollset_set_custom.cc",
  706. "src/core/lib/iomgr/pollset_set_windows.cc",
  707. "src/core/lib/iomgr/pollset_uv.cc",
  708. "src/core/lib/iomgr/pollset_windows.cc",
  709. "src/core/lib/iomgr/resolve_address.cc",
  710. "src/core/lib/iomgr/resolve_address_custom.cc",
  711. "src/core/lib/iomgr/resolve_address_posix.cc",
  712. "src/core/lib/iomgr/resolve_address_windows.cc",
  713. "src/core/lib/iomgr/resource_quota.cc",
  714. "src/core/lib/iomgr/sockaddr_utils.cc",
  715. "src/core/lib/iomgr/socket_factory_posix.cc",
  716. "src/core/lib/iomgr/socket_mutator.cc",
  717. "src/core/lib/iomgr/socket_utils_common_posix.cc",
  718. "src/core/lib/iomgr/socket_utils_linux.cc",
  719. "src/core/lib/iomgr/socket_utils_posix.cc",
  720. "src/core/lib/iomgr/socket_utils_windows.cc",
  721. "src/core/lib/iomgr/socket_windows.cc",
  722. "src/core/lib/iomgr/tcp_client.cc",
  723. "src/core/lib/iomgr/tcp_client_custom.cc",
  724. "src/core/lib/iomgr/tcp_client_posix.cc",
  725. "src/core/lib/iomgr/tcp_client_windows.cc",
  726. "src/core/lib/iomgr/tcp_custom.cc",
  727. "src/core/lib/iomgr/tcp_posix.cc",
  728. "src/core/lib/iomgr/tcp_server.cc",
  729. "src/core/lib/iomgr/tcp_server_custom.cc",
  730. "src/core/lib/iomgr/tcp_server_posix.cc",
  731. "src/core/lib/iomgr/tcp_server_utils_posix_common.cc",
  732. "src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc",
  733. "src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc",
  734. "src/core/lib/iomgr/tcp_server_windows.cc",
  735. "src/core/lib/iomgr/tcp_uv.cc",
  736. "src/core/lib/iomgr/tcp_windows.cc",
  737. "src/core/lib/iomgr/time_averaged_stats.cc",
  738. "src/core/lib/iomgr/timer.cc",
  739. "src/core/lib/iomgr/timer_custom.cc",
  740. "src/core/lib/iomgr/timer_generic.cc",
  741. "src/core/lib/iomgr/timer_heap.cc",
  742. "src/core/lib/iomgr/timer_manager.cc",
  743. "src/core/lib/iomgr/timer_uv.cc",
  744. "src/core/lib/iomgr/udp_server.cc",
  745. "src/core/lib/iomgr/unix_sockets_posix.cc",
  746. "src/core/lib/iomgr/unix_sockets_posix_noop.cc",
  747. "src/core/lib/iomgr/wakeup_fd_cv.cc",
  748. "src/core/lib/iomgr/wakeup_fd_eventfd.cc",
  749. "src/core/lib/iomgr/wakeup_fd_nospecial.cc",
  750. "src/core/lib/iomgr/wakeup_fd_pipe.cc",
  751. "src/core/lib/iomgr/wakeup_fd_posix.cc",
  752. "src/core/lib/json/json.cc",
  753. "src/core/lib/json/json_reader.cc",
  754. "src/core/lib/json/json_string.cc",
  755. "src/core/lib/json/json_writer.cc",
  756. "src/core/lib/slice/b64.cc",
  757. "src/core/lib/slice/percent_encoding.cc",
  758. "src/core/lib/slice/slice.cc",
  759. "src/core/lib/slice/slice_buffer.cc",
  760. "src/core/lib/slice/slice_intern.cc",
  761. "src/core/lib/slice/slice_string_helpers.cc",
  762. "src/core/lib/surface/api_trace.cc",
  763. "src/core/lib/surface/byte_buffer.cc",
  764. "src/core/lib/surface/byte_buffer_reader.cc",
  765. "src/core/lib/surface/call.cc",
  766. "src/core/lib/surface/call_details.cc",
  767. "src/core/lib/surface/call_log_batch.cc",
  768. "src/core/lib/surface/channel.cc",
  769. "src/core/lib/surface/channel_init.cc",
  770. "src/core/lib/surface/channel_ping.cc",
  771. "src/core/lib/surface/channel_stack_type.cc",
  772. "src/core/lib/surface/completion_queue.cc",
  773. "src/core/lib/surface/completion_queue_factory.cc",
  774. "src/core/lib/surface/event_string.cc",
  775. "src/core/lib/surface/metadata_array.cc",
  776. "src/core/lib/surface/server.cc",
  777. "src/core/lib/surface/validate_metadata.cc",
  778. "src/core/lib/surface/version.cc",
  779. "src/core/lib/transport/bdp_estimator.cc",
  780. "src/core/lib/transport/byte_stream.cc",
  781. "src/core/lib/transport/connectivity_state.cc",
  782. "src/core/lib/transport/error_utils.cc",
  783. "src/core/lib/transport/metadata.cc",
  784. "src/core/lib/transport/metadata_batch.cc",
  785. "src/core/lib/transport/pid_controller.cc",
  786. "src/core/lib/transport/service_config.cc",
  787. "src/core/lib/transport/static_metadata.cc",
  788. "src/core/lib/transport/status_conversion.cc",
  789. "src/core/lib/transport/status_metadata.cc",
  790. "src/core/lib/transport/timeout_encoding.cc",
  791. "src/core/lib/transport/transport.cc",
  792. "src/core/lib/transport/transport_op_string.cc",
  793. "src/core/lib/uri/uri_parser.cc",
  794. ],
  795. hdrs = [
  796. "src/core/lib/avl/avl.h",
  797. "src/core/lib/backoff/backoff.h",
  798. "src/core/lib/channel/channel_args.h",
  799. "src/core/lib/channel/channel_stack.h",
  800. "src/core/lib/channel/channel_stack_builder.h",
  801. "src/core/lib/channel/channel_trace.h",
  802. "src/core/lib/channel/channelz.h",
  803. "src/core/lib/channel/channelz_registry.h",
  804. "src/core/lib/channel/connected_channel.h",
  805. "src/core/lib/channel/context.h",
  806. "src/core/lib/channel/handshaker.h",
  807. "src/core/lib/channel/handshaker_factory.h",
  808. "src/core/lib/channel/handshaker_registry.h",
  809. "src/core/lib/channel/status_util.h",
  810. "src/core/lib/compression/algorithm_metadata.h",
  811. "src/core/lib/compression/compression_internal.h",
  812. "src/core/lib/compression/message_compress.h",
  813. "src/core/lib/compression/stream_compression.h",
  814. "src/core/lib/compression/stream_compression_gzip.h",
  815. "src/core/lib/compression/stream_compression_identity.h",
  816. "src/core/lib/debug/stats.h",
  817. "src/core/lib/debug/stats_data.h",
  818. "src/core/lib/http/format_request.h",
  819. "src/core/lib/http/httpcli.h",
  820. "src/core/lib/http/parser.h",
  821. "src/core/lib/iomgr/block_annotate.h",
  822. "src/core/lib/iomgr/buffer_list.h",
  823. "src/core/lib/iomgr/call_combiner.h",
  824. "src/core/lib/iomgr/closure.h",
  825. "src/core/lib/iomgr/combiner.h",
  826. "src/core/lib/iomgr/dynamic_annotations.h",
  827. "src/core/lib/iomgr/endpoint.h",
  828. "src/core/lib/iomgr/endpoint_pair.h",
  829. "src/core/lib/iomgr/error.h",
  830. "src/core/lib/iomgr/error_internal.h",
  831. "src/core/lib/iomgr/ev_epoll1_linux.h",
  832. "src/core/lib/iomgr/ev_epollex_linux.h",
  833. "src/core/lib/iomgr/ev_poll_posix.h",
  834. "src/core/lib/iomgr/ev_posix.h",
  835. "src/core/lib/iomgr/exec_ctx.h",
  836. "src/core/lib/iomgr/executor.h",
  837. "src/core/lib/iomgr/gethostname.h",
  838. "src/core/lib/iomgr/gevent_util.h",
  839. "src/core/lib/iomgr/grpc_if_nametoindex.h",
  840. "src/core/lib/iomgr/internal_errqueue.h",
  841. "src/core/lib/iomgr/iocp_windows.h",
  842. "src/core/lib/iomgr/iomgr.h",
  843. "src/core/lib/iomgr/iomgr_custom.h",
  844. "src/core/lib/iomgr/iomgr_internal.h",
  845. "src/core/lib/iomgr/iomgr_posix.h",
  846. "src/core/lib/iomgr/is_epollexclusive_available.h",
  847. "src/core/lib/iomgr/load_file.h",
  848. "src/core/lib/iomgr/lockfree_event.h",
  849. "src/core/lib/iomgr/nameser.h",
  850. "src/core/lib/iomgr/polling_entity.h",
  851. "src/core/lib/iomgr/pollset.h",
  852. "src/core/lib/iomgr/pollset_custom.h",
  853. "src/core/lib/iomgr/pollset_set.h",
  854. "src/core/lib/iomgr/pollset_set_custom.h",
  855. "src/core/lib/iomgr/pollset_set_windows.h",
  856. "src/core/lib/iomgr/pollset_uv.h",
  857. "src/core/lib/iomgr/pollset_windows.h",
  858. "src/core/lib/iomgr/port.h",
  859. "src/core/lib/iomgr/resolve_address.h",
  860. "src/core/lib/iomgr/resolve_address_custom.h",
  861. "src/core/lib/iomgr/resource_quota.h",
  862. "src/core/lib/iomgr/sockaddr.h",
  863. "src/core/lib/iomgr/sockaddr_custom.h",
  864. "src/core/lib/iomgr/sockaddr_posix.h",
  865. "src/core/lib/iomgr/sockaddr_utils.h",
  866. "src/core/lib/iomgr/sockaddr_windows.h",
  867. "src/core/lib/iomgr/socket_factory_posix.h",
  868. "src/core/lib/iomgr/socket_mutator.h",
  869. "src/core/lib/iomgr/socket_utils.h",
  870. "src/core/lib/iomgr/socket_utils_posix.h",
  871. "src/core/lib/iomgr/socket_windows.h",
  872. "src/core/lib/iomgr/sys_epoll_wrapper.h",
  873. "src/core/lib/iomgr/tcp_client.h",
  874. "src/core/lib/iomgr/tcp_client_posix.h",
  875. "src/core/lib/iomgr/tcp_custom.h",
  876. "src/core/lib/iomgr/tcp_posix.h",
  877. "src/core/lib/iomgr/tcp_server.h",
  878. "src/core/lib/iomgr/tcp_server_utils_posix.h",
  879. "src/core/lib/iomgr/tcp_windows.h",
  880. "src/core/lib/iomgr/time_averaged_stats.h",
  881. "src/core/lib/iomgr/timer.h",
  882. "src/core/lib/iomgr/timer_custom.h",
  883. "src/core/lib/iomgr/timer_generic.h",
  884. "src/core/lib/iomgr/timer_heap.h",
  885. "src/core/lib/iomgr/timer_manager.h",
  886. "src/core/lib/iomgr/udp_server.h",
  887. "src/core/lib/iomgr/unix_sockets_posix.h",
  888. "src/core/lib/iomgr/wakeup_fd_cv.h",
  889. "src/core/lib/iomgr/wakeup_fd_pipe.h",
  890. "src/core/lib/iomgr/wakeup_fd_posix.h",
  891. "src/core/lib/json/json.h",
  892. "src/core/lib/json/json_common.h",
  893. "src/core/lib/json/json_reader.h",
  894. "src/core/lib/json/json_writer.h",
  895. "src/core/lib/slice/b64.h",
  896. "src/core/lib/slice/percent_encoding.h",
  897. "src/core/lib/slice/slice_hash_table.h",
  898. "src/core/lib/slice/slice_internal.h",
  899. "src/core/lib/slice/slice_string_helpers.h",
  900. "src/core/lib/slice/slice_weak_hash_table.h",
  901. "src/core/lib/surface/api_trace.h",
  902. "src/core/lib/surface/call.h",
  903. "src/core/lib/surface/call_test_only.h",
  904. "src/core/lib/surface/channel.h",
  905. "src/core/lib/surface/channel_init.h",
  906. "src/core/lib/surface/channel_stack_type.h",
  907. "src/core/lib/surface/completion_queue.h",
  908. "src/core/lib/surface/completion_queue_factory.h",
  909. "src/core/lib/surface/event_string.h",
  910. "src/core/lib/surface/init.h",
  911. "src/core/lib/surface/lame_client.h",
  912. "src/core/lib/surface/server.h",
  913. "src/core/lib/surface/validate_metadata.h",
  914. "src/core/lib/transport/bdp_estimator.h",
  915. "src/core/lib/transport/byte_stream.h",
  916. "src/core/lib/transport/connectivity_state.h",
  917. "src/core/lib/transport/error_utils.h",
  918. "src/core/lib/transport/http2_errors.h",
  919. "src/core/lib/transport/metadata.h",
  920. "src/core/lib/transport/metadata_batch.h",
  921. "src/core/lib/transport/pid_controller.h",
  922. "src/core/lib/transport/service_config.h",
  923. "src/core/lib/transport/static_metadata.h",
  924. "src/core/lib/transport/status_conversion.h",
  925. "src/core/lib/transport/status_metadata.h",
  926. "src/core/lib/transport/timeout_encoding.h",
  927. "src/core/lib/transport/transport.h",
  928. "src/core/lib/transport/transport_impl.h",
  929. "src/core/lib/uri/uri_parser.h",
  930. ],
  931. external_deps = [
  932. "zlib",
  933. ],
  934. language = "c++",
  935. public_hdrs = GRPC_PUBLIC_HDRS,
  936. deps = [
  937. "gpr_base",
  938. "grpc_codegen",
  939. "grpc_trace",
  940. "inlined_vector",
  941. "optional",
  942. "orphanable",
  943. "ref_counted",
  944. "ref_counted_ptr",
  945. ],
  946. )
  947. grpc_cc_library(
  948. name = "grpc_base",
  949. srcs = [
  950. "src/core/lib/surface/lame_client.cc",
  951. ],
  952. language = "c++",
  953. deps = [
  954. "atomic",
  955. "grpc_base_c",
  956. ],
  957. )
  958. grpc_cc_library(
  959. name = "grpc_common",
  960. language = "c++",
  961. deps = [
  962. "grpc_base",
  963. # standard plugins
  964. "census",
  965. "grpc_deadline_filter",
  966. "grpc_client_authority_filter",
  967. "grpc_lb_policy_pick_first",
  968. "grpc_lb_policy_round_robin",
  969. "grpc_max_age_filter",
  970. "grpc_message_size_filter",
  971. "grpc_resolver_dns_ares",
  972. "grpc_resolver_fake",
  973. "grpc_resolver_dns_native",
  974. "grpc_resolver_sockaddr",
  975. "grpc_transport_chttp2_client_insecure",
  976. "grpc_transport_chttp2_server_insecure",
  977. "grpc_transport_inproc",
  978. "grpc_workaround_cronet_compression_filter",
  979. "grpc_server_backward_compatibility",
  980. ],
  981. )
  982. grpc_cc_library(
  983. name = "grpc_cfstream",
  984. srcs = [
  985. "src/core/lib/iomgr/cfstream_handle.cc",
  986. "src/core/lib/iomgr/endpoint_cfstream.cc",
  987. "src/core/lib/iomgr/error_cfstream.cc",
  988. "src/core/lib/iomgr/iomgr_posix_cfstream.cc",
  989. "src/core/lib/iomgr/tcp_client_cfstream.cc",
  990. ],
  991. hdrs = [
  992. "src/core/lib/iomgr/cfstream_handle.h",
  993. "src/core/lib/iomgr/endpoint_cfstream.h",
  994. "src/core/lib/iomgr/error_cfstream.h",
  995. ],
  996. deps = [
  997. ":gpr_base",
  998. ":grpc_base",
  999. ],
  1000. )
  1001. grpc_cc_library(
  1002. name = "grpc_client_channel",
  1003. srcs = [
  1004. "src/core/ext/filters/client_channel/backup_poller.cc",
  1005. "src/core/ext/filters/client_channel/channel_connectivity.cc",
  1006. "src/core/ext/filters/client_channel/client_channel.cc",
  1007. "src/core/ext/filters/client_channel/client_channel_channelz.cc",
  1008. "src/core/ext/filters/client_channel/client_channel_factory.cc",
  1009. "src/core/ext/filters/client_channel/client_channel_plugin.cc",
  1010. "src/core/ext/filters/client_channel/connector.cc",
  1011. "src/core/ext/filters/client_channel/global_subchannel_pool.cc",
  1012. "src/core/ext/filters/client_channel/health/health_check_client.cc",
  1013. "src/core/ext/filters/client_channel/http_connect_handshaker.cc",
  1014. "src/core/ext/filters/client_channel/http_proxy.cc",
  1015. "src/core/ext/filters/client_channel/lb_policy.cc",
  1016. "src/core/ext/filters/client_channel/lb_policy_registry.cc",
  1017. "src/core/ext/filters/client_channel/local_subchannel_pool.cc",
  1018. "src/core/ext/filters/client_channel/parse_address.cc",
  1019. "src/core/ext/filters/client_channel/proxy_mapper.cc",
  1020. "src/core/ext/filters/client_channel/proxy_mapper_registry.cc",
  1021. "src/core/ext/filters/client_channel/request_routing.cc",
  1022. "src/core/ext/filters/client_channel/resolver.cc",
  1023. "src/core/ext/filters/client_channel/resolver_registry.cc",
  1024. "src/core/ext/filters/client_channel/resolver_result_parsing.cc",
  1025. "src/core/ext/filters/client_channel/retry_throttle.cc",
  1026. "src/core/ext/filters/client_channel/server_address.cc",
  1027. "src/core/ext/filters/client_channel/subchannel.cc",
  1028. "src/core/ext/filters/client_channel/subchannel_pool_interface.cc",
  1029. ],
  1030. hdrs = [
  1031. "src/core/ext/filters/client_channel/backup_poller.h",
  1032. "src/core/ext/filters/client_channel/client_channel.h",
  1033. "src/core/ext/filters/client_channel/client_channel_channelz.h",
  1034. "src/core/ext/filters/client_channel/client_channel_factory.h",
  1035. "src/core/ext/filters/client_channel/connector.h",
  1036. "src/core/ext/filters/client_channel/global_subchannel_pool.h",
  1037. "src/core/ext/filters/client_channel/health/health_check_client.h",
  1038. "src/core/ext/filters/client_channel/http_connect_handshaker.h",
  1039. "src/core/ext/filters/client_channel/http_proxy.h",
  1040. "src/core/ext/filters/client_channel/lb_policy.h",
  1041. "src/core/ext/filters/client_channel/lb_policy_factory.h",
  1042. "src/core/ext/filters/client_channel/lb_policy_registry.h",
  1043. "src/core/ext/filters/client_channel/local_subchannel_pool.h",
  1044. "src/core/ext/filters/client_channel/parse_address.h",
  1045. "src/core/ext/filters/client_channel/proxy_mapper.h",
  1046. "src/core/ext/filters/client_channel/proxy_mapper_registry.h",
  1047. "src/core/ext/filters/client_channel/request_routing.h",
  1048. "src/core/ext/filters/client_channel/resolver.h",
  1049. "src/core/ext/filters/client_channel/resolver_factory.h",
  1050. "src/core/ext/filters/client_channel/resolver_registry.h",
  1051. "src/core/ext/filters/client_channel/resolver_result_parsing.h",
  1052. "src/core/ext/filters/client_channel/retry_throttle.h",
  1053. "src/core/ext/filters/client_channel/server_address.h",
  1054. "src/core/ext/filters/client_channel/subchannel.h",
  1055. "src/core/ext/filters/client_channel/subchannel_pool_interface.h",
  1056. ],
  1057. language = "c++",
  1058. deps = [
  1059. "gpr_base",
  1060. "grpc_base",
  1061. "grpc_client_authority_filter",
  1062. "grpc_deadline_filter",
  1063. "health_proto",
  1064. "inlined_vector",
  1065. "orphanable",
  1066. "ref_counted",
  1067. "ref_counted_ptr",
  1068. ],
  1069. )
  1070. grpc_cc_library(
  1071. name = "grpc_max_age_filter",
  1072. srcs = [
  1073. "src/core/ext/filters/max_age/max_age_filter.cc",
  1074. ],
  1075. hdrs = [
  1076. "src/core/ext/filters/max_age/max_age_filter.h",
  1077. ],
  1078. language = "c++",
  1079. deps = [
  1080. "grpc_base",
  1081. ],
  1082. )
  1083. grpc_cc_library(
  1084. name = "grpc_deadline_filter",
  1085. srcs = [
  1086. "src/core/ext/filters/deadline/deadline_filter.cc",
  1087. ],
  1088. hdrs = [
  1089. "src/core/ext/filters/deadline/deadline_filter.h",
  1090. ],
  1091. language = "c++",
  1092. deps = [
  1093. "grpc_base",
  1094. ],
  1095. )
  1096. grpc_cc_library(
  1097. name = "grpc_client_authority_filter",
  1098. srcs = [
  1099. "src/core/ext/filters/http/client_authority_filter.cc",
  1100. ],
  1101. hdrs = [
  1102. "src/core/ext/filters/http/client_authority_filter.h",
  1103. ],
  1104. language = "c++",
  1105. deps = [
  1106. "grpc_base",
  1107. ],
  1108. )
  1109. grpc_cc_library(
  1110. name = "grpc_message_size_filter",
  1111. srcs = [
  1112. "src/core/ext/filters/message_size/message_size_filter.cc",
  1113. ],
  1114. hdrs = [
  1115. "src/core/ext/filters/message_size/message_size_filter.h",
  1116. ],
  1117. language = "c++",
  1118. deps = [
  1119. "grpc_base",
  1120. ],
  1121. )
  1122. grpc_cc_library(
  1123. name = "grpc_http_filters",
  1124. srcs = [
  1125. "src/core/ext/filters/http/client/http_client_filter.cc",
  1126. "src/core/ext/filters/http/http_filters_plugin.cc",
  1127. "src/core/ext/filters/http/message_compress/message_compress_filter.cc",
  1128. "src/core/ext/filters/http/server/http_server_filter.cc",
  1129. ],
  1130. hdrs = [
  1131. "src/core/ext/filters/http/client/http_client_filter.h",
  1132. "src/core/ext/filters/http/message_compress/message_compress_filter.h",
  1133. "src/core/ext/filters/http/server/http_server_filter.h",
  1134. ],
  1135. language = "c++",
  1136. deps = [
  1137. "grpc_base",
  1138. ],
  1139. )
  1140. grpc_cc_library(
  1141. name = "grpc_workaround_cronet_compression_filter",
  1142. srcs = [
  1143. "src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc",
  1144. ],
  1145. hdrs = [
  1146. "src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h",
  1147. ],
  1148. language = "c++",
  1149. deps = [
  1150. "grpc_base",
  1151. "grpc_server_backward_compatibility",
  1152. ],
  1153. )
  1154. grpc_cc_library(
  1155. name = "grpc_codegen",
  1156. language = "c++",
  1157. public_hdrs = [
  1158. "include/grpc/impl/codegen/byte_buffer.h",
  1159. "include/grpc/impl/codegen/byte_buffer_reader.h",
  1160. "include/grpc/impl/codegen/compression_types.h",
  1161. "include/grpc/impl/codegen/connectivity_state.h",
  1162. "include/grpc/impl/codegen/grpc_types.h",
  1163. "include/grpc/impl/codegen/propagation_bits.h",
  1164. "include/grpc/impl/codegen/status.h",
  1165. "include/grpc/impl/codegen/slice.h",
  1166. ],
  1167. deps = [
  1168. "gpr_codegen",
  1169. ],
  1170. )
  1171. grpc_cc_library(
  1172. name = "health_proto",
  1173. srcs = [
  1174. "src/core/ext/filters/client_channel/health/health.pb.c",
  1175. ],
  1176. hdrs = [
  1177. "src/core/ext/filters/client_channel/health/health.pb.h",
  1178. ],
  1179. external_deps = [
  1180. "nanopb",
  1181. ],
  1182. language = "c++",
  1183. )
  1184. grpc_cc_library(
  1185. name = "grpclb_proto",
  1186. srcs = [
  1187. "src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.c",
  1188. "src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.c",
  1189. "src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c",
  1190. ],
  1191. hdrs = [
  1192. "src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.h",
  1193. "src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.h",
  1194. "src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.h",
  1195. ],
  1196. external_deps = [
  1197. "nanopb",
  1198. ],
  1199. language = "c++",
  1200. )
  1201. grpc_cc_library(
  1202. name = "grpc_lb_policy_grpclb",
  1203. srcs = [
  1204. "src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc",
  1205. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc",
  1206. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.cc",
  1207. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc",
  1208. "src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc",
  1209. ],
  1210. hdrs = [
  1211. "src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h",
  1212. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
  1213. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h",
  1214. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h",
  1215. "src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h",
  1216. ],
  1217. external_deps = [
  1218. "nanopb",
  1219. ],
  1220. language = "c++",
  1221. deps = [
  1222. "grpc_base",
  1223. "grpc_client_channel",
  1224. "grpc_resolver_fake",
  1225. "grpclb_proto",
  1226. ],
  1227. )
  1228. grpc_cc_library(
  1229. name = "grpc_lb_policy_grpclb_secure",
  1230. srcs = [
  1231. "src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc",
  1232. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc",
  1233. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc",
  1234. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc",
  1235. "src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc",
  1236. ],
  1237. hdrs = [
  1238. "src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h",
  1239. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
  1240. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h",
  1241. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h",
  1242. "src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h",
  1243. ],
  1244. external_deps = [
  1245. "nanopb",
  1246. ],
  1247. language = "c++",
  1248. deps = [
  1249. "grpc_base",
  1250. "grpc_client_channel",
  1251. "grpc_resolver_fake",
  1252. "grpc_secure",
  1253. "grpclb_proto",
  1254. ],
  1255. )
  1256. grpc_cc_library(
  1257. name = "grpc_lb_policy_xds",
  1258. srcs = [
  1259. "src/core/ext/filters/client_channel/lb_policy/xds/xds.cc",
  1260. "src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc",
  1261. "src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc",
  1262. "src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc",
  1263. ],
  1264. hdrs = [
  1265. "src/core/ext/filters/client_channel/lb_policy/xds/xds.h",
  1266. "src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h",
  1267. "src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h",
  1268. "src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.h",
  1269. ],
  1270. external_deps = [
  1271. "nanopb",
  1272. ],
  1273. language = "c++",
  1274. deps = [
  1275. "grpc_base",
  1276. "grpc_client_channel",
  1277. "grpc_resolver_fake",
  1278. "grpclb_proto",
  1279. ],
  1280. )
  1281. grpc_cc_library(
  1282. name = "grpc_lb_policy_xds_secure",
  1283. srcs = [
  1284. "src/core/ext/filters/client_channel/lb_policy/xds/xds.cc",
  1285. "src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc",
  1286. "src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc",
  1287. "src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc",
  1288. ],
  1289. hdrs = [
  1290. "src/core/ext/filters/client_channel/lb_policy/xds/xds.h",
  1291. "src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h",
  1292. "src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h",
  1293. "src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.h",
  1294. ],
  1295. external_deps = [
  1296. "nanopb",
  1297. ],
  1298. language = "c++",
  1299. deps = [
  1300. "grpc_base",
  1301. "grpc_client_channel",
  1302. "grpc_resolver_fake",
  1303. "grpc_secure",
  1304. "grpclb_proto",
  1305. ],
  1306. )
  1307. grpc_cc_library(
  1308. name = "grpc_lb_subchannel_list",
  1309. hdrs = [
  1310. "src/core/ext/filters/client_channel/lb_policy/subchannel_list.h",
  1311. ],
  1312. language = "c++",
  1313. deps = [
  1314. "grpc_base",
  1315. "grpc_client_channel",
  1316. ],
  1317. )
  1318. grpc_cc_library(
  1319. name = "grpc_lb_policy_pick_first",
  1320. srcs = [
  1321. "src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc",
  1322. ],
  1323. language = "c++",
  1324. deps = [
  1325. "grpc_base",
  1326. "grpc_client_channel",
  1327. "grpc_lb_subchannel_list",
  1328. ],
  1329. )
  1330. grpc_cc_library(
  1331. name = "grpc_lb_policy_round_robin",
  1332. srcs = [
  1333. "src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc",
  1334. ],
  1335. language = "c++",
  1336. deps = [
  1337. "grpc_base",
  1338. "grpc_client_channel",
  1339. "grpc_lb_subchannel_list",
  1340. ],
  1341. )
  1342. grpc_cc_library(
  1343. name = "lb_server_load_reporting_filter",
  1344. srcs = [
  1345. "src/core/ext/filters/load_reporting/server_load_reporting_filter.cc",
  1346. ],
  1347. hdrs = [
  1348. "src/core/ext/filters/load_reporting/registered_opencensus_objects.h",
  1349. "src/core/ext/filters/load_reporting/server_load_reporting_filter.h",
  1350. "src/cpp/server/load_reporter/constants.h",
  1351. ],
  1352. external_deps = [
  1353. "opencensus-stats",
  1354. ],
  1355. language = "c++",
  1356. deps = [
  1357. "grpc++_base",
  1358. "grpc_secure",
  1359. ],
  1360. )
  1361. grpc_cc_library(
  1362. name = "lb_load_data_store",
  1363. srcs = [
  1364. "src/cpp/server/load_reporter/load_data_store.cc",
  1365. ],
  1366. hdrs = [
  1367. "src/cpp/server/load_reporter/constants.h",
  1368. "src/cpp/server/load_reporter/load_data_store.h",
  1369. ],
  1370. language = "c++",
  1371. deps = [
  1372. "grpc++",
  1373. ],
  1374. )
  1375. grpc_cc_library(
  1376. name = "lb_server_load_reporting_service_server_builder_plugin",
  1377. srcs = [
  1378. "src/cpp/server/load_reporter/load_reporting_service_server_builder_plugin.cc",
  1379. ],
  1380. hdrs = [
  1381. "src/cpp/server/load_reporter/load_reporting_service_server_builder_plugin.h",
  1382. ],
  1383. language = "c++",
  1384. deps = [
  1385. "lb_load_reporter_service",
  1386. ],
  1387. )
  1388. grpc_cc_library(
  1389. name = "grpcpp_server_load_reporting",
  1390. srcs = [
  1391. "src/cpp/server/load_reporter/load_reporting_service_server_builder_option.cc",
  1392. "src/cpp/server/load_reporter/util.cc",
  1393. ],
  1394. language = "c++",
  1395. public_hdrs = [
  1396. "include/grpcpp/ext/server_load_reporting.h",
  1397. ],
  1398. deps = [
  1399. "lb_server_load_reporting_filter",
  1400. "lb_server_load_reporting_service_server_builder_plugin",
  1401. ],
  1402. alwayslink = 1,
  1403. )
  1404. grpc_cc_library(
  1405. name = "lb_load_reporter_service",
  1406. srcs = [
  1407. "src/cpp/server/load_reporter/load_reporter_async_service_impl.cc",
  1408. ],
  1409. hdrs = [
  1410. "src/cpp/server/load_reporter/load_reporter_async_service_impl.h",
  1411. ],
  1412. language = "c++",
  1413. deps = [
  1414. "lb_load_reporter",
  1415. ],
  1416. )
  1417. grpc_cc_library(
  1418. name = "lb_get_cpu_stats",
  1419. srcs = [
  1420. "src/cpp/server/load_reporter/get_cpu_stats_linux.cc",
  1421. "src/cpp/server/load_reporter/get_cpu_stats_macos.cc",
  1422. "src/cpp/server/load_reporter/get_cpu_stats_unsupported.cc",
  1423. "src/cpp/server/load_reporter/get_cpu_stats_windows.cc",
  1424. ],
  1425. hdrs = [
  1426. "src/cpp/server/load_reporter/get_cpu_stats.h",
  1427. ],
  1428. language = "c++",
  1429. deps = [
  1430. "grpc++",
  1431. ],
  1432. )
  1433. grpc_cc_library(
  1434. name = "lb_load_reporter",
  1435. srcs = [
  1436. "src/cpp/server/load_reporter/load_reporter.cc",
  1437. ],
  1438. hdrs = [
  1439. "src/cpp/server/load_reporter/constants.h",
  1440. "src/cpp/server/load_reporter/load_reporter.h",
  1441. ],
  1442. external_deps = [
  1443. "opencensus-stats",
  1444. ],
  1445. language = "c++",
  1446. deps = [
  1447. "lb_get_cpu_stats",
  1448. "lb_load_data_store",
  1449. "//src/proto/grpc/lb/v1:load_reporter_proto",
  1450. ],
  1451. )
  1452. grpc_cc_library(
  1453. name = "grpc_resolver_dns_native",
  1454. srcs = [
  1455. "src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc",
  1456. ],
  1457. language = "c++",
  1458. deps = [
  1459. "grpc_base",
  1460. "grpc_client_channel",
  1461. ],
  1462. )
  1463. grpc_cc_library(
  1464. name = "grpc_resolver_dns_ares",
  1465. srcs = [
  1466. "src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc",
  1467. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc",
  1468. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc",
  1469. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc",
  1470. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc",
  1471. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc",
  1472. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc",
  1473. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc",
  1474. ],
  1475. hdrs = [
  1476. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h",
  1477. "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h",
  1478. ],
  1479. external_deps = [
  1480. "cares",
  1481. "address_sorting",
  1482. ],
  1483. language = "c++",
  1484. deps = [
  1485. "grpc_base",
  1486. "grpc_client_channel",
  1487. ],
  1488. )
  1489. grpc_cc_library(
  1490. name = "grpc_resolver_sockaddr",
  1491. srcs = [
  1492. "src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc",
  1493. ],
  1494. language = "c++",
  1495. deps = [
  1496. "grpc_base",
  1497. "grpc_client_channel",
  1498. ],
  1499. )
  1500. grpc_cc_library(
  1501. name = "grpc_resolver_fake",
  1502. srcs = ["src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc"],
  1503. hdrs = ["src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h"],
  1504. language = "c++",
  1505. visibility = ["//test:__subpackages__"],
  1506. deps = [
  1507. "grpc_base",
  1508. "grpc_client_channel",
  1509. ],
  1510. )
  1511. grpc_cc_library(
  1512. name = "grpc_secure",
  1513. srcs = [
  1514. "src/core/lib/http/httpcli_security_connector.cc",
  1515. "src/core/lib/security/context/security_context.cc",
  1516. "src/core/lib/security/credentials/alts/alts_credentials.cc",
  1517. "src/core/lib/security/credentials/composite/composite_credentials.cc",
  1518. "src/core/lib/security/credentials/credentials.cc",
  1519. "src/core/lib/security/credentials/credentials_metadata.cc",
  1520. "src/core/lib/security/credentials/fake/fake_credentials.cc",
  1521. "src/core/lib/security/credentials/google_default/credentials_generic.cc",
  1522. "src/core/lib/security/credentials/google_default/google_default_credentials.cc",
  1523. "src/core/lib/security/credentials/iam/iam_credentials.cc",
  1524. "src/core/lib/security/credentials/jwt/json_token.cc",
  1525. "src/core/lib/security/credentials/jwt/jwt_credentials.cc",
  1526. "src/core/lib/security/credentials/jwt/jwt_verifier.cc",
  1527. "src/core/lib/security/credentials/local/local_credentials.cc",
  1528. "src/core/lib/security/credentials/oauth2/oauth2_credentials.cc",
  1529. "src/core/lib/security/credentials/plugin/plugin_credentials.cc",
  1530. "src/core/lib/security/credentials/ssl/ssl_credentials.cc",
  1531. "src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc",
  1532. "src/core/lib/security/security_connector/alts/alts_security_connector.cc",
  1533. "src/core/lib/security/security_connector/fake/fake_security_connector.cc",
  1534. "src/core/lib/security/security_connector/load_system_roots_fallback.cc",
  1535. "src/core/lib/security/security_connector/load_system_roots_linux.cc",
  1536. "src/core/lib/security/security_connector/local/local_security_connector.cc",
  1537. "src/core/lib/security/security_connector/security_connector.cc",
  1538. "src/core/lib/security/security_connector/ssl/ssl_security_connector.cc",
  1539. "src/core/lib/security/security_connector/ssl_utils.cc",
  1540. "src/core/lib/security/transport/client_auth_filter.cc",
  1541. "src/core/lib/security/transport/secure_endpoint.cc",
  1542. "src/core/lib/security/transport/security_handshaker.cc",
  1543. "src/core/lib/security/transport/server_auth_filter.cc",
  1544. "src/core/lib/security/transport/target_authority_table.cc",
  1545. "src/core/lib/security/transport/tsi_error.cc",
  1546. "src/core/lib/security/util/json_util.cc",
  1547. "src/core/lib/surface/init_secure.cc",
  1548. ],
  1549. hdrs = [
  1550. "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
  1551. "src/core/ext/filters/client_channel/lb_policy/xds/xds.h",
  1552. "src/core/lib/security/context/security_context.h",
  1553. "src/core/lib/security/credentials/alts/alts_credentials.h",
  1554. "src/core/lib/security/credentials/composite/composite_credentials.h",
  1555. "src/core/lib/security/credentials/credentials.h",
  1556. "src/core/lib/security/credentials/fake/fake_credentials.h",
  1557. "src/core/lib/security/credentials/google_default/google_default_credentials.h",
  1558. "src/core/lib/security/credentials/iam/iam_credentials.h",
  1559. "src/core/lib/security/credentials/jwt/json_token.h",
  1560. "src/core/lib/security/credentials/jwt/jwt_credentials.h",
  1561. "src/core/lib/security/credentials/jwt/jwt_verifier.h",
  1562. "src/core/lib/security/credentials/local/local_credentials.h",
  1563. "src/core/lib/security/credentials/oauth2/oauth2_credentials.h",
  1564. "src/core/lib/security/credentials/plugin/plugin_credentials.h",
  1565. "src/core/lib/security/credentials/ssl/ssl_credentials.h",
  1566. "src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h",
  1567. "src/core/lib/security/security_connector/alts/alts_security_connector.h",
  1568. "src/core/lib/security/security_connector/fake/fake_security_connector.h",
  1569. "src/core/lib/security/security_connector/load_system_roots.h",
  1570. "src/core/lib/security/security_connector/load_system_roots_linux.h",
  1571. "src/core/lib/security/security_connector/local/local_security_connector.h",
  1572. "src/core/lib/security/security_connector/security_connector.h",
  1573. "src/core/lib/security/security_connector/ssl/ssl_security_connector.h",
  1574. "src/core/lib/security/security_connector/ssl_utils.h",
  1575. "src/core/lib/security/transport/auth_filters.h",
  1576. "src/core/lib/security/transport/secure_endpoint.h",
  1577. "src/core/lib/security/transport/security_handshaker.h",
  1578. "src/core/lib/security/transport/target_authority_table.h",
  1579. "src/core/lib/security/transport/tsi_error.h",
  1580. "src/core/lib/security/util/json_util.h",
  1581. ],
  1582. language = "c++",
  1583. public_hdrs = GRPC_SECURE_PUBLIC_HDRS,
  1584. deps = [
  1585. "alts_util",
  1586. "grpc_base",
  1587. "grpc_shadow_boringssl",
  1588. "grpc_transport_chttp2_alpn",
  1589. "tsi",
  1590. ],
  1591. )
  1592. grpc_cc_library(
  1593. name = "grpc_transport_chttp2",
  1594. srcs = [
  1595. "src/core/ext/transport/chttp2/transport/bin_decoder.cc",
  1596. "src/core/ext/transport/chttp2/transport/bin_encoder.cc",
  1597. "src/core/ext/transport/chttp2/transport/chttp2_plugin.cc",
  1598. "src/core/ext/transport/chttp2/transport/chttp2_transport.cc",
  1599. "src/core/ext/transport/chttp2/transport/context_list.cc",
  1600. "src/core/ext/transport/chttp2/transport/flow_control.cc",
  1601. "src/core/ext/transport/chttp2/transport/frame_data.cc",
  1602. "src/core/ext/transport/chttp2/transport/frame_goaway.cc",
  1603. "src/core/ext/transport/chttp2/transport/frame_ping.cc",
  1604. "src/core/ext/transport/chttp2/transport/frame_rst_stream.cc",
  1605. "src/core/ext/transport/chttp2/transport/frame_settings.cc",
  1606. "src/core/ext/transport/chttp2/transport/frame_window_update.cc",
  1607. "src/core/ext/transport/chttp2/transport/hpack_encoder.cc",
  1608. "src/core/ext/transport/chttp2/transport/hpack_parser.cc",
  1609. "src/core/ext/transport/chttp2/transport/hpack_table.cc",
  1610. "src/core/ext/transport/chttp2/transport/http2_settings.cc",
  1611. "src/core/ext/transport/chttp2/transport/huffsyms.cc",
  1612. "src/core/ext/transport/chttp2/transport/incoming_metadata.cc",
  1613. "src/core/ext/transport/chttp2/transport/parsing.cc",
  1614. "src/core/ext/transport/chttp2/transport/stream_lists.cc",
  1615. "src/core/ext/transport/chttp2/transport/stream_map.cc",
  1616. "src/core/ext/transport/chttp2/transport/varint.cc",
  1617. "src/core/ext/transport/chttp2/transport/writing.cc",
  1618. ],
  1619. hdrs = [
  1620. "src/core/ext/transport/chttp2/transport/bin_decoder.h",
  1621. "src/core/ext/transport/chttp2/transport/bin_encoder.h",
  1622. "src/core/ext/transport/chttp2/transport/chttp2_transport.h",
  1623. "src/core/ext/transport/chttp2/transport/context_list.h",
  1624. "src/core/ext/transport/chttp2/transport/flow_control.h",
  1625. "src/core/ext/transport/chttp2/transport/frame.h",
  1626. "src/core/ext/transport/chttp2/transport/frame_data.h",
  1627. "src/core/ext/transport/chttp2/transport/frame_goaway.h",
  1628. "src/core/ext/transport/chttp2/transport/frame_ping.h",
  1629. "src/core/ext/transport/chttp2/transport/frame_rst_stream.h",
  1630. "src/core/ext/transport/chttp2/transport/frame_settings.h",
  1631. "src/core/ext/transport/chttp2/transport/frame_window_update.h",
  1632. "src/core/ext/transport/chttp2/transport/hpack_encoder.h",
  1633. "src/core/ext/transport/chttp2/transport/hpack_parser.h",
  1634. "src/core/ext/transport/chttp2/transport/hpack_table.h",
  1635. "src/core/ext/transport/chttp2/transport/http2_settings.h",
  1636. "src/core/ext/transport/chttp2/transport/huffsyms.h",
  1637. "src/core/ext/transport/chttp2/transport/incoming_metadata.h",
  1638. "src/core/ext/transport/chttp2/transport/internal.h",
  1639. "src/core/ext/transport/chttp2/transport/stream_map.h",
  1640. "src/core/ext/transport/chttp2/transport/varint.h",
  1641. ],
  1642. language = "c++",
  1643. deps = [
  1644. "gpr_base",
  1645. "grpc_base",
  1646. "grpc_http_filters",
  1647. "grpc_transport_chttp2_alpn",
  1648. ],
  1649. )
  1650. grpc_cc_library(
  1651. name = "grpc_transport_chttp2_alpn",
  1652. srcs = [
  1653. "src/core/ext/transport/chttp2/alpn/alpn.cc",
  1654. ],
  1655. hdrs = [
  1656. "src/core/ext/transport/chttp2/alpn/alpn.h",
  1657. ],
  1658. language = "c++",
  1659. deps = [
  1660. "gpr",
  1661. ],
  1662. )
  1663. grpc_cc_library(
  1664. name = "grpc_transport_chttp2_client_connector",
  1665. srcs = [
  1666. "src/core/ext/transport/chttp2/client/authority.cc",
  1667. "src/core/ext/transport/chttp2/client/chttp2_connector.cc",
  1668. ],
  1669. hdrs = [
  1670. "src/core/ext/transport/chttp2/client/authority.h",
  1671. "src/core/ext/transport/chttp2/client/chttp2_connector.h",
  1672. ],
  1673. language = "c++",
  1674. deps = [
  1675. "grpc_base",
  1676. "grpc_client_channel",
  1677. "grpc_transport_chttp2",
  1678. ],
  1679. )
  1680. grpc_cc_library(
  1681. name = "grpc_transport_chttp2_client_insecure",
  1682. srcs = [
  1683. "src/core/ext/transport/chttp2/client/insecure/channel_create.cc",
  1684. "src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc",
  1685. ],
  1686. language = "c++",
  1687. deps = [
  1688. "grpc_base",
  1689. "grpc_client_channel",
  1690. "grpc_transport_chttp2",
  1691. "grpc_transport_chttp2_client_connector",
  1692. ],
  1693. )
  1694. grpc_cc_library(
  1695. name = "grpc_transport_chttp2_client_secure",
  1696. srcs = [
  1697. "src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc",
  1698. ],
  1699. language = "c++",
  1700. deps = [
  1701. "grpc_base",
  1702. "grpc_client_channel",
  1703. "grpc_secure",
  1704. "grpc_transport_chttp2",
  1705. "grpc_transport_chttp2_client_connector",
  1706. ],
  1707. )
  1708. grpc_cc_library(
  1709. name = "grpc_transport_chttp2_server",
  1710. srcs = [
  1711. "src/core/ext/transport/chttp2/server/chttp2_server.cc",
  1712. ],
  1713. hdrs = [
  1714. "src/core/ext/transport/chttp2/server/chttp2_server.h",
  1715. ],
  1716. language = "c++",
  1717. deps = [
  1718. "grpc_base",
  1719. "grpc_transport_chttp2",
  1720. ],
  1721. )
  1722. grpc_cc_library(
  1723. name = "grpc_transport_chttp2_server_insecure",
  1724. srcs = [
  1725. "src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc",
  1726. "src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc",
  1727. ],
  1728. language = "c++",
  1729. deps = [
  1730. "grpc_base",
  1731. "grpc_transport_chttp2",
  1732. "grpc_transport_chttp2_server",
  1733. ],
  1734. )
  1735. grpc_cc_library(
  1736. name = "grpc_transport_chttp2_server_secure",
  1737. srcs = [
  1738. "src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc",
  1739. ],
  1740. language = "c++",
  1741. deps = [
  1742. "grpc_base",
  1743. "grpc_secure",
  1744. "grpc_transport_chttp2",
  1745. "grpc_transport_chttp2_server",
  1746. ],
  1747. )
  1748. grpc_cc_library(
  1749. name = "grpc_transport_cronet_client_secure",
  1750. srcs = [
  1751. "src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc",
  1752. "src/core/ext/transport/cronet/transport/cronet_api_dummy.cc",
  1753. "src/core/ext/transport/cronet/transport/cronet_transport.cc",
  1754. ],
  1755. hdrs = [
  1756. "src/core/ext/transport/cronet/transport/cronet_transport.h",
  1757. "third_party/objective_c/Cronet/bidirectional_stream_c.h",
  1758. ],
  1759. language = "c++",
  1760. public_hdrs = [
  1761. "include/grpc/grpc_cronet.h",
  1762. "include/grpc/grpc_security.h",
  1763. "include/grpc/grpc_security_constants.h",
  1764. ],
  1765. deps = [
  1766. "grpc_base",
  1767. "grpc_transport_chttp2",
  1768. ],
  1769. )
  1770. grpc_cc_library(
  1771. name = "grpc_transport_inproc",
  1772. srcs = [
  1773. "src/core/ext/transport/inproc/inproc_plugin.cc",
  1774. "src/core/ext/transport/inproc/inproc_transport.cc",
  1775. ],
  1776. hdrs = [
  1777. "src/core/ext/transport/inproc/inproc_transport.h",
  1778. ],
  1779. language = "c++",
  1780. deps = [
  1781. "grpc_base",
  1782. ],
  1783. )
  1784. grpc_cc_library(
  1785. name = "tsi_interface",
  1786. srcs = [
  1787. "src/core/tsi/transport_security.cc",
  1788. ],
  1789. hdrs = [
  1790. "src/core/tsi/transport_security.h",
  1791. "src/core/tsi/transport_security_interface.h",
  1792. ],
  1793. language = "c++",
  1794. deps = [
  1795. "gpr",
  1796. "grpc_trace",
  1797. ],
  1798. )
  1799. grpc_cc_library(
  1800. name = "alts_frame_protector",
  1801. srcs = [
  1802. "src/core/tsi/alts/crypt/aes_gcm.cc",
  1803. "src/core/tsi/alts/crypt/gsec.cc",
  1804. "src/core/tsi/alts/frame_protector/alts_counter.cc",
  1805. "src/core/tsi/alts/frame_protector/alts_crypter.cc",
  1806. "src/core/tsi/alts/frame_protector/alts_frame_protector.cc",
  1807. "src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc",
  1808. "src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc",
  1809. "src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc",
  1810. "src/core/tsi/alts/frame_protector/frame_handler.cc",
  1811. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc",
  1812. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc",
  1813. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc",
  1814. "src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc",
  1815. "src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc",
  1816. ],
  1817. hdrs = [
  1818. "src/core/tsi/alts/crypt/gsec.h",
  1819. "src/core/tsi/alts/frame_protector/alts_counter.h",
  1820. "src/core/tsi/alts/frame_protector/alts_crypter.h",
  1821. "src/core/tsi/alts/frame_protector/alts_frame_protector.h",
  1822. "src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h",
  1823. "src/core/tsi/alts/frame_protector/frame_handler.h",
  1824. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h",
  1825. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h",
  1826. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h",
  1827. "src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h",
  1828. "src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h",
  1829. "src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h",
  1830. "src/core/tsi/transport_security_grpc.h",
  1831. ],
  1832. external_deps = [
  1833. "libssl",
  1834. ],
  1835. language = "c++",
  1836. deps = [
  1837. "gpr",
  1838. "grpc_base",
  1839. "grpc_shadow_boringssl",
  1840. "tsi_interface",
  1841. ],
  1842. )
  1843. grpc_cc_library(
  1844. name = "alts_proto",
  1845. srcs = [
  1846. "src/core/tsi/alts/handshaker/altscontext.pb.c",
  1847. "src/core/tsi/alts/handshaker/handshaker.pb.c",
  1848. "src/core/tsi/alts/handshaker/transport_security_common.pb.c",
  1849. ],
  1850. hdrs = [
  1851. "src/core/tsi/alts/handshaker/altscontext.pb.h",
  1852. "src/core/tsi/alts/handshaker/handshaker.pb.h",
  1853. "src/core/tsi/alts/handshaker/transport_security_common.pb.h",
  1854. ],
  1855. external_deps = [
  1856. "nanopb",
  1857. ],
  1858. language = "c++",
  1859. )
  1860. grpc_cc_library(
  1861. name = "alts_util",
  1862. srcs = [
  1863. "src/core/lib/security/credentials/alts/check_gcp_environment.cc",
  1864. "src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc",
  1865. "src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc",
  1866. "src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc",
  1867. "src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc",
  1868. "src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc",
  1869. "src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc",
  1870. "src/core/tsi/alts/handshaker/alts_handshaker_service_api.cc",
  1871. "src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.cc",
  1872. "src/core/tsi/alts/handshaker/transport_security_common_api.cc",
  1873. ],
  1874. hdrs = [
  1875. "src/core/lib/security/credentials/alts/check_gcp_environment.h",
  1876. "src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h",
  1877. "src/core/tsi/alts/handshaker/alts_handshaker_service_api.h",
  1878. "src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.h",
  1879. "src/core/tsi/alts/handshaker/transport_security_common_api.h",
  1880. ],
  1881. external_deps = [
  1882. "nanopb",
  1883. ],
  1884. language = "c++",
  1885. public_hdrs = GRPC_SECURE_PUBLIC_HDRS,
  1886. deps = [
  1887. "alts_proto",
  1888. "gpr",
  1889. "grpc_base",
  1890. ],
  1891. )
  1892. grpc_cc_library(
  1893. name = "tsi",
  1894. srcs = [
  1895. "src/core/tsi/alts/handshaker/alts_handshaker_client.cc",
  1896. "src/core/tsi/alts/handshaker/alts_shared_resource.cc",
  1897. "src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc",
  1898. "src/core/tsi/alts/handshaker/alts_tsi_utils.cc",
  1899. "src/core/tsi/fake_transport_security.cc",
  1900. "src/core/tsi/local_transport_security.cc",
  1901. "src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc",
  1902. "src/core/tsi/ssl/session_cache/ssl_session_cache.cc",
  1903. "src/core/tsi/ssl/session_cache/ssl_session_openssl.cc",
  1904. "src/core/tsi/ssl_transport_security.cc",
  1905. "src/core/tsi/transport_security_grpc.cc",
  1906. ],
  1907. hdrs = [
  1908. "src/core/tsi/alts/handshaker/alts_handshaker_client.h",
  1909. "src/core/tsi/alts/handshaker/alts_shared_resource.h",
  1910. "src/core/tsi/alts/handshaker/alts_tsi_handshaker.h",
  1911. "src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h",
  1912. "src/core/tsi/alts/handshaker/alts_tsi_utils.h",
  1913. "src/core/tsi/fake_transport_security.h",
  1914. "src/core/tsi/local_transport_security.h",
  1915. "src/core/tsi/ssl/session_cache/ssl_session.h",
  1916. "src/core/tsi/ssl/session_cache/ssl_session_cache.h",
  1917. "src/core/tsi/ssl_transport_security.h",
  1918. "src/core/tsi/ssl_types.h",
  1919. "src/core/tsi/transport_security_grpc.h",
  1920. ],
  1921. external_deps = [
  1922. "libssl",
  1923. ],
  1924. language = "c++",
  1925. deps = [
  1926. "alts_frame_protector",
  1927. "alts_util",
  1928. "gpr",
  1929. "grpc_base",
  1930. "grpc_shadow_boringssl",
  1931. "grpc_transport_chttp2_client_insecure",
  1932. "tsi_interface",
  1933. ],
  1934. )
  1935. grpc_cc_library(
  1936. name = "grpc++_base",
  1937. srcs = GRPCXX_SRCS,
  1938. hdrs = GRPCXX_HDRS,
  1939. language = "c++",
  1940. public_hdrs = GRPCXX_PUBLIC_HDRS,
  1941. deps = [
  1942. "grpc",
  1943. "grpc++_codegen_base",
  1944. "health_proto",
  1945. ],
  1946. )
  1947. grpc_cc_library(
  1948. name = "grpc++_base_unsecure",
  1949. srcs = GRPCXX_SRCS,
  1950. hdrs = GRPCXX_HDRS,
  1951. language = "c++",
  1952. public_hdrs = GRPCXX_PUBLIC_HDRS,
  1953. deps = [
  1954. "grpc++_codegen_base",
  1955. "grpc_unsecure",
  1956. "health_proto",
  1957. ],
  1958. )
  1959. grpc_cc_library(
  1960. name = "grpc++_codegen_base",
  1961. language = "c++",
  1962. public_hdrs = [
  1963. "include/grpc++/impl/codegen/async_stream.h",
  1964. "include/grpc++/impl/codegen/async_unary_call.h",
  1965. "include/grpc++/impl/codegen/byte_buffer.h",
  1966. "include/grpc++/impl/codegen/call.h",
  1967. "include/grpc++/impl/codegen/call_hook.h",
  1968. "include/grpc++/impl/codegen/channel_interface.h",
  1969. "include/grpc++/impl/codegen/client_context.h",
  1970. "include/grpc++/impl/codegen/client_unary_call.h",
  1971. "include/grpc++/impl/codegen/completion_queue.h",
  1972. "include/grpc++/impl/codegen/completion_queue_tag.h",
  1973. "include/grpc++/impl/codegen/config.h",
  1974. "include/grpc++/impl/codegen/core_codegen_interface.h",
  1975. "include/grpc++/impl/codegen/create_auth_context.h",
  1976. "include/grpc++/impl/codegen/grpc_library.h",
  1977. "include/grpc++/impl/codegen/metadata_map.h",
  1978. "include/grpc++/impl/codegen/method_handler_impl.h",
  1979. "include/grpc++/impl/codegen/rpc_method.h",
  1980. "include/grpc++/impl/codegen/rpc_service_method.h",
  1981. "include/grpc++/impl/codegen/security/auth_context.h",
  1982. "include/grpc++/impl/codegen/serialization_traits.h",
  1983. "include/grpc++/impl/codegen/server_context.h",
  1984. "include/grpc++/impl/codegen/server_interface.h",
  1985. "include/grpc++/impl/codegen/service_type.h",
  1986. "include/grpc++/impl/codegen/slice.h",
  1987. "include/grpc++/impl/codegen/status.h",
  1988. "include/grpc++/impl/codegen/status_code_enum.h",
  1989. "include/grpc++/impl/codegen/string_ref.h",
  1990. "include/grpc++/impl/codegen/stub_options.h",
  1991. "include/grpc++/impl/codegen/sync_stream.h",
  1992. "include/grpc++/impl/codegen/time.h",
  1993. "include/grpcpp/impl/codegen/async_generic_service.h",
  1994. "include/grpcpp/impl/codegen/async_stream.h",
  1995. "include/grpcpp/impl/codegen/async_unary_call.h",
  1996. "include/grpcpp/impl/codegen/byte_buffer.h",
  1997. "include/grpcpp/impl/codegen/call.h",
  1998. "include/grpcpp/impl/codegen/call_hook.h",
  1999. "include/grpcpp/impl/codegen/call_op_set.h",
  2000. "include/grpcpp/impl/codegen/call_op_set_interface.h",
  2001. "include/grpcpp/impl/codegen/callback_common.h",
  2002. "include/grpcpp/impl/codegen/channel_interface.h",
  2003. "include/grpcpp/impl/codegen/client_callback.h",
  2004. "include/grpcpp/impl/codegen/client_context.h",
  2005. "include/grpcpp/impl/codegen/client_interceptor.h",
  2006. "include/grpcpp/impl/codegen/client_unary_call.h",
  2007. "include/grpcpp/impl/codegen/completion_queue.h",
  2008. "include/grpcpp/impl/codegen/completion_queue_tag.h",
  2009. "include/grpcpp/impl/codegen/config.h",
  2010. "include/grpcpp/impl/codegen/core_codegen_interface.h",
  2011. "include/grpcpp/impl/codegen/create_auth_context.h",
  2012. "include/grpcpp/impl/codegen/grpc_library.h",
  2013. "include/grpcpp/impl/codegen/intercepted_channel.h",
  2014. "include/grpcpp/impl/codegen/interceptor.h",
  2015. "include/grpcpp/impl/codegen/interceptor_common.h",
  2016. "include/grpcpp/impl/codegen/metadata_map.h",
  2017. "include/grpcpp/impl/codegen/method_handler_impl.h",
  2018. "include/grpcpp/impl/codegen/rpc_method.h",
  2019. "include/grpcpp/impl/codegen/rpc_service_method.h",
  2020. "include/grpcpp/impl/codegen/security/auth_context.h",
  2021. "include/grpcpp/impl/codegen/serialization_traits.h",
  2022. "include/grpcpp/impl/codegen/server_callback.h",
  2023. "include/grpcpp/impl/codegen/server_context.h",
  2024. "include/grpcpp/impl/codegen/server_interceptor.h",
  2025. "include/grpcpp/impl/codegen/server_interface.h",
  2026. "include/grpcpp/impl/codegen/service_type.h",
  2027. "include/grpcpp/impl/codegen/slice.h",
  2028. "include/grpcpp/impl/codegen/status.h",
  2029. "include/grpcpp/impl/codegen/status_code_enum.h",
  2030. "include/grpcpp/impl/codegen/string_ref.h",
  2031. "include/grpcpp/impl/codegen/stub_options.h",
  2032. "include/grpcpp/impl/codegen/sync_stream.h",
  2033. "include/grpcpp/impl/codegen/time.h",
  2034. ],
  2035. deps = [
  2036. "grpc_codegen",
  2037. ],
  2038. )
  2039. grpc_cc_library(
  2040. name = "grpc++_codegen_base_src",
  2041. srcs = [
  2042. "src/cpp/codegen/codegen_init.cc",
  2043. ],
  2044. language = "c++",
  2045. deps = [
  2046. "grpc++_codegen_base",
  2047. ],
  2048. )
  2049. grpc_cc_library(
  2050. name = "grpc++_codegen_proto",
  2051. language = "c++",
  2052. public_hdrs = [
  2053. "include/grpc++/impl/codegen/proto_utils.h",
  2054. "include/grpcpp/impl/codegen/proto_buffer_reader.h",
  2055. "include/grpcpp/impl/codegen/proto_buffer_writer.h",
  2056. "include/grpcpp/impl/codegen/proto_utils.h",
  2057. ],
  2058. deps = [
  2059. "grpc++_codegen_base",
  2060. "grpc++_config_proto",
  2061. ],
  2062. )
  2063. grpc_cc_library(
  2064. name = "grpc++_config_proto",
  2065. external_deps = [
  2066. "protobuf_headers",
  2067. ],
  2068. language = "c++",
  2069. public_hdrs = [
  2070. "include/grpc++/impl/codegen/config_protobuf.h",
  2071. "include/grpcpp/impl/codegen/config_protobuf.h",
  2072. ],
  2073. )
  2074. grpc_cc_library(
  2075. name = "grpc++_reflection",
  2076. srcs = [
  2077. "src/cpp/ext/proto_server_reflection.cc",
  2078. "src/cpp/ext/proto_server_reflection_plugin.cc",
  2079. ],
  2080. hdrs = [
  2081. "src/cpp/ext/proto_server_reflection.h",
  2082. ],
  2083. language = "c++",
  2084. public_hdrs = [
  2085. "include/grpc++/ext/proto_server_reflection_plugin.h",
  2086. "include/grpcpp/ext/proto_server_reflection_plugin.h",
  2087. ],
  2088. deps = [
  2089. ":grpc++",
  2090. "//src/proto/grpc/reflection/v1alpha:reflection_proto",
  2091. ],
  2092. alwayslink = 1,
  2093. )
  2094. grpc_cc_library(
  2095. name = "grpcpp_channelz",
  2096. srcs = [
  2097. "src/cpp/server/channelz/channelz_service.cc",
  2098. "src/cpp/server/channelz/channelz_service_plugin.cc",
  2099. ],
  2100. hdrs = [
  2101. "src/cpp/server/channelz/channelz_service.h",
  2102. ],
  2103. language = "c++",
  2104. public_hdrs = [
  2105. "include/grpcpp/ext/channelz_service_plugin.h",
  2106. ],
  2107. deps = [
  2108. ":grpc++",
  2109. "//src/proto/grpc/channelz:channelz_proto",
  2110. ],
  2111. alwayslink = 1,
  2112. )
  2113. grpc_cc_library(
  2114. name = "grpc++_test",
  2115. public_hdrs = [
  2116. "include/grpc++/test/mock_stream.h",
  2117. "include/grpc++/test/server_context_test_spouse.h",
  2118. "include/grpcpp/test/mock_stream.h",
  2119. "include/grpcpp/test/server_context_test_spouse.h",
  2120. ],
  2121. deps = [
  2122. ":grpc++",
  2123. ],
  2124. )
  2125. grpc_cc_library(
  2126. name = "grpc_server_backward_compatibility",
  2127. srcs = [
  2128. "src/core/ext/filters/workarounds/workaround_utils.cc",
  2129. ],
  2130. hdrs = [
  2131. "src/core/ext/filters/workarounds/workaround_utils.h",
  2132. ],
  2133. language = "c++",
  2134. deps = [
  2135. "grpc_base",
  2136. ],
  2137. )
  2138. grpc_cc_library(
  2139. name = "grpc++_core_stats",
  2140. srcs = [
  2141. "src/cpp/util/core_stats.cc",
  2142. ],
  2143. hdrs = [
  2144. "src/cpp/util/core_stats.h",
  2145. ],
  2146. language = "c++",
  2147. deps = [
  2148. ":grpc++",
  2149. "//src/proto/grpc/core:stats_proto",
  2150. ],
  2151. )
  2152. grpc_cc_library(
  2153. name = "grpc_opencensus_plugin",
  2154. srcs = [
  2155. "src/cpp/ext/filters/census/channel_filter.cc",
  2156. "src/cpp/ext/filters/census/client_filter.cc",
  2157. "src/cpp/ext/filters/census/context.cc",
  2158. "src/cpp/ext/filters/census/grpc_plugin.cc",
  2159. "src/cpp/ext/filters/census/measures.cc",
  2160. "src/cpp/ext/filters/census/rpc_encoding.cc",
  2161. "src/cpp/ext/filters/census/server_filter.cc",
  2162. "src/cpp/ext/filters/census/views.cc",
  2163. ],
  2164. hdrs = [
  2165. "include/grpcpp/opencensus.h",
  2166. "src/cpp/ext/filters/census/channel_filter.h",
  2167. "src/cpp/ext/filters/census/client_filter.h",
  2168. "src/cpp/ext/filters/census/context.h",
  2169. "src/cpp/ext/filters/census/grpc_plugin.h",
  2170. "src/cpp/ext/filters/census/measures.h",
  2171. "src/cpp/ext/filters/census/rpc_encoding.h",
  2172. "src/cpp/ext/filters/census/server_filter.h",
  2173. ],
  2174. external_deps = [
  2175. "absl-base",
  2176. "absl-time",
  2177. "opencensus-trace",
  2178. "opencensus-stats",
  2179. ],
  2180. language = "c++",
  2181. deps = [
  2182. ":census",
  2183. ":grpc++",
  2184. ],
  2185. )
  2186. grpc_cc_library(
  2187. name = "grpc_shadow_boringssl",
  2188. hdrs = [
  2189. "src/core/tsi/grpc_shadow_boringssl.h",
  2190. ],
  2191. )
  2192. grpc_generate_one_off_targets()