BUILD 86 KB

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