BUILD 66 KB

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