BUILD 56 KB

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