BUILD 87 KB

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