Imported Upstream version 1.22.0
[platform/upstream/grpc.git] / CMakeLists.txt
1 # GRPC global cmake file
2 # This currently builds C and C++ code.
3 # This file has been automatically generated from a template file.
4 # Please look at the templates directory instead.
5 # This file can be regenerated from the template by running
6 # tools/buildgen/generate_projects.sh
7 #
8 # Copyright 2015 gRPC authors.
9 #
10 # Licensed under the Apache License, Version 2.0 (the "License");
11 # you may not use this file except in compliance with the License.
12 # You may obtain a copy of the License at
13 #
14 #     http://www.apache.org/licenses/LICENSE-2.0
15 #
16 # Unless required by applicable law or agreed to in writing, software
17 # distributed under the License is distributed on an "AS IS" BASIS,
18 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19 # See the License for the specific language governing permissions and
20 # limitations under the License.
21
22
23
24 cmake_minimum_required(VERSION 2.8)
25
26 set(PACKAGE_NAME      "grpc")
27 set(PACKAGE_VERSION   "1.22.0")
28 set(PACKAGE_STRING    "${PACKAGE_NAME} ${PACKAGE_VERSION}")
29 set(PACKAGE_TARNAME   "${PACKAGE_NAME}-${PACKAGE_VERSION}")
30 set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/")
31 project(${PACKAGE_NAME} C CXX)
32
33 set(gRPC_INSTALL_BINDIR "bin" CACHE STRING "Installation directory for executables")
34 set(gRPC_INSTALL_LIBDIR "lib" CACHE STRING "Installation directory for libraries")
35 set(gRPC_INSTALL_INCLUDEDIR "include" CACHE STRING "Installation directory for headers")
36 set(gRPC_INSTALL_CMAKEDIR "lib/cmake/${PACKAGE_NAME}" CACHE STRING "Installation directory for cmake config files")
37 set(gRPC_INSTALL_SHAREDIR "share/grpc" CACHE STRING "Installation directory for root certificates")
38
39 # Options
40 option(gRPC_BUILD_TESTS "Build tests" OFF)
41 option(gRPC_BUILD_CODEGEN "Build codegen" ON)
42 option(gRPC_BUILD_CSHARP_EXT "Build C# extensions" ON)
43 option(gRPC_BACKWARDS_COMPATIBILITY_MODE "Build libraries that are binary compatible across a larger number of OS and libc versions" OFF)
44
45 set(gRPC_INSTALL_default ON)
46 if (NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
47   # Disable gRPC_INSTALL by default if building as a submodule
48   set(gRPC_INSTALL_default OFF)
49 endif()
50 set(gRPC_INSTALL ${gRPC_INSTALL_default} CACHE BOOL
51     "Generate installation target: gRPC_ZLIB_PROVIDER, gRPC_CARES_PROVIDER, gRPC_SSL_PROVIDER and gRPC_PROTOBUF_PROVIDER must all be \"package\"")
52
53 # Providers for third-party dependencies (gRPC_*_PROVIDER properties):
54 # "module": build the dependency using sources from git submodule (under third_party)
55 # "package": use cmake's find_package functionality to locate a pre-installed dependency
56
57 set(gRPC_ZLIB_PROVIDER "module" CACHE STRING "Provider of zlib library")
58 set_property(CACHE gRPC_ZLIB_PROVIDER PROPERTY STRINGS "module" "package")
59
60 set(gRPC_CARES_PROVIDER "module" CACHE STRING "Provider of c-ares library")
61 set_property(CACHE gRPC_CARES_PROVIDER PROPERTY STRINGS "module" "package")
62
63 set(gRPC_SSL_PROVIDER "module" CACHE STRING "Provider of ssl library")
64 set_property(CACHE gRPC_SSL_PROVIDER PROPERTY STRINGS "module" "package")
65
66 set(gRPC_PROTOBUF_PROVIDER "module" CACHE STRING "Provider of protobuf library")
67 set_property(CACHE gRPC_PROTOBUF_PROVIDER PROPERTY STRINGS "module" "package")
68
69 set(gRPC_PROTOBUF_PACKAGE_TYPE "" CACHE STRING "Algorithm for searching protobuf package")
70 set_property(CACHE gRPC_PROTOBUF_PACKAGE_TYPE PROPERTY STRINGS "CONFIG" "MODULE")
71
72 set(gRPC_GFLAGS_PROVIDER "module" CACHE STRING "Provider of gflags library")
73 set_property(CACHE gRPC_GFLAGS_PROVIDER PROPERTY STRINGS "module" "package")
74
75 set(gRPC_BENCHMARK_PROVIDER "module" CACHE STRING "Provider of benchmark library")
76 set_property(CACHE gRPC_BENCHMARK_PROVIDER PROPERTY STRINGS "module" "package")
77
78 set(gRPC_USE_PROTO_LITE OFF CACHE BOOL "Use the protobuf-lite library")
79
80 if(UNIX)
81   if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
82     set(_gRPC_PLATFORM_LINUX ON)
83   elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
84     set(_gRPC_PLATFORM_MAC ON)
85   elseif(${CMAKE_SYSTEM_NAME} MATCHES "iOS")
86     set(_gRPC_PLATFORM_IOS ON)
87   elseif(${CMAKE_SYSTEM_NAME} MATCHES "Android")
88     set(_gRPC_PLATFORM_ANDROID ON)
89   else()
90     set(_gRPC_PLATFORM_POSIX ON)
91   endif()
92 endif()
93 if(WIN32)
94   set(_gRPC_PLATFORM_WINDOWS ON)
95 endif()
96
97 set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
98
99 add_definitions(-DPB_FIELD_32BIT)
100
101 if (MSVC)
102   include(cmake/msvc_static_runtime.cmake)
103   add_definitions(-D_WIN32_WINNT=0x600 -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINSOCK_DEPRECATED_NO_WARNINGS)
104   # needed to compile protobuf
105   add_definitions(/wd4065 /wd4506)
106   # TODO(jtattermusch): revisit warnings that were silenced as part of upgrade to protobuf3.6.0
107   add_definitions(/wd4200 /wd4291 /wd4244)
108   # TODO(jtattermusch): revisit C4267 occurrences throughout the code
109   add_definitions(/wd4267)
110   # TODO(jtattermusch): needed to build boringssl with VS2017, revisit later
111   add_definitions(/wd4987 /wd4774 /wd4819 /wd4996 /wd4619)
112 endif()
113
114 if (gRPC_USE_PROTO_LITE)
115   set(_gRPC_PROTOBUF_LIBRARY_NAME "libprotobuf-lite")
116   add_definitions("-DGRPC_USE_PROTO_LITE")
117 else()
118   set(_gRPC_PROTOBUF_LIBRARY_NAME "libprotobuf")
119 endif()
120
121 if(gRPC_BACKWARDS_COMPATIBILITY_MODE)
122   add_definitions(-DGPR_BACKWARDS_COMPATIBILITY_MODE)
123   if (_gRPC_PLATFORM_MAC)
124     # some C++11 constructs not supported before OS X 10.9
125     set(CMAKE_OSX_DEPLOYMENT_TARGET 10.9)
126   endif()
127 endif()
128
129 if (_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_IOS)
130   # C core has C++ source code, but should not depend on libstc++ (for better portability).
131   # We need to use a few tricks to convince cmake to do that.
132   # https://stackoverflow.com/questions/15058403/how-to-stop-cmake-from-linking-against-libstdc
133   set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "")
134   # Exceptions and RTTI must be off to avoid dependency on libstdc++
135   set(_gRPC_CORE_NOSTDCXX_FLAGS -fno-exceptions -fno-rtti)
136 else()
137   set(_gRPC_CORE_NOSTDCXX_FLAGS "")
138 endif()
139
140 include(cmake/zlib.cmake)
141 include(cmake/cares.cmake)
142 include(cmake/protobuf.cmake)
143 include(cmake/ssl.cmake)
144 include(cmake/gflags.cmake)
145 include(cmake/benchmark.cmake)
146 include(cmake/address_sorting.cmake)
147 include(cmake/nanopb.cmake)
148
149 if(NOT MSVC)
150   set(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS} -std=c99")
151   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
152 endif()
153
154 if(_gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_IOS)
155   set(_gRPC_ALLTARGETS_LIBRARIES ${CMAKE_DL_LIBS} m pthread)
156 elseif(_gRPC_PLATFORM_ANDROID)
157   set(_gRPC_ALLTARGETS_LIBRARIES ${CMAKE_DL_LIBS} m)
158 elseif(UNIX)
159   set(_gRPC_ALLTARGETS_LIBRARIES ${CMAKE_DL_LIBS} rt m pthread)
160 endif()
161
162 if(WIN32 AND MSVC)
163   set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32)
164 endif()
165
166 # Create directory for generated .proto files
167 set(_gRPC_PROTO_GENS_DIR ${CMAKE_BINARY_DIR}/gens)
168 file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR})
169
170 #  protobuf_generate_grpc_cpp
171 #  --------------------------
172 #
173 #   Add custom commands to process ``.proto`` files to C++ using protoc and
174 #   GRPC plugin::
175 #
176 #     protobuf_generate_grpc_cpp [<ARGN>...]
177 #
178 #   ``ARGN``
179 #     ``.proto`` files
180 #
181 function(protobuf_generate_grpc_cpp)
182   if(NOT ARGN)
183     message(SEND_ERROR "Error: PROTOBUF_GENERATE_GRPC_CPP() called without any proto files")
184     return()
185   endif()
186
187   set(_protobuf_include_path -I . -I ${_gRPC_PROTOBUF_WELLKNOWN_INCLUDE_DIR})
188   foreach(FIL ${ARGN})
189     get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
190     get_filename_component(FIL_WE ${FIL} NAME_WE)
191     file(RELATIVE_PATH REL_FIL ${CMAKE_CURRENT_SOURCE_DIR} ${ABS_FIL})
192     get_filename_component(REL_DIR ${REL_FIL} DIRECTORY)
193     set(RELFIL_WE "${REL_DIR}/${FIL_WE}")
194
195     #if cross-compiling, find host plugin
196     if(CMAKE_CROSSCOMPILING)
197         find_program(_gRPC_CPP_PLUGIN grpc_cpp_plugin)
198     else()
199         set(_gRPC_CPP_PLUGIN $<TARGET_FILE:grpc_cpp_plugin>)
200     endif()
201
202     add_custom_command(
203       OUTPUT "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.grpc.pb.cc"
204              "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.grpc.pb.h"
205              "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}_mock.grpc.pb.h"
206              "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.pb.cc"
207              "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.pb.h"
208       COMMAND ${_gRPC_PROTOBUF_PROTOC_EXECUTABLE}
209       ARGS --grpc_out=generate_mock_code=true:${_gRPC_PROTO_GENS_DIR}
210            --cpp_out=${_gRPC_PROTO_GENS_DIR}
211            --plugin=protoc-gen-grpc=${_gRPC_CPP_PLUGIN}
212            ${_protobuf_include_path}
213            ${REL_FIL}
214       DEPENDS ${ABS_FIL} ${_gRPC_PROTOBUF_PROTOC} grpc_cpp_plugin
215       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
216       COMMENT "Running gRPC C++ protocol buffer compiler on ${FIL}"
217       VERBATIM)
218
219       set_source_files_properties("${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.grpc.pb.cc" "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.grpc.pb.h"  "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}_mock.grpc.pb.h" "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.pb.cc" "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.pb.h" PROPERTIES GENERATED TRUE)
220   endforeach()
221 endfunction()
222
223 add_custom_target(plugins
224   DEPENDS
225   grpc_cpp_plugin
226   grpc_csharp_plugin
227   grpc_node_plugin
228   grpc_objective_c_plugin
229   grpc_php_plugin
230   grpc_python_plugin
231   grpc_ruby_plugin
232 )
233
234 add_custom_target(tools_c
235   DEPENDS
236   check_epollexclusive
237   grpc_create_jwt
238   grpc_print_google_default_creds_token
239   grpc_verify_jwt
240   gen_hpack_tables
241   gen_legal_metadata_characters
242   gen_percent_encoding_tables
243 )
244
245 add_custom_target(tools_cxx
246   DEPENDS
247 )
248
249 add_custom_target(tools
250   DEPENDS tools_c tools_cxx)
251
252 if (gRPC_BUILD_TESTS)
253 add_custom_target(buildtests_c)
254 add_dependencies(buildtests_c algorithm_test)
255 add_dependencies(buildtests_c alloc_test)
256 add_dependencies(buildtests_c alpn_test)
257 add_dependencies(buildtests_c arena_test)
258 add_dependencies(buildtests_c avl_test)
259 add_dependencies(buildtests_c bad_server_response_test)
260 add_dependencies(buildtests_c bin_decoder_test)
261 add_dependencies(buildtests_c bin_encoder_test)
262 if(_gRPC_PLATFORM_LINUX)
263 add_dependencies(buildtests_c buffer_list_test)
264 endif()
265 add_dependencies(buildtests_c channel_create_test)
266 add_dependencies(buildtests_c chttp2_hpack_encoder_test)
267 add_dependencies(buildtests_c chttp2_stream_map_test)
268 add_dependencies(buildtests_c chttp2_varint_test)
269 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
270 add_dependencies(buildtests_c close_fd_test)
271 endif()
272 add_dependencies(buildtests_c cmdline_test)
273 add_dependencies(buildtests_c combiner_test)
274 add_dependencies(buildtests_c compression_test)
275 add_dependencies(buildtests_c concurrent_connectivity_test)
276 add_dependencies(buildtests_c connection_refused_test)
277 add_dependencies(buildtests_c dns_resolver_connectivity_test)
278 add_dependencies(buildtests_c dns_resolver_cooldown_test)
279 add_dependencies(buildtests_c dns_resolver_test)
280 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
281 add_dependencies(buildtests_c dualstack_socket_test)
282 endif()
283 add_dependencies(buildtests_c endpoint_pair_test)
284 add_dependencies(buildtests_c error_test)
285 if(_gRPC_PLATFORM_LINUX)
286 add_dependencies(buildtests_c ev_epollex_linux_test)
287 endif()
288 add_dependencies(buildtests_c fake_resolver_test)
289 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
290 add_dependencies(buildtests_c fake_transport_security_test)
291 endif()
292 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
293 add_dependencies(buildtests_c fd_conservation_posix_test)
294 endif()
295 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
296 add_dependencies(buildtests_c fd_posix_test)
297 endif()
298 add_dependencies(buildtests_c fling_client)
299 add_dependencies(buildtests_c fling_server)
300 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
301 add_dependencies(buildtests_c fling_stream_test)
302 endif()
303 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
304 add_dependencies(buildtests_c fling_test)
305 endif()
306 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC)
307 add_dependencies(buildtests_c fork_test)
308 endif()
309 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
310 add_dependencies(buildtests_c goaway_server_test)
311 endif()
312 add_dependencies(buildtests_c gpr_cpu_test)
313 add_dependencies(buildtests_c gpr_env_test)
314 add_dependencies(buildtests_c gpr_host_port_test)
315 add_dependencies(buildtests_c gpr_log_test)
316 add_dependencies(buildtests_c gpr_manual_constructor_test)
317 add_dependencies(buildtests_c gpr_mpscq_test)
318 add_dependencies(buildtests_c gpr_spinlock_test)
319 add_dependencies(buildtests_c gpr_string_test)
320 add_dependencies(buildtests_c gpr_sync_test)
321 add_dependencies(buildtests_c gpr_thd_test)
322 add_dependencies(buildtests_c gpr_time_test)
323 add_dependencies(buildtests_c gpr_tls_test)
324 add_dependencies(buildtests_c gpr_useful_test)
325 add_dependencies(buildtests_c grpc_auth_context_test)
326 add_dependencies(buildtests_c grpc_b64_test)
327 add_dependencies(buildtests_c grpc_byte_buffer_reader_test)
328 add_dependencies(buildtests_c grpc_channel_args_test)
329 add_dependencies(buildtests_c grpc_channel_stack_builder_test)
330 add_dependencies(buildtests_c grpc_channel_stack_test)
331 add_dependencies(buildtests_c grpc_completion_queue_test)
332 add_dependencies(buildtests_c grpc_completion_queue_threading_test)
333 add_dependencies(buildtests_c grpc_credentials_test)
334 add_dependencies(buildtests_c grpc_fetch_oauth2)
335 add_dependencies(buildtests_c grpc_ipv6_loopback_available_test)
336 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
337 add_dependencies(buildtests_c grpc_json_token_test)
338 endif()
339 add_dependencies(buildtests_c grpc_jwt_verifier_test)
340 add_dependencies(buildtests_c grpc_security_connector_test)
341 add_dependencies(buildtests_c grpc_ssl_credentials_test)
342 if(_gRPC_PLATFORM_LINUX)
343 add_dependencies(buildtests_c handshake_client_ssl)
344 endif()
345 if(_gRPC_PLATFORM_LINUX)
346 add_dependencies(buildtests_c handshake_server_ssl)
347 endif()
348 if(_gRPC_PLATFORM_LINUX)
349 add_dependencies(buildtests_c handshake_server_with_readahead_handshaker)
350 endif()
351 if(_gRPC_PLATFORM_LINUX)
352 add_dependencies(buildtests_c handshake_verify_peer_options)
353 endif()
354 add_dependencies(buildtests_c histogram_test)
355 add_dependencies(buildtests_c hpack_parser_test)
356 add_dependencies(buildtests_c hpack_table_test)
357 add_dependencies(buildtests_c http_parser_test)
358 add_dependencies(buildtests_c httpcli_format_request_test)
359 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
360 add_dependencies(buildtests_c httpcli_test)
361 endif()
362 if(_gRPC_PLATFORM_LINUX)
363 add_dependencies(buildtests_c httpscli_test)
364 endif()
365 add_dependencies(buildtests_c init_test)
366 add_dependencies(buildtests_c inproc_callback_test)
367 add_dependencies(buildtests_c invalid_call_argument_test)
368 add_dependencies(buildtests_c json_rewrite)
369 add_dependencies(buildtests_c json_rewrite_test)
370 add_dependencies(buildtests_c json_stream_error_test)
371 add_dependencies(buildtests_c json_test)
372 add_dependencies(buildtests_c lame_client_test)
373 add_dependencies(buildtests_c load_file_test)
374 add_dependencies(buildtests_c memory_usage_client)
375 add_dependencies(buildtests_c memory_usage_server)
376 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
377 add_dependencies(buildtests_c memory_usage_test)
378 endif()
379 add_dependencies(buildtests_c message_compress_test)
380 add_dependencies(buildtests_c minimal_stack_is_minimal_test)
381 add_dependencies(buildtests_c multiple_server_queues_test)
382 add_dependencies(buildtests_c murmur_hash_test)
383 add_dependencies(buildtests_c no_server_test)
384 add_dependencies(buildtests_c num_external_connectivity_watchers_test)
385 add_dependencies(buildtests_c parse_address_test)
386 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
387 add_dependencies(buildtests_c parse_address_with_named_scope_id_test)
388 endif()
389 add_dependencies(buildtests_c percent_encoding_test)
390 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
391 add_dependencies(buildtests_c resolve_address_using_ares_resolver_posix_test)
392 endif()
393 add_dependencies(buildtests_c resolve_address_using_ares_resolver_test)
394 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
395 add_dependencies(buildtests_c resolve_address_using_native_resolver_posix_test)
396 endif()
397 add_dependencies(buildtests_c resolve_address_using_native_resolver_test)
398 add_dependencies(buildtests_c resource_quota_test)
399 add_dependencies(buildtests_c secure_channel_create_test)
400 add_dependencies(buildtests_c secure_endpoint_test)
401 add_dependencies(buildtests_c sequential_connectivity_test)
402 add_dependencies(buildtests_c server_chttp2_test)
403 add_dependencies(buildtests_c server_test)
404 add_dependencies(buildtests_c slice_buffer_test)
405 add_dependencies(buildtests_c slice_string_helpers_test)
406 add_dependencies(buildtests_c slice_test)
407 add_dependencies(buildtests_c sockaddr_resolver_test)
408 add_dependencies(buildtests_c sockaddr_utils_test)
409 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
410 add_dependencies(buildtests_c socket_utils_test)
411 endif()
412 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
413 add_dependencies(buildtests_c ssl_transport_security_test)
414 endif()
415 add_dependencies(buildtests_c status_conversion_test)
416 add_dependencies(buildtests_c stream_compression_test)
417 add_dependencies(buildtests_c stream_owned_slice_test)
418 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
419 add_dependencies(buildtests_c tcp_client_posix_test)
420 endif()
421 add_dependencies(buildtests_c tcp_client_uv_test)
422 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
423 add_dependencies(buildtests_c tcp_posix_test)
424 endif()
425 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
426 add_dependencies(buildtests_c tcp_server_posix_test)
427 endif()
428 add_dependencies(buildtests_c tcp_server_uv_test)
429 add_dependencies(buildtests_c time_averaged_stats_test)
430 add_dependencies(buildtests_c timeout_encoding_test)
431 add_dependencies(buildtests_c timer_heap_test)
432 add_dependencies(buildtests_c timer_list_test)
433 add_dependencies(buildtests_c transport_connectivity_state_test)
434 add_dependencies(buildtests_c transport_metadata_test)
435 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
436 add_dependencies(buildtests_c transport_security_test)
437 endif()
438 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
439 add_dependencies(buildtests_c udp_server_test)
440 endif()
441 add_dependencies(buildtests_c uri_parser_test)
442 add_dependencies(buildtests_c public_headers_must_be_c89)
443 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
444 add_dependencies(buildtests_c bad_ssl_cert_server)
445 endif()
446 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
447 add_dependencies(buildtests_c bad_ssl_cert_test)
448 endif()
449 add_dependencies(buildtests_c h2_census_test)
450 add_dependencies(buildtests_c h2_compress_test)
451 add_dependencies(buildtests_c h2_fakesec_test)
452 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
453 add_dependencies(buildtests_c h2_fd_test)
454 endif()
455 add_dependencies(buildtests_c h2_full_test)
456 if(_gRPC_PLATFORM_LINUX)
457 add_dependencies(buildtests_c h2_full+pipe_test)
458 endif()
459 add_dependencies(buildtests_c h2_full+trace_test)
460 add_dependencies(buildtests_c h2_full+workarounds_test)
461 add_dependencies(buildtests_c h2_http_proxy_test)
462 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
463 add_dependencies(buildtests_c h2_local_ipv4_test)
464 endif()
465 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
466 add_dependencies(buildtests_c h2_local_ipv6_test)
467 endif()
468 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
469 add_dependencies(buildtests_c h2_local_uds_test)
470 endif()
471 add_dependencies(buildtests_c h2_oauth2_test)
472 add_dependencies(buildtests_c h2_proxy_test)
473 add_dependencies(buildtests_c h2_sockpair_test)
474 add_dependencies(buildtests_c h2_sockpair+trace_test)
475 add_dependencies(buildtests_c h2_sockpair_1byte_test)
476 add_dependencies(buildtests_c h2_spiffe_test)
477 add_dependencies(buildtests_c h2_ssl_test)
478 add_dependencies(buildtests_c h2_ssl_cred_reload_test)
479 add_dependencies(buildtests_c h2_ssl_proxy_test)
480 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
481 add_dependencies(buildtests_c h2_uds_test)
482 endif()
483 add_dependencies(buildtests_c inproc_test)
484 add_dependencies(buildtests_c h2_census_nosec_test)
485 add_dependencies(buildtests_c h2_compress_nosec_test)
486 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
487 add_dependencies(buildtests_c h2_fd_nosec_test)
488 endif()
489 add_dependencies(buildtests_c h2_full_nosec_test)
490 if(_gRPC_PLATFORM_LINUX)
491 add_dependencies(buildtests_c h2_full+pipe_nosec_test)
492 endif()
493 add_dependencies(buildtests_c h2_full+trace_nosec_test)
494 add_dependencies(buildtests_c h2_full+workarounds_nosec_test)
495 add_dependencies(buildtests_c h2_http_proxy_nosec_test)
496 add_dependencies(buildtests_c h2_proxy_nosec_test)
497 add_dependencies(buildtests_c h2_sockpair_nosec_test)
498 add_dependencies(buildtests_c h2_sockpair+trace_nosec_test)
499 add_dependencies(buildtests_c h2_sockpair_1byte_nosec_test)
500 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
501 add_dependencies(buildtests_c h2_uds_nosec_test)
502 endif()
503 add_dependencies(buildtests_c alts_credentials_fuzzer_one_entry)
504 add_dependencies(buildtests_c api_fuzzer_one_entry)
505 add_dependencies(buildtests_c client_fuzzer_one_entry)
506 add_dependencies(buildtests_c hpack_parser_fuzzer_test_one_entry)
507 add_dependencies(buildtests_c http_request_fuzzer_test_one_entry)
508 add_dependencies(buildtests_c http_response_fuzzer_test_one_entry)
509 add_dependencies(buildtests_c json_fuzzer_test_one_entry)
510 add_dependencies(buildtests_c nanopb_fuzzer_response_test_one_entry)
511 add_dependencies(buildtests_c nanopb_fuzzer_serverlist_test_one_entry)
512 add_dependencies(buildtests_c percent_decode_fuzzer_one_entry)
513 add_dependencies(buildtests_c percent_encode_fuzzer_one_entry)
514 add_dependencies(buildtests_c server_fuzzer_one_entry)
515 add_dependencies(buildtests_c ssl_server_fuzzer_one_entry)
516 add_dependencies(buildtests_c uri_fuzzer_test_one_entry)
517
518 add_custom_target(buildtests_cxx)
519 add_dependencies(buildtests_cxx alarm_test)
520 add_dependencies(buildtests_cxx alts_counter_test)
521 add_dependencies(buildtests_cxx alts_crypt_test)
522 add_dependencies(buildtests_cxx alts_crypter_test)
523 add_dependencies(buildtests_cxx alts_frame_handler_test)
524 add_dependencies(buildtests_cxx alts_frame_protector_test)
525 add_dependencies(buildtests_cxx alts_grpc_record_protocol_test)
526 add_dependencies(buildtests_cxx alts_handshaker_client_test)
527 add_dependencies(buildtests_cxx alts_handshaker_service_api_test)
528 add_dependencies(buildtests_cxx alts_iovec_record_protocol_test)
529 add_dependencies(buildtests_cxx alts_security_connector_test)
530 add_dependencies(buildtests_cxx alts_tsi_handshaker_test)
531 add_dependencies(buildtests_cxx alts_tsi_utils_test)
532 add_dependencies(buildtests_cxx alts_zero_copy_grpc_protector_test)
533 add_dependencies(buildtests_cxx async_end2end_test)
534 add_dependencies(buildtests_cxx auth_property_iterator_test)
535 add_dependencies(buildtests_cxx backoff_test)
536 add_dependencies(buildtests_cxx bdp_estimator_test)
537 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
538 add_dependencies(buildtests_cxx bm_alarm)
539 endif()
540 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
541 add_dependencies(buildtests_cxx bm_arena)
542 endif()
543 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
544 add_dependencies(buildtests_cxx bm_byte_buffer)
545 endif()
546 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
547 add_dependencies(buildtests_cxx bm_call_create)
548 endif()
549 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
550 add_dependencies(buildtests_cxx bm_callback_streaming_ping_pong)
551 endif()
552 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
553 add_dependencies(buildtests_cxx bm_callback_unary_ping_pong)
554 endif()
555 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
556 add_dependencies(buildtests_cxx bm_channel)
557 endif()
558 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
559 add_dependencies(buildtests_cxx bm_chttp2_hpack)
560 endif()
561 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
562 add_dependencies(buildtests_cxx bm_chttp2_transport)
563 endif()
564 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
565 add_dependencies(buildtests_cxx bm_closure)
566 endif()
567 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
568 add_dependencies(buildtests_cxx bm_cq)
569 endif()
570 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
571 add_dependencies(buildtests_cxx bm_cq_multiple_threads)
572 endif()
573 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
574 add_dependencies(buildtests_cxx bm_error)
575 endif()
576 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
577 add_dependencies(buildtests_cxx bm_fullstack_streaming_ping_pong)
578 endif()
579 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
580 add_dependencies(buildtests_cxx bm_fullstack_streaming_pump)
581 endif()
582 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
583 add_dependencies(buildtests_cxx bm_fullstack_trickle)
584 endif()
585 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
586 add_dependencies(buildtests_cxx bm_fullstack_unary_ping_pong)
587 endif()
588 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
589 add_dependencies(buildtests_cxx bm_metadata)
590 endif()
591 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
592 add_dependencies(buildtests_cxx bm_pollset)
593 endif()
594 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
595 add_dependencies(buildtests_cxx bm_timer)
596 endif()
597 add_dependencies(buildtests_cxx byte_stream_test)
598 add_dependencies(buildtests_cxx channel_arguments_test)
599 add_dependencies(buildtests_cxx channel_filter_test)
600 add_dependencies(buildtests_cxx channel_trace_test)
601 add_dependencies(buildtests_cxx channelz_registry_test)
602 add_dependencies(buildtests_cxx channelz_service_test)
603 add_dependencies(buildtests_cxx channelz_test)
604 add_dependencies(buildtests_cxx check_gcp_environment_linux_test)
605 add_dependencies(buildtests_cxx check_gcp_environment_windows_test)
606 add_dependencies(buildtests_cxx chttp2_settings_timeout_test)
607 add_dependencies(buildtests_cxx cli_call_test)
608 add_dependencies(buildtests_cxx client_callback_end2end_test)
609 add_dependencies(buildtests_cxx client_channel_stress_test)
610 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
611 add_dependencies(buildtests_cxx client_crash_test)
612 endif()
613 add_dependencies(buildtests_cxx client_crash_test_server)
614 add_dependencies(buildtests_cxx client_interceptors_end2end_test)
615 add_dependencies(buildtests_cxx client_lb_end2end_test)
616 add_dependencies(buildtests_cxx codegen_test_full)
617 add_dependencies(buildtests_cxx codegen_test_minimal)
618 add_dependencies(buildtests_cxx context_list_test)
619 add_dependencies(buildtests_cxx credentials_test)
620 add_dependencies(buildtests_cxx cxx_byte_buffer_test)
621 add_dependencies(buildtests_cxx cxx_slice_test)
622 add_dependencies(buildtests_cxx cxx_string_ref_test)
623 add_dependencies(buildtests_cxx cxx_time_test)
624 add_dependencies(buildtests_cxx end2end_test)
625 add_dependencies(buildtests_cxx error_details_test)
626 add_dependencies(buildtests_cxx exception_test)
627 add_dependencies(buildtests_cxx filter_end2end_test)
628 add_dependencies(buildtests_cxx generic_end2end_test)
629 add_dependencies(buildtests_cxx global_config_env_test)
630 add_dependencies(buildtests_cxx global_config_test)
631 add_dependencies(buildtests_cxx golden_file_test)
632 add_dependencies(buildtests_cxx grpc_alts_credentials_options_test)
633 add_dependencies(buildtests_cxx grpc_cli)
634 add_dependencies(buildtests_cxx grpc_core_map_test)
635 add_dependencies(buildtests_cxx grpc_linux_system_roots_test)
636 add_dependencies(buildtests_cxx grpc_tool_test)
637 add_dependencies(buildtests_cxx grpclb_api_test)
638 add_dependencies(buildtests_cxx grpclb_end2end_test)
639 add_dependencies(buildtests_cxx h2_ssl_cert_test)
640 add_dependencies(buildtests_cxx h2_ssl_session_reuse_test)
641 add_dependencies(buildtests_cxx health_service_end2end_test)
642 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
643 add_dependencies(buildtests_cxx http2_client)
644 endif()
645 add_dependencies(buildtests_cxx hybrid_end2end_test)
646 add_dependencies(buildtests_cxx inlined_vector_test)
647 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
648 add_dependencies(buildtests_cxx inproc_sync_unary_ping_pong_test)
649 endif()
650 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
651 add_dependencies(buildtests_cxx interop_client)
652 endif()
653 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
654 add_dependencies(buildtests_cxx interop_server)
655 endif()
656 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
657 add_dependencies(buildtests_cxx interop_test)
658 endif()
659 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
660 add_dependencies(buildtests_cxx json_run_localhost)
661 endif()
662 add_dependencies(buildtests_cxx memory_test)
663 add_dependencies(buildtests_cxx message_allocator_end2end_test)
664 add_dependencies(buildtests_cxx metrics_client)
665 add_dependencies(buildtests_cxx mock_test)
666 add_dependencies(buildtests_cxx nonblocking_test)
667 add_dependencies(buildtests_cxx noop-benchmark)
668 add_dependencies(buildtests_cxx optional_test)
669 add_dependencies(buildtests_cxx orphanable_test)
670 add_dependencies(buildtests_cxx port_sharing_end2end_test)
671 add_dependencies(buildtests_cxx proto_server_reflection_test)
672 add_dependencies(buildtests_cxx proto_utils_test)
673 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
674 add_dependencies(buildtests_cxx qps_interarrival_test)
675 endif()
676 add_dependencies(buildtests_cxx qps_json_driver)
677 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
678 add_dependencies(buildtests_cxx qps_openloop_test)
679 endif()
680 add_dependencies(buildtests_cxx qps_worker)
681 add_dependencies(buildtests_cxx raw_end2end_test)
682 add_dependencies(buildtests_cxx reconnect_interop_client)
683 add_dependencies(buildtests_cxx reconnect_interop_server)
684 add_dependencies(buildtests_cxx ref_counted_ptr_test)
685 add_dependencies(buildtests_cxx ref_counted_test)
686 add_dependencies(buildtests_cxx retry_throttle_test)
687 add_dependencies(buildtests_cxx secure_auth_context_test)
688 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
689 add_dependencies(buildtests_cxx secure_sync_unary_ping_pong_test)
690 endif()
691 add_dependencies(buildtests_cxx server_builder_plugin_test)
692 add_dependencies(buildtests_cxx server_builder_test)
693 if(_gRPC_PLATFORM_POSIX)
694 add_dependencies(buildtests_cxx server_builder_with_socket_mutator_test)
695 endif()
696 add_dependencies(buildtests_cxx server_context_test_spouse_test)
697 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
698 add_dependencies(buildtests_cxx server_crash_test)
699 endif()
700 add_dependencies(buildtests_cxx server_crash_test_client)
701 add_dependencies(buildtests_cxx server_early_return_test)
702 add_dependencies(buildtests_cxx server_interceptors_end2end_test)
703 add_dependencies(buildtests_cxx server_request_call_test)
704 add_dependencies(buildtests_cxx service_config_end2end_test)
705 add_dependencies(buildtests_cxx service_config_test)
706 add_dependencies(buildtests_cxx shutdown_test)
707 add_dependencies(buildtests_cxx slice_hash_table_test)
708 add_dependencies(buildtests_cxx slice_weak_hash_table_test)
709 add_dependencies(buildtests_cxx stats_test)
710 add_dependencies(buildtests_cxx status_metadata_test)
711 add_dependencies(buildtests_cxx status_util_test)
712 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
713 add_dependencies(buildtests_cxx streaming_throughput_test)
714 endif()
715 add_dependencies(buildtests_cxx stress_test)
716 add_dependencies(buildtests_cxx thread_manager_test)
717 add_dependencies(buildtests_cxx thread_stress_test)
718 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
719 add_dependencies(buildtests_cxx time_change_test)
720 endif()
721 add_dependencies(buildtests_cxx transport_pid_controller_test)
722 add_dependencies(buildtests_cxx transport_security_common_api_test)
723 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
724 add_dependencies(buildtests_cxx writes_per_rpc_test)
725 endif()
726 add_dependencies(buildtests_cxx xds_end2end_test)
727 add_dependencies(buildtests_cxx badreq_bad_client_test)
728 add_dependencies(buildtests_cxx connection_prefix_bad_client_test)
729 add_dependencies(buildtests_cxx duplicate_header_bad_client_test)
730 add_dependencies(buildtests_cxx head_of_line_blocking_bad_client_test)
731 add_dependencies(buildtests_cxx headers_bad_client_test)
732 add_dependencies(buildtests_cxx initial_settings_frame_bad_client_test)
733 add_dependencies(buildtests_cxx large_metadata_bad_client_test)
734 add_dependencies(buildtests_cxx server_registered_method_bad_client_test)
735 add_dependencies(buildtests_cxx simple_request_bad_client_test)
736 add_dependencies(buildtests_cxx unknown_frame_bad_client_test)
737 add_dependencies(buildtests_cxx window_overflow_bad_client_test)
738 add_dependencies(buildtests_cxx resolver_component_test_unsecure)
739 add_dependencies(buildtests_cxx resolver_component_test)
740 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
741 add_dependencies(buildtests_cxx resolver_component_tests_runner_invoker_unsecure)
742 endif()
743 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
744 add_dependencies(buildtests_cxx resolver_component_tests_runner_invoker)
745 endif()
746 add_dependencies(buildtests_cxx address_sorting_test_unsecure)
747 add_dependencies(buildtests_cxx address_sorting_test)
748 add_dependencies(buildtests_cxx cancel_ares_query_test)
749
750 add_custom_target(buildtests
751   DEPENDS buildtests_c buildtests_cxx)
752 endif (gRPC_BUILD_TESTS)
753
754
755 add_library(address_sorting
756   third_party/address_sorting/address_sorting.c
757   third_party/address_sorting/address_sorting_posix.c
758   third_party/address_sorting/address_sorting_windows.c
759 )
760
761 if(WIN32 AND MSVC)
762   set_target_properties(address_sorting PROPERTIES COMPILE_PDB_NAME "address_sorting"
763     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
764   )
765   if (gRPC_INSTALL)
766     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/address_sorting.pdb
767       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
768     )
769   endif()
770 endif()
771
772
773 target_include_directories(address_sorting
774   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
775   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
776   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
777   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
778   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
779   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
780   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
781   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
782   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
783   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
784 )
785   # avoid dependency on libstdc++
786   if (_gRPC_CORE_NOSTDCXX_FLAGS)
787     set_target_properties(address_sorting PROPERTIES LINKER_LANGUAGE C)
788     # only use the flags for C++ source files
789     target_compile_options(address_sorting PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
790   endif()
791 target_link_libraries(address_sorting
792   ${_gRPC_BASELIB_LIBRARIES}
793   ${_gRPC_ALLTARGETS_LIBRARIES}
794 )
795
796
797
798 if (gRPC_INSTALL)
799   install(TARGETS address_sorting EXPORT gRPCTargets
800     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
801     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
802     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
803   )
804 endif()
805
806 if (gRPC_BUILD_TESTS)
807
808 add_library(alts_test_util
809   test/core/tsi/alts/crypt/gsec_test_util.cc
810   test/core/tsi/alts/handshaker/alts_handshaker_service_api_test_lib.cc
811 )
812
813 if(WIN32 AND MSVC)
814   set_target_properties(alts_test_util PROPERTIES COMPILE_PDB_NAME "alts_test_util"
815     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
816   )
817   if (gRPC_INSTALL)
818     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/alts_test_util.pdb
819       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
820     )
821   endif()
822 endif()
823
824
825 target_include_directories(alts_test_util
826   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
827   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
828   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
829   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
830   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
831   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
832   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
833   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
834   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
835   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
836 )
837   # avoid dependency on libstdc++
838   if (_gRPC_CORE_NOSTDCXX_FLAGS)
839     set_target_properties(alts_test_util PROPERTIES LINKER_LANGUAGE C)
840     # only use the flags for C++ source files
841     target_compile_options(alts_test_util PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
842   endif()
843 target_link_libraries(alts_test_util
844   ${_gRPC_SSL_LIBRARIES}
845   ${_gRPC_ALLTARGETS_LIBRARIES}
846   grpc
847 )
848
849
850 endif (gRPC_BUILD_TESTS)
851
852 add_library(gpr
853   src/core/lib/gpr/alloc.cc
854   src/core/lib/gpr/atm.cc
855   src/core/lib/gpr/cpu_iphone.cc
856   src/core/lib/gpr/cpu_linux.cc
857   src/core/lib/gpr/cpu_posix.cc
858   src/core/lib/gpr/cpu_windows.cc
859   src/core/lib/gpr/env_linux.cc
860   src/core/lib/gpr/env_posix.cc
861   src/core/lib/gpr/env_windows.cc
862   src/core/lib/gpr/host_port.cc
863   src/core/lib/gpr/log.cc
864   src/core/lib/gpr/log_android.cc
865   src/core/lib/gpr/log_linux.cc
866   src/core/lib/gpr/log_posix.cc
867   src/core/lib/gpr/log_windows.cc
868   src/core/lib/gpr/mpscq.cc
869   src/core/lib/gpr/murmur_hash.cc
870   src/core/lib/gpr/string.cc
871   src/core/lib/gpr/string_posix.cc
872   src/core/lib/gpr/string_util_windows.cc
873   src/core/lib/gpr/string_windows.cc
874   src/core/lib/gpr/sync.cc
875   src/core/lib/gpr/sync_posix.cc
876   src/core/lib/gpr/sync_windows.cc
877   src/core/lib/gpr/time.cc
878   src/core/lib/gpr/time_posix.cc
879   src/core/lib/gpr/time_precise.cc
880   src/core/lib/gpr/time_windows.cc
881   src/core/lib/gpr/tls_pthread.cc
882   src/core/lib/gpr/tmpfile_msys.cc
883   src/core/lib/gpr/tmpfile_posix.cc
884   src/core/lib/gpr/tmpfile_windows.cc
885   src/core/lib/gpr/wrap_memcpy.cc
886   src/core/lib/gprpp/arena.cc
887   src/core/lib/gprpp/fork.cc
888   src/core/lib/gprpp/global_config_env.cc
889   src/core/lib/gprpp/thd_posix.cc
890   src/core/lib/gprpp/thd_windows.cc
891   src/core/lib/profiling/basic_timers.cc
892   src/core/lib/profiling/stap_timers.cc
893 )
894
895 if(WIN32 AND MSVC)
896   set_target_properties(gpr PROPERTIES COMPILE_PDB_NAME "gpr"
897     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
898   )
899   if (gRPC_INSTALL)
900     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gpr.pdb
901       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
902     )
903   endif()
904 endif()
905
906
907 target_include_directories(gpr
908   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
909   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
910   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
911   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
912   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
913   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
914   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
915   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
916   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
917   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
918 )
919   # avoid dependency on libstdc++
920   if (_gRPC_CORE_NOSTDCXX_FLAGS)
921     set_target_properties(gpr PROPERTIES LINKER_LANGUAGE C)
922     # only use the flags for C++ source files
923     target_compile_options(gpr PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
924   endif()
925 target_link_libraries(gpr
926   ${_gRPC_ALLTARGETS_LIBRARIES}
927 )
928 if (_gRPC_PLATFORM_ANDROID)
929   target_link_libraries(gpr
930     android
931     log
932   )
933 endif (_gRPC_PLATFORM_ANDROID)
934
935 foreach(_hdr
936   include/grpc/support/alloc.h
937   include/grpc/support/atm.h
938   include/grpc/support/atm_gcc_atomic.h
939   include/grpc/support/atm_gcc_sync.h
940   include/grpc/support/atm_windows.h
941   include/grpc/support/cpu.h
942   include/grpc/support/log.h
943   include/grpc/support/log_windows.h
944   include/grpc/support/port_platform.h
945   include/grpc/support/string_util.h
946   include/grpc/support/sync.h
947   include/grpc/support/sync_custom.h
948   include/grpc/support/sync_generic.h
949   include/grpc/support/sync_posix.h
950   include/grpc/support/sync_windows.h
951   include/grpc/support/thd_id.h
952   include/grpc/support/time.h
953   include/grpc/impl/codegen/atm.h
954   include/grpc/impl/codegen/atm_gcc_atomic.h
955   include/grpc/impl/codegen/atm_gcc_sync.h
956   include/grpc/impl/codegen/atm_windows.h
957   include/grpc/impl/codegen/fork.h
958   include/grpc/impl/codegen/gpr_slice.h
959   include/grpc/impl/codegen/gpr_types.h
960   include/grpc/impl/codegen/log.h
961   include/grpc/impl/codegen/port_platform.h
962   include/grpc/impl/codegen/sync.h
963   include/grpc/impl/codegen/sync_custom.h
964   include/grpc/impl/codegen/sync_generic.h
965   include/grpc/impl/codegen/sync_posix.h
966   include/grpc/impl/codegen/sync_windows.h
967 )
968   string(REPLACE "include/" "" _path ${_hdr})
969   get_filename_component(_path ${_path} PATH)
970   install(FILES ${_hdr}
971     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
972   )
973 endforeach()
974
975
976 if (gRPC_INSTALL)
977   install(TARGETS gpr EXPORT gRPCTargets
978     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
979     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
980     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
981   )
982 endif()
983
984
985 add_library(grpc
986   src/core/lib/surface/init.cc
987   src/core/lib/avl/avl.cc
988   src/core/lib/backoff/backoff.cc
989   src/core/lib/channel/channel_args.cc
990   src/core/lib/channel/channel_stack.cc
991   src/core/lib/channel/channel_stack_builder.cc
992   src/core/lib/channel/channel_trace.cc
993   src/core/lib/channel/channelz.cc
994   src/core/lib/channel/channelz_registry.cc
995   src/core/lib/channel/connected_channel.cc
996   src/core/lib/channel/handshaker.cc
997   src/core/lib/channel/handshaker_registry.cc
998   src/core/lib/channel/status_util.cc
999   src/core/lib/compression/compression.cc
1000   src/core/lib/compression/compression_args.cc
1001   src/core/lib/compression/compression_internal.cc
1002   src/core/lib/compression/message_compress.cc
1003   src/core/lib/compression/stream_compression.cc
1004   src/core/lib/compression/stream_compression_gzip.cc
1005   src/core/lib/compression/stream_compression_identity.cc
1006   src/core/lib/debug/stats.cc
1007   src/core/lib/debug/stats_data.cc
1008   src/core/lib/http/format_request.cc
1009   src/core/lib/http/httpcli.cc
1010   src/core/lib/http/parser.cc
1011   src/core/lib/iomgr/buffer_list.cc
1012   src/core/lib/iomgr/call_combiner.cc
1013   src/core/lib/iomgr/cfstream_handle.cc
1014   src/core/lib/iomgr/combiner.cc
1015   src/core/lib/iomgr/endpoint.cc
1016   src/core/lib/iomgr/endpoint_cfstream.cc
1017   src/core/lib/iomgr/endpoint_pair_posix.cc
1018   src/core/lib/iomgr/endpoint_pair_uv.cc
1019   src/core/lib/iomgr/endpoint_pair_windows.cc
1020   src/core/lib/iomgr/error.cc
1021   src/core/lib/iomgr/error_cfstream.cc
1022   src/core/lib/iomgr/ev_epoll1_linux.cc
1023   src/core/lib/iomgr/ev_epollex_linux.cc
1024   src/core/lib/iomgr/ev_poll_posix.cc
1025   src/core/lib/iomgr/ev_posix.cc
1026   src/core/lib/iomgr/ev_windows.cc
1027   src/core/lib/iomgr/exec_ctx.cc
1028   src/core/lib/iomgr/executor.cc
1029   src/core/lib/iomgr/fork_posix.cc
1030   src/core/lib/iomgr/fork_windows.cc
1031   src/core/lib/iomgr/gethostname_fallback.cc
1032   src/core/lib/iomgr/gethostname_host_name_max.cc
1033   src/core/lib/iomgr/gethostname_sysconf.cc
1034   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
1035   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
1036   src/core/lib/iomgr/internal_errqueue.cc
1037   src/core/lib/iomgr/iocp_windows.cc
1038   src/core/lib/iomgr/iomgr.cc
1039   src/core/lib/iomgr/iomgr_custom.cc
1040   src/core/lib/iomgr/iomgr_internal.cc
1041   src/core/lib/iomgr/iomgr_posix.cc
1042   src/core/lib/iomgr/iomgr_posix_cfstream.cc
1043   src/core/lib/iomgr/iomgr_uv.cc
1044   src/core/lib/iomgr/iomgr_windows.cc
1045   src/core/lib/iomgr/is_epollexclusive_available.cc
1046   src/core/lib/iomgr/load_file.cc
1047   src/core/lib/iomgr/lockfree_event.cc
1048   src/core/lib/iomgr/polling_entity.cc
1049   src/core/lib/iomgr/pollset.cc
1050   src/core/lib/iomgr/pollset_custom.cc
1051   src/core/lib/iomgr/pollset_set.cc
1052   src/core/lib/iomgr/pollset_set_custom.cc
1053   src/core/lib/iomgr/pollset_set_windows.cc
1054   src/core/lib/iomgr/pollset_uv.cc
1055   src/core/lib/iomgr/pollset_windows.cc
1056   src/core/lib/iomgr/resolve_address.cc
1057   src/core/lib/iomgr/resolve_address_custom.cc
1058   src/core/lib/iomgr/resolve_address_posix.cc
1059   src/core/lib/iomgr/resolve_address_windows.cc
1060   src/core/lib/iomgr/resource_quota.cc
1061   src/core/lib/iomgr/sockaddr_utils.cc
1062   src/core/lib/iomgr/socket_factory_posix.cc
1063   src/core/lib/iomgr/socket_mutator.cc
1064   src/core/lib/iomgr/socket_utils_common_posix.cc
1065   src/core/lib/iomgr/socket_utils_linux.cc
1066   src/core/lib/iomgr/socket_utils_posix.cc
1067   src/core/lib/iomgr/socket_utils_uv.cc
1068   src/core/lib/iomgr/socket_utils_windows.cc
1069   src/core/lib/iomgr/socket_windows.cc
1070   src/core/lib/iomgr/tcp_client.cc
1071   src/core/lib/iomgr/tcp_client_cfstream.cc
1072   src/core/lib/iomgr/tcp_client_custom.cc
1073   src/core/lib/iomgr/tcp_client_posix.cc
1074   src/core/lib/iomgr/tcp_client_windows.cc
1075   src/core/lib/iomgr/tcp_custom.cc
1076   src/core/lib/iomgr/tcp_posix.cc
1077   src/core/lib/iomgr/tcp_server.cc
1078   src/core/lib/iomgr/tcp_server_custom.cc
1079   src/core/lib/iomgr/tcp_server_posix.cc
1080   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
1081   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
1082   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
1083   src/core/lib/iomgr/tcp_server_windows.cc
1084   src/core/lib/iomgr/tcp_uv.cc
1085   src/core/lib/iomgr/tcp_windows.cc
1086   src/core/lib/iomgr/time_averaged_stats.cc
1087   src/core/lib/iomgr/timer.cc
1088   src/core/lib/iomgr/timer_custom.cc
1089   src/core/lib/iomgr/timer_generic.cc
1090   src/core/lib/iomgr/timer_heap.cc
1091   src/core/lib/iomgr/timer_manager.cc
1092   src/core/lib/iomgr/timer_uv.cc
1093   src/core/lib/iomgr/udp_server.cc
1094   src/core/lib/iomgr/unix_sockets_posix.cc
1095   src/core/lib/iomgr/unix_sockets_posix_noop.cc
1096   src/core/lib/iomgr/wakeup_fd_eventfd.cc
1097   src/core/lib/iomgr/wakeup_fd_nospecial.cc
1098   src/core/lib/iomgr/wakeup_fd_pipe.cc
1099   src/core/lib/iomgr/wakeup_fd_posix.cc
1100   src/core/lib/json/json.cc
1101   src/core/lib/json/json_reader.cc
1102   src/core/lib/json/json_string.cc
1103   src/core/lib/json/json_writer.cc
1104   src/core/lib/slice/b64.cc
1105   src/core/lib/slice/percent_encoding.cc
1106   src/core/lib/slice/slice.cc
1107   src/core/lib/slice/slice_buffer.cc
1108   src/core/lib/slice/slice_intern.cc
1109   src/core/lib/slice/slice_string_helpers.cc
1110   src/core/lib/surface/api_trace.cc
1111   src/core/lib/surface/byte_buffer.cc
1112   src/core/lib/surface/byte_buffer_reader.cc
1113   src/core/lib/surface/call.cc
1114   src/core/lib/surface/call_details.cc
1115   src/core/lib/surface/call_log_batch.cc
1116   src/core/lib/surface/channel.cc
1117   src/core/lib/surface/channel_init.cc
1118   src/core/lib/surface/channel_ping.cc
1119   src/core/lib/surface/channel_stack_type.cc
1120   src/core/lib/surface/completion_queue.cc
1121   src/core/lib/surface/completion_queue_factory.cc
1122   src/core/lib/surface/event_string.cc
1123   src/core/lib/surface/lame_client.cc
1124   src/core/lib/surface/metadata_array.cc
1125   src/core/lib/surface/server.cc
1126   src/core/lib/surface/validate_metadata.cc
1127   src/core/lib/surface/version.cc
1128   src/core/lib/transport/bdp_estimator.cc
1129   src/core/lib/transport/byte_stream.cc
1130   src/core/lib/transport/connectivity_state.cc
1131   src/core/lib/transport/error_utils.cc
1132   src/core/lib/transport/metadata.cc
1133   src/core/lib/transport/metadata_batch.cc
1134   src/core/lib/transport/pid_controller.cc
1135   src/core/lib/transport/static_metadata.cc
1136   src/core/lib/transport/status_conversion.cc
1137   src/core/lib/transport/status_metadata.cc
1138   src/core/lib/transport/timeout_encoding.cc
1139   src/core/lib/transport/transport.cc
1140   src/core/lib/transport/transport_op_string.cc
1141   src/core/lib/uri/uri_parser.cc
1142   src/core/lib/debug/trace.cc
1143   src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc
1144   src/core/ext/transport/chttp2/transport/bin_decoder.cc
1145   src/core/ext/transport/chttp2/transport/bin_encoder.cc
1146   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
1147   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
1148   src/core/ext/transport/chttp2/transport/context_list.cc
1149   src/core/ext/transport/chttp2/transport/flow_control.cc
1150   src/core/ext/transport/chttp2/transport/frame_data.cc
1151   src/core/ext/transport/chttp2/transport/frame_goaway.cc
1152   src/core/ext/transport/chttp2/transport/frame_ping.cc
1153   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
1154   src/core/ext/transport/chttp2/transport/frame_settings.cc
1155   src/core/ext/transport/chttp2/transport/frame_window_update.cc
1156   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
1157   src/core/ext/transport/chttp2/transport/hpack_parser.cc
1158   src/core/ext/transport/chttp2/transport/hpack_table.cc
1159   src/core/ext/transport/chttp2/transport/http2_settings.cc
1160   src/core/ext/transport/chttp2/transport/huffsyms.cc
1161   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
1162   src/core/ext/transport/chttp2/transport/parsing.cc
1163   src/core/ext/transport/chttp2/transport/stream_lists.cc
1164   src/core/ext/transport/chttp2/transport/stream_map.cc
1165   src/core/ext/transport/chttp2/transport/varint.cc
1166   src/core/ext/transport/chttp2/transport/writing.cc
1167   src/core/ext/transport/chttp2/alpn/alpn.cc
1168   src/core/ext/filters/http/client/http_client_filter.cc
1169   src/core/ext/filters/http/http_filters_plugin.cc
1170   src/core/ext/filters/http/message_compress/message_compress_filter.cc
1171   src/core/ext/filters/http/server/http_server_filter.cc
1172   src/core/lib/http/httpcli_security_connector.cc
1173   src/core/lib/security/context/security_context.cc
1174   src/core/lib/security/credentials/alts/alts_credentials.cc
1175   src/core/lib/security/credentials/composite/composite_credentials.cc
1176   src/core/lib/security/credentials/credentials.cc
1177   src/core/lib/security/credentials/credentials_metadata.cc
1178   src/core/lib/security/credentials/fake/fake_credentials.cc
1179   src/core/lib/security/credentials/google_default/credentials_generic.cc
1180   src/core/lib/security/credentials/google_default/google_default_credentials.cc
1181   src/core/lib/security/credentials/iam/iam_credentials.cc
1182   src/core/lib/security/credentials/jwt/json_token.cc
1183   src/core/lib/security/credentials/jwt/jwt_credentials.cc
1184   src/core/lib/security/credentials/jwt/jwt_verifier.cc
1185   src/core/lib/security/credentials/local/local_credentials.cc
1186   src/core/lib/security/credentials/oauth2/oauth2_credentials.cc
1187   src/core/lib/security/credentials/plugin/plugin_credentials.cc
1188   src/core/lib/security/credentials/ssl/ssl_credentials.cc
1189   src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc
1190   src/core/lib/security/credentials/tls/spiffe_credentials.cc
1191   src/core/lib/security/security_connector/alts/alts_security_connector.cc
1192   src/core/lib/security/security_connector/fake/fake_security_connector.cc
1193   src/core/lib/security/security_connector/load_system_roots_fallback.cc
1194   src/core/lib/security/security_connector/load_system_roots_linux.cc
1195   src/core/lib/security/security_connector/local/local_security_connector.cc
1196   src/core/lib/security/security_connector/security_connector.cc
1197   src/core/lib/security/security_connector/ssl/ssl_security_connector.cc
1198   src/core/lib/security/security_connector/ssl_utils.cc
1199   src/core/lib/security/security_connector/tls/spiffe_security_connector.cc
1200   src/core/lib/security/transport/client_auth_filter.cc
1201   src/core/lib/security/transport/secure_endpoint.cc
1202   src/core/lib/security/transport/security_handshaker.cc
1203   src/core/lib/security/transport/server_auth_filter.cc
1204   src/core/lib/security/transport/target_authority_table.cc
1205   src/core/lib/security/transport/tsi_error.cc
1206   src/core/lib/security/util/json_util.cc
1207   src/core/lib/surface/init_secure.cc
1208   src/core/tsi/alts/crypt/aes_gcm.cc
1209   src/core/tsi/alts/crypt/gsec.cc
1210   src/core/tsi/alts/frame_protector/alts_counter.cc
1211   src/core/tsi/alts/frame_protector/alts_crypter.cc
1212   src/core/tsi/alts/frame_protector/alts_frame_protector.cc
1213   src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc
1214   src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc
1215   src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc
1216   src/core/tsi/alts/frame_protector/frame_handler.cc
1217   src/core/tsi/alts/handshaker/alts_handshaker_client.cc
1218   src/core/tsi/alts/handshaker/alts_shared_resource.cc
1219   src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc
1220   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc
1221   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc
1222   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc
1223   src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc
1224   src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc
1225   src/core/lib/security/credentials/alts/check_gcp_environment.cc
1226   src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc
1227   src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc
1228   src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc
1229   src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc
1230   src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc
1231   src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc
1232   src/core/tsi/alts/handshaker/alts_handshaker_service_api.cc
1233   src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.cc
1234   src/core/tsi/alts/handshaker/alts_tsi_utils.cc
1235   src/core/tsi/alts/handshaker/transport_security_common_api.cc
1236   src/core/tsi/alts/handshaker/altscontext.pb.c
1237   src/core/tsi/alts/handshaker/handshaker.pb.c
1238   src/core/tsi/alts/handshaker/transport_security_common.pb.c
1239   third_party/nanopb/pb_common.c
1240   third_party/nanopb/pb_decode.c
1241   third_party/nanopb/pb_encode.c
1242   src/core/tsi/transport_security.cc
1243   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
1244   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
1245   src/core/ext/transport/chttp2/client/authority.cc
1246   src/core/ext/transport/chttp2/client/chttp2_connector.cc
1247   src/core/ext/filters/client_channel/backup_poller.cc
1248   src/core/ext/filters/client_channel/channel_connectivity.cc
1249   src/core/ext/filters/client_channel/client_channel.cc
1250   src/core/ext/filters/client_channel/client_channel_channelz.cc
1251   src/core/ext/filters/client_channel/client_channel_factory.cc
1252   src/core/ext/filters/client_channel/client_channel_plugin.cc
1253   src/core/ext/filters/client_channel/connector.cc
1254   src/core/ext/filters/client_channel/global_subchannel_pool.cc
1255   src/core/ext/filters/client_channel/health/health_check_client.cc
1256   src/core/ext/filters/client_channel/http_connect_handshaker.cc
1257   src/core/ext/filters/client_channel/http_proxy.cc
1258   src/core/ext/filters/client_channel/lb_policy.cc
1259   src/core/ext/filters/client_channel/lb_policy_registry.cc
1260   src/core/ext/filters/client_channel/local_subchannel_pool.cc
1261   src/core/ext/filters/client_channel/parse_address.cc
1262   src/core/ext/filters/client_channel/proxy_mapper.cc
1263   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
1264   src/core/ext/filters/client_channel/resolver.cc
1265   src/core/ext/filters/client_channel/resolver_registry.cc
1266   src/core/ext/filters/client_channel/resolver_result_parsing.cc
1267   src/core/ext/filters/client_channel/resolving_lb_policy.cc
1268   src/core/ext/filters/client_channel/retry_throttle.cc
1269   src/core/ext/filters/client_channel/server_address.cc
1270   src/core/ext/filters/client_channel/service_config.cc
1271   src/core/ext/filters/client_channel/subchannel.cc
1272   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
1273   src/core/ext/filters/deadline/deadline_filter.cc
1274   src/core/ext/filters/client_channel/health/health.pb.c
1275   src/core/tsi/fake_transport_security.cc
1276   src/core/tsi/local_transport_security.cc
1277   src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc
1278   src/core/tsi/ssl/session_cache/ssl_session_cache.cc
1279   src/core/tsi/ssl/session_cache/ssl_session_openssl.cc
1280   src/core/tsi/ssl_transport_security.cc
1281   src/core/tsi/transport_security_grpc.cc
1282   src/core/ext/transport/chttp2/server/chttp2_server.cc
1283   src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc
1284   src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc
1285   src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc
1286   src/core/ext/transport/inproc/inproc_plugin.cc
1287   src/core/ext/transport/inproc/inproc_transport.cc
1288   src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc
1289   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc
1290   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc
1291   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc
1292   src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc
1293   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
1294   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.c
1295   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.c
1296   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
1297   src/core/ext/filters/client_channel/lb_policy/xds/xds.cc
1298   src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc
1299   src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc
1300   src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc
1301   src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
1302   src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
1303   src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc
1304   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc
1305   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc
1306   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc
1307   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc
1308   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc
1309   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc
1310   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc
1311   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc
1312   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc
1313   src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc
1314   src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc
1315   src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc
1316   src/core/ext/filters/census/grpc_context.cc
1317   src/core/ext/filters/max_age/max_age_filter.cc
1318   src/core/ext/filters/message_size/message_size_filter.cc
1319   src/core/ext/filters/http/client_authority_filter.cc
1320   src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc
1321   src/core/ext/filters/workarounds/workaround_utils.cc
1322   src/core/plugin_registry/grpc_plugin_registry.cc
1323 )
1324
1325 if(WIN32 AND MSVC)
1326   set_target_properties(grpc PROPERTIES COMPILE_PDB_NAME "grpc"
1327     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
1328   )
1329   if (gRPC_INSTALL)
1330     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc.pdb
1331       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
1332     )
1333   endif()
1334 endif()
1335
1336
1337 target_include_directories(grpc
1338   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
1339   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1340   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
1341   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
1342   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
1343   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
1344   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
1345   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
1346   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
1347   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
1348 )
1349   # avoid dependency on libstdc++
1350   if (_gRPC_CORE_NOSTDCXX_FLAGS)
1351     set_target_properties(grpc PROPERTIES LINKER_LANGUAGE C)
1352     # only use the flags for C++ source files
1353     target_compile_options(grpc PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
1354   endif()
1355 target_link_libraries(grpc
1356   ${_gRPC_BASELIB_LIBRARIES}
1357   ${_gRPC_SSL_LIBRARIES}
1358   ${_gRPC_ZLIB_LIBRARIES}
1359   ${_gRPC_CARES_LIBRARIES}
1360   ${_gRPC_ADDRESS_SORTING_LIBRARIES}
1361   ${_gRPC_ALLTARGETS_LIBRARIES}
1362   gpr
1363 )
1364
1365 foreach(_hdr
1366   include/grpc/impl/codegen/byte_buffer.h
1367   include/grpc/impl/codegen/byte_buffer_reader.h
1368   include/grpc/impl/codegen/compression_types.h
1369   include/grpc/impl/codegen/connectivity_state.h
1370   include/grpc/impl/codegen/grpc_types.h
1371   include/grpc/impl/codegen/propagation_bits.h
1372   include/grpc/impl/codegen/slice.h
1373   include/grpc/impl/codegen/status.h
1374   include/grpc/impl/codegen/atm.h
1375   include/grpc/impl/codegen/atm_gcc_atomic.h
1376   include/grpc/impl/codegen/atm_gcc_sync.h
1377   include/grpc/impl/codegen/atm_windows.h
1378   include/grpc/impl/codegen/fork.h
1379   include/grpc/impl/codegen/gpr_slice.h
1380   include/grpc/impl/codegen/gpr_types.h
1381   include/grpc/impl/codegen/log.h
1382   include/grpc/impl/codegen/port_platform.h
1383   include/grpc/impl/codegen/sync.h
1384   include/grpc/impl/codegen/sync_custom.h
1385   include/grpc/impl/codegen/sync_generic.h
1386   include/grpc/impl/codegen/sync_posix.h
1387   include/grpc/impl/codegen/sync_windows.h
1388   include/grpc/grpc_security.h
1389   include/grpc/byte_buffer.h
1390   include/grpc/byte_buffer_reader.h
1391   include/grpc/compression.h
1392   include/grpc/fork.h
1393   include/grpc/grpc.h
1394   include/grpc/grpc_posix.h
1395   include/grpc/grpc_security_constants.h
1396   include/grpc/load_reporting.h
1397   include/grpc/slice.h
1398   include/grpc/slice_buffer.h
1399   include/grpc/status.h
1400   include/grpc/support/workaround_list.h
1401   include/grpc/census.h
1402 )
1403   string(REPLACE "include/" "" _path ${_hdr})
1404   get_filename_component(_path ${_path} PATH)
1405   install(FILES ${_hdr}
1406     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
1407   )
1408 endforeach()
1409
1410
1411 if (gRPC_INSTALL)
1412   install(TARGETS grpc EXPORT gRPCTargets
1413     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
1414     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
1415     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
1416   )
1417 endif()
1418
1419
1420 add_library(grpc_cronet
1421   src/core/lib/surface/init.cc
1422   src/core/lib/avl/avl.cc
1423   src/core/lib/backoff/backoff.cc
1424   src/core/lib/channel/channel_args.cc
1425   src/core/lib/channel/channel_stack.cc
1426   src/core/lib/channel/channel_stack_builder.cc
1427   src/core/lib/channel/channel_trace.cc
1428   src/core/lib/channel/channelz.cc
1429   src/core/lib/channel/channelz_registry.cc
1430   src/core/lib/channel/connected_channel.cc
1431   src/core/lib/channel/handshaker.cc
1432   src/core/lib/channel/handshaker_registry.cc
1433   src/core/lib/channel/status_util.cc
1434   src/core/lib/compression/compression.cc
1435   src/core/lib/compression/compression_args.cc
1436   src/core/lib/compression/compression_internal.cc
1437   src/core/lib/compression/message_compress.cc
1438   src/core/lib/compression/stream_compression.cc
1439   src/core/lib/compression/stream_compression_gzip.cc
1440   src/core/lib/compression/stream_compression_identity.cc
1441   src/core/lib/debug/stats.cc
1442   src/core/lib/debug/stats_data.cc
1443   src/core/lib/http/format_request.cc
1444   src/core/lib/http/httpcli.cc
1445   src/core/lib/http/parser.cc
1446   src/core/lib/iomgr/buffer_list.cc
1447   src/core/lib/iomgr/call_combiner.cc
1448   src/core/lib/iomgr/cfstream_handle.cc
1449   src/core/lib/iomgr/combiner.cc
1450   src/core/lib/iomgr/endpoint.cc
1451   src/core/lib/iomgr/endpoint_cfstream.cc
1452   src/core/lib/iomgr/endpoint_pair_posix.cc
1453   src/core/lib/iomgr/endpoint_pair_uv.cc
1454   src/core/lib/iomgr/endpoint_pair_windows.cc
1455   src/core/lib/iomgr/error.cc
1456   src/core/lib/iomgr/error_cfstream.cc
1457   src/core/lib/iomgr/ev_epoll1_linux.cc
1458   src/core/lib/iomgr/ev_epollex_linux.cc
1459   src/core/lib/iomgr/ev_poll_posix.cc
1460   src/core/lib/iomgr/ev_posix.cc
1461   src/core/lib/iomgr/ev_windows.cc
1462   src/core/lib/iomgr/exec_ctx.cc
1463   src/core/lib/iomgr/executor.cc
1464   src/core/lib/iomgr/fork_posix.cc
1465   src/core/lib/iomgr/fork_windows.cc
1466   src/core/lib/iomgr/gethostname_fallback.cc
1467   src/core/lib/iomgr/gethostname_host_name_max.cc
1468   src/core/lib/iomgr/gethostname_sysconf.cc
1469   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
1470   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
1471   src/core/lib/iomgr/internal_errqueue.cc
1472   src/core/lib/iomgr/iocp_windows.cc
1473   src/core/lib/iomgr/iomgr.cc
1474   src/core/lib/iomgr/iomgr_custom.cc
1475   src/core/lib/iomgr/iomgr_internal.cc
1476   src/core/lib/iomgr/iomgr_posix.cc
1477   src/core/lib/iomgr/iomgr_posix_cfstream.cc
1478   src/core/lib/iomgr/iomgr_uv.cc
1479   src/core/lib/iomgr/iomgr_windows.cc
1480   src/core/lib/iomgr/is_epollexclusive_available.cc
1481   src/core/lib/iomgr/load_file.cc
1482   src/core/lib/iomgr/lockfree_event.cc
1483   src/core/lib/iomgr/polling_entity.cc
1484   src/core/lib/iomgr/pollset.cc
1485   src/core/lib/iomgr/pollset_custom.cc
1486   src/core/lib/iomgr/pollset_set.cc
1487   src/core/lib/iomgr/pollset_set_custom.cc
1488   src/core/lib/iomgr/pollset_set_windows.cc
1489   src/core/lib/iomgr/pollset_uv.cc
1490   src/core/lib/iomgr/pollset_windows.cc
1491   src/core/lib/iomgr/resolve_address.cc
1492   src/core/lib/iomgr/resolve_address_custom.cc
1493   src/core/lib/iomgr/resolve_address_posix.cc
1494   src/core/lib/iomgr/resolve_address_windows.cc
1495   src/core/lib/iomgr/resource_quota.cc
1496   src/core/lib/iomgr/sockaddr_utils.cc
1497   src/core/lib/iomgr/socket_factory_posix.cc
1498   src/core/lib/iomgr/socket_mutator.cc
1499   src/core/lib/iomgr/socket_utils_common_posix.cc
1500   src/core/lib/iomgr/socket_utils_linux.cc
1501   src/core/lib/iomgr/socket_utils_posix.cc
1502   src/core/lib/iomgr/socket_utils_uv.cc
1503   src/core/lib/iomgr/socket_utils_windows.cc
1504   src/core/lib/iomgr/socket_windows.cc
1505   src/core/lib/iomgr/tcp_client.cc
1506   src/core/lib/iomgr/tcp_client_cfstream.cc
1507   src/core/lib/iomgr/tcp_client_custom.cc
1508   src/core/lib/iomgr/tcp_client_posix.cc
1509   src/core/lib/iomgr/tcp_client_windows.cc
1510   src/core/lib/iomgr/tcp_custom.cc
1511   src/core/lib/iomgr/tcp_posix.cc
1512   src/core/lib/iomgr/tcp_server.cc
1513   src/core/lib/iomgr/tcp_server_custom.cc
1514   src/core/lib/iomgr/tcp_server_posix.cc
1515   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
1516   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
1517   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
1518   src/core/lib/iomgr/tcp_server_windows.cc
1519   src/core/lib/iomgr/tcp_uv.cc
1520   src/core/lib/iomgr/tcp_windows.cc
1521   src/core/lib/iomgr/time_averaged_stats.cc
1522   src/core/lib/iomgr/timer.cc
1523   src/core/lib/iomgr/timer_custom.cc
1524   src/core/lib/iomgr/timer_generic.cc
1525   src/core/lib/iomgr/timer_heap.cc
1526   src/core/lib/iomgr/timer_manager.cc
1527   src/core/lib/iomgr/timer_uv.cc
1528   src/core/lib/iomgr/udp_server.cc
1529   src/core/lib/iomgr/unix_sockets_posix.cc
1530   src/core/lib/iomgr/unix_sockets_posix_noop.cc
1531   src/core/lib/iomgr/wakeup_fd_eventfd.cc
1532   src/core/lib/iomgr/wakeup_fd_nospecial.cc
1533   src/core/lib/iomgr/wakeup_fd_pipe.cc
1534   src/core/lib/iomgr/wakeup_fd_posix.cc
1535   src/core/lib/json/json.cc
1536   src/core/lib/json/json_reader.cc
1537   src/core/lib/json/json_string.cc
1538   src/core/lib/json/json_writer.cc
1539   src/core/lib/slice/b64.cc
1540   src/core/lib/slice/percent_encoding.cc
1541   src/core/lib/slice/slice.cc
1542   src/core/lib/slice/slice_buffer.cc
1543   src/core/lib/slice/slice_intern.cc
1544   src/core/lib/slice/slice_string_helpers.cc
1545   src/core/lib/surface/api_trace.cc
1546   src/core/lib/surface/byte_buffer.cc
1547   src/core/lib/surface/byte_buffer_reader.cc
1548   src/core/lib/surface/call.cc
1549   src/core/lib/surface/call_details.cc
1550   src/core/lib/surface/call_log_batch.cc
1551   src/core/lib/surface/channel.cc
1552   src/core/lib/surface/channel_init.cc
1553   src/core/lib/surface/channel_ping.cc
1554   src/core/lib/surface/channel_stack_type.cc
1555   src/core/lib/surface/completion_queue.cc
1556   src/core/lib/surface/completion_queue_factory.cc
1557   src/core/lib/surface/event_string.cc
1558   src/core/lib/surface/lame_client.cc
1559   src/core/lib/surface/metadata_array.cc
1560   src/core/lib/surface/server.cc
1561   src/core/lib/surface/validate_metadata.cc
1562   src/core/lib/surface/version.cc
1563   src/core/lib/transport/bdp_estimator.cc
1564   src/core/lib/transport/byte_stream.cc
1565   src/core/lib/transport/connectivity_state.cc
1566   src/core/lib/transport/error_utils.cc
1567   src/core/lib/transport/metadata.cc
1568   src/core/lib/transport/metadata_batch.cc
1569   src/core/lib/transport/pid_controller.cc
1570   src/core/lib/transport/static_metadata.cc
1571   src/core/lib/transport/status_conversion.cc
1572   src/core/lib/transport/status_metadata.cc
1573   src/core/lib/transport/timeout_encoding.cc
1574   src/core/lib/transport/transport.cc
1575   src/core/lib/transport/transport_op_string.cc
1576   src/core/lib/uri/uri_parser.cc
1577   src/core/lib/debug/trace.cc
1578   src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc
1579   src/core/ext/transport/cronet/transport/cronet_api_dummy.cc
1580   src/core/ext/transport/cronet/transport/cronet_transport.cc
1581   src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc
1582   src/core/ext/transport/chttp2/transport/bin_decoder.cc
1583   src/core/ext/transport/chttp2/transport/bin_encoder.cc
1584   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
1585   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
1586   src/core/ext/transport/chttp2/transport/context_list.cc
1587   src/core/ext/transport/chttp2/transport/flow_control.cc
1588   src/core/ext/transport/chttp2/transport/frame_data.cc
1589   src/core/ext/transport/chttp2/transport/frame_goaway.cc
1590   src/core/ext/transport/chttp2/transport/frame_ping.cc
1591   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
1592   src/core/ext/transport/chttp2/transport/frame_settings.cc
1593   src/core/ext/transport/chttp2/transport/frame_window_update.cc
1594   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
1595   src/core/ext/transport/chttp2/transport/hpack_parser.cc
1596   src/core/ext/transport/chttp2/transport/hpack_table.cc
1597   src/core/ext/transport/chttp2/transport/http2_settings.cc
1598   src/core/ext/transport/chttp2/transport/huffsyms.cc
1599   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
1600   src/core/ext/transport/chttp2/transport/parsing.cc
1601   src/core/ext/transport/chttp2/transport/stream_lists.cc
1602   src/core/ext/transport/chttp2/transport/stream_map.cc
1603   src/core/ext/transport/chttp2/transport/varint.cc
1604   src/core/ext/transport/chttp2/transport/writing.cc
1605   src/core/ext/transport/chttp2/alpn/alpn.cc
1606   src/core/ext/filters/http/client/http_client_filter.cc
1607   src/core/ext/filters/http/http_filters_plugin.cc
1608   src/core/ext/filters/http/message_compress/message_compress_filter.cc
1609   src/core/ext/filters/http/server/http_server_filter.cc
1610   src/core/ext/filters/client_channel/backup_poller.cc
1611   src/core/ext/filters/client_channel/channel_connectivity.cc
1612   src/core/ext/filters/client_channel/client_channel.cc
1613   src/core/ext/filters/client_channel/client_channel_channelz.cc
1614   src/core/ext/filters/client_channel/client_channel_factory.cc
1615   src/core/ext/filters/client_channel/client_channel_plugin.cc
1616   src/core/ext/filters/client_channel/connector.cc
1617   src/core/ext/filters/client_channel/global_subchannel_pool.cc
1618   src/core/ext/filters/client_channel/health/health_check_client.cc
1619   src/core/ext/filters/client_channel/http_connect_handshaker.cc
1620   src/core/ext/filters/client_channel/http_proxy.cc
1621   src/core/ext/filters/client_channel/lb_policy.cc
1622   src/core/ext/filters/client_channel/lb_policy_registry.cc
1623   src/core/ext/filters/client_channel/local_subchannel_pool.cc
1624   src/core/ext/filters/client_channel/parse_address.cc
1625   src/core/ext/filters/client_channel/proxy_mapper.cc
1626   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
1627   src/core/ext/filters/client_channel/resolver.cc
1628   src/core/ext/filters/client_channel/resolver_registry.cc
1629   src/core/ext/filters/client_channel/resolver_result_parsing.cc
1630   src/core/ext/filters/client_channel/resolving_lb_policy.cc
1631   src/core/ext/filters/client_channel/retry_throttle.cc
1632   src/core/ext/filters/client_channel/server_address.cc
1633   src/core/ext/filters/client_channel/service_config.cc
1634   src/core/ext/filters/client_channel/subchannel.cc
1635   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
1636   src/core/ext/filters/deadline/deadline_filter.cc
1637   src/core/ext/filters/client_channel/health/health.pb.c
1638   third_party/nanopb/pb_common.c
1639   third_party/nanopb/pb_decode.c
1640   third_party/nanopb/pb_encode.c
1641   src/core/lib/http/httpcli_security_connector.cc
1642   src/core/lib/security/context/security_context.cc
1643   src/core/lib/security/credentials/alts/alts_credentials.cc
1644   src/core/lib/security/credentials/composite/composite_credentials.cc
1645   src/core/lib/security/credentials/credentials.cc
1646   src/core/lib/security/credentials/credentials_metadata.cc
1647   src/core/lib/security/credentials/fake/fake_credentials.cc
1648   src/core/lib/security/credentials/google_default/credentials_generic.cc
1649   src/core/lib/security/credentials/google_default/google_default_credentials.cc
1650   src/core/lib/security/credentials/iam/iam_credentials.cc
1651   src/core/lib/security/credentials/jwt/json_token.cc
1652   src/core/lib/security/credentials/jwt/jwt_credentials.cc
1653   src/core/lib/security/credentials/jwt/jwt_verifier.cc
1654   src/core/lib/security/credentials/local/local_credentials.cc
1655   src/core/lib/security/credentials/oauth2/oauth2_credentials.cc
1656   src/core/lib/security/credentials/plugin/plugin_credentials.cc
1657   src/core/lib/security/credentials/ssl/ssl_credentials.cc
1658   src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc
1659   src/core/lib/security/credentials/tls/spiffe_credentials.cc
1660   src/core/lib/security/security_connector/alts/alts_security_connector.cc
1661   src/core/lib/security/security_connector/fake/fake_security_connector.cc
1662   src/core/lib/security/security_connector/load_system_roots_fallback.cc
1663   src/core/lib/security/security_connector/load_system_roots_linux.cc
1664   src/core/lib/security/security_connector/local/local_security_connector.cc
1665   src/core/lib/security/security_connector/security_connector.cc
1666   src/core/lib/security/security_connector/ssl/ssl_security_connector.cc
1667   src/core/lib/security/security_connector/ssl_utils.cc
1668   src/core/lib/security/security_connector/tls/spiffe_security_connector.cc
1669   src/core/lib/security/transport/client_auth_filter.cc
1670   src/core/lib/security/transport/secure_endpoint.cc
1671   src/core/lib/security/transport/security_handshaker.cc
1672   src/core/lib/security/transport/server_auth_filter.cc
1673   src/core/lib/security/transport/target_authority_table.cc
1674   src/core/lib/security/transport/tsi_error.cc
1675   src/core/lib/security/util/json_util.cc
1676   src/core/lib/surface/init_secure.cc
1677   src/core/tsi/alts/crypt/aes_gcm.cc
1678   src/core/tsi/alts/crypt/gsec.cc
1679   src/core/tsi/alts/frame_protector/alts_counter.cc
1680   src/core/tsi/alts/frame_protector/alts_crypter.cc
1681   src/core/tsi/alts/frame_protector/alts_frame_protector.cc
1682   src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc
1683   src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc
1684   src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc
1685   src/core/tsi/alts/frame_protector/frame_handler.cc
1686   src/core/tsi/alts/handshaker/alts_handshaker_client.cc
1687   src/core/tsi/alts/handshaker/alts_shared_resource.cc
1688   src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc
1689   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc
1690   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc
1691   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc
1692   src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc
1693   src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc
1694   src/core/lib/security/credentials/alts/check_gcp_environment.cc
1695   src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc
1696   src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc
1697   src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc
1698   src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc
1699   src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc
1700   src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc
1701   src/core/tsi/alts/handshaker/alts_handshaker_service_api.cc
1702   src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.cc
1703   src/core/tsi/alts/handshaker/alts_tsi_utils.cc
1704   src/core/tsi/alts/handshaker/transport_security_common_api.cc
1705   src/core/tsi/alts/handshaker/altscontext.pb.c
1706   src/core/tsi/alts/handshaker/handshaker.pb.c
1707   src/core/tsi/alts/handshaker/transport_security_common.pb.c
1708   src/core/tsi/transport_security.cc
1709   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
1710   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
1711   src/core/ext/transport/chttp2/client/authority.cc
1712   src/core/ext/transport/chttp2/client/chttp2_connector.cc
1713   src/core/tsi/fake_transport_security.cc
1714   src/core/tsi/local_transport_security.cc
1715   src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc
1716   src/core/tsi/ssl/session_cache/ssl_session_cache.cc
1717   src/core/tsi/ssl/session_cache/ssl_session_openssl.cc
1718   src/core/tsi/ssl_transport_security.cc
1719   src/core/tsi/transport_security_grpc.cc
1720   src/core/plugin_registry/grpc_cronet_plugin_registry.cc
1721 )
1722
1723 if(WIN32 AND MSVC)
1724   set_target_properties(grpc_cronet PROPERTIES COMPILE_PDB_NAME "grpc_cronet"
1725     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
1726   )
1727   if (gRPC_INSTALL)
1728     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_cronet.pdb
1729       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
1730     )
1731   endif()
1732 endif()
1733
1734
1735 target_include_directories(grpc_cronet
1736   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
1737   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1738   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
1739   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
1740   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
1741   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
1742   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
1743   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
1744   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
1745   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
1746 )
1747   # avoid dependency on libstdc++
1748   if (_gRPC_CORE_NOSTDCXX_FLAGS)
1749     set_target_properties(grpc_cronet PROPERTIES LINKER_LANGUAGE C)
1750     # only use the flags for C++ source files
1751     target_compile_options(grpc_cronet PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
1752   endif()
1753 target_link_libraries(grpc_cronet
1754   ${_gRPC_BASELIB_LIBRARIES}
1755   ${_gRPC_SSL_LIBRARIES}
1756   ${_gRPC_ZLIB_LIBRARIES}
1757   ${_gRPC_CARES_LIBRARIES}
1758   ${_gRPC_ADDRESS_SORTING_LIBRARIES}
1759   ${_gRPC_ALLTARGETS_LIBRARIES}
1760   gpr
1761 )
1762
1763 foreach(_hdr
1764   include/grpc/impl/codegen/byte_buffer.h
1765   include/grpc/impl/codegen/byte_buffer_reader.h
1766   include/grpc/impl/codegen/compression_types.h
1767   include/grpc/impl/codegen/connectivity_state.h
1768   include/grpc/impl/codegen/grpc_types.h
1769   include/grpc/impl/codegen/propagation_bits.h
1770   include/grpc/impl/codegen/slice.h
1771   include/grpc/impl/codegen/status.h
1772   include/grpc/impl/codegen/atm.h
1773   include/grpc/impl/codegen/atm_gcc_atomic.h
1774   include/grpc/impl/codegen/atm_gcc_sync.h
1775   include/grpc/impl/codegen/atm_windows.h
1776   include/grpc/impl/codegen/fork.h
1777   include/grpc/impl/codegen/gpr_slice.h
1778   include/grpc/impl/codegen/gpr_types.h
1779   include/grpc/impl/codegen/log.h
1780   include/grpc/impl/codegen/port_platform.h
1781   include/grpc/impl/codegen/sync.h
1782   include/grpc/impl/codegen/sync_custom.h
1783   include/grpc/impl/codegen/sync_generic.h
1784   include/grpc/impl/codegen/sync_posix.h
1785   include/grpc/impl/codegen/sync_windows.h
1786   include/grpc/grpc_cronet.h
1787   include/grpc/grpc_security.h
1788   include/grpc/grpc_security_constants.h
1789 )
1790   string(REPLACE "include/" "" _path ${_hdr})
1791   get_filename_component(_path ${_path} PATH)
1792   install(FILES ${_hdr}
1793     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
1794   )
1795 endforeach()
1796
1797
1798 if (gRPC_INSTALL)
1799   install(TARGETS grpc_cronet EXPORT gRPCTargets
1800     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
1801     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
1802     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
1803   )
1804 endif()
1805
1806 if (gRPC_BUILD_TESTS)
1807
1808 add_library(grpc_test_util
1809   test/core/end2end/data/client_certs.cc
1810   test/core/end2end/data/server1_cert.cc
1811   test/core/end2end/data/server1_key.cc
1812   test/core/end2end/data/test_root_cert.cc
1813   test/core/security/oauth2_utils.cc
1814   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
1815   test/core/end2end/cq_verifier.cc
1816   test/core/end2end/fixtures/http_proxy_fixture.cc
1817   test/core/end2end/fixtures/local_util.cc
1818   test/core/end2end/fixtures/proxy.cc
1819   test/core/iomgr/endpoint_tests.cc
1820   test/core/util/debugger_macros.cc
1821   test/core/util/fuzzer_util.cc
1822   test/core/util/grpc_profiler.cc
1823   test/core/util/histogram.cc
1824   test/core/util/memory_counters.cc
1825   test/core/util/mock_endpoint.cc
1826   test/core/util/parse_hexstring.cc
1827   test/core/util/passthru_endpoint.cc
1828   test/core/util/port.cc
1829   test/core/util/port_isolated_runtime_environment.cc
1830   test/core/util/port_server_client.cc
1831   test/core/util/slice_splitter.cc
1832   test/core/util/subprocess_posix.cc
1833   test/core/util/subprocess_windows.cc
1834   test/core/util/test_config.cc
1835   test/core/util/test_lb_policies.cc
1836   test/core/util/tracer_util.cc
1837   test/core/util/trickle_endpoint.cc
1838   test/core/util/cmdline.cc
1839   src/core/lib/avl/avl.cc
1840   src/core/lib/backoff/backoff.cc
1841   src/core/lib/channel/channel_args.cc
1842   src/core/lib/channel/channel_stack.cc
1843   src/core/lib/channel/channel_stack_builder.cc
1844   src/core/lib/channel/channel_trace.cc
1845   src/core/lib/channel/channelz.cc
1846   src/core/lib/channel/channelz_registry.cc
1847   src/core/lib/channel/connected_channel.cc
1848   src/core/lib/channel/handshaker.cc
1849   src/core/lib/channel/handshaker_registry.cc
1850   src/core/lib/channel/status_util.cc
1851   src/core/lib/compression/compression.cc
1852   src/core/lib/compression/compression_args.cc
1853   src/core/lib/compression/compression_internal.cc
1854   src/core/lib/compression/message_compress.cc
1855   src/core/lib/compression/stream_compression.cc
1856   src/core/lib/compression/stream_compression_gzip.cc
1857   src/core/lib/compression/stream_compression_identity.cc
1858   src/core/lib/debug/stats.cc
1859   src/core/lib/debug/stats_data.cc
1860   src/core/lib/http/format_request.cc
1861   src/core/lib/http/httpcli.cc
1862   src/core/lib/http/parser.cc
1863   src/core/lib/iomgr/buffer_list.cc
1864   src/core/lib/iomgr/call_combiner.cc
1865   src/core/lib/iomgr/cfstream_handle.cc
1866   src/core/lib/iomgr/combiner.cc
1867   src/core/lib/iomgr/endpoint.cc
1868   src/core/lib/iomgr/endpoint_cfstream.cc
1869   src/core/lib/iomgr/endpoint_pair_posix.cc
1870   src/core/lib/iomgr/endpoint_pair_uv.cc
1871   src/core/lib/iomgr/endpoint_pair_windows.cc
1872   src/core/lib/iomgr/error.cc
1873   src/core/lib/iomgr/error_cfstream.cc
1874   src/core/lib/iomgr/ev_epoll1_linux.cc
1875   src/core/lib/iomgr/ev_epollex_linux.cc
1876   src/core/lib/iomgr/ev_poll_posix.cc
1877   src/core/lib/iomgr/ev_posix.cc
1878   src/core/lib/iomgr/ev_windows.cc
1879   src/core/lib/iomgr/exec_ctx.cc
1880   src/core/lib/iomgr/executor.cc
1881   src/core/lib/iomgr/fork_posix.cc
1882   src/core/lib/iomgr/fork_windows.cc
1883   src/core/lib/iomgr/gethostname_fallback.cc
1884   src/core/lib/iomgr/gethostname_host_name_max.cc
1885   src/core/lib/iomgr/gethostname_sysconf.cc
1886   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
1887   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
1888   src/core/lib/iomgr/internal_errqueue.cc
1889   src/core/lib/iomgr/iocp_windows.cc
1890   src/core/lib/iomgr/iomgr.cc
1891   src/core/lib/iomgr/iomgr_custom.cc
1892   src/core/lib/iomgr/iomgr_internal.cc
1893   src/core/lib/iomgr/iomgr_posix.cc
1894   src/core/lib/iomgr/iomgr_posix_cfstream.cc
1895   src/core/lib/iomgr/iomgr_uv.cc
1896   src/core/lib/iomgr/iomgr_windows.cc
1897   src/core/lib/iomgr/is_epollexclusive_available.cc
1898   src/core/lib/iomgr/load_file.cc
1899   src/core/lib/iomgr/lockfree_event.cc
1900   src/core/lib/iomgr/polling_entity.cc
1901   src/core/lib/iomgr/pollset.cc
1902   src/core/lib/iomgr/pollset_custom.cc
1903   src/core/lib/iomgr/pollset_set.cc
1904   src/core/lib/iomgr/pollset_set_custom.cc
1905   src/core/lib/iomgr/pollset_set_windows.cc
1906   src/core/lib/iomgr/pollset_uv.cc
1907   src/core/lib/iomgr/pollset_windows.cc
1908   src/core/lib/iomgr/resolve_address.cc
1909   src/core/lib/iomgr/resolve_address_custom.cc
1910   src/core/lib/iomgr/resolve_address_posix.cc
1911   src/core/lib/iomgr/resolve_address_windows.cc
1912   src/core/lib/iomgr/resource_quota.cc
1913   src/core/lib/iomgr/sockaddr_utils.cc
1914   src/core/lib/iomgr/socket_factory_posix.cc
1915   src/core/lib/iomgr/socket_mutator.cc
1916   src/core/lib/iomgr/socket_utils_common_posix.cc
1917   src/core/lib/iomgr/socket_utils_linux.cc
1918   src/core/lib/iomgr/socket_utils_posix.cc
1919   src/core/lib/iomgr/socket_utils_uv.cc
1920   src/core/lib/iomgr/socket_utils_windows.cc
1921   src/core/lib/iomgr/socket_windows.cc
1922   src/core/lib/iomgr/tcp_client.cc
1923   src/core/lib/iomgr/tcp_client_cfstream.cc
1924   src/core/lib/iomgr/tcp_client_custom.cc
1925   src/core/lib/iomgr/tcp_client_posix.cc
1926   src/core/lib/iomgr/tcp_client_windows.cc
1927   src/core/lib/iomgr/tcp_custom.cc
1928   src/core/lib/iomgr/tcp_posix.cc
1929   src/core/lib/iomgr/tcp_server.cc
1930   src/core/lib/iomgr/tcp_server_custom.cc
1931   src/core/lib/iomgr/tcp_server_posix.cc
1932   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
1933   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
1934   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
1935   src/core/lib/iomgr/tcp_server_windows.cc
1936   src/core/lib/iomgr/tcp_uv.cc
1937   src/core/lib/iomgr/tcp_windows.cc
1938   src/core/lib/iomgr/time_averaged_stats.cc
1939   src/core/lib/iomgr/timer.cc
1940   src/core/lib/iomgr/timer_custom.cc
1941   src/core/lib/iomgr/timer_generic.cc
1942   src/core/lib/iomgr/timer_heap.cc
1943   src/core/lib/iomgr/timer_manager.cc
1944   src/core/lib/iomgr/timer_uv.cc
1945   src/core/lib/iomgr/udp_server.cc
1946   src/core/lib/iomgr/unix_sockets_posix.cc
1947   src/core/lib/iomgr/unix_sockets_posix_noop.cc
1948   src/core/lib/iomgr/wakeup_fd_eventfd.cc
1949   src/core/lib/iomgr/wakeup_fd_nospecial.cc
1950   src/core/lib/iomgr/wakeup_fd_pipe.cc
1951   src/core/lib/iomgr/wakeup_fd_posix.cc
1952   src/core/lib/json/json.cc
1953   src/core/lib/json/json_reader.cc
1954   src/core/lib/json/json_string.cc
1955   src/core/lib/json/json_writer.cc
1956   src/core/lib/slice/b64.cc
1957   src/core/lib/slice/percent_encoding.cc
1958   src/core/lib/slice/slice.cc
1959   src/core/lib/slice/slice_buffer.cc
1960   src/core/lib/slice/slice_intern.cc
1961   src/core/lib/slice/slice_string_helpers.cc
1962   src/core/lib/surface/api_trace.cc
1963   src/core/lib/surface/byte_buffer.cc
1964   src/core/lib/surface/byte_buffer_reader.cc
1965   src/core/lib/surface/call.cc
1966   src/core/lib/surface/call_details.cc
1967   src/core/lib/surface/call_log_batch.cc
1968   src/core/lib/surface/channel.cc
1969   src/core/lib/surface/channel_init.cc
1970   src/core/lib/surface/channel_ping.cc
1971   src/core/lib/surface/channel_stack_type.cc
1972   src/core/lib/surface/completion_queue.cc
1973   src/core/lib/surface/completion_queue_factory.cc
1974   src/core/lib/surface/event_string.cc
1975   src/core/lib/surface/lame_client.cc
1976   src/core/lib/surface/metadata_array.cc
1977   src/core/lib/surface/server.cc
1978   src/core/lib/surface/validate_metadata.cc
1979   src/core/lib/surface/version.cc
1980   src/core/lib/transport/bdp_estimator.cc
1981   src/core/lib/transport/byte_stream.cc
1982   src/core/lib/transport/connectivity_state.cc
1983   src/core/lib/transport/error_utils.cc
1984   src/core/lib/transport/metadata.cc
1985   src/core/lib/transport/metadata_batch.cc
1986   src/core/lib/transport/pid_controller.cc
1987   src/core/lib/transport/static_metadata.cc
1988   src/core/lib/transport/status_conversion.cc
1989   src/core/lib/transport/status_metadata.cc
1990   src/core/lib/transport/timeout_encoding.cc
1991   src/core/lib/transport/transport.cc
1992   src/core/lib/transport/transport_op_string.cc
1993   src/core/lib/uri/uri_parser.cc
1994   src/core/lib/debug/trace.cc
1995   src/core/ext/filters/client_channel/backup_poller.cc
1996   src/core/ext/filters/client_channel/channel_connectivity.cc
1997   src/core/ext/filters/client_channel/client_channel.cc
1998   src/core/ext/filters/client_channel/client_channel_channelz.cc
1999   src/core/ext/filters/client_channel/client_channel_factory.cc
2000   src/core/ext/filters/client_channel/client_channel_plugin.cc
2001   src/core/ext/filters/client_channel/connector.cc
2002   src/core/ext/filters/client_channel/global_subchannel_pool.cc
2003   src/core/ext/filters/client_channel/health/health_check_client.cc
2004   src/core/ext/filters/client_channel/http_connect_handshaker.cc
2005   src/core/ext/filters/client_channel/http_proxy.cc
2006   src/core/ext/filters/client_channel/lb_policy.cc
2007   src/core/ext/filters/client_channel/lb_policy_registry.cc
2008   src/core/ext/filters/client_channel/local_subchannel_pool.cc
2009   src/core/ext/filters/client_channel/parse_address.cc
2010   src/core/ext/filters/client_channel/proxy_mapper.cc
2011   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
2012   src/core/ext/filters/client_channel/resolver.cc
2013   src/core/ext/filters/client_channel/resolver_registry.cc
2014   src/core/ext/filters/client_channel/resolver_result_parsing.cc
2015   src/core/ext/filters/client_channel/resolving_lb_policy.cc
2016   src/core/ext/filters/client_channel/retry_throttle.cc
2017   src/core/ext/filters/client_channel/server_address.cc
2018   src/core/ext/filters/client_channel/service_config.cc
2019   src/core/ext/filters/client_channel/subchannel.cc
2020   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
2021   src/core/ext/filters/deadline/deadline_filter.cc
2022   src/core/ext/filters/client_channel/health/health.pb.c
2023   third_party/nanopb/pb_common.c
2024   third_party/nanopb/pb_decode.c
2025   third_party/nanopb/pb_encode.c
2026   src/core/ext/transport/chttp2/transport/bin_decoder.cc
2027   src/core/ext/transport/chttp2/transport/bin_encoder.cc
2028   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
2029   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
2030   src/core/ext/transport/chttp2/transport/context_list.cc
2031   src/core/ext/transport/chttp2/transport/flow_control.cc
2032   src/core/ext/transport/chttp2/transport/frame_data.cc
2033   src/core/ext/transport/chttp2/transport/frame_goaway.cc
2034   src/core/ext/transport/chttp2/transport/frame_ping.cc
2035   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
2036   src/core/ext/transport/chttp2/transport/frame_settings.cc
2037   src/core/ext/transport/chttp2/transport/frame_window_update.cc
2038   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
2039   src/core/ext/transport/chttp2/transport/hpack_parser.cc
2040   src/core/ext/transport/chttp2/transport/hpack_table.cc
2041   src/core/ext/transport/chttp2/transport/http2_settings.cc
2042   src/core/ext/transport/chttp2/transport/huffsyms.cc
2043   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
2044   src/core/ext/transport/chttp2/transport/parsing.cc
2045   src/core/ext/transport/chttp2/transport/stream_lists.cc
2046   src/core/ext/transport/chttp2/transport/stream_map.cc
2047   src/core/ext/transport/chttp2/transport/varint.cc
2048   src/core/ext/transport/chttp2/transport/writing.cc
2049   src/core/ext/transport/chttp2/alpn/alpn.cc
2050   src/core/ext/filters/http/client/http_client_filter.cc
2051   src/core/ext/filters/http/http_filters_plugin.cc
2052   src/core/ext/filters/http/message_compress/message_compress_filter.cc
2053   src/core/ext/filters/http/server/http_server_filter.cc
2054 )
2055
2056 if(WIN32 AND MSVC)
2057   set_target_properties(grpc_test_util PROPERTIES COMPILE_PDB_NAME "grpc_test_util"
2058     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2059   )
2060   if (gRPC_INSTALL)
2061     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_test_util.pdb
2062       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2063     )
2064   endif()
2065 endif()
2066
2067
2068 target_include_directories(grpc_test_util
2069   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2070   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2071   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2072   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2073   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2074   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2075   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2076   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2077   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2078   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2079 )
2080   # avoid dependency on libstdc++
2081   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2082     set_target_properties(grpc_test_util PROPERTIES LINKER_LANGUAGE C)
2083     # only use the flags for C++ source files
2084     target_compile_options(grpc_test_util PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2085   endif()
2086 target_link_libraries(grpc_test_util
2087   ${_gRPC_ALLTARGETS_LIBRARIES}
2088   gpr
2089   grpc
2090 )
2091
2092 foreach(_hdr
2093   include/grpc/support/alloc.h
2094   include/grpc/support/atm.h
2095   include/grpc/support/atm_gcc_atomic.h
2096   include/grpc/support/atm_gcc_sync.h
2097   include/grpc/support/atm_windows.h
2098   include/grpc/support/cpu.h
2099   include/grpc/support/log.h
2100   include/grpc/support/log_windows.h
2101   include/grpc/support/port_platform.h
2102   include/grpc/support/string_util.h
2103   include/grpc/support/sync.h
2104   include/grpc/support/sync_custom.h
2105   include/grpc/support/sync_generic.h
2106   include/grpc/support/sync_posix.h
2107   include/grpc/support/sync_windows.h
2108   include/grpc/support/thd_id.h
2109   include/grpc/support/time.h
2110   include/grpc/impl/codegen/atm.h
2111   include/grpc/impl/codegen/atm_gcc_atomic.h
2112   include/grpc/impl/codegen/atm_gcc_sync.h
2113   include/grpc/impl/codegen/atm_windows.h
2114   include/grpc/impl/codegen/fork.h
2115   include/grpc/impl/codegen/gpr_slice.h
2116   include/grpc/impl/codegen/gpr_types.h
2117   include/grpc/impl/codegen/log.h
2118   include/grpc/impl/codegen/port_platform.h
2119   include/grpc/impl/codegen/sync.h
2120   include/grpc/impl/codegen/sync_custom.h
2121   include/grpc/impl/codegen/sync_generic.h
2122   include/grpc/impl/codegen/sync_posix.h
2123   include/grpc/impl/codegen/sync_windows.h
2124   include/grpc/impl/codegen/byte_buffer.h
2125   include/grpc/impl/codegen/byte_buffer_reader.h
2126   include/grpc/impl/codegen/compression_types.h
2127   include/grpc/impl/codegen/connectivity_state.h
2128   include/grpc/impl/codegen/grpc_types.h
2129   include/grpc/impl/codegen/propagation_bits.h
2130   include/grpc/impl/codegen/slice.h
2131   include/grpc/impl/codegen/status.h
2132 )
2133   string(REPLACE "include/" "" _path ${_hdr})
2134   get_filename_component(_path ${_path} PATH)
2135   install(FILES ${_hdr}
2136     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
2137   )
2138 endforeach()
2139
2140 endif (gRPC_BUILD_TESTS)
2141 if (gRPC_BUILD_TESTS)
2142
2143 add_library(grpc_test_util_unsecure
2144   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
2145   test/core/end2end/cq_verifier.cc
2146   test/core/end2end/fixtures/http_proxy_fixture.cc
2147   test/core/end2end/fixtures/local_util.cc
2148   test/core/end2end/fixtures/proxy.cc
2149   test/core/iomgr/endpoint_tests.cc
2150   test/core/util/debugger_macros.cc
2151   test/core/util/fuzzer_util.cc
2152   test/core/util/grpc_profiler.cc
2153   test/core/util/histogram.cc
2154   test/core/util/memory_counters.cc
2155   test/core/util/mock_endpoint.cc
2156   test/core/util/parse_hexstring.cc
2157   test/core/util/passthru_endpoint.cc
2158   test/core/util/port.cc
2159   test/core/util/port_isolated_runtime_environment.cc
2160   test/core/util/port_server_client.cc
2161   test/core/util/slice_splitter.cc
2162   test/core/util/subprocess_posix.cc
2163   test/core/util/subprocess_windows.cc
2164   test/core/util/test_config.cc
2165   test/core/util/test_lb_policies.cc
2166   test/core/util/tracer_util.cc
2167   test/core/util/trickle_endpoint.cc
2168   test/core/util/cmdline.cc
2169   src/core/lib/avl/avl.cc
2170   src/core/lib/backoff/backoff.cc
2171   src/core/lib/channel/channel_args.cc
2172   src/core/lib/channel/channel_stack.cc
2173   src/core/lib/channel/channel_stack_builder.cc
2174   src/core/lib/channel/channel_trace.cc
2175   src/core/lib/channel/channelz.cc
2176   src/core/lib/channel/channelz_registry.cc
2177   src/core/lib/channel/connected_channel.cc
2178   src/core/lib/channel/handshaker.cc
2179   src/core/lib/channel/handshaker_registry.cc
2180   src/core/lib/channel/status_util.cc
2181   src/core/lib/compression/compression.cc
2182   src/core/lib/compression/compression_args.cc
2183   src/core/lib/compression/compression_internal.cc
2184   src/core/lib/compression/message_compress.cc
2185   src/core/lib/compression/stream_compression.cc
2186   src/core/lib/compression/stream_compression_gzip.cc
2187   src/core/lib/compression/stream_compression_identity.cc
2188   src/core/lib/debug/stats.cc
2189   src/core/lib/debug/stats_data.cc
2190   src/core/lib/http/format_request.cc
2191   src/core/lib/http/httpcli.cc
2192   src/core/lib/http/parser.cc
2193   src/core/lib/iomgr/buffer_list.cc
2194   src/core/lib/iomgr/call_combiner.cc
2195   src/core/lib/iomgr/cfstream_handle.cc
2196   src/core/lib/iomgr/combiner.cc
2197   src/core/lib/iomgr/endpoint.cc
2198   src/core/lib/iomgr/endpoint_cfstream.cc
2199   src/core/lib/iomgr/endpoint_pair_posix.cc
2200   src/core/lib/iomgr/endpoint_pair_uv.cc
2201   src/core/lib/iomgr/endpoint_pair_windows.cc
2202   src/core/lib/iomgr/error.cc
2203   src/core/lib/iomgr/error_cfstream.cc
2204   src/core/lib/iomgr/ev_epoll1_linux.cc
2205   src/core/lib/iomgr/ev_epollex_linux.cc
2206   src/core/lib/iomgr/ev_poll_posix.cc
2207   src/core/lib/iomgr/ev_posix.cc
2208   src/core/lib/iomgr/ev_windows.cc
2209   src/core/lib/iomgr/exec_ctx.cc
2210   src/core/lib/iomgr/executor.cc
2211   src/core/lib/iomgr/fork_posix.cc
2212   src/core/lib/iomgr/fork_windows.cc
2213   src/core/lib/iomgr/gethostname_fallback.cc
2214   src/core/lib/iomgr/gethostname_host_name_max.cc
2215   src/core/lib/iomgr/gethostname_sysconf.cc
2216   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
2217   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
2218   src/core/lib/iomgr/internal_errqueue.cc
2219   src/core/lib/iomgr/iocp_windows.cc
2220   src/core/lib/iomgr/iomgr.cc
2221   src/core/lib/iomgr/iomgr_custom.cc
2222   src/core/lib/iomgr/iomgr_internal.cc
2223   src/core/lib/iomgr/iomgr_posix.cc
2224   src/core/lib/iomgr/iomgr_posix_cfstream.cc
2225   src/core/lib/iomgr/iomgr_uv.cc
2226   src/core/lib/iomgr/iomgr_windows.cc
2227   src/core/lib/iomgr/is_epollexclusive_available.cc
2228   src/core/lib/iomgr/load_file.cc
2229   src/core/lib/iomgr/lockfree_event.cc
2230   src/core/lib/iomgr/polling_entity.cc
2231   src/core/lib/iomgr/pollset.cc
2232   src/core/lib/iomgr/pollset_custom.cc
2233   src/core/lib/iomgr/pollset_set.cc
2234   src/core/lib/iomgr/pollset_set_custom.cc
2235   src/core/lib/iomgr/pollset_set_windows.cc
2236   src/core/lib/iomgr/pollset_uv.cc
2237   src/core/lib/iomgr/pollset_windows.cc
2238   src/core/lib/iomgr/resolve_address.cc
2239   src/core/lib/iomgr/resolve_address_custom.cc
2240   src/core/lib/iomgr/resolve_address_posix.cc
2241   src/core/lib/iomgr/resolve_address_windows.cc
2242   src/core/lib/iomgr/resource_quota.cc
2243   src/core/lib/iomgr/sockaddr_utils.cc
2244   src/core/lib/iomgr/socket_factory_posix.cc
2245   src/core/lib/iomgr/socket_mutator.cc
2246   src/core/lib/iomgr/socket_utils_common_posix.cc
2247   src/core/lib/iomgr/socket_utils_linux.cc
2248   src/core/lib/iomgr/socket_utils_posix.cc
2249   src/core/lib/iomgr/socket_utils_uv.cc
2250   src/core/lib/iomgr/socket_utils_windows.cc
2251   src/core/lib/iomgr/socket_windows.cc
2252   src/core/lib/iomgr/tcp_client.cc
2253   src/core/lib/iomgr/tcp_client_cfstream.cc
2254   src/core/lib/iomgr/tcp_client_custom.cc
2255   src/core/lib/iomgr/tcp_client_posix.cc
2256   src/core/lib/iomgr/tcp_client_windows.cc
2257   src/core/lib/iomgr/tcp_custom.cc
2258   src/core/lib/iomgr/tcp_posix.cc
2259   src/core/lib/iomgr/tcp_server.cc
2260   src/core/lib/iomgr/tcp_server_custom.cc
2261   src/core/lib/iomgr/tcp_server_posix.cc
2262   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
2263   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
2264   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
2265   src/core/lib/iomgr/tcp_server_windows.cc
2266   src/core/lib/iomgr/tcp_uv.cc
2267   src/core/lib/iomgr/tcp_windows.cc
2268   src/core/lib/iomgr/time_averaged_stats.cc
2269   src/core/lib/iomgr/timer.cc
2270   src/core/lib/iomgr/timer_custom.cc
2271   src/core/lib/iomgr/timer_generic.cc
2272   src/core/lib/iomgr/timer_heap.cc
2273   src/core/lib/iomgr/timer_manager.cc
2274   src/core/lib/iomgr/timer_uv.cc
2275   src/core/lib/iomgr/udp_server.cc
2276   src/core/lib/iomgr/unix_sockets_posix.cc
2277   src/core/lib/iomgr/unix_sockets_posix_noop.cc
2278   src/core/lib/iomgr/wakeup_fd_eventfd.cc
2279   src/core/lib/iomgr/wakeup_fd_nospecial.cc
2280   src/core/lib/iomgr/wakeup_fd_pipe.cc
2281   src/core/lib/iomgr/wakeup_fd_posix.cc
2282   src/core/lib/json/json.cc
2283   src/core/lib/json/json_reader.cc
2284   src/core/lib/json/json_string.cc
2285   src/core/lib/json/json_writer.cc
2286   src/core/lib/slice/b64.cc
2287   src/core/lib/slice/percent_encoding.cc
2288   src/core/lib/slice/slice.cc
2289   src/core/lib/slice/slice_buffer.cc
2290   src/core/lib/slice/slice_intern.cc
2291   src/core/lib/slice/slice_string_helpers.cc
2292   src/core/lib/surface/api_trace.cc
2293   src/core/lib/surface/byte_buffer.cc
2294   src/core/lib/surface/byte_buffer_reader.cc
2295   src/core/lib/surface/call.cc
2296   src/core/lib/surface/call_details.cc
2297   src/core/lib/surface/call_log_batch.cc
2298   src/core/lib/surface/channel.cc
2299   src/core/lib/surface/channel_init.cc
2300   src/core/lib/surface/channel_ping.cc
2301   src/core/lib/surface/channel_stack_type.cc
2302   src/core/lib/surface/completion_queue.cc
2303   src/core/lib/surface/completion_queue_factory.cc
2304   src/core/lib/surface/event_string.cc
2305   src/core/lib/surface/lame_client.cc
2306   src/core/lib/surface/metadata_array.cc
2307   src/core/lib/surface/server.cc
2308   src/core/lib/surface/validate_metadata.cc
2309   src/core/lib/surface/version.cc
2310   src/core/lib/transport/bdp_estimator.cc
2311   src/core/lib/transport/byte_stream.cc
2312   src/core/lib/transport/connectivity_state.cc
2313   src/core/lib/transport/error_utils.cc
2314   src/core/lib/transport/metadata.cc
2315   src/core/lib/transport/metadata_batch.cc
2316   src/core/lib/transport/pid_controller.cc
2317   src/core/lib/transport/static_metadata.cc
2318   src/core/lib/transport/status_conversion.cc
2319   src/core/lib/transport/status_metadata.cc
2320   src/core/lib/transport/timeout_encoding.cc
2321   src/core/lib/transport/transport.cc
2322   src/core/lib/transport/transport_op_string.cc
2323   src/core/lib/uri/uri_parser.cc
2324   src/core/lib/debug/trace.cc
2325   src/core/ext/filters/client_channel/backup_poller.cc
2326   src/core/ext/filters/client_channel/channel_connectivity.cc
2327   src/core/ext/filters/client_channel/client_channel.cc
2328   src/core/ext/filters/client_channel/client_channel_channelz.cc
2329   src/core/ext/filters/client_channel/client_channel_factory.cc
2330   src/core/ext/filters/client_channel/client_channel_plugin.cc
2331   src/core/ext/filters/client_channel/connector.cc
2332   src/core/ext/filters/client_channel/global_subchannel_pool.cc
2333   src/core/ext/filters/client_channel/health/health_check_client.cc
2334   src/core/ext/filters/client_channel/http_connect_handshaker.cc
2335   src/core/ext/filters/client_channel/http_proxy.cc
2336   src/core/ext/filters/client_channel/lb_policy.cc
2337   src/core/ext/filters/client_channel/lb_policy_registry.cc
2338   src/core/ext/filters/client_channel/local_subchannel_pool.cc
2339   src/core/ext/filters/client_channel/parse_address.cc
2340   src/core/ext/filters/client_channel/proxy_mapper.cc
2341   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
2342   src/core/ext/filters/client_channel/resolver.cc
2343   src/core/ext/filters/client_channel/resolver_registry.cc
2344   src/core/ext/filters/client_channel/resolver_result_parsing.cc
2345   src/core/ext/filters/client_channel/resolving_lb_policy.cc
2346   src/core/ext/filters/client_channel/retry_throttle.cc
2347   src/core/ext/filters/client_channel/server_address.cc
2348   src/core/ext/filters/client_channel/service_config.cc
2349   src/core/ext/filters/client_channel/subchannel.cc
2350   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
2351   src/core/ext/filters/deadline/deadline_filter.cc
2352   src/core/ext/filters/client_channel/health/health.pb.c
2353   third_party/nanopb/pb_common.c
2354   third_party/nanopb/pb_decode.c
2355   third_party/nanopb/pb_encode.c
2356   src/core/ext/transport/chttp2/transport/bin_decoder.cc
2357   src/core/ext/transport/chttp2/transport/bin_encoder.cc
2358   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
2359   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
2360   src/core/ext/transport/chttp2/transport/context_list.cc
2361   src/core/ext/transport/chttp2/transport/flow_control.cc
2362   src/core/ext/transport/chttp2/transport/frame_data.cc
2363   src/core/ext/transport/chttp2/transport/frame_goaway.cc
2364   src/core/ext/transport/chttp2/transport/frame_ping.cc
2365   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
2366   src/core/ext/transport/chttp2/transport/frame_settings.cc
2367   src/core/ext/transport/chttp2/transport/frame_window_update.cc
2368   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
2369   src/core/ext/transport/chttp2/transport/hpack_parser.cc
2370   src/core/ext/transport/chttp2/transport/hpack_table.cc
2371   src/core/ext/transport/chttp2/transport/http2_settings.cc
2372   src/core/ext/transport/chttp2/transport/huffsyms.cc
2373   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
2374   src/core/ext/transport/chttp2/transport/parsing.cc
2375   src/core/ext/transport/chttp2/transport/stream_lists.cc
2376   src/core/ext/transport/chttp2/transport/stream_map.cc
2377   src/core/ext/transport/chttp2/transport/varint.cc
2378   src/core/ext/transport/chttp2/transport/writing.cc
2379   src/core/ext/transport/chttp2/alpn/alpn.cc
2380   src/core/ext/filters/http/client/http_client_filter.cc
2381   src/core/ext/filters/http/http_filters_plugin.cc
2382   src/core/ext/filters/http/message_compress/message_compress_filter.cc
2383   src/core/ext/filters/http/server/http_server_filter.cc
2384 )
2385
2386 if(WIN32 AND MSVC)
2387   set_target_properties(grpc_test_util_unsecure PROPERTIES COMPILE_PDB_NAME "grpc_test_util_unsecure"
2388     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2389   )
2390   if (gRPC_INSTALL)
2391     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_test_util_unsecure.pdb
2392       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2393     )
2394   endif()
2395 endif()
2396
2397
2398 target_include_directories(grpc_test_util_unsecure
2399   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2400   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2401   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2402   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2403   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2404   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2405   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2406   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2407   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2408   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2409 )
2410   # avoid dependency on libstdc++
2411   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2412     set_target_properties(grpc_test_util_unsecure PROPERTIES LINKER_LANGUAGE C)
2413     # only use the flags for C++ source files
2414     target_compile_options(grpc_test_util_unsecure PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2415   endif()
2416 target_link_libraries(grpc_test_util_unsecure
2417   ${_gRPC_ALLTARGETS_LIBRARIES}
2418   gpr
2419   grpc_unsecure
2420 )
2421
2422 foreach(_hdr
2423   include/grpc/support/alloc.h
2424   include/grpc/support/atm.h
2425   include/grpc/support/atm_gcc_atomic.h
2426   include/grpc/support/atm_gcc_sync.h
2427   include/grpc/support/atm_windows.h
2428   include/grpc/support/cpu.h
2429   include/grpc/support/log.h
2430   include/grpc/support/log_windows.h
2431   include/grpc/support/port_platform.h
2432   include/grpc/support/string_util.h
2433   include/grpc/support/sync.h
2434   include/grpc/support/sync_custom.h
2435   include/grpc/support/sync_generic.h
2436   include/grpc/support/sync_posix.h
2437   include/grpc/support/sync_windows.h
2438   include/grpc/support/thd_id.h
2439   include/grpc/support/time.h
2440   include/grpc/impl/codegen/atm.h
2441   include/grpc/impl/codegen/atm_gcc_atomic.h
2442   include/grpc/impl/codegen/atm_gcc_sync.h
2443   include/grpc/impl/codegen/atm_windows.h
2444   include/grpc/impl/codegen/fork.h
2445   include/grpc/impl/codegen/gpr_slice.h
2446   include/grpc/impl/codegen/gpr_types.h
2447   include/grpc/impl/codegen/log.h
2448   include/grpc/impl/codegen/port_platform.h
2449   include/grpc/impl/codegen/sync.h
2450   include/grpc/impl/codegen/sync_custom.h
2451   include/grpc/impl/codegen/sync_generic.h
2452   include/grpc/impl/codegen/sync_posix.h
2453   include/grpc/impl/codegen/sync_windows.h
2454   include/grpc/impl/codegen/byte_buffer.h
2455   include/grpc/impl/codegen/byte_buffer_reader.h
2456   include/grpc/impl/codegen/compression_types.h
2457   include/grpc/impl/codegen/connectivity_state.h
2458   include/grpc/impl/codegen/grpc_types.h
2459   include/grpc/impl/codegen/propagation_bits.h
2460   include/grpc/impl/codegen/slice.h
2461   include/grpc/impl/codegen/status.h
2462 )
2463   string(REPLACE "include/" "" _path ${_hdr})
2464   get_filename_component(_path ${_path} PATH)
2465   install(FILES ${_hdr}
2466     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
2467   )
2468 endforeach()
2469
2470 endif (gRPC_BUILD_TESTS)
2471
2472 add_library(grpc_unsecure
2473   src/core/lib/surface/init.cc
2474   src/core/lib/surface/init_unsecure.cc
2475   src/core/lib/avl/avl.cc
2476   src/core/lib/backoff/backoff.cc
2477   src/core/lib/channel/channel_args.cc
2478   src/core/lib/channel/channel_stack.cc
2479   src/core/lib/channel/channel_stack_builder.cc
2480   src/core/lib/channel/channel_trace.cc
2481   src/core/lib/channel/channelz.cc
2482   src/core/lib/channel/channelz_registry.cc
2483   src/core/lib/channel/connected_channel.cc
2484   src/core/lib/channel/handshaker.cc
2485   src/core/lib/channel/handshaker_registry.cc
2486   src/core/lib/channel/status_util.cc
2487   src/core/lib/compression/compression.cc
2488   src/core/lib/compression/compression_args.cc
2489   src/core/lib/compression/compression_internal.cc
2490   src/core/lib/compression/message_compress.cc
2491   src/core/lib/compression/stream_compression.cc
2492   src/core/lib/compression/stream_compression_gzip.cc
2493   src/core/lib/compression/stream_compression_identity.cc
2494   src/core/lib/debug/stats.cc
2495   src/core/lib/debug/stats_data.cc
2496   src/core/lib/http/format_request.cc
2497   src/core/lib/http/httpcli.cc
2498   src/core/lib/http/parser.cc
2499   src/core/lib/iomgr/buffer_list.cc
2500   src/core/lib/iomgr/call_combiner.cc
2501   src/core/lib/iomgr/cfstream_handle.cc
2502   src/core/lib/iomgr/combiner.cc
2503   src/core/lib/iomgr/endpoint.cc
2504   src/core/lib/iomgr/endpoint_cfstream.cc
2505   src/core/lib/iomgr/endpoint_pair_posix.cc
2506   src/core/lib/iomgr/endpoint_pair_uv.cc
2507   src/core/lib/iomgr/endpoint_pair_windows.cc
2508   src/core/lib/iomgr/error.cc
2509   src/core/lib/iomgr/error_cfstream.cc
2510   src/core/lib/iomgr/ev_epoll1_linux.cc
2511   src/core/lib/iomgr/ev_epollex_linux.cc
2512   src/core/lib/iomgr/ev_poll_posix.cc
2513   src/core/lib/iomgr/ev_posix.cc
2514   src/core/lib/iomgr/ev_windows.cc
2515   src/core/lib/iomgr/exec_ctx.cc
2516   src/core/lib/iomgr/executor.cc
2517   src/core/lib/iomgr/fork_posix.cc
2518   src/core/lib/iomgr/fork_windows.cc
2519   src/core/lib/iomgr/gethostname_fallback.cc
2520   src/core/lib/iomgr/gethostname_host_name_max.cc
2521   src/core/lib/iomgr/gethostname_sysconf.cc
2522   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
2523   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
2524   src/core/lib/iomgr/internal_errqueue.cc
2525   src/core/lib/iomgr/iocp_windows.cc
2526   src/core/lib/iomgr/iomgr.cc
2527   src/core/lib/iomgr/iomgr_custom.cc
2528   src/core/lib/iomgr/iomgr_internal.cc
2529   src/core/lib/iomgr/iomgr_posix.cc
2530   src/core/lib/iomgr/iomgr_posix_cfstream.cc
2531   src/core/lib/iomgr/iomgr_uv.cc
2532   src/core/lib/iomgr/iomgr_windows.cc
2533   src/core/lib/iomgr/is_epollexclusive_available.cc
2534   src/core/lib/iomgr/load_file.cc
2535   src/core/lib/iomgr/lockfree_event.cc
2536   src/core/lib/iomgr/polling_entity.cc
2537   src/core/lib/iomgr/pollset.cc
2538   src/core/lib/iomgr/pollset_custom.cc
2539   src/core/lib/iomgr/pollset_set.cc
2540   src/core/lib/iomgr/pollset_set_custom.cc
2541   src/core/lib/iomgr/pollset_set_windows.cc
2542   src/core/lib/iomgr/pollset_uv.cc
2543   src/core/lib/iomgr/pollset_windows.cc
2544   src/core/lib/iomgr/resolve_address.cc
2545   src/core/lib/iomgr/resolve_address_custom.cc
2546   src/core/lib/iomgr/resolve_address_posix.cc
2547   src/core/lib/iomgr/resolve_address_windows.cc
2548   src/core/lib/iomgr/resource_quota.cc
2549   src/core/lib/iomgr/sockaddr_utils.cc
2550   src/core/lib/iomgr/socket_factory_posix.cc
2551   src/core/lib/iomgr/socket_mutator.cc
2552   src/core/lib/iomgr/socket_utils_common_posix.cc
2553   src/core/lib/iomgr/socket_utils_linux.cc
2554   src/core/lib/iomgr/socket_utils_posix.cc
2555   src/core/lib/iomgr/socket_utils_uv.cc
2556   src/core/lib/iomgr/socket_utils_windows.cc
2557   src/core/lib/iomgr/socket_windows.cc
2558   src/core/lib/iomgr/tcp_client.cc
2559   src/core/lib/iomgr/tcp_client_cfstream.cc
2560   src/core/lib/iomgr/tcp_client_custom.cc
2561   src/core/lib/iomgr/tcp_client_posix.cc
2562   src/core/lib/iomgr/tcp_client_windows.cc
2563   src/core/lib/iomgr/tcp_custom.cc
2564   src/core/lib/iomgr/tcp_posix.cc
2565   src/core/lib/iomgr/tcp_server.cc
2566   src/core/lib/iomgr/tcp_server_custom.cc
2567   src/core/lib/iomgr/tcp_server_posix.cc
2568   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
2569   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
2570   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
2571   src/core/lib/iomgr/tcp_server_windows.cc
2572   src/core/lib/iomgr/tcp_uv.cc
2573   src/core/lib/iomgr/tcp_windows.cc
2574   src/core/lib/iomgr/time_averaged_stats.cc
2575   src/core/lib/iomgr/timer.cc
2576   src/core/lib/iomgr/timer_custom.cc
2577   src/core/lib/iomgr/timer_generic.cc
2578   src/core/lib/iomgr/timer_heap.cc
2579   src/core/lib/iomgr/timer_manager.cc
2580   src/core/lib/iomgr/timer_uv.cc
2581   src/core/lib/iomgr/udp_server.cc
2582   src/core/lib/iomgr/unix_sockets_posix.cc
2583   src/core/lib/iomgr/unix_sockets_posix_noop.cc
2584   src/core/lib/iomgr/wakeup_fd_eventfd.cc
2585   src/core/lib/iomgr/wakeup_fd_nospecial.cc
2586   src/core/lib/iomgr/wakeup_fd_pipe.cc
2587   src/core/lib/iomgr/wakeup_fd_posix.cc
2588   src/core/lib/json/json.cc
2589   src/core/lib/json/json_reader.cc
2590   src/core/lib/json/json_string.cc
2591   src/core/lib/json/json_writer.cc
2592   src/core/lib/slice/b64.cc
2593   src/core/lib/slice/percent_encoding.cc
2594   src/core/lib/slice/slice.cc
2595   src/core/lib/slice/slice_buffer.cc
2596   src/core/lib/slice/slice_intern.cc
2597   src/core/lib/slice/slice_string_helpers.cc
2598   src/core/lib/surface/api_trace.cc
2599   src/core/lib/surface/byte_buffer.cc
2600   src/core/lib/surface/byte_buffer_reader.cc
2601   src/core/lib/surface/call.cc
2602   src/core/lib/surface/call_details.cc
2603   src/core/lib/surface/call_log_batch.cc
2604   src/core/lib/surface/channel.cc
2605   src/core/lib/surface/channel_init.cc
2606   src/core/lib/surface/channel_ping.cc
2607   src/core/lib/surface/channel_stack_type.cc
2608   src/core/lib/surface/completion_queue.cc
2609   src/core/lib/surface/completion_queue_factory.cc
2610   src/core/lib/surface/event_string.cc
2611   src/core/lib/surface/lame_client.cc
2612   src/core/lib/surface/metadata_array.cc
2613   src/core/lib/surface/server.cc
2614   src/core/lib/surface/validate_metadata.cc
2615   src/core/lib/surface/version.cc
2616   src/core/lib/transport/bdp_estimator.cc
2617   src/core/lib/transport/byte_stream.cc
2618   src/core/lib/transport/connectivity_state.cc
2619   src/core/lib/transport/error_utils.cc
2620   src/core/lib/transport/metadata.cc
2621   src/core/lib/transport/metadata_batch.cc
2622   src/core/lib/transport/pid_controller.cc
2623   src/core/lib/transport/static_metadata.cc
2624   src/core/lib/transport/status_conversion.cc
2625   src/core/lib/transport/status_metadata.cc
2626   src/core/lib/transport/timeout_encoding.cc
2627   src/core/lib/transport/transport.cc
2628   src/core/lib/transport/transport_op_string.cc
2629   src/core/lib/uri/uri_parser.cc
2630   src/core/lib/debug/trace.cc
2631   src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc
2632   src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc
2633   src/core/ext/transport/chttp2/transport/bin_decoder.cc
2634   src/core/ext/transport/chttp2/transport/bin_encoder.cc
2635   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
2636   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
2637   src/core/ext/transport/chttp2/transport/context_list.cc
2638   src/core/ext/transport/chttp2/transport/flow_control.cc
2639   src/core/ext/transport/chttp2/transport/frame_data.cc
2640   src/core/ext/transport/chttp2/transport/frame_goaway.cc
2641   src/core/ext/transport/chttp2/transport/frame_ping.cc
2642   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
2643   src/core/ext/transport/chttp2/transport/frame_settings.cc
2644   src/core/ext/transport/chttp2/transport/frame_window_update.cc
2645   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
2646   src/core/ext/transport/chttp2/transport/hpack_parser.cc
2647   src/core/ext/transport/chttp2/transport/hpack_table.cc
2648   src/core/ext/transport/chttp2/transport/http2_settings.cc
2649   src/core/ext/transport/chttp2/transport/huffsyms.cc
2650   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
2651   src/core/ext/transport/chttp2/transport/parsing.cc
2652   src/core/ext/transport/chttp2/transport/stream_lists.cc
2653   src/core/ext/transport/chttp2/transport/stream_map.cc
2654   src/core/ext/transport/chttp2/transport/varint.cc
2655   src/core/ext/transport/chttp2/transport/writing.cc
2656   src/core/ext/transport/chttp2/alpn/alpn.cc
2657   src/core/ext/filters/http/client/http_client_filter.cc
2658   src/core/ext/filters/http/http_filters_plugin.cc
2659   src/core/ext/filters/http/message_compress/message_compress_filter.cc
2660   src/core/ext/filters/http/server/http_server_filter.cc
2661   src/core/ext/transport/chttp2/server/chttp2_server.cc
2662   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
2663   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
2664   src/core/ext/transport/chttp2/client/authority.cc
2665   src/core/ext/transport/chttp2/client/chttp2_connector.cc
2666   src/core/ext/filters/client_channel/backup_poller.cc
2667   src/core/ext/filters/client_channel/channel_connectivity.cc
2668   src/core/ext/filters/client_channel/client_channel.cc
2669   src/core/ext/filters/client_channel/client_channel_channelz.cc
2670   src/core/ext/filters/client_channel/client_channel_factory.cc
2671   src/core/ext/filters/client_channel/client_channel_plugin.cc
2672   src/core/ext/filters/client_channel/connector.cc
2673   src/core/ext/filters/client_channel/global_subchannel_pool.cc
2674   src/core/ext/filters/client_channel/health/health_check_client.cc
2675   src/core/ext/filters/client_channel/http_connect_handshaker.cc
2676   src/core/ext/filters/client_channel/http_proxy.cc
2677   src/core/ext/filters/client_channel/lb_policy.cc
2678   src/core/ext/filters/client_channel/lb_policy_registry.cc
2679   src/core/ext/filters/client_channel/local_subchannel_pool.cc
2680   src/core/ext/filters/client_channel/parse_address.cc
2681   src/core/ext/filters/client_channel/proxy_mapper.cc
2682   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
2683   src/core/ext/filters/client_channel/resolver.cc
2684   src/core/ext/filters/client_channel/resolver_registry.cc
2685   src/core/ext/filters/client_channel/resolver_result_parsing.cc
2686   src/core/ext/filters/client_channel/resolving_lb_policy.cc
2687   src/core/ext/filters/client_channel/retry_throttle.cc
2688   src/core/ext/filters/client_channel/server_address.cc
2689   src/core/ext/filters/client_channel/service_config.cc
2690   src/core/ext/filters/client_channel/subchannel.cc
2691   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
2692   src/core/ext/filters/deadline/deadline_filter.cc
2693   src/core/ext/filters/client_channel/health/health.pb.c
2694   third_party/nanopb/pb_common.c
2695   third_party/nanopb/pb_decode.c
2696   third_party/nanopb/pb_encode.c
2697   src/core/ext/transport/inproc/inproc_plugin.cc
2698   src/core/ext/transport/inproc/inproc_transport.cc
2699   src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc
2700   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc
2701   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc
2702   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc
2703   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc
2704   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc
2705   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc
2706   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc
2707   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc
2708   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc
2709   src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc
2710   src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc
2711   src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc
2712   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
2713   src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc
2714   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc
2715   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.cc
2716   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc
2717   src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc
2718   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.c
2719   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.c
2720   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
2721   src/core/ext/filters/client_channel/lb_policy/xds/xds.cc
2722   src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc
2723   src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc
2724   src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc
2725   src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
2726   src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
2727   src/core/ext/filters/census/grpc_context.cc
2728   src/core/ext/filters/max_age/max_age_filter.cc
2729   src/core/ext/filters/message_size/message_size_filter.cc
2730   src/core/ext/filters/http/client_authority_filter.cc
2731   src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc
2732   src/core/ext/filters/workarounds/workaround_utils.cc
2733   src/core/plugin_registry/grpc_unsecure_plugin_registry.cc
2734 )
2735
2736 if(WIN32 AND MSVC)
2737   set_target_properties(grpc_unsecure PROPERTIES COMPILE_PDB_NAME "grpc_unsecure"
2738     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2739   )
2740   if (gRPC_INSTALL)
2741     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_unsecure.pdb
2742       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2743     )
2744   endif()
2745 endif()
2746
2747
2748 target_include_directories(grpc_unsecure
2749   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2750   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2751   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2752   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2753   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2754   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2755   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2756   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2757   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2758   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2759 )
2760   # avoid dependency on libstdc++
2761   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2762     set_target_properties(grpc_unsecure PROPERTIES LINKER_LANGUAGE C)
2763     # only use the flags for C++ source files
2764     target_compile_options(grpc_unsecure PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2765   endif()
2766 target_link_libraries(grpc_unsecure
2767   ${_gRPC_BASELIB_LIBRARIES}
2768   ${_gRPC_ZLIB_LIBRARIES}
2769   ${_gRPC_CARES_LIBRARIES}
2770   ${_gRPC_ADDRESS_SORTING_LIBRARIES}
2771   ${_gRPC_ALLTARGETS_LIBRARIES}
2772   gpr
2773 )
2774
2775 foreach(_hdr
2776   include/grpc/impl/codegen/byte_buffer.h
2777   include/grpc/impl/codegen/byte_buffer_reader.h
2778   include/grpc/impl/codegen/compression_types.h
2779   include/grpc/impl/codegen/connectivity_state.h
2780   include/grpc/impl/codegen/grpc_types.h
2781   include/grpc/impl/codegen/propagation_bits.h
2782   include/grpc/impl/codegen/slice.h
2783   include/grpc/impl/codegen/status.h
2784   include/grpc/impl/codegen/atm.h
2785   include/grpc/impl/codegen/atm_gcc_atomic.h
2786   include/grpc/impl/codegen/atm_gcc_sync.h
2787   include/grpc/impl/codegen/atm_windows.h
2788   include/grpc/impl/codegen/fork.h
2789   include/grpc/impl/codegen/gpr_slice.h
2790   include/grpc/impl/codegen/gpr_types.h
2791   include/grpc/impl/codegen/log.h
2792   include/grpc/impl/codegen/port_platform.h
2793   include/grpc/impl/codegen/sync.h
2794   include/grpc/impl/codegen/sync_custom.h
2795   include/grpc/impl/codegen/sync_generic.h
2796   include/grpc/impl/codegen/sync_posix.h
2797   include/grpc/impl/codegen/sync_windows.h
2798   include/grpc/byte_buffer.h
2799   include/grpc/byte_buffer_reader.h
2800   include/grpc/compression.h
2801   include/grpc/fork.h
2802   include/grpc/grpc.h
2803   include/grpc/grpc_posix.h
2804   include/grpc/grpc_security_constants.h
2805   include/grpc/load_reporting.h
2806   include/grpc/slice.h
2807   include/grpc/slice_buffer.h
2808   include/grpc/status.h
2809   include/grpc/support/workaround_list.h
2810   include/grpc/census.h
2811 )
2812   string(REPLACE "include/" "" _path ${_hdr})
2813   get_filename_component(_path ${_path} PATH)
2814   install(FILES ${_hdr}
2815     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
2816   )
2817 endforeach()
2818
2819
2820 if (gRPC_INSTALL)
2821   install(TARGETS grpc_unsecure EXPORT gRPCTargets
2822     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
2823     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
2824     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
2825   )
2826 endif()
2827
2828 if (gRPC_BUILD_TESTS)
2829
2830 add_library(reconnect_server
2831   test/core/util/reconnect_server.cc
2832 )
2833
2834 if(WIN32 AND MSVC)
2835   set_target_properties(reconnect_server PROPERTIES COMPILE_PDB_NAME "reconnect_server"
2836     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2837   )
2838   if (gRPC_INSTALL)
2839     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/reconnect_server.pdb
2840       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2841     )
2842   endif()
2843 endif()
2844
2845
2846 target_include_directories(reconnect_server
2847   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2848   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2849   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2850   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2851   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2852   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2853   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2854   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2855   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2856   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2857 )
2858   # avoid dependency on libstdc++
2859   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2860     set_target_properties(reconnect_server PROPERTIES LINKER_LANGUAGE C)
2861     # only use the flags for C++ source files
2862     target_compile_options(reconnect_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2863   endif()
2864 target_link_libraries(reconnect_server
2865   ${_gRPC_ALLTARGETS_LIBRARIES}
2866   test_tcp_server
2867   grpc_test_util
2868   grpc
2869   gpr
2870 )
2871
2872
2873 endif (gRPC_BUILD_TESTS)
2874 if (gRPC_BUILD_TESTS)
2875
2876 add_library(test_tcp_server
2877   test/core/util/test_tcp_server.cc
2878 )
2879
2880 if(WIN32 AND MSVC)
2881   set_target_properties(test_tcp_server PROPERTIES COMPILE_PDB_NAME "test_tcp_server"
2882     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2883   )
2884   if (gRPC_INSTALL)
2885     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/test_tcp_server.pdb
2886       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2887     )
2888   endif()
2889 endif()
2890
2891
2892 target_include_directories(test_tcp_server
2893   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2894   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2895   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2896   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2897   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2898   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2899   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2900   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2901   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2902   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2903 )
2904   # avoid dependency on libstdc++
2905   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2906     set_target_properties(test_tcp_server PROPERTIES LINKER_LANGUAGE C)
2907     # only use the flags for C++ source files
2908     target_compile_options(test_tcp_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2909   endif()
2910 target_link_libraries(test_tcp_server
2911   ${_gRPC_ALLTARGETS_LIBRARIES}
2912   grpc_test_util
2913   grpc
2914   gpr
2915 )
2916
2917
2918 endif (gRPC_BUILD_TESTS)
2919 if (gRPC_BUILD_TESTS)
2920
2921 if (gRPC_BUILD_CODEGEN)
2922 add_library(bm_callback_test_service_impl
2923   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
2924   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
2925   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
2926   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
2927   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_mock.grpc.pb.h
2928   test/cpp/microbenchmarks/callback_test_service.cc
2929 )
2930
2931 if(WIN32 AND MSVC)
2932   set_target_properties(bm_callback_test_service_impl PROPERTIES COMPILE_PDB_NAME "bm_callback_test_service_impl"
2933     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2934   )
2935   if (gRPC_INSTALL)
2936     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bm_callback_test_service_impl.pdb
2937       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2938     )
2939   endif()
2940 endif()
2941
2942 protobuf_generate_grpc_cpp(
2943   src/proto/grpc/testing/echo.proto
2944 )
2945
2946 target_include_directories(bm_callback_test_service_impl
2947   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2948   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2949   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2950   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2951   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2952   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2953   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2954   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2955   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2956   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2957   PRIVATE third_party/googletest/googletest/include
2958   PRIVATE third_party/googletest/googletest
2959   PRIVATE third_party/googletest/googlemock/include
2960   PRIVATE third_party/googletest/googlemock
2961   PRIVATE ${_gRPC_PROTO_GENS_DIR}
2962 )
2963 target_link_libraries(bm_callback_test_service_impl
2964   ${_gRPC_PROTOBUF_LIBRARIES}
2965   ${_gRPC_ALLTARGETS_LIBRARIES}
2966   grpc_benchmark
2967   ${_gRPC_BENCHMARK_LIBRARIES}
2968   grpc++_test_util_unsecure
2969   grpc_test_util_unsecure
2970   grpc++_unsecure
2971   grpc_unsecure
2972   gpr
2973   grpc++_test_config
2974   ${_gRPC_GFLAGS_LIBRARIES}
2975 )
2976
2977 endif (gRPC_BUILD_CODEGEN)
2978
2979 endif (gRPC_BUILD_TESTS)
2980 if (gRPC_BUILD_TESTS)
2981
2982 add_library(dns_test_util
2983   test/cpp/naming/dns_test_util.cc
2984 )
2985
2986 if(WIN32 AND MSVC)
2987   set_target_properties(dns_test_util PROPERTIES COMPILE_PDB_NAME "dns_test_util"
2988     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2989   )
2990   if (gRPC_INSTALL)
2991     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dns_test_util.pdb
2992       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2993     )
2994   endif()
2995 endif()
2996
2997
2998 target_include_directories(dns_test_util
2999   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3000   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3001   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3002   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3003   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3004   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3005   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3006   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3007   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3008   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3009   PRIVATE third_party/googletest/googletest/include
3010   PRIVATE third_party/googletest/googletest
3011   PRIVATE third_party/googletest/googlemock/include
3012   PRIVATE third_party/googletest/googlemock
3013   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3014 )
3015 target_link_libraries(dns_test_util
3016   ${_gRPC_PROTOBUF_LIBRARIES}
3017   ${_gRPC_ALLTARGETS_LIBRARIES}
3018   ${_gRPC_GFLAGS_LIBRARIES}
3019 )
3020
3021
3022 endif (gRPC_BUILD_TESTS)
3023
3024 add_library(grpc++
3025   src/cpp/client/insecure_credentials.cc
3026   src/cpp/client/secure_credentials.cc
3027   src/cpp/common/auth_property_iterator.cc
3028   src/cpp/common/secure_auth_context.cc
3029   src/cpp/common/secure_channel_arguments.cc
3030   src/cpp/common/secure_create_auth_context.cc
3031   src/cpp/server/insecure_server_credentials.cc
3032   src/cpp/server/secure_server_credentials.cc
3033   src/cpp/client/channel_cc.cc
3034   src/cpp/client/client_context.cc
3035   src/cpp/client/client_interceptor.cc
3036   src/cpp/client/create_channel.cc
3037   src/cpp/client/create_channel_internal.cc
3038   src/cpp/client/create_channel_posix.cc
3039   src/cpp/client/credentials_cc.cc
3040   src/cpp/client/generic_stub.cc
3041   src/cpp/common/alarm.cc
3042   src/cpp/common/channel_arguments.cc
3043   src/cpp/common/channel_filter.cc
3044   src/cpp/common/completion_queue_cc.cc
3045   src/cpp/common/core_codegen.cc
3046   src/cpp/common/resource_quota_cc.cc
3047   src/cpp/common/rpc_method.cc
3048   src/cpp/common/validate_service_config.cc
3049   src/cpp/common/version_cc.cc
3050   src/cpp/server/async_generic_service.cc
3051   src/cpp/server/channel_argument_option.cc
3052   src/cpp/server/create_default_thread_pool.cc
3053   src/cpp/server/dynamic_thread_pool.cc
3054   src/cpp/server/external_connection_acceptor_impl.cc
3055   src/cpp/server/health/default_health_check_service.cc
3056   src/cpp/server/health/health_check_service.cc
3057   src/cpp/server/health/health_check_service_server_builder_option.cc
3058   src/cpp/server/server_builder.cc
3059   src/cpp/server/server_cc.cc
3060   src/cpp/server/server_context.cc
3061   src/cpp/server/server_credentials.cc
3062   src/cpp/server/server_posix.cc
3063   src/cpp/thread_manager/thread_manager.cc
3064   src/cpp/util/byte_buffer_cc.cc
3065   src/cpp/util/status.cc
3066   src/cpp/util/string_ref.cc
3067   src/cpp/util/time_cc.cc
3068   src/core/ext/filters/client_channel/health/health.pb.c
3069   third_party/nanopb/pb_common.c
3070   third_party/nanopb/pb_decode.c
3071   third_party/nanopb/pb_encode.c
3072   src/cpp/codegen/codegen_init.cc
3073 )
3074
3075 if(WIN32 AND MSVC)
3076   set_target_properties(grpc++ PROPERTIES COMPILE_PDB_NAME "grpc++"
3077     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3078   )
3079   if (gRPC_INSTALL)
3080     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++.pdb
3081       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3082     )
3083   endif()
3084 endif()
3085
3086
3087 target_include_directories(grpc++
3088   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3089   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3090   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3091   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3092   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3093   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3094   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3095   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3096   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3097   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3098   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3099 )
3100 target_link_libraries(grpc++
3101   ${_gRPC_BASELIB_LIBRARIES}
3102   ${_gRPC_SSL_LIBRARIES}
3103   ${_gRPC_PROTOBUF_LIBRARIES}
3104   ${_gRPC_ALLTARGETS_LIBRARIES}
3105   grpc
3106   gpr
3107 )
3108
3109 foreach(_hdr
3110   include/grpc++/alarm.h
3111   include/grpc++/channel.h
3112   include/grpc++/client_context.h
3113   include/grpc++/completion_queue.h
3114   include/grpc++/create_channel.h
3115   include/grpc++/create_channel_posix.h
3116   include/grpc++/ext/health_check_service_server_builder_option.h
3117   include/grpc++/generic/async_generic_service.h
3118   include/grpc++/generic/generic_stub.h
3119   include/grpc++/grpc++.h
3120   include/grpc++/health_check_service_interface.h
3121   include/grpc++/impl/call.h
3122   include/grpc++/impl/channel_argument_option.h
3123   include/grpc++/impl/client_unary_call.h
3124   include/grpc++/impl/codegen/core_codegen.h
3125   include/grpc++/impl/grpc_library.h
3126   include/grpc++/impl/method_handler_impl.h
3127   include/grpc++/impl/rpc_method.h
3128   include/grpc++/impl/rpc_service_method.h
3129   include/grpc++/impl/serialization_traits.h
3130   include/grpc++/impl/server_builder_option.h
3131   include/grpc++/impl/server_builder_plugin.h
3132   include/grpc++/impl/server_initializer.h
3133   include/grpc++/impl/service_type.h
3134   include/grpc++/resource_quota.h
3135   include/grpc++/security/auth_context.h
3136   include/grpc++/security/auth_metadata_processor.h
3137   include/grpc++/security/credentials.h
3138   include/grpc++/security/server_credentials.h
3139   include/grpc++/server.h
3140   include/grpc++/server_builder.h
3141   include/grpc++/server_context.h
3142   include/grpc++/server_posix.h
3143   include/grpc++/support/async_stream.h
3144   include/grpc++/support/async_unary_call.h
3145   include/grpc++/support/byte_buffer.h
3146   include/grpc++/support/channel_arguments.h
3147   include/grpc++/support/config.h
3148   include/grpc++/support/slice.h
3149   include/grpc++/support/status.h
3150   include/grpc++/support/status_code_enum.h
3151   include/grpc++/support/string_ref.h
3152   include/grpc++/support/stub_options.h
3153   include/grpc++/support/sync_stream.h
3154   include/grpc++/support/time.h
3155   include/grpcpp/alarm.h
3156   include/grpcpp/alarm_impl.h
3157   include/grpcpp/channel.h
3158   include/grpcpp/channel_impl.h
3159   include/grpcpp/client_context.h
3160   include/grpcpp/completion_queue.h
3161   include/grpcpp/create_channel.h
3162   include/grpcpp/create_channel_impl.h
3163   include/grpcpp/create_channel_posix.h
3164   include/grpcpp/create_channel_posix_impl.h
3165   include/grpcpp/ext/health_check_service_server_builder_option.h
3166   include/grpcpp/generic/async_generic_service.h
3167   include/grpcpp/generic/generic_stub.h
3168   include/grpcpp/generic/generic_stub_impl.h
3169   include/grpcpp/grpcpp.h
3170   include/grpcpp/health_check_service_interface.h
3171   include/grpcpp/health_check_service_interface_impl.h
3172   include/grpcpp/impl/call.h
3173   include/grpcpp/impl/channel_argument_option.h
3174   include/grpcpp/impl/client_unary_call.h
3175   include/grpcpp/impl/codegen/core_codegen.h
3176   include/grpcpp/impl/grpc_library.h
3177   include/grpcpp/impl/method_handler_impl.h
3178   include/grpcpp/impl/rpc_method.h
3179   include/grpcpp/impl/rpc_service_method.h
3180   include/grpcpp/impl/serialization_traits.h
3181   include/grpcpp/impl/server_builder_option.h
3182   include/grpcpp/impl/server_builder_option_impl.h
3183   include/grpcpp/impl/server_builder_plugin.h
3184   include/grpcpp/impl/server_initializer.h
3185   include/grpcpp/impl/server_initializer_impl.h
3186   include/grpcpp/impl/service_type.h
3187   include/grpcpp/resource_quota.h
3188   include/grpcpp/resource_quota_impl.h
3189   include/grpcpp/security/auth_context.h
3190   include/grpcpp/security/auth_metadata_processor.h
3191   include/grpcpp/security/auth_metadata_processor_impl.h
3192   include/grpcpp/security/credentials.h
3193   include/grpcpp/security/credentials_impl.h
3194   include/grpcpp/security/server_credentials.h
3195   include/grpcpp/security/server_credentials_impl.h
3196   include/grpcpp/server.h
3197   include/grpcpp/server_builder.h
3198   include/grpcpp/server_builder_impl.h
3199   include/grpcpp/server_context.h
3200   include/grpcpp/server_impl.h
3201   include/grpcpp/server_posix.h
3202   include/grpcpp/server_posix_impl.h
3203   include/grpcpp/support/async_stream.h
3204   include/grpcpp/support/async_unary_call.h
3205   include/grpcpp/support/byte_buffer.h
3206   include/grpcpp/support/channel_arguments.h
3207   include/grpcpp/support/channel_arguments_impl.h
3208   include/grpcpp/support/client_callback.h
3209   include/grpcpp/support/client_interceptor.h
3210   include/grpcpp/support/config.h
3211   include/grpcpp/support/interceptor.h
3212   include/grpcpp/support/message_allocator.h
3213   include/grpcpp/support/proto_buffer_reader.h
3214   include/grpcpp/support/proto_buffer_writer.h
3215   include/grpcpp/support/server_callback.h
3216   include/grpcpp/support/server_interceptor.h
3217   include/grpcpp/support/slice.h
3218   include/grpcpp/support/status.h
3219   include/grpcpp/support/status_code_enum.h
3220   include/grpcpp/support/string_ref.h
3221   include/grpcpp/support/stub_options.h
3222   include/grpcpp/support/sync_stream.h
3223   include/grpcpp/support/time.h
3224   include/grpcpp/support/validate_service_config.h
3225   include/grpc/support/alloc.h
3226   include/grpc/support/atm.h
3227   include/grpc/support/atm_gcc_atomic.h
3228   include/grpc/support/atm_gcc_sync.h
3229   include/grpc/support/atm_windows.h
3230   include/grpc/support/cpu.h
3231   include/grpc/support/log.h
3232   include/grpc/support/log_windows.h
3233   include/grpc/support/port_platform.h
3234   include/grpc/support/string_util.h
3235   include/grpc/support/sync.h
3236   include/grpc/support/sync_custom.h
3237   include/grpc/support/sync_generic.h
3238   include/grpc/support/sync_posix.h
3239   include/grpc/support/sync_windows.h
3240   include/grpc/support/thd_id.h
3241   include/grpc/support/time.h
3242   include/grpc/impl/codegen/atm.h
3243   include/grpc/impl/codegen/atm_gcc_atomic.h
3244   include/grpc/impl/codegen/atm_gcc_sync.h
3245   include/grpc/impl/codegen/atm_windows.h
3246   include/grpc/impl/codegen/fork.h
3247   include/grpc/impl/codegen/gpr_slice.h
3248   include/grpc/impl/codegen/gpr_types.h
3249   include/grpc/impl/codegen/log.h
3250   include/grpc/impl/codegen/port_platform.h
3251   include/grpc/impl/codegen/sync.h
3252   include/grpc/impl/codegen/sync_custom.h
3253   include/grpc/impl/codegen/sync_generic.h
3254   include/grpc/impl/codegen/sync_posix.h
3255   include/grpc/impl/codegen/sync_windows.h
3256   include/grpc/byte_buffer.h
3257   include/grpc/byte_buffer_reader.h
3258   include/grpc/compression.h
3259   include/grpc/fork.h
3260   include/grpc/grpc.h
3261   include/grpc/grpc_posix.h
3262   include/grpc/grpc_security_constants.h
3263   include/grpc/load_reporting.h
3264   include/grpc/slice.h
3265   include/grpc/slice_buffer.h
3266   include/grpc/status.h
3267   include/grpc/support/workaround_list.h
3268   include/grpc/impl/codegen/byte_buffer.h
3269   include/grpc/impl/codegen/byte_buffer_reader.h
3270   include/grpc/impl/codegen/compression_types.h
3271   include/grpc/impl/codegen/connectivity_state.h
3272   include/grpc/impl/codegen/grpc_types.h
3273   include/grpc/impl/codegen/propagation_bits.h
3274   include/grpc/impl/codegen/slice.h
3275   include/grpc/impl/codegen/status.h
3276   include/grpc++/impl/codegen/async_stream.h
3277   include/grpc++/impl/codegen/async_unary_call.h
3278   include/grpc++/impl/codegen/byte_buffer.h
3279   include/grpc++/impl/codegen/call.h
3280   include/grpc++/impl/codegen/call_hook.h
3281   include/grpc++/impl/codegen/channel_interface.h
3282   include/grpc++/impl/codegen/client_context.h
3283   include/grpc++/impl/codegen/client_unary_call.h
3284   include/grpc++/impl/codegen/completion_queue.h
3285   include/grpc++/impl/codegen/completion_queue_tag.h
3286   include/grpc++/impl/codegen/config.h
3287   include/grpc++/impl/codegen/core_codegen_interface.h
3288   include/grpc++/impl/codegen/create_auth_context.h
3289   include/grpc++/impl/codegen/grpc_library.h
3290   include/grpc++/impl/codegen/metadata_map.h
3291   include/grpc++/impl/codegen/method_handler_impl.h
3292   include/grpc++/impl/codegen/rpc_method.h
3293   include/grpc++/impl/codegen/rpc_service_method.h
3294   include/grpc++/impl/codegen/security/auth_context.h
3295   include/grpc++/impl/codegen/serialization_traits.h
3296   include/grpc++/impl/codegen/server_context.h
3297   include/grpc++/impl/codegen/server_interface.h
3298   include/grpc++/impl/codegen/service_type.h
3299   include/grpc++/impl/codegen/slice.h
3300   include/grpc++/impl/codegen/status.h
3301   include/grpc++/impl/codegen/status_code_enum.h
3302   include/grpc++/impl/codegen/string_ref.h
3303   include/grpc++/impl/codegen/stub_options.h
3304   include/grpc++/impl/codegen/sync_stream.h
3305   include/grpc++/impl/codegen/time.h
3306   include/grpcpp/impl/codegen/async_generic_service.h
3307   include/grpcpp/impl/codegen/async_stream.h
3308   include/grpcpp/impl/codegen/async_unary_call.h
3309   include/grpcpp/impl/codegen/byte_buffer.h
3310   include/grpcpp/impl/codegen/call.h
3311   include/grpcpp/impl/codegen/call_hook.h
3312   include/grpcpp/impl/codegen/call_op_set.h
3313   include/grpcpp/impl/codegen/call_op_set_interface.h
3314   include/grpcpp/impl/codegen/callback_common.h
3315   include/grpcpp/impl/codegen/channel_interface.h
3316   include/grpcpp/impl/codegen/client_callback.h
3317   include/grpcpp/impl/codegen/client_context.h
3318   include/grpcpp/impl/codegen/client_context_impl.h
3319   include/grpcpp/impl/codegen/client_interceptor.h
3320   include/grpcpp/impl/codegen/client_unary_call.h
3321   include/grpcpp/impl/codegen/completion_queue.h
3322   include/grpcpp/impl/codegen/completion_queue_impl.h
3323   include/grpcpp/impl/codegen/completion_queue_tag.h
3324   include/grpcpp/impl/codegen/config.h
3325   include/grpcpp/impl/codegen/core_codegen_interface.h
3326   include/grpcpp/impl/codegen/create_auth_context.h
3327   include/grpcpp/impl/codegen/grpc_library.h
3328   include/grpcpp/impl/codegen/intercepted_channel.h
3329   include/grpcpp/impl/codegen/interceptor.h
3330   include/grpcpp/impl/codegen/interceptor_common.h
3331   include/grpcpp/impl/codegen/message_allocator.h
3332   include/grpcpp/impl/codegen/metadata_map.h
3333   include/grpcpp/impl/codegen/method_handler_impl.h
3334   include/grpcpp/impl/codegen/rpc_method.h
3335   include/grpcpp/impl/codegen/rpc_service_method.h
3336   include/grpcpp/impl/codegen/security/auth_context.h
3337   include/grpcpp/impl/codegen/serialization_traits.h
3338   include/grpcpp/impl/codegen/server_callback.h
3339   include/grpcpp/impl/codegen/server_context.h
3340   include/grpcpp/impl/codegen/server_context_impl.h
3341   include/grpcpp/impl/codegen/server_interceptor.h
3342   include/grpcpp/impl/codegen/server_interface.h
3343   include/grpcpp/impl/codegen/service_type.h
3344   include/grpcpp/impl/codegen/slice.h
3345   include/grpcpp/impl/codegen/status.h
3346   include/grpcpp/impl/codegen/status_code_enum.h
3347   include/grpcpp/impl/codegen/string_ref.h
3348   include/grpcpp/impl/codegen/stub_options.h
3349   include/grpcpp/impl/codegen/sync_stream.h
3350   include/grpcpp/impl/codegen/time.h
3351   include/grpcpp/impl/codegen/sync.h
3352   include/grpc++/impl/codegen/proto_utils.h
3353   include/grpcpp/impl/codegen/proto_buffer_reader.h
3354   include/grpcpp/impl/codegen/proto_buffer_writer.h
3355   include/grpcpp/impl/codegen/proto_utils.h
3356   include/grpc++/impl/codegen/config_protobuf.h
3357   include/grpcpp/impl/codegen/config_protobuf.h
3358 )
3359   string(REPLACE "include/" "" _path ${_hdr})
3360   get_filename_component(_path ${_path} PATH)
3361   install(FILES ${_hdr}
3362     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3363   )
3364 endforeach()
3365
3366
3367 if (gRPC_INSTALL)
3368   install(TARGETS grpc++ EXPORT gRPCTargets
3369     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
3370     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
3371     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
3372   )
3373 endif()
3374
3375 if (gRPC_BUILD_TESTS)
3376
3377 if (gRPC_BUILD_CODEGEN)
3378 add_library(grpc++_core_stats
3379   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.pb.cc
3380   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.grpc.pb.cc
3381   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.pb.h
3382   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.grpc.pb.h
3383   src/cpp/util/core_stats.cc
3384 )
3385
3386 if(WIN32 AND MSVC)
3387   set_target_properties(grpc++_core_stats PROPERTIES COMPILE_PDB_NAME "grpc++_core_stats"
3388     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3389   )
3390   if (gRPC_INSTALL)
3391     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_core_stats.pdb
3392       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3393     )
3394   endif()
3395 endif()
3396
3397 protobuf_generate_grpc_cpp(
3398   src/proto/grpc/core/stats.proto
3399 )
3400
3401 target_include_directories(grpc++_core_stats
3402   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3403   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3404   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3405   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3406   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3407   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3408   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3409   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3410   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3411   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3412   PRIVATE third_party/googletest/googletest/include
3413   PRIVATE third_party/googletest/googletest
3414   PRIVATE third_party/googletest/googlemock/include
3415   PRIVATE third_party/googletest/googlemock
3416   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3417 )
3418 target_link_libraries(grpc++_core_stats
3419   ${_gRPC_PROTOBUF_LIBRARIES}
3420   ${_gRPC_ALLTARGETS_LIBRARIES}
3421   grpc++
3422   ${_gRPC_GFLAGS_LIBRARIES}
3423 )
3424
3425 endif (gRPC_BUILD_CODEGEN)
3426
3427 endif (gRPC_BUILD_TESTS)
3428
3429 add_library(grpc++_cronet
3430   src/cpp/client/cronet_credentials.cc
3431   src/cpp/client/insecure_credentials.cc
3432   src/cpp/common/insecure_create_auth_context.cc
3433   src/cpp/server/insecure_server_credentials.cc
3434   src/cpp/client/channel_cc.cc
3435   src/cpp/client/client_context.cc
3436   src/cpp/client/client_interceptor.cc
3437   src/cpp/client/create_channel.cc
3438   src/cpp/client/create_channel_internal.cc
3439   src/cpp/client/create_channel_posix.cc
3440   src/cpp/client/credentials_cc.cc
3441   src/cpp/client/generic_stub.cc
3442   src/cpp/common/alarm.cc
3443   src/cpp/common/channel_arguments.cc
3444   src/cpp/common/channel_filter.cc
3445   src/cpp/common/completion_queue_cc.cc
3446   src/cpp/common/core_codegen.cc
3447   src/cpp/common/resource_quota_cc.cc
3448   src/cpp/common/rpc_method.cc
3449   src/cpp/common/validate_service_config.cc
3450   src/cpp/common/version_cc.cc
3451   src/cpp/server/async_generic_service.cc
3452   src/cpp/server/channel_argument_option.cc
3453   src/cpp/server/create_default_thread_pool.cc
3454   src/cpp/server/dynamic_thread_pool.cc
3455   src/cpp/server/external_connection_acceptor_impl.cc
3456   src/cpp/server/health/default_health_check_service.cc
3457   src/cpp/server/health/health_check_service.cc
3458   src/cpp/server/health/health_check_service_server_builder_option.cc
3459   src/cpp/server/server_builder.cc
3460   src/cpp/server/server_cc.cc
3461   src/cpp/server/server_context.cc
3462   src/cpp/server/server_credentials.cc
3463   src/cpp/server/server_posix.cc
3464   src/cpp/thread_manager/thread_manager.cc
3465   src/cpp/util/byte_buffer_cc.cc
3466   src/cpp/util/status.cc
3467   src/cpp/util/string_ref.cc
3468   src/cpp/util/time_cc.cc
3469   src/core/ext/filters/client_channel/health/health.pb.c
3470   third_party/nanopb/pb_common.c
3471   third_party/nanopb/pb_decode.c
3472   third_party/nanopb/pb_encode.c
3473   src/cpp/codegen/codegen_init.cc
3474   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
3475   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
3476   src/core/ext/transport/chttp2/client/authority.cc
3477   src/core/ext/transport/chttp2/client/chttp2_connector.cc
3478   src/core/ext/transport/chttp2/transport/bin_decoder.cc
3479   src/core/ext/transport/chttp2/transport/bin_encoder.cc
3480   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
3481   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
3482   src/core/ext/transport/chttp2/transport/context_list.cc
3483   src/core/ext/transport/chttp2/transport/flow_control.cc
3484   src/core/ext/transport/chttp2/transport/frame_data.cc
3485   src/core/ext/transport/chttp2/transport/frame_goaway.cc
3486   src/core/ext/transport/chttp2/transport/frame_ping.cc
3487   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
3488   src/core/ext/transport/chttp2/transport/frame_settings.cc
3489   src/core/ext/transport/chttp2/transport/frame_window_update.cc
3490   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
3491   src/core/ext/transport/chttp2/transport/hpack_parser.cc
3492   src/core/ext/transport/chttp2/transport/hpack_table.cc
3493   src/core/ext/transport/chttp2/transport/http2_settings.cc
3494   src/core/ext/transport/chttp2/transport/huffsyms.cc
3495   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
3496   src/core/ext/transport/chttp2/transport/parsing.cc
3497   src/core/ext/transport/chttp2/transport/stream_lists.cc
3498   src/core/ext/transport/chttp2/transport/stream_map.cc
3499   src/core/ext/transport/chttp2/transport/varint.cc
3500   src/core/ext/transport/chttp2/transport/writing.cc
3501   src/core/lib/avl/avl.cc
3502   src/core/lib/backoff/backoff.cc
3503   src/core/lib/channel/channel_args.cc
3504   src/core/lib/channel/channel_stack.cc
3505   src/core/lib/channel/channel_stack_builder.cc
3506   src/core/lib/channel/channel_trace.cc
3507   src/core/lib/channel/channelz.cc
3508   src/core/lib/channel/channelz_registry.cc
3509   src/core/lib/channel/connected_channel.cc
3510   src/core/lib/channel/handshaker.cc
3511   src/core/lib/channel/handshaker_registry.cc
3512   src/core/lib/channel/status_util.cc
3513   src/core/lib/compression/compression.cc
3514   src/core/lib/compression/compression_args.cc
3515   src/core/lib/compression/compression_internal.cc
3516   src/core/lib/compression/message_compress.cc
3517   src/core/lib/compression/stream_compression.cc
3518   src/core/lib/compression/stream_compression_gzip.cc
3519   src/core/lib/compression/stream_compression_identity.cc
3520   src/core/lib/debug/stats.cc
3521   src/core/lib/debug/stats_data.cc
3522   src/core/lib/http/format_request.cc
3523   src/core/lib/http/httpcli.cc
3524   src/core/lib/http/parser.cc
3525   src/core/lib/iomgr/buffer_list.cc
3526   src/core/lib/iomgr/call_combiner.cc
3527   src/core/lib/iomgr/cfstream_handle.cc
3528   src/core/lib/iomgr/combiner.cc
3529   src/core/lib/iomgr/endpoint.cc
3530   src/core/lib/iomgr/endpoint_cfstream.cc
3531   src/core/lib/iomgr/endpoint_pair_posix.cc
3532   src/core/lib/iomgr/endpoint_pair_uv.cc
3533   src/core/lib/iomgr/endpoint_pair_windows.cc
3534   src/core/lib/iomgr/error.cc
3535   src/core/lib/iomgr/error_cfstream.cc
3536   src/core/lib/iomgr/ev_epoll1_linux.cc
3537   src/core/lib/iomgr/ev_epollex_linux.cc
3538   src/core/lib/iomgr/ev_poll_posix.cc
3539   src/core/lib/iomgr/ev_posix.cc
3540   src/core/lib/iomgr/ev_windows.cc
3541   src/core/lib/iomgr/exec_ctx.cc
3542   src/core/lib/iomgr/executor.cc
3543   src/core/lib/iomgr/fork_posix.cc
3544   src/core/lib/iomgr/fork_windows.cc
3545   src/core/lib/iomgr/gethostname_fallback.cc
3546   src/core/lib/iomgr/gethostname_host_name_max.cc
3547   src/core/lib/iomgr/gethostname_sysconf.cc
3548   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
3549   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
3550   src/core/lib/iomgr/internal_errqueue.cc
3551   src/core/lib/iomgr/iocp_windows.cc
3552   src/core/lib/iomgr/iomgr.cc
3553   src/core/lib/iomgr/iomgr_custom.cc
3554   src/core/lib/iomgr/iomgr_internal.cc
3555   src/core/lib/iomgr/iomgr_posix.cc
3556   src/core/lib/iomgr/iomgr_posix_cfstream.cc
3557   src/core/lib/iomgr/iomgr_uv.cc
3558   src/core/lib/iomgr/iomgr_windows.cc
3559   src/core/lib/iomgr/is_epollexclusive_available.cc
3560   src/core/lib/iomgr/load_file.cc
3561   src/core/lib/iomgr/lockfree_event.cc
3562   src/core/lib/iomgr/polling_entity.cc
3563   src/core/lib/iomgr/pollset.cc
3564   src/core/lib/iomgr/pollset_custom.cc
3565   src/core/lib/iomgr/pollset_set.cc
3566   src/core/lib/iomgr/pollset_set_custom.cc
3567   src/core/lib/iomgr/pollset_set_windows.cc
3568   src/core/lib/iomgr/pollset_uv.cc
3569   src/core/lib/iomgr/pollset_windows.cc
3570   src/core/lib/iomgr/resolve_address.cc
3571   src/core/lib/iomgr/resolve_address_custom.cc
3572   src/core/lib/iomgr/resolve_address_posix.cc
3573   src/core/lib/iomgr/resolve_address_windows.cc
3574   src/core/lib/iomgr/resource_quota.cc
3575   src/core/lib/iomgr/sockaddr_utils.cc
3576   src/core/lib/iomgr/socket_factory_posix.cc
3577   src/core/lib/iomgr/socket_mutator.cc
3578   src/core/lib/iomgr/socket_utils_common_posix.cc
3579   src/core/lib/iomgr/socket_utils_linux.cc
3580   src/core/lib/iomgr/socket_utils_posix.cc
3581   src/core/lib/iomgr/socket_utils_uv.cc
3582   src/core/lib/iomgr/socket_utils_windows.cc
3583   src/core/lib/iomgr/socket_windows.cc
3584   src/core/lib/iomgr/tcp_client.cc
3585   src/core/lib/iomgr/tcp_client_cfstream.cc
3586   src/core/lib/iomgr/tcp_client_custom.cc
3587   src/core/lib/iomgr/tcp_client_posix.cc
3588   src/core/lib/iomgr/tcp_client_windows.cc
3589   src/core/lib/iomgr/tcp_custom.cc
3590   src/core/lib/iomgr/tcp_posix.cc
3591   src/core/lib/iomgr/tcp_server.cc
3592   src/core/lib/iomgr/tcp_server_custom.cc
3593   src/core/lib/iomgr/tcp_server_posix.cc
3594   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
3595   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
3596   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
3597   src/core/lib/iomgr/tcp_server_windows.cc
3598   src/core/lib/iomgr/tcp_uv.cc
3599   src/core/lib/iomgr/tcp_windows.cc
3600   src/core/lib/iomgr/time_averaged_stats.cc
3601   src/core/lib/iomgr/timer.cc
3602   src/core/lib/iomgr/timer_custom.cc
3603   src/core/lib/iomgr/timer_generic.cc
3604   src/core/lib/iomgr/timer_heap.cc
3605   src/core/lib/iomgr/timer_manager.cc
3606   src/core/lib/iomgr/timer_uv.cc
3607   src/core/lib/iomgr/udp_server.cc
3608   src/core/lib/iomgr/unix_sockets_posix.cc
3609   src/core/lib/iomgr/unix_sockets_posix_noop.cc
3610   src/core/lib/iomgr/wakeup_fd_eventfd.cc
3611   src/core/lib/iomgr/wakeup_fd_nospecial.cc
3612   src/core/lib/iomgr/wakeup_fd_pipe.cc
3613   src/core/lib/iomgr/wakeup_fd_posix.cc
3614   src/core/lib/json/json.cc
3615   src/core/lib/json/json_reader.cc
3616   src/core/lib/json/json_string.cc
3617   src/core/lib/json/json_writer.cc
3618   src/core/lib/slice/b64.cc
3619   src/core/lib/slice/percent_encoding.cc
3620   src/core/lib/slice/slice.cc
3621   src/core/lib/slice/slice_buffer.cc
3622   src/core/lib/slice/slice_intern.cc
3623   src/core/lib/slice/slice_string_helpers.cc
3624   src/core/lib/surface/api_trace.cc
3625   src/core/lib/surface/byte_buffer.cc
3626   src/core/lib/surface/byte_buffer_reader.cc
3627   src/core/lib/surface/call.cc
3628   src/core/lib/surface/call_details.cc
3629   src/core/lib/surface/call_log_batch.cc
3630   src/core/lib/surface/channel.cc
3631   src/core/lib/surface/channel_init.cc
3632   src/core/lib/surface/channel_ping.cc
3633   src/core/lib/surface/channel_stack_type.cc
3634   src/core/lib/surface/completion_queue.cc
3635   src/core/lib/surface/completion_queue_factory.cc
3636   src/core/lib/surface/event_string.cc
3637   src/core/lib/surface/lame_client.cc
3638   src/core/lib/surface/metadata_array.cc
3639   src/core/lib/surface/server.cc
3640   src/core/lib/surface/validate_metadata.cc
3641   src/core/lib/surface/version.cc
3642   src/core/lib/transport/bdp_estimator.cc
3643   src/core/lib/transport/byte_stream.cc
3644   src/core/lib/transport/connectivity_state.cc
3645   src/core/lib/transport/error_utils.cc
3646   src/core/lib/transport/metadata.cc
3647   src/core/lib/transport/metadata_batch.cc
3648   src/core/lib/transport/pid_controller.cc
3649   src/core/lib/transport/static_metadata.cc
3650   src/core/lib/transport/status_conversion.cc
3651   src/core/lib/transport/status_metadata.cc
3652   src/core/lib/transport/timeout_encoding.cc
3653   src/core/lib/transport/transport.cc
3654   src/core/lib/transport/transport_op_string.cc
3655   src/core/lib/uri/uri_parser.cc
3656   src/core/lib/debug/trace.cc
3657   src/core/ext/transport/chttp2/alpn/alpn.cc
3658   src/core/ext/filters/http/client/http_client_filter.cc
3659   src/core/ext/filters/http/http_filters_plugin.cc
3660   src/core/ext/filters/http/message_compress/message_compress_filter.cc
3661   src/core/ext/filters/http/server/http_server_filter.cc
3662   src/core/ext/filters/client_channel/backup_poller.cc
3663   src/core/ext/filters/client_channel/channel_connectivity.cc
3664   src/core/ext/filters/client_channel/client_channel.cc
3665   src/core/ext/filters/client_channel/client_channel_channelz.cc
3666   src/core/ext/filters/client_channel/client_channel_factory.cc
3667   src/core/ext/filters/client_channel/client_channel_plugin.cc
3668   src/core/ext/filters/client_channel/connector.cc
3669   src/core/ext/filters/client_channel/global_subchannel_pool.cc
3670   src/core/ext/filters/client_channel/health/health_check_client.cc
3671   src/core/ext/filters/client_channel/http_connect_handshaker.cc
3672   src/core/ext/filters/client_channel/http_proxy.cc
3673   src/core/ext/filters/client_channel/lb_policy.cc
3674   src/core/ext/filters/client_channel/lb_policy_registry.cc
3675   src/core/ext/filters/client_channel/local_subchannel_pool.cc
3676   src/core/ext/filters/client_channel/parse_address.cc
3677   src/core/ext/filters/client_channel/proxy_mapper.cc
3678   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
3679   src/core/ext/filters/client_channel/resolver.cc
3680   src/core/ext/filters/client_channel/resolver_registry.cc
3681   src/core/ext/filters/client_channel/resolver_result_parsing.cc
3682   src/core/ext/filters/client_channel/resolving_lb_policy.cc
3683   src/core/ext/filters/client_channel/retry_throttle.cc
3684   src/core/ext/filters/client_channel/server_address.cc
3685   src/core/ext/filters/client_channel/service_config.cc
3686   src/core/ext/filters/client_channel/subchannel.cc
3687   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
3688   src/core/ext/filters/deadline/deadline_filter.cc
3689   src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc
3690   src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc
3691   src/core/ext/transport/chttp2/server/chttp2_server.cc
3692   src/core/ext/filters/census/grpc_context.cc
3693 )
3694
3695 if(WIN32 AND MSVC)
3696   set_target_properties(grpc++_cronet PROPERTIES COMPILE_PDB_NAME "grpc++_cronet"
3697     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3698   )
3699   if (gRPC_INSTALL)
3700     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_cronet.pdb
3701       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3702     )
3703   endif()
3704 endif()
3705
3706
3707 target_include_directories(grpc++_cronet
3708   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3709   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3710   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3711   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3712   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3713   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3714   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3715   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3716   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3717   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3718   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3719 )
3720 target_link_libraries(grpc++_cronet
3721   ${_gRPC_BASELIB_LIBRARIES}
3722   ${_gRPC_SSL_LIBRARIES}
3723   ${_gRPC_PROTOBUF_LIBRARIES}
3724   ${_gRPC_ALLTARGETS_LIBRARIES}
3725   gpr
3726   grpc_cronet
3727   grpc
3728 )
3729
3730 foreach(_hdr
3731   include/grpc++/alarm.h
3732   include/grpc++/channel.h
3733   include/grpc++/client_context.h
3734   include/grpc++/completion_queue.h
3735   include/grpc++/create_channel.h
3736   include/grpc++/create_channel_posix.h
3737   include/grpc++/ext/health_check_service_server_builder_option.h
3738   include/grpc++/generic/async_generic_service.h
3739   include/grpc++/generic/generic_stub.h
3740   include/grpc++/grpc++.h
3741   include/grpc++/health_check_service_interface.h
3742   include/grpc++/impl/call.h
3743   include/grpc++/impl/channel_argument_option.h
3744   include/grpc++/impl/client_unary_call.h
3745   include/grpc++/impl/codegen/core_codegen.h
3746   include/grpc++/impl/grpc_library.h
3747   include/grpc++/impl/method_handler_impl.h
3748   include/grpc++/impl/rpc_method.h
3749   include/grpc++/impl/rpc_service_method.h
3750   include/grpc++/impl/serialization_traits.h
3751   include/grpc++/impl/server_builder_option.h
3752   include/grpc++/impl/server_builder_plugin.h
3753   include/grpc++/impl/server_initializer.h
3754   include/grpc++/impl/service_type.h
3755   include/grpc++/resource_quota.h
3756   include/grpc++/security/auth_context.h
3757   include/grpc++/security/auth_metadata_processor.h
3758   include/grpc++/security/credentials.h
3759   include/grpc++/security/server_credentials.h
3760   include/grpc++/server.h
3761   include/grpc++/server_builder.h
3762   include/grpc++/server_context.h
3763   include/grpc++/server_posix.h
3764   include/grpc++/support/async_stream.h
3765   include/grpc++/support/async_unary_call.h
3766   include/grpc++/support/byte_buffer.h
3767   include/grpc++/support/channel_arguments.h
3768   include/grpc++/support/config.h
3769   include/grpc++/support/slice.h
3770   include/grpc++/support/status.h
3771   include/grpc++/support/status_code_enum.h
3772   include/grpc++/support/string_ref.h
3773   include/grpc++/support/stub_options.h
3774   include/grpc++/support/sync_stream.h
3775   include/grpc++/support/time.h
3776   include/grpcpp/alarm.h
3777   include/grpcpp/alarm_impl.h
3778   include/grpcpp/channel.h
3779   include/grpcpp/channel_impl.h
3780   include/grpcpp/client_context.h
3781   include/grpcpp/completion_queue.h
3782   include/grpcpp/create_channel.h
3783   include/grpcpp/create_channel_impl.h
3784   include/grpcpp/create_channel_posix.h
3785   include/grpcpp/create_channel_posix_impl.h
3786   include/grpcpp/ext/health_check_service_server_builder_option.h
3787   include/grpcpp/generic/async_generic_service.h
3788   include/grpcpp/generic/generic_stub.h
3789   include/grpcpp/generic/generic_stub_impl.h
3790   include/grpcpp/grpcpp.h
3791   include/grpcpp/health_check_service_interface.h
3792   include/grpcpp/health_check_service_interface_impl.h
3793   include/grpcpp/impl/call.h
3794   include/grpcpp/impl/channel_argument_option.h
3795   include/grpcpp/impl/client_unary_call.h
3796   include/grpcpp/impl/codegen/core_codegen.h
3797   include/grpcpp/impl/grpc_library.h
3798   include/grpcpp/impl/method_handler_impl.h
3799   include/grpcpp/impl/rpc_method.h
3800   include/grpcpp/impl/rpc_service_method.h
3801   include/grpcpp/impl/serialization_traits.h
3802   include/grpcpp/impl/server_builder_option.h
3803   include/grpcpp/impl/server_builder_option_impl.h
3804   include/grpcpp/impl/server_builder_plugin.h
3805   include/grpcpp/impl/server_initializer.h
3806   include/grpcpp/impl/server_initializer_impl.h
3807   include/grpcpp/impl/service_type.h
3808   include/grpcpp/resource_quota.h
3809   include/grpcpp/resource_quota_impl.h
3810   include/grpcpp/security/auth_context.h
3811   include/grpcpp/security/auth_metadata_processor.h
3812   include/grpcpp/security/auth_metadata_processor_impl.h
3813   include/grpcpp/security/credentials.h
3814   include/grpcpp/security/credentials_impl.h
3815   include/grpcpp/security/server_credentials.h
3816   include/grpcpp/security/server_credentials_impl.h
3817   include/grpcpp/server.h
3818   include/grpcpp/server_builder.h
3819   include/grpcpp/server_builder_impl.h
3820   include/grpcpp/server_context.h
3821   include/grpcpp/server_impl.h
3822   include/grpcpp/server_posix.h
3823   include/grpcpp/server_posix_impl.h
3824   include/grpcpp/support/async_stream.h
3825   include/grpcpp/support/async_unary_call.h
3826   include/grpcpp/support/byte_buffer.h
3827   include/grpcpp/support/channel_arguments.h
3828   include/grpcpp/support/channel_arguments_impl.h
3829   include/grpcpp/support/client_callback.h
3830   include/grpcpp/support/client_interceptor.h
3831   include/grpcpp/support/config.h
3832   include/grpcpp/support/interceptor.h
3833   include/grpcpp/support/message_allocator.h
3834   include/grpcpp/support/proto_buffer_reader.h
3835   include/grpcpp/support/proto_buffer_writer.h
3836   include/grpcpp/support/server_callback.h
3837   include/grpcpp/support/server_interceptor.h
3838   include/grpcpp/support/slice.h
3839   include/grpcpp/support/status.h
3840   include/grpcpp/support/status_code_enum.h
3841   include/grpcpp/support/string_ref.h
3842   include/grpcpp/support/stub_options.h
3843   include/grpcpp/support/sync_stream.h
3844   include/grpcpp/support/time.h
3845   include/grpcpp/support/validate_service_config.h
3846   include/grpc/support/alloc.h
3847   include/grpc/support/atm.h
3848   include/grpc/support/atm_gcc_atomic.h
3849   include/grpc/support/atm_gcc_sync.h
3850   include/grpc/support/atm_windows.h
3851   include/grpc/support/cpu.h
3852   include/grpc/support/log.h
3853   include/grpc/support/log_windows.h
3854   include/grpc/support/port_platform.h
3855   include/grpc/support/string_util.h
3856   include/grpc/support/sync.h
3857   include/grpc/support/sync_custom.h
3858   include/grpc/support/sync_generic.h
3859   include/grpc/support/sync_posix.h
3860   include/grpc/support/sync_windows.h
3861   include/grpc/support/thd_id.h
3862   include/grpc/support/time.h
3863   include/grpc/impl/codegen/atm.h
3864   include/grpc/impl/codegen/atm_gcc_atomic.h
3865   include/grpc/impl/codegen/atm_gcc_sync.h
3866   include/grpc/impl/codegen/atm_windows.h
3867   include/grpc/impl/codegen/fork.h
3868   include/grpc/impl/codegen/gpr_slice.h
3869   include/grpc/impl/codegen/gpr_types.h
3870   include/grpc/impl/codegen/log.h
3871   include/grpc/impl/codegen/port_platform.h
3872   include/grpc/impl/codegen/sync.h
3873   include/grpc/impl/codegen/sync_custom.h
3874   include/grpc/impl/codegen/sync_generic.h
3875   include/grpc/impl/codegen/sync_posix.h
3876   include/grpc/impl/codegen/sync_windows.h
3877   include/grpc/byte_buffer.h
3878   include/grpc/byte_buffer_reader.h
3879   include/grpc/compression.h
3880   include/grpc/fork.h
3881   include/grpc/grpc.h
3882   include/grpc/grpc_posix.h
3883   include/grpc/grpc_security_constants.h
3884   include/grpc/load_reporting.h
3885   include/grpc/slice.h
3886   include/grpc/slice_buffer.h
3887   include/grpc/status.h
3888   include/grpc/support/workaround_list.h
3889   include/grpc/impl/codegen/byte_buffer.h
3890   include/grpc/impl/codegen/byte_buffer_reader.h
3891   include/grpc/impl/codegen/compression_types.h
3892   include/grpc/impl/codegen/connectivity_state.h
3893   include/grpc/impl/codegen/grpc_types.h
3894   include/grpc/impl/codegen/propagation_bits.h
3895   include/grpc/impl/codegen/slice.h
3896   include/grpc/impl/codegen/status.h
3897   include/grpc++/impl/codegen/async_stream.h
3898   include/grpc++/impl/codegen/async_unary_call.h
3899   include/grpc++/impl/codegen/byte_buffer.h
3900   include/grpc++/impl/codegen/call.h
3901   include/grpc++/impl/codegen/call_hook.h
3902   include/grpc++/impl/codegen/channel_interface.h
3903   include/grpc++/impl/codegen/client_context.h
3904   include/grpc++/impl/codegen/client_unary_call.h
3905   include/grpc++/impl/codegen/completion_queue.h
3906   include/grpc++/impl/codegen/completion_queue_tag.h
3907   include/grpc++/impl/codegen/config.h
3908   include/grpc++/impl/codegen/core_codegen_interface.h
3909   include/grpc++/impl/codegen/create_auth_context.h
3910   include/grpc++/impl/codegen/grpc_library.h
3911   include/grpc++/impl/codegen/metadata_map.h
3912   include/grpc++/impl/codegen/method_handler_impl.h
3913   include/grpc++/impl/codegen/rpc_method.h
3914   include/grpc++/impl/codegen/rpc_service_method.h
3915   include/grpc++/impl/codegen/security/auth_context.h
3916   include/grpc++/impl/codegen/serialization_traits.h
3917   include/grpc++/impl/codegen/server_context.h
3918   include/grpc++/impl/codegen/server_interface.h
3919   include/grpc++/impl/codegen/service_type.h
3920   include/grpc++/impl/codegen/slice.h
3921   include/grpc++/impl/codegen/status.h
3922   include/grpc++/impl/codegen/status_code_enum.h
3923   include/grpc++/impl/codegen/string_ref.h
3924   include/grpc++/impl/codegen/stub_options.h
3925   include/grpc++/impl/codegen/sync_stream.h
3926   include/grpc++/impl/codegen/time.h
3927   include/grpcpp/impl/codegen/async_generic_service.h
3928   include/grpcpp/impl/codegen/async_stream.h
3929   include/grpcpp/impl/codegen/async_unary_call.h
3930   include/grpcpp/impl/codegen/byte_buffer.h
3931   include/grpcpp/impl/codegen/call.h
3932   include/grpcpp/impl/codegen/call_hook.h
3933   include/grpcpp/impl/codegen/call_op_set.h
3934   include/grpcpp/impl/codegen/call_op_set_interface.h
3935   include/grpcpp/impl/codegen/callback_common.h
3936   include/grpcpp/impl/codegen/channel_interface.h
3937   include/grpcpp/impl/codegen/client_callback.h
3938   include/grpcpp/impl/codegen/client_context.h
3939   include/grpcpp/impl/codegen/client_context_impl.h
3940   include/grpcpp/impl/codegen/client_interceptor.h
3941   include/grpcpp/impl/codegen/client_unary_call.h
3942   include/grpcpp/impl/codegen/completion_queue.h
3943   include/grpcpp/impl/codegen/completion_queue_impl.h
3944   include/grpcpp/impl/codegen/completion_queue_tag.h
3945   include/grpcpp/impl/codegen/config.h
3946   include/grpcpp/impl/codegen/core_codegen_interface.h
3947   include/grpcpp/impl/codegen/create_auth_context.h
3948   include/grpcpp/impl/codegen/grpc_library.h
3949   include/grpcpp/impl/codegen/intercepted_channel.h
3950   include/grpcpp/impl/codegen/interceptor.h
3951   include/grpcpp/impl/codegen/interceptor_common.h
3952   include/grpcpp/impl/codegen/message_allocator.h
3953   include/grpcpp/impl/codegen/metadata_map.h
3954   include/grpcpp/impl/codegen/method_handler_impl.h
3955   include/grpcpp/impl/codegen/rpc_method.h
3956   include/grpcpp/impl/codegen/rpc_service_method.h
3957   include/grpcpp/impl/codegen/security/auth_context.h
3958   include/grpcpp/impl/codegen/serialization_traits.h
3959   include/grpcpp/impl/codegen/server_callback.h
3960   include/grpcpp/impl/codegen/server_context.h
3961   include/grpcpp/impl/codegen/server_context_impl.h
3962   include/grpcpp/impl/codegen/server_interceptor.h
3963   include/grpcpp/impl/codegen/server_interface.h
3964   include/grpcpp/impl/codegen/service_type.h
3965   include/grpcpp/impl/codegen/slice.h
3966   include/grpcpp/impl/codegen/status.h
3967   include/grpcpp/impl/codegen/status_code_enum.h
3968   include/grpcpp/impl/codegen/string_ref.h
3969   include/grpcpp/impl/codegen/stub_options.h
3970   include/grpcpp/impl/codegen/sync_stream.h
3971   include/grpcpp/impl/codegen/time.h
3972   include/grpcpp/impl/codegen/sync.h
3973   include/grpc/census.h
3974 )
3975   string(REPLACE "include/" "" _path ${_hdr})
3976   get_filename_component(_path ${_path} PATH)
3977   install(FILES ${_hdr}
3978     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3979   )
3980 endforeach()
3981
3982
3983 if (gRPC_INSTALL)
3984   install(TARGETS grpc++_cronet EXPORT gRPCTargets
3985     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
3986     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
3987     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
3988   )
3989 endif()
3990
3991
3992 if (gRPC_BUILD_CODEGEN)
3993 add_library(grpc++_error_details
3994   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.pb.cc
3995   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.grpc.pb.cc
3996   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.pb.h
3997   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.grpc.pb.h
3998   src/cpp/util/error_details.cc
3999 )
4000
4001 if(WIN32 AND MSVC)
4002   set_target_properties(grpc++_error_details PROPERTIES COMPILE_PDB_NAME "grpc++_error_details"
4003     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4004   )
4005   if (gRPC_INSTALL)
4006     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_error_details.pdb
4007       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4008     )
4009   endif()
4010 endif()
4011
4012 protobuf_generate_grpc_cpp(
4013   src/proto/grpc/status/status.proto
4014 )
4015
4016 target_include_directories(grpc++_error_details
4017   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4018   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4019   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4020   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4021   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4022   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4023   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4024   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4025   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4026   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4027   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4028 )
4029 target_link_libraries(grpc++_error_details
4030   ${_gRPC_BASELIB_LIBRARIES}
4031   ${_gRPC_PROTOBUF_LIBRARIES}
4032   ${_gRPC_ALLTARGETS_LIBRARIES}
4033   grpc++
4034 )
4035
4036 foreach(_hdr
4037   include/grpc++/support/error_details.h
4038   include/grpcpp/support/error_details.h
4039   include/grpcpp/support/error_details_impl.h
4040 )
4041   string(REPLACE "include/" "" _path ${_hdr})
4042   get_filename_component(_path ${_path} PATH)
4043   install(FILES ${_hdr}
4044     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4045   )
4046 endforeach()
4047 endif (gRPC_BUILD_CODEGEN)
4048
4049 if (gRPC_BUILD_CODEGEN)
4050
4051 if (gRPC_INSTALL)
4052   install(TARGETS grpc++_error_details EXPORT gRPCTargets
4053     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
4054     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
4055     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
4056   )
4057 endif()
4058
4059 endif (gRPC_BUILD_CODEGEN)
4060 if (gRPC_BUILD_TESTS)
4061
4062 if (gRPC_BUILD_CODEGEN)
4063 add_library(grpc++_proto_reflection_desc_db
4064   test/cpp/util/proto_reflection_descriptor_database.cc
4065   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
4066   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
4067   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
4068   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h
4069 )
4070
4071 if(WIN32 AND MSVC)
4072   set_target_properties(grpc++_proto_reflection_desc_db PROPERTIES COMPILE_PDB_NAME "grpc++_proto_reflection_desc_db"
4073     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4074   )
4075   if (gRPC_INSTALL)
4076     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_proto_reflection_desc_db.pdb
4077       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4078     )
4079   endif()
4080 endif()
4081
4082 protobuf_generate_grpc_cpp(
4083   src/proto/grpc/reflection/v1alpha/reflection.proto
4084 )
4085
4086 target_include_directories(grpc++_proto_reflection_desc_db
4087   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4088   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4089   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4090   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4091   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4092   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4093   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4094   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4095   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4096   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4097   PRIVATE third_party/googletest/googletest/include
4098   PRIVATE third_party/googletest/googletest
4099   PRIVATE third_party/googletest/googlemock/include
4100   PRIVATE third_party/googletest/googlemock
4101   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4102 )
4103 target_link_libraries(grpc++_proto_reflection_desc_db
4104   ${_gRPC_PROTOBUF_LIBRARIES}
4105   ${_gRPC_ALLTARGETS_LIBRARIES}
4106   grpc++
4107   grpc
4108   ${_gRPC_GFLAGS_LIBRARIES}
4109 )
4110
4111 foreach(_hdr
4112   include/grpc++/impl/codegen/config_protobuf.h
4113   include/grpcpp/impl/codegen/config_protobuf.h
4114 )
4115   string(REPLACE "include/" "" _path ${_hdr})
4116   get_filename_component(_path ${_path} PATH)
4117   install(FILES ${_hdr}
4118     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4119   )
4120 endforeach()
4121 endif (gRPC_BUILD_CODEGEN)
4122
4123 endif (gRPC_BUILD_TESTS)
4124
4125 if (gRPC_BUILD_CODEGEN)
4126 add_library(grpc++_reflection
4127   src/cpp/ext/proto_server_reflection.cc
4128   src/cpp/ext/proto_server_reflection_plugin.cc
4129   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
4130   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
4131   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
4132   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h
4133 )
4134
4135 if(WIN32 AND MSVC)
4136   set_target_properties(grpc++_reflection PROPERTIES COMPILE_PDB_NAME "grpc++_reflection"
4137     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4138   )
4139   if (gRPC_INSTALL)
4140     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_reflection.pdb
4141       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4142     )
4143   endif()
4144 endif()
4145
4146 protobuf_generate_grpc_cpp(
4147   src/proto/grpc/reflection/v1alpha/reflection.proto
4148 )
4149
4150 target_include_directories(grpc++_reflection
4151   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4152   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4153   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4154   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4155   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4156   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4157   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4158   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4159   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4160   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4161   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4162 )
4163 target_link_libraries(grpc++_reflection
4164   ${_gRPC_PROTOBUF_LIBRARIES}
4165   ${_gRPC_ALLTARGETS_LIBRARIES}
4166   grpc++
4167   grpc
4168 )
4169
4170 foreach(_hdr
4171   include/grpc++/ext/proto_server_reflection_plugin.h
4172   include/grpcpp/ext/proto_server_reflection_plugin.h
4173   include/grpcpp/ext/proto_server_reflection_plugin_impl.h
4174 )
4175   string(REPLACE "include/" "" _path ${_hdr})
4176   get_filename_component(_path ${_path} PATH)
4177   install(FILES ${_hdr}
4178     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4179   )
4180 endforeach()
4181 endif (gRPC_BUILD_CODEGEN)
4182
4183 if (gRPC_BUILD_CODEGEN)
4184
4185 if (gRPC_INSTALL)
4186   install(TARGETS grpc++_reflection EXPORT gRPCTargets
4187     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
4188     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
4189     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
4190   )
4191 endif()
4192
4193 endif (gRPC_BUILD_CODEGEN)
4194 if (gRPC_BUILD_TESTS)
4195
4196 add_library(grpc++_test_config
4197   test/cpp/util/test_config_cc.cc
4198 )
4199
4200 if(WIN32 AND MSVC)
4201   set_target_properties(grpc++_test_config PROPERTIES COMPILE_PDB_NAME "grpc++_test_config"
4202     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4203   )
4204   if (gRPC_INSTALL)
4205     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_test_config.pdb
4206       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4207     )
4208   endif()
4209 endif()
4210
4211
4212 target_include_directories(grpc++_test_config
4213   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4214   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4215   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4216   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4217   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4218   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4219   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4220   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4221   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4222   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4223   PRIVATE third_party/googletest/googletest/include
4224   PRIVATE third_party/googletest/googletest
4225   PRIVATE third_party/googletest/googlemock/include
4226   PRIVATE third_party/googletest/googlemock
4227   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4228 )
4229 target_link_libraries(grpc++_test_config
4230   ${_gRPC_PROTOBUF_LIBRARIES}
4231   ${_gRPC_ALLTARGETS_LIBRARIES}
4232   ${_gRPC_GFLAGS_LIBRARIES}
4233 )
4234
4235
4236 endif (gRPC_BUILD_TESTS)
4237 if (gRPC_BUILD_TESTS)
4238
4239 if (gRPC_BUILD_CODEGEN)
4240 add_library(grpc++_test_util
4241   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
4242   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
4243   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
4244   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
4245   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc
4246   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.cc
4247   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.h
4248   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.h
4249   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
4250   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
4251   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
4252   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
4253   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
4254   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
4255   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
4256   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
4257   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_mock.grpc.pb.h
4258   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc
4259   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc
4260   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.h
4261   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.h
4262   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc
4263   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc
4264   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h
4265   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h
4266   test/cpp/end2end/test_health_check_service_impl.cc
4267   test/cpp/end2end/test_service_impl.cc
4268   test/cpp/util/byte_buffer_proto_helper.cc
4269   test/cpp/util/channel_trace_proto_helper.cc
4270   test/cpp/util/create_test_channel.cc
4271   test/cpp/util/string_ref_helper.cc
4272   test/cpp/util/subprocess.cc
4273   test/cpp/util/test_credentials_provider.cc
4274   src/cpp/codegen/codegen_init.cc
4275 )
4276
4277 if(WIN32 AND MSVC)
4278   set_target_properties(grpc++_test_util PROPERTIES COMPILE_PDB_NAME "grpc++_test_util"
4279     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4280   )
4281   if (gRPC_INSTALL)
4282     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_test_util.pdb
4283       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4284     )
4285   endif()
4286 endif()
4287
4288 protobuf_generate_grpc_cpp(
4289   src/proto/grpc/channelz/channelz.proto
4290 )
4291 protobuf_generate_grpc_cpp(
4292   src/proto/grpc/health/v1/health.proto
4293 )
4294 protobuf_generate_grpc_cpp(
4295   src/proto/grpc/testing/echo_messages.proto
4296 )
4297 protobuf_generate_grpc_cpp(
4298   src/proto/grpc/testing/echo.proto
4299 )
4300 protobuf_generate_grpc_cpp(
4301   src/proto/grpc/testing/duplicate/echo_duplicate.proto
4302 )
4303 protobuf_generate_grpc_cpp(
4304   src/proto/grpc/testing/simple_messages.proto
4305 )
4306
4307 target_include_directories(grpc++_test_util
4308   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4309   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4310   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4311   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4312   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4313   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4314   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4315   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4316   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4317   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4318   PRIVATE third_party/googletest/googletest/include
4319   PRIVATE third_party/googletest/googletest
4320   PRIVATE third_party/googletest/googlemock/include
4321   PRIVATE third_party/googletest/googlemock
4322   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4323 )
4324 target_link_libraries(grpc++_test_util
4325   ${_gRPC_PROTOBUF_LIBRARIES}
4326   ${_gRPC_ALLTARGETS_LIBRARIES}
4327   grpc++
4328   grpc_test_util
4329   grpc
4330   ${_gRPC_GFLAGS_LIBRARIES}
4331 )
4332
4333 foreach(_hdr
4334   include/grpc++/impl/codegen/async_stream.h
4335   include/grpc++/impl/codegen/async_unary_call.h
4336   include/grpc++/impl/codegen/byte_buffer.h
4337   include/grpc++/impl/codegen/call.h
4338   include/grpc++/impl/codegen/call_hook.h
4339   include/grpc++/impl/codegen/channel_interface.h
4340   include/grpc++/impl/codegen/client_context.h
4341   include/grpc++/impl/codegen/client_unary_call.h
4342   include/grpc++/impl/codegen/completion_queue.h
4343   include/grpc++/impl/codegen/completion_queue_tag.h
4344   include/grpc++/impl/codegen/config.h
4345   include/grpc++/impl/codegen/core_codegen_interface.h
4346   include/grpc++/impl/codegen/create_auth_context.h
4347   include/grpc++/impl/codegen/grpc_library.h
4348   include/grpc++/impl/codegen/metadata_map.h
4349   include/grpc++/impl/codegen/method_handler_impl.h
4350   include/grpc++/impl/codegen/rpc_method.h
4351   include/grpc++/impl/codegen/rpc_service_method.h
4352   include/grpc++/impl/codegen/security/auth_context.h
4353   include/grpc++/impl/codegen/serialization_traits.h
4354   include/grpc++/impl/codegen/server_context.h
4355   include/grpc++/impl/codegen/server_interface.h
4356   include/grpc++/impl/codegen/service_type.h
4357   include/grpc++/impl/codegen/slice.h
4358   include/grpc++/impl/codegen/status.h
4359   include/grpc++/impl/codegen/status_code_enum.h
4360   include/grpc++/impl/codegen/string_ref.h
4361   include/grpc++/impl/codegen/stub_options.h
4362   include/grpc++/impl/codegen/sync_stream.h
4363   include/grpc++/impl/codegen/time.h
4364   include/grpcpp/impl/codegen/async_generic_service.h
4365   include/grpcpp/impl/codegen/async_stream.h
4366   include/grpcpp/impl/codegen/async_unary_call.h
4367   include/grpcpp/impl/codegen/byte_buffer.h
4368   include/grpcpp/impl/codegen/call.h
4369   include/grpcpp/impl/codegen/call_hook.h
4370   include/grpcpp/impl/codegen/call_op_set.h
4371   include/grpcpp/impl/codegen/call_op_set_interface.h
4372   include/grpcpp/impl/codegen/callback_common.h
4373   include/grpcpp/impl/codegen/channel_interface.h
4374   include/grpcpp/impl/codegen/client_callback.h
4375   include/grpcpp/impl/codegen/client_context.h
4376   include/grpcpp/impl/codegen/client_context_impl.h
4377   include/grpcpp/impl/codegen/client_interceptor.h
4378   include/grpcpp/impl/codegen/client_unary_call.h
4379   include/grpcpp/impl/codegen/completion_queue.h
4380   include/grpcpp/impl/codegen/completion_queue_impl.h
4381   include/grpcpp/impl/codegen/completion_queue_tag.h
4382   include/grpcpp/impl/codegen/config.h
4383   include/grpcpp/impl/codegen/core_codegen_interface.h
4384   include/grpcpp/impl/codegen/create_auth_context.h
4385   include/grpcpp/impl/codegen/grpc_library.h
4386   include/grpcpp/impl/codegen/intercepted_channel.h
4387   include/grpcpp/impl/codegen/interceptor.h
4388   include/grpcpp/impl/codegen/interceptor_common.h
4389   include/grpcpp/impl/codegen/message_allocator.h
4390   include/grpcpp/impl/codegen/metadata_map.h
4391   include/grpcpp/impl/codegen/method_handler_impl.h
4392   include/grpcpp/impl/codegen/rpc_method.h
4393   include/grpcpp/impl/codegen/rpc_service_method.h
4394   include/grpcpp/impl/codegen/security/auth_context.h
4395   include/grpcpp/impl/codegen/serialization_traits.h
4396   include/grpcpp/impl/codegen/server_callback.h
4397   include/grpcpp/impl/codegen/server_context.h
4398   include/grpcpp/impl/codegen/server_context_impl.h
4399   include/grpcpp/impl/codegen/server_interceptor.h
4400   include/grpcpp/impl/codegen/server_interface.h
4401   include/grpcpp/impl/codegen/service_type.h
4402   include/grpcpp/impl/codegen/slice.h
4403   include/grpcpp/impl/codegen/status.h
4404   include/grpcpp/impl/codegen/status_code_enum.h
4405   include/grpcpp/impl/codegen/string_ref.h
4406   include/grpcpp/impl/codegen/stub_options.h
4407   include/grpcpp/impl/codegen/sync_stream.h
4408   include/grpcpp/impl/codegen/time.h
4409   include/grpc/impl/codegen/byte_buffer.h
4410   include/grpc/impl/codegen/byte_buffer_reader.h
4411   include/grpc/impl/codegen/compression_types.h
4412   include/grpc/impl/codegen/connectivity_state.h
4413   include/grpc/impl/codegen/grpc_types.h
4414   include/grpc/impl/codegen/propagation_bits.h
4415   include/grpc/impl/codegen/slice.h
4416   include/grpc/impl/codegen/status.h
4417   include/grpc/impl/codegen/atm.h
4418   include/grpc/impl/codegen/atm_gcc_atomic.h
4419   include/grpc/impl/codegen/atm_gcc_sync.h
4420   include/grpc/impl/codegen/atm_windows.h
4421   include/grpc/impl/codegen/fork.h
4422   include/grpc/impl/codegen/gpr_slice.h
4423   include/grpc/impl/codegen/gpr_types.h
4424   include/grpc/impl/codegen/log.h
4425   include/grpc/impl/codegen/port_platform.h
4426   include/grpc/impl/codegen/sync.h
4427   include/grpc/impl/codegen/sync_custom.h
4428   include/grpc/impl/codegen/sync_generic.h
4429   include/grpc/impl/codegen/sync_posix.h
4430   include/grpc/impl/codegen/sync_windows.h
4431   include/grpcpp/impl/codegen/sync.h
4432   include/grpc++/impl/codegen/proto_utils.h
4433   include/grpcpp/impl/codegen/proto_buffer_reader.h
4434   include/grpcpp/impl/codegen/proto_buffer_writer.h
4435   include/grpcpp/impl/codegen/proto_utils.h
4436   include/grpc++/impl/codegen/config_protobuf.h
4437   include/grpcpp/impl/codegen/config_protobuf.h
4438 )
4439   string(REPLACE "include/" "" _path ${_hdr})
4440   get_filename_component(_path ${_path} PATH)
4441   install(FILES ${_hdr}
4442     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4443   )
4444 endforeach()
4445 endif (gRPC_BUILD_CODEGEN)
4446
4447 endif (gRPC_BUILD_TESTS)
4448 if (gRPC_BUILD_TESTS)
4449
4450 if (gRPC_BUILD_CODEGEN)
4451 add_library(grpc++_test_util_unsecure
4452   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc
4453   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.cc
4454   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.h
4455   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.h
4456   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
4457   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
4458   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
4459   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
4460   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
4461   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
4462   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
4463   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
4464   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_mock.grpc.pb.h
4465   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc
4466   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc
4467   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.h
4468   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.h
4469   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc
4470   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc
4471   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h
4472   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h
4473   test/cpp/end2end/test_health_check_service_impl.cc
4474   test/cpp/end2end/test_service_impl.cc
4475   test/cpp/util/byte_buffer_proto_helper.cc
4476   test/cpp/util/string_ref_helper.cc
4477   test/cpp/util/subprocess.cc
4478   src/cpp/codegen/codegen_init.cc
4479 )
4480
4481 if(WIN32 AND MSVC)
4482   set_target_properties(grpc++_test_util_unsecure PROPERTIES COMPILE_PDB_NAME "grpc++_test_util_unsecure"
4483     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4484   )
4485   if (gRPC_INSTALL)
4486     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_test_util_unsecure.pdb
4487       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4488     )
4489   endif()
4490 endif()
4491
4492 protobuf_generate_grpc_cpp(
4493   src/proto/grpc/health/v1/health.proto
4494 )
4495 protobuf_generate_grpc_cpp(
4496   src/proto/grpc/testing/echo_messages.proto
4497 )
4498 protobuf_generate_grpc_cpp(
4499   src/proto/grpc/testing/echo.proto
4500 )
4501 protobuf_generate_grpc_cpp(
4502   src/proto/grpc/testing/duplicate/echo_duplicate.proto
4503 )
4504 protobuf_generate_grpc_cpp(
4505   src/proto/grpc/testing/simple_messages.proto
4506 )
4507
4508 target_include_directories(grpc++_test_util_unsecure
4509   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4510   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4511   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4512   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4513   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4514   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4515   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4516   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4517   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4518   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4519   PRIVATE third_party/googletest/googletest/include
4520   PRIVATE third_party/googletest/googletest
4521   PRIVATE third_party/googletest/googlemock/include
4522   PRIVATE third_party/googletest/googlemock
4523   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4524 )
4525 target_link_libraries(grpc++_test_util_unsecure
4526   ${_gRPC_PROTOBUF_LIBRARIES}
4527   ${_gRPC_ALLTARGETS_LIBRARIES}
4528   grpc++_unsecure
4529   grpc_test_util_unsecure
4530   grpc_unsecure
4531   ${_gRPC_GFLAGS_LIBRARIES}
4532 )
4533
4534 foreach(_hdr
4535   include/grpc++/impl/codegen/async_stream.h
4536   include/grpc++/impl/codegen/async_unary_call.h
4537   include/grpc++/impl/codegen/byte_buffer.h
4538   include/grpc++/impl/codegen/call.h
4539   include/grpc++/impl/codegen/call_hook.h
4540   include/grpc++/impl/codegen/channel_interface.h
4541   include/grpc++/impl/codegen/client_context.h
4542   include/grpc++/impl/codegen/client_unary_call.h
4543   include/grpc++/impl/codegen/completion_queue.h
4544   include/grpc++/impl/codegen/completion_queue_tag.h
4545   include/grpc++/impl/codegen/config.h
4546   include/grpc++/impl/codegen/core_codegen_interface.h
4547   include/grpc++/impl/codegen/create_auth_context.h
4548   include/grpc++/impl/codegen/grpc_library.h
4549   include/grpc++/impl/codegen/metadata_map.h
4550   include/grpc++/impl/codegen/method_handler_impl.h
4551   include/grpc++/impl/codegen/rpc_method.h
4552   include/grpc++/impl/codegen/rpc_service_method.h
4553   include/grpc++/impl/codegen/security/auth_context.h
4554   include/grpc++/impl/codegen/serialization_traits.h
4555   include/grpc++/impl/codegen/server_context.h
4556   include/grpc++/impl/codegen/server_interface.h
4557   include/grpc++/impl/codegen/service_type.h
4558   include/grpc++/impl/codegen/slice.h
4559   include/grpc++/impl/codegen/status.h
4560   include/grpc++/impl/codegen/status_code_enum.h
4561   include/grpc++/impl/codegen/string_ref.h
4562   include/grpc++/impl/codegen/stub_options.h
4563   include/grpc++/impl/codegen/sync_stream.h
4564   include/grpc++/impl/codegen/time.h
4565   include/grpcpp/impl/codegen/async_generic_service.h
4566   include/grpcpp/impl/codegen/async_stream.h
4567   include/grpcpp/impl/codegen/async_unary_call.h
4568   include/grpcpp/impl/codegen/byte_buffer.h
4569   include/grpcpp/impl/codegen/call.h
4570   include/grpcpp/impl/codegen/call_hook.h
4571   include/grpcpp/impl/codegen/call_op_set.h
4572   include/grpcpp/impl/codegen/call_op_set_interface.h
4573   include/grpcpp/impl/codegen/callback_common.h
4574   include/grpcpp/impl/codegen/channel_interface.h
4575   include/grpcpp/impl/codegen/client_callback.h
4576   include/grpcpp/impl/codegen/client_context.h
4577   include/grpcpp/impl/codegen/client_context_impl.h
4578   include/grpcpp/impl/codegen/client_interceptor.h
4579   include/grpcpp/impl/codegen/client_unary_call.h
4580   include/grpcpp/impl/codegen/completion_queue.h
4581   include/grpcpp/impl/codegen/completion_queue_impl.h
4582   include/grpcpp/impl/codegen/completion_queue_tag.h
4583   include/grpcpp/impl/codegen/config.h
4584   include/grpcpp/impl/codegen/core_codegen_interface.h
4585   include/grpcpp/impl/codegen/create_auth_context.h
4586   include/grpcpp/impl/codegen/grpc_library.h
4587   include/grpcpp/impl/codegen/intercepted_channel.h
4588   include/grpcpp/impl/codegen/interceptor.h
4589   include/grpcpp/impl/codegen/interceptor_common.h
4590   include/grpcpp/impl/codegen/message_allocator.h
4591   include/grpcpp/impl/codegen/metadata_map.h
4592   include/grpcpp/impl/codegen/method_handler_impl.h
4593   include/grpcpp/impl/codegen/rpc_method.h
4594   include/grpcpp/impl/codegen/rpc_service_method.h
4595   include/grpcpp/impl/codegen/security/auth_context.h
4596   include/grpcpp/impl/codegen/serialization_traits.h
4597   include/grpcpp/impl/codegen/server_callback.h
4598   include/grpcpp/impl/codegen/server_context.h
4599   include/grpcpp/impl/codegen/server_context_impl.h
4600   include/grpcpp/impl/codegen/server_interceptor.h
4601   include/grpcpp/impl/codegen/server_interface.h
4602   include/grpcpp/impl/codegen/service_type.h
4603   include/grpcpp/impl/codegen/slice.h
4604   include/grpcpp/impl/codegen/status.h
4605   include/grpcpp/impl/codegen/status_code_enum.h
4606   include/grpcpp/impl/codegen/string_ref.h
4607   include/grpcpp/impl/codegen/stub_options.h
4608   include/grpcpp/impl/codegen/sync_stream.h
4609   include/grpcpp/impl/codegen/time.h
4610   include/grpc/impl/codegen/byte_buffer.h
4611   include/grpc/impl/codegen/byte_buffer_reader.h
4612   include/grpc/impl/codegen/compression_types.h
4613   include/grpc/impl/codegen/connectivity_state.h
4614   include/grpc/impl/codegen/grpc_types.h
4615   include/grpc/impl/codegen/propagation_bits.h
4616   include/grpc/impl/codegen/slice.h
4617   include/grpc/impl/codegen/status.h
4618   include/grpc/impl/codegen/atm.h
4619   include/grpc/impl/codegen/atm_gcc_atomic.h
4620   include/grpc/impl/codegen/atm_gcc_sync.h
4621   include/grpc/impl/codegen/atm_windows.h
4622   include/grpc/impl/codegen/fork.h
4623   include/grpc/impl/codegen/gpr_slice.h
4624   include/grpc/impl/codegen/gpr_types.h
4625   include/grpc/impl/codegen/log.h
4626   include/grpc/impl/codegen/port_platform.h
4627   include/grpc/impl/codegen/sync.h
4628   include/grpc/impl/codegen/sync_custom.h
4629   include/grpc/impl/codegen/sync_generic.h
4630   include/grpc/impl/codegen/sync_posix.h
4631   include/grpc/impl/codegen/sync_windows.h
4632   include/grpcpp/impl/codegen/sync.h
4633   include/grpc++/impl/codegen/proto_utils.h
4634   include/grpcpp/impl/codegen/proto_buffer_reader.h
4635   include/grpcpp/impl/codegen/proto_buffer_writer.h
4636   include/grpcpp/impl/codegen/proto_utils.h
4637   include/grpc++/impl/codegen/config_protobuf.h
4638   include/grpcpp/impl/codegen/config_protobuf.h
4639 )
4640   string(REPLACE "include/" "" _path ${_hdr})
4641   get_filename_component(_path ${_path} PATH)
4642   install(FILES ${_hdr}
4643     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4644   )
4645 endforeach()
4646 endif (gRPC_BUILD_CODEGEN)
4647
4648 endif (gRPC_BUILD_TESTS)
4649
4650 add_library(grpc++_unsecure
4651   src/cpp/client/insecure_credentials.cc
4652   src/cpp/common/insecure_create_auth_context.cc
4653   src/cpp/server/insecure_server_credentials.cc
4654   src/cpp/client/channel_cc.cc
4655   src/cpp/client/client_context.cc
4656   src/cpp/client/client_interceptor.cc
4657   src/cpp/client/create_channel.cc
4658   src/cpp/client/create_channel_internal.cc
4659   src/cpp/client/create_channel_posix.cc
4660   src/cpp/client/credentials_cc.cc
4661   src/cpp/client/generic_stub.cc
4662   src/cpp/common/alarm.cc
4663   src/cpp/common/channel_arguments.cc
4664   src/cpp/common/channel_filter.cc
4665   src/cpp/common/completion_queue_cc.cc
4666   src/cpp/common/core_codegen.cc
4667   src/cpp/common/resource_quota_cc.cc
4668   src/cpp/common/rpc_method.cc
4669   src/cpp/common/validate_service_config.cc
4670   src/cpp/common/version_cc.cc
4671   src/cpp/server/async_generic_service.cc
4672   src/cpp/server/channel_argument_option.cc
4673   src/cpp/server/create_default_thread_pool.cc
4674   src/cpp/server/dynamic_thread_pool.cc
4675   src/cpp/server/external_connection_acceptor_impl.cc
4676   src/cpp/server/health/default_health_check_service.cc
4677   src/cpp/server/health/health_check_service.cc
4678   src/cpp/server/health/health_check_service_server_builder_option.cc
4679   src/cpp/server/server_builder.cc
4680   src/cpp/server/server_cc.cc
4681   src/cpp/server/server_context.cc
4682   src/cpp/server/server_credentials.cc
4683   src/cpp/server/server_posix.cc
4684   src/cpp/thread_manager/thread_manager.cc
4685   src/cpp/util/byte_buffer_cc.cc
4686   src/cpp/util/status.cc
4687   src/cpp/util/string_ref.cc
4688   src/cpp/util/time_cc.cc
4689   src/core/ext/filters/client_channel/health/health.pb.c
4690   third_party/nanopb/pb_common.c
4691   third_party/nanopb/pb_decode.c
4692   third_party/nanopb/pb_encode.c
4693   src/cpp/codegen/codegen_init.cc
4694 )
4695
4696 if(WIN32 AND MSVC)
4697   set_target_properties(grpc++_unsecure PROPERTIES COMPILE_PDB_NAME "grpc++_unsecure"
4698     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4699   )
4700   if (gRPC_INSTALL)
4701     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_unsecure.pdb
4702       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4703     )
4704   endif()
4705 endif()
4706
4707
4708 target_include_directories(grpc++_unsecure
4709   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4710   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4711   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4712   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4713   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4714   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4715   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4716   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4717   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4718   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4719   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4720 )
4721 target_link_libraries(grpc++_unsecure
4722   ${_gRPC_BASELIB_LIBRARIES}
4723   ${_gRPC_PROTOBUF_LIBRARIES}
4724   ${_gRPC_ALLTARGETS_LIBRARIES}
4725   gpr
4726   grpc_unsecure
4727 )
4728
4729 foreach(_hdr
4730   include/grpc++/alarm.h
4731   include/grpc++/channel.h
4732   include/grpc++/client_context.h
4733   include/grpc++/completion_queue.h
4734   include/grpc++/create_channel.h
4735   include/grpc++/create_channel_posix.h
4736   include/grpc++/ext/health_check_service_server_builder_option.h
4737   include/grpc++/generic/async_generic_service.h
4738   include/grpc++/generic/generic_stub.h
4739   include/grpc++/grpc++.h
4740   include/grpc++/health_check_service_interface.h
4741   include/grpc++/impl/call.h
4742   include/grpc++/impl/channel_argument_option.h
4743   include/grpc++/impl/client_unary_call.h
4744   include/grpc++/impl/codegen/core_codegen.h
4745   include/grpc++/impl/grpc_library.h
4746   include/grpc++/impl/method_handler_impl.h
4747   include/grpc++/impl/rpc_method.h
4748   include/grpc++/impl/rpc_service_method.h
4749   include/grpc++/impl/serialization_traits.h
4750   include/grpc++/impl/server_builder_option.h
4751   include/grpc++/impl/server_builder_plugin.h
4752   include/grpc++/impl/server_initializer.h
4753   include/grpc++/impl/service_type.h
4754   include/grpc++/resource_quota.h
4755   include/grpc++/security/auth_context.h
4756   include/grpc++/security/auth_metadata_processor.h
4757   include/grpc++/security/credentials.h
4758   include/grpc++/security/server_credentials.h
4759   include/grpc++/server.h
4760   include/grpc++/server_builder.h
4761   include/grpc++/server_context.h
4762   include/grpc++/server_posix.h
4763   include/grpc++/support/async_stream.h
4764   include/grpc++/support/async_unary_call.h
4765   include/grpc++/support/byte_buffer.h
4766   include/grpc++/support/channel_arguments.h
4767   include/grpc++/support/config.h
4768   include/grpc++/support/slice.h
4769   include/grpc++/support/status.h
4770   include/grpc++/support/status_code_enum.h
4771   include/grpc++/support/string_ref.h
4772   include/grpc++/support/stub_options.h
4773   include/grpc++/support/sync_stream.h
4774   include/grpc++/support/time.h
4775   include/grpcpp/alarm.h
4776   include/grpcpp/alarm_impl.h
4777   include/grpcpp/channel.h
4778   include/grpcpp/channel_impl.h
4779   include/grpcpp/client_context.h
4780   include/grpcpp/completion_queue.h
4781   include/grpcpp/create_channel.h
4782   include/grpcpp/create_channel_impl.h
4783   include/grpcpp/create_channel_posix.h
4784   include/grpcpp/create_channel_posix_impl.h
4785   include/grpcpp/ext/health_check_service_server_builder_option.h
4786   include/grpcpp/generic/async_generic_service.h
4787   include/grpcpp/generic/generic_stub.h
4788   include/grpcpp/generic/generic_stub_impl.h
4789   include/grpcpp/grpcpp.h
4790   include/grpcpp/health_check_service_interface.h
4791   include/grpcpp/health_check_service_interface_impl.h
4792   include/grpcpp/impl/call.h
4793   include/grpcpp/impl/channel_argument_option.h
4794   include/grpcpp/impl/client_unary_call.h
4795   include/grpcpp/impl/codegen/core_codegen.h
4796   include/grpcpp/impl/grpc_library.h
4797   include/grpcpp/impl/method_handler_impl.h
4798   include/grpcpp/impl/rpc_method.h
4799   include/grpcpp/impl/rpc_service_method.h
4800   include/grpcpp/impl/serialization_traits.h
4801   include/grpcpp/impl/server_builder_option.h
4802   include/grpcpp/impl/server_builder_option_impl.h
4803   include/grpcpp/impl/server_builder_plugin.h
4804   include/grpcpp/impl/server_initializer.h
4805   include/grpcpp/impl/server_initializer_impl.h
4806   include/grpcpp/impl/service_type.h
4807   include/grpcpp/resource_quota.h
4808   include/grpcpp/resource_quota_impl.h
4809   include/grpcpp/security/auth_context.h
4810   include/grpcpp/security/auth_metadata_processor.h
4811   include/grpcpp/security/auth_metadata_processor_impl.h
4812   include/grpcpp/security/credentials.h
4813   include/grpcpp/security/credentials_impl.h
4814   include/grpcpp/security/server_credentials.h
4815   include/grpcpp/security/server_credentials_impl.h
4816   include/grpcpp/server.h
4817   include/grpcpp/server_builder.h
4818   include/grpcpp/server_builder_impl.h
4819   include/grpcpp/server_context.h
4820   include/grpcpp/server_impl.h
4821   include/grpcpp/server_posix.h
4822   include/grpcpp/server_posix_impl.h
4823   include/grpcpp/support/async_stream.h
4824   include/grpcpp/support/async_unary_call.h
4825   include/grpcpp/support/byte_buffer.h
4826   include/grpcpp/support/channel_arguments.h
4827   include/grpcpp/support/channel_arguments_impl.h
4828   include/grpcpp/support/client_callback.h
4829   include/grpcpp/support/client_interceptor.h
4830   include/grpcpp/support/config.h
4831   include/grpcpp/support/interceptor.h
4832   include/grpcpp/support/message_allocator.h
4833   include/grpcpp/support/proto_buffer_reader.h
4834   include/grpcpp/support/proto_buffer_writer.h
4835   include/grpcpp/support/server_callback.h
4836   include/grpcpp/support/server_interceptor.h
4837   include/grpcpp/support/slice.h
4838   include/grpcpp/support/status.h
4839   include/grpcpp/support/status_code_enum.h
4840   include/grpcpp/support/string_ref.h
4841   include/grpcpp/support/stub_options.h
4842   include/grpcpp/support/sync_stream.h
4843   include/grpcpp/support/time.h
4844   include/grpcpp/support/validate_service_config.h
4845   include/grpc/support/alloc.h
4846   include/grpc/support/atm.h
4847   include/grpc/support/atm_gcc_atomic.h
4848   include/grpc/support/atm_gcc_sync.h
4849   include/grpc/support/atm_windows.h
4850   include/grpc/support/cpu.h
4851   include/grpc/support/log.h
4852   include/grpc/support/log_windows.h
4853   include/grpc/support/port_platform.h
4854   include/grpc/support/string_util.h
4855   include/grpc/support/sync.h
4856   include/grpc/support/sync_custom.h
4857   include/grpc/support/sync_generic.h
4858   include/grpc/support/sync_posix.h
4859   include/grpc/support/sync_windows.h
4860   include/grpc/support/thd_id.h
4861   include/grpc/support/time.h
4862   include/grpc/impl/codegen/atm.h
4863   include/grpc/impl/codegen/atm_gcc_atomic.h
4864   include/grpc/impl/codegen/atm_gcc_sync.h
4865   include/grpc/impl/codegen/atm_windows.h
4866   include/grpc/impl/codegen/fork.h
4867   include/grpc/impl/codegen/gpr_slice.h
4868   include/grpc/impl/codegen/gpr_types.h
4869   include/grpc/impl/codegen/log.h
4870   include/grpc/impl/codegen/port_platform.h
4871   include/grpc/impl/codegen/sync.h
4872   include/grpc/impl/codegen/sync_custom.h
4873   include/grpc/impl/codegen/sync_generic.h
4874   include/grpc/impl/codegen/sync_posix.h
4875   include/grpc/impl/codegen/sync_windows.h
4876   include/grpc/byte_buffer.h
4877   include/grpc/byte_buffer_reader.h
4878   include/grpc/compression.h
4879   include/grpc/fork.h
4880   include/grpc/grpc.h
4881   include/grpc/grpc_posix.h
4882   include/grpc/grpc_security_constants.h
4883   include/grpc/load_reporting.h
4884   include/grpc/slice.h
4885   include/grpc/slice_buffer.h
4886   include/grpc/status.h
4887   include/grpc/support/workaround_list.h
4888   include/grpc/impl/codegen/byte_buffer.h
4889   include/grpc/impl/codegen/byte_buffer_reader.h
4890   include/grpc/impl/codegen/compression_types.h
4891   include/grpc/impl/codegen/connectivity_state.h
4892   include/grpc/impl/codegen/grpc_types.h
4893   include/grpc/impl/codegen/propagation_bits.h
4894   include/grpc/impl/codegen/slice.h
4895   include/grpc/impl/codegen/status.h
4896   include/grpc++/impl/codegen/async_stream.h
4897   include/grpc++/impl/codegen/async_unary_call.h
4898   include/grpc++/impl/codegen/byte_buffer.h
4899   include/grpc++/impl/codegen/call.h
4900   include/grpc++/impl/codegen/call_hook.h
4901   include/grpc++/impl/codegen/channel_interface.h
4902   include/grpc++/impl/codegen/client_context.h
4903   include/grpc++/impl/codegen/client_unary_call.h
4904   include/grpc++/impl/codegen/completion_queue.h
4905   include/grpc++/impl/codegen/completion_queue_tag.h
4906   include/grpc++/impl/codegen/config.h
4907   include/grpc++/impl/codegen/core_codegen_interface.h
4908   include/grpc++/impl/codegen/create_auth_context.h
4909   include/grpc++/impl/codegen/grpc_library.h
4910   include/grpc++/impl/codegen/metadata_map.h
4911   include/grpc++/impl/codegen/method_handler_impl.h
4912   include/grpc++/impl/codegen/rpc_method.h
4913   include/grpc++/impl/codegen/rpc_service_method.h
4914   include/grpc++/impl/codegen/security/auth_context.h
4915   include/grpc++/impl/codegen/serialization_traits.h
4916   include/grpc++/impl/codegen/server_context.h
4917   include/grpc++/impl/codegen/server_interface.h
4918   include/grpc++/impl/codegen/service_type.h
4919   include/grpc++/impl/codegen/slice.h
4920   include/grpc++/impl/codegen/status.h
4921   include/grpc++/impl/codegen/status_code_enum.h
4922   include/grpc++/impl/codegen/string_ref.h
4923   include/grpc++/impl/codegen/stub_options.h
4924   include/grpc++/impl/codegen/sync_stream.h
4925   include/grpc++/impl/codegen/time.h
4926   include/grpcpp/impl/codegen/async_generic_service.h
4927   include/grpcpp/impl/codegen/async_stream.h
4928   include/grpcpp/impl/codegen/async_unary_call.h
4929   include/grpcpp/impl/codegen/byte_buffer.h
4930   include/grpcpp/impl/codegen/call.h
4931   include/grpcpp/impl/codegen/call_hook.h
4932   include/grpcpp/impl/codegen/call_op_set.h
4933   include/grpcpp/impl/codegen/call_op_set_interface.h
4934   include/grpcpp/impl/codegen/callback_common.h
4935   include/grpcpp/impl/codegen/channel_interface.h
4936   include/grpcpp/impl/codegen/client_callback.h
4937   include/grpcpp/impl/codegen/client_context.h
4938   include/grpcpp/impl/codegen/client_context_impl.h
4939   include/grpcpp/impl/codegen/client_interceptor.h
4940   include/grpcpp/impl/codegen/client_unary_call.h
4941   include/grpcpp/impl/codegen/completion_queue.h
4942   include/grpcpp/impl/codegen/completion_queue_impl.h
4943   include/grpcpp/impl/codegen/completion_queue_tag.h
4944   include/grpcpp/impl/codegen/config.h
4945   include/grpcpp/impl/codegen/core_codegen_interface.h
4946   include/grpcpp/impl/codegen/create_auth_context.h
4947   include/grpcpp/impl/codegen/grpc_library.h
4948   include/grpcpp/impl/codegen/intercepted_channel.h
4949   include/grpcpp/impl/codegen/interceptor.h
4950   include/grpcpp/impl/codegen/interceptor_common.h
4951   include/grpcpp/impl/codegen/message_allocator.h
4952   include/grpcpp/impl/codegen/metadata_map.h
4953   include/grpcpp/impl/codegen/method_handler_impl.h
4954   include/grpcpp/impl/codegen/rpc_method.h
4955   include/grpcpp/impl/codegen/rpc_service_method.h
4956   include/grpcpp/impl/codegen/security/auth_context.h
4957   include/grpcpp/impl/codegen/serialization_traits.h
4958   include/grpcpp/impl/codegen/server_callback.h
4959   include/grpcpp/impl/codegen/server_context.h
4960   include/grpcpp/impl/codegen/server_context_impl.h
4961   include/grpcpp/impl/codegen/server_interceptor.h
4962   include/grpcpp/impl/codegen/server_interface.h
4963   include/grpcpp/impl/codegen/service_type.h
4964   include/grpcpp/impl/codegen/slice.h
4965   include/grpcpp/impl/codegen/status.h
4966   include/grpcpp/impl/codegen/status_code_enum.h
4967   include/grpcpp/impl/codegen/string_ref.h
4968   include/grpcpp/impl/codegen/stub_options.h
4969   include/grpcpp/impl/codegen/sync_stream.h
4970   include/grpcpp/impl/codegen/time.h
4971   include/grpcpp/impl/codegen/sync.h
4972 )
4973   string(REPLACE "include/" "" _path ${_hdr})
4974   get_filename_component(_path ${_path} PATH)
4975   install(FILES ${_hdr}
4976     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4977   )
4978 endforeach()
4979
4980
4981 if (gRPC_INSTALL)
4982   install(TARGETS grpc++_unsecure EXPORT gRPCTargets
4983     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
4984     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
4985     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
4986   )
4987 endif()
4988
4989 if (gRPC_BUILD_TESTS)
4990
4991 add_library(grpc_benchmark
4992   test/cpp/microbenchmarks/helpers.cc
4993 )
4994
4995 if(WIN32 AND MSVC)
4996   set_target_properties(grpc_benchmark PROPERTIES COMPILE_PDB_NAME "grpc_benchmark"
4997     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4998   )
4999   if (gRPC_INSTALL)
5000     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_benchmark.pdb
5001       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5002     )
5003   endif()
5004 endif()
5005
5006
5007 target_include_directories(grpc_benchmark
5008   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5009   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5010   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5011   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5012   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5013   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5014   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5015   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5016   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5017   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5018   PRIVATE third_party/googletest/googletest/include
5019   PRIVATE third_party/googletest/googletest
5020   PRIVATE third_party/googletest/googlemock/include
5021   PRIVATE third_party/googletest/googlemock
5022   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5023 )
5024 target_link_libraries(grpc_benchmark
5025   ${_gRPC_PROTOBUF_LIBRARIES}
5026   ${_gRPC_ALLTARGETS_LIBRARIES}
5027   ${_gRPC_BENCHMARK_LIBRARIES}
5028   grpc++_unsecure
5029   grpc_test_util_unsecure
5030   grpc_unsecure
5031   ${_gRPC_GFLAGS_LIBRARIES}
5032 )
5033
5034
5035 endif (gRPC_BUILD_TESTS)
5036 if (gRPC_BUILD_TESTS)
5037
5038 if (gRPC_BUILD_CODEGEN)
5039 add_library(grpc_cli_libs
5040   test/cpp/util/cli_call.cc
5041   test/cpp/util/cli_credentials.cc
5042   test/cpp/util/grpc_tool.cc
5043   test/cpp/util/proto_file_parser.cc
5044   test/cpp/util/service_describer.cc
5045   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
5046   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
5047   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
5048   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h
5049 )
5050
5051 if(WIN32 AND MSVC)
5052   set_target_properties(grpc_cli_libs PROPERTIES COMPILE_PDB_NAME "grpc_cli_libs"
5053     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5054   )
5055   if (gRPC_INSTALL)
5056     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_cli_libs.pdb
5057       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5058     )
5059   endif()
5060 endif()
5061
5062 protobuf_generate_grpc_cpp(
5063   src/proto/grpc/reflection/v1alpha/reflection.proto
5064 )
5065
5066 target_include_directories(grpc_cli_libs
5067   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5068   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5069   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5070   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5071   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5072   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5073   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5074   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5075   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5076   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5077   PRIVATE third_party/googletest/googletest/include
5078   PRIVATE third_party/googletest/googletest
5079   PRIVATE third_party/googletest/googlemock/include
5080   PRIVATE third_party/googletest/googlemock
5081   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5082 )
5083 target_link_libraries(grpc_cli_libs
5084   ${_gRPC_PROTOBUF_LIBRARIES}
5085   ${_gRPC_ALLTARGETS_LIBRARIES}
5086   grpc++_proto_reflection_desc_db
5087   grpc++
5088   grpc
5089   ${_gRPC_GFLAGS_LIBRARIES}
5090 )
5091
5092 foreach(_hdr
5093   include/grpc++/impl/codegen/config_protobuf.h
5094   include/grpcpp/impl/codegen/config_protobuf.h
5095 )
5096   string(REPLACE "include/" "" _path ${_hdr})
5097   get_filename_component(_path ${_path} PATH)
5098   install(FILES ${_hdr}
5099     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
5100   )
5101 endforeach()
5102 endif (gRPC_BUILD_CODEGEN)
5103
5104 endif (gRPC_BUILD_TESTS)
5105
5106 add_library(grpc_plugin_support
5107   src/compiler/cpp_generator.cc
5108   src/compiler/csharp_generator.cc
5109   src/compiler/node_generator.cc
5110   src/compiler/objective_c_generator.cc
5111   src/compiler/php_generator.cc
5112   src/compiler/python_generator.cc
5113   src/compiler/ruby_generator.cc
5114 )
5115
5116 if(WIN32 AND MSVC)
5117   set_target_properties(grpc_plugin_support PROPERTIES COMPILE_PDB_NAME "grpc_plugin_support"
5118     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5119   )
5120   if (gRPC_INSTALL)
5121     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_plugin_support.pdb
5122       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5123     )
5124   endif()
5125 endif()
5126
5127
5128 target_include_directories(grpc_plugin_support
5129   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5130   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5131   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5132   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5133   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5134   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5135   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5136   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5137   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5138   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5139   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5140 )
5141 target_link_libraries(grpc_plugin_support
5142   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
5143   ${_gRPC_PROTOBUF_LIBRARIES}
5144   ${_gRPC_ALLTARGETS_LIBRARIES}
5145 )
5146
5147 foreach(_hdr
5148   include/grpc++/impl/codegen/config_protobuf.h
5149   include/grpcpp/impl/codegen/config_protobuf.h
5150 )
5151   string(REPLACE "include/" "" _path ${_hdr})
5152   get_filename_component(_path ${_path} PATH)
5153   install(FILES ${_hdr}
5154     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
5155   )
5156 endforeach()
5157
5158
5159 if (gRPC_INSTALL)
5160   install(TARGETS grpc_plugin_support EXPORT gRPCTargets
5161     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
5162     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
5163     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
5164   )
5165 endif()
5166
5167
5168 if (gRPC_BUILD_CODEGEN)
5169 add_library(grpcpp_channelz
5170   src/cpp/server/channelz/channelz_service.cc
5171   src/cpp/server/channelz/channelz_service_plugin.cc
5172   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
5173   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
5174   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
5175   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
5176 )
5177
5178 if(WIN32 AND MSVC)
5179   set_target_properties(grpcpp_channelz PROPERTIES COMPILE_PDB_NAME "grpcpp_channelz"
5180     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5181   )
5182   if (gRPC_INSTALL)
5183     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpcpp_channelz.pdb
5184       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5185     )
5186   endif()
5187 endif()
5188
5189 protobuf_generate_grpc_cpp(
5190   src/proto/grpc/channelz/channelz.proto
5191 )
5192
5193 target_include_directories(grpcpp_channelz
5194   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5195   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5196   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5197   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5198   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5199   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5200   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5201   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5202   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5203   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5204   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5205 )
5206 target_link_libraries(grpcpp_channelz
5207   ${_gRPC_PROTOBUF_LIBRARIES}
5208   ${_gRPC_ALLTARGETS_LIBRARIES}
5209   grpc++
5210   grpc
5211 )
5212
5213 foreach(_hdr
5214   include/grpcpp/ext/channelz_service_plugin.h
5215   include/grpcpp/ext/channelz_service_plugin_impl.h
5216 )
5217   string(REPLACE "include/" "" _path ${_hdr})
5218   get_filename_component(_path ${_path} PATH)
5219   install(FILES ${_hdr}
5220     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
5221   )
5222 endforeach()
5223 endif (gRPC_BUILD_CODEGEN)
5224
5225 if (gRPC_BUILD_CODEGEN)
5226
5227 if (gRPC_INSTALL)
5228   install(TARGETS grpcpp_channelz EXPORT gRPCTargets
5229     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
5230     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
5231     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
5232   )
5233 endif()
5234
5235 endif (gRPC_BUILD_CODEGEN)
5236 if (gRPC_BUILD_TESTS)
5237
5238 if (gRPC_BUILD_CODEGEN)
5239 add_library(http2_client_main
5240   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
5241   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
5242   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
5243   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
5244   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5245   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5246   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5247   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5248   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
5249   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
5250   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
5251   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
5252   test/cpp/interop/http2_client.cc
5253 )
5254
5255 if(WIN32 AND MSVC)
5256   set_target_properties(http2_client_main PROPERTIES COMPILE_PDB_NAME "http2_client_main"
5257     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5258   )
5259   if (gRPC_INSTALL)
5260     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/http2_client_main.pdb
5261       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5262     )
5263   endif()
5264 endif()
5265
5266 protobuf_generate_grpc_cpp(
5267   src/proto/grpc/testing/empty.proto
5268 )
5269 protobuf_generate_grpc_cpp(
5270   src/proto/grpc/testing/messages.proto
5271 )
5272 protobuf_generate_grpc_cpp(
5273   src/proto/grpc/testing/test.proto
5274 )
5275
5276 target_include_directories(http2_client_main
5277   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5278   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5279   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5280   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5281   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5282   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5283   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5284   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5285   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5286   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5287   PRIVATE third_party/googletest/googletest/include
5288   PRIVATE third_party/googletest/googletest
5289   PRIVATE third_party/googletest/googlemock/include
5290   PRIVATE third_party/googletest/googlemock
5291   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5292 )
5293 target_link_libraries(http2_client_main
5294   ${_gRPC_PROTOBUF_LIBRARIES}
5295   ${_gRPC_ALLTARGETS_LIBRARIES}
5296   grpc++_test_util
5297   grpc_test_util
5298   grpc++
5299   grpc
5300   grpc++_test_config
5301   ${_gRPC_GFLAGS_LIBRARIES}
5302 )
5303
5304 endif (gRPC_BUILD_CODEGEN)
5305
5306 endif (gRPC_BUILD_TESTS)
5307 if (gRPC_BUILD_TESTS)
5308
5309 if (gRPC_BUILD_CODEGEN)
5310 add_library(interop_client_helper
5311   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5312   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5313   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5314   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5315   test/cpp/interop/client_helper.cc
5316 )
5317
5318 if(WIN32 AND MSVC)
5319   set_target_properties(interop_client_helper PROPERTIES COMPILE_PDB_NAME "interop_client_helper"
5320     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5321   )
5322   if (gRPC_INSTALL)
5323     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_client_helper.pdb
5324       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5325     )
5326   endif()
5327 endif()
5328
5329 protobuf_generate_grpc_cpp(
5330   src/proto/grpc/testing/messages.proto
5331 )
5332
5333 target_include_directories(interop_client_helper
5334   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5335   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5336   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5337   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5338   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5339   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5340   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5341   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5342   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5343   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5344   PRIVATE third_party/googletest/googletest/include
5345   PRIVATE third_party/googletest/googletest
5346   PRIVATE third_party/googletest/googlemock/include
5347   PRIVATE third_party/googletest/googlemock
5348   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5349 )
5350 target_link_libraries(interop_client_helper
5351   ${_gRPC_PROTOBUF_LIBRARIES}
5352   ${_gRPC_ALLTARGETS_LIBRARIES}
5353   grpc++_test_util
5354   grpc_test_util
5355   grpc++
5356   grpc
5357   gpr
5358   ${_gRPC_GFLAGS_LIBRARIES}
5359 )
5360
5361 endif (gRPC_BUILD_CODEGEN)
5362
5363 endif (gRPC_BUILD_TESTS)
5364 if (gRPC_BUILD_TESTS)
5365
5366 if (gRPC_BUILD_CODEGEN)
5367 add_library(interop_client_main
5368   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
5369   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
5370   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
5371   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
5372   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5373   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5374   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5375   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5376   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
5377   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
5378   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
5379   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
5380   test/cpp/interop/client.cc
5381   test/cpp/interop/interop_client.cc
5382 )
5383
5384 if(WIN32 AND MSVC)
5385   set_target_properties(interop_client_main PROPERTIES COMPILE_PDB_NAME "interop_client_main"
5386     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5387   )
5388   if (gRPC_INSTALL)
5389     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_client_main.pdb
5390       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5391     )
5392   endif()
5393 endif()
5394
5395 protobuf_generate_grpc_cpp(
5396   src/proto/grpc/testing/empty.proto
5397 )
5398 protobuf_generate_grpc_cpp(
5399   src/proto/grpc/testing/messages.proto
5400 )
5401 protobuf_generate_grpc_cpp(
5402   src/proto/grpc/testing/test.proto
5403 )
5404
5405 target_include_directories(interop_client_main
5406   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5407   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5408   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5409   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5410   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5411   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5412   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5413   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5414   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5415   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5416   PRIVATE third_party/googletest/googletest/include
5417   PRIVATE third_party/googletest/googletest
5418   PRIVATE third_party/googletest/googlemock/include
5419   PRIVATE third_party/googletest/googlemock
5420   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5421 )
5422 target_link_libraries(interop_client_main
5423   ${_gRPC_PROTOBUF_LIBRARIES}
5424   ${_gRPC_ALLTARGETS_LIBRARIES}
5425   interop_client_helper
5426   grpc++_test_util
5427   grpc_test_util
5428   grpc++
5429   grpc
5430   gpr
5431   grpc++_test_config
5432   ${_gRPC_GFLAGS_LIBRARIES}
5433 )
5434
5435 endif (gRPC_BUILD_CODEGEN)
5436
5437 endif (gRPC_BUILD_TESTS)
5438 if (gRPC_BUILD_TESTS)
5439
5440 add_library(interop_server_helper
5441   test/cpp/interop/server_helper.cc
5442 )
5443
5444 if(WIN32 AND MSVC)
5445   set_target_properties(interop_server_helper PROPERTIES COMPILE_PDB_NAME "interop_server_helper"
5446     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5447   )
5448   if (gRPC_INSTALL)
5449     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_server_helper.pdb
5450       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5451     )
5452   endif()
5453 endif()
5454
5455
5456 target_include_directories(interop_server_helper
5457   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5458   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5459   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5460   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5461   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5462   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5463   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5464   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5465   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5466   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5467   PRIVATE third_party/googletest/googletest/include
5468   PRIVATE third_party/googletest/googletest
5469   PRIVATE third_party/googletest/googlemock/include
5470   PRIVATE third_party/googletest/googlemock
5471   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5472 )
5473 target_link_libraries(interop_server_helper
5474   ${_gRPC_PROTOBUF_LIBRARIES}
5475   ${_gRPC_ALLTARGETS_LIBRARIES}
5476   grpc++_test_util
5477   grpc_test_util
5478   grpc++
5479   grpc
5480   gpr
5481   ${_gRPC_GFLAGS_LIBRARIES}
5482 )
5483
5484
5485 endif (gRPC_BUILD_TESTS)
5486 if (gRPC_BUILD_TESTS)
5487
5488 if (gRPC_BUILD_CODEGEN)
5489 add_library(interop_server_lib
5490   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
5491   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
5492   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
5493   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
5494   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5495   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5496   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5497   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5498   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
5499   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
5500   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
5501   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
5502   test/cpp/interop/interop_server.cc
5503 )
5504
5505 if(WIN32 AND MSVC)
5506   set_target_properties(interop_server_lib PROPERTIES COMPILE_PDB_NAME "interop_server_lib"
5507     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5508   )
5509   if (gRPC_INSTALL)
5510     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_server_lib.pdb
5511       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5512     )
5513   endif()
5514 endif()
5515
5516 protobuf_generate_grpc_cpp(
5517   src/proto/grpc/testing/empty.proto
5518 )
5519 protobuf_generate_grpc_cpp(
5520   src/proto/grpc/testing/messages.proto
5521 )
5522 protobuf_generate_grpc_cpp(
5523   src/proto/grpc/testing/test.proto
5524 )
5525
5526 target_include_directories(interop_server_lib
5527   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5528   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5529   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5530   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5531   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5532   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5533   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5534   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5535   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5536   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5537   PRIVATE third_party/googletest/googletest/include
5538   PRIVATE third_party/googletest/googletest
5539   PRIVATE third_party/googletest/googlemock/include
5540   PRIVATE third_party/googletest/googlemock
5541   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5542 )
5543 target_link_libraries(interop_server_lib
5544   ${_gRPC_PROTOBUF_LIBRARIES}
5545   ${_gRPC_ALLTARGETS_LIBRARIES}
5546   interop_server_helper
5547   grpc++_test_util
5548   grpc_test_util
5549   grpc++
5550   grpc
5551   gpr
5552   grpc++_test_config
5553   ${_gRPC_GFLAGS_LIBRARIES}
5554 )
5555
5556 endif (gRPC_BUILD_CODEGEN)
5557
5558 endif (gRPC_BUILD_TESTS)
5559 if (gRPC_BUILD_TESTS)
5560
5561 add_library(interop_server_main
5562   test/cpp/interop/interop_server_bootstrap.cc
5563 )
5564
5565 if(WIN32 AND MSVC)
5566   set_target_properties(interop_server_main PROPERTIES COMPILE_PDB_NAME "interop_server_main"
5567     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5568   )
5569   if (gRPC_INSTALL)
5570     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_server_main.pdb
5571       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5572     )
5573   endif()
5574 endif()
5575
5576
5577 target_include_directories(interop_server_main
5578   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5579   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5580   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5581   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5582   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5583   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5584   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5585   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5586   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5587   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5588   PRIVATE third_party/googletest/googletest/include
5589   PRIVATE third_party/googletest/googletest
5590   PRIVATE third_party/googletest/googlemock/include
5591   PRIVATE third_party/googletest/googlemock
5592   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5593 )
5594 target_link_libraries(interop_server_main
5595   ${_gRPC_PROTOBUF_LIBRARIES}
5596   ${_gRPC_ALLTARGETS_LIBRARIES}
5597   interop_server_lib
5598   ${_gRPC_GFLAGS_LIBRARIES}
5599 )
5600
5601
5602 endif (gRPC_BUILD_TESTS)
5603 if (gRPC_BUILD_TESTS)
5604
5605 if (gRPC_BUILD_CODEGEN)
5606 add_library(qps
5607   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5608   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5609   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5610   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5611   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.cc
5612   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.cc
5613   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.h
5614   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.h
5615   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.cc
5616   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.cc
5617   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.h
5618   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.h
5619   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.cc
5620   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.cc
5621   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.h
5622   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.h
5623   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.cc
5624   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.cc
5625   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.h
5626   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.h
5627   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.cc
5628   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.cc
5629   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.h
5630   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.h
5631   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.cc
5632   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.cc
5633   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.h
5634   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.h
5635   test/cpp/qps/benchmark_config.cc
5636   test/cpp/qps/client_async.cc
5637   test/cpp/qps/client_callback.cc
5638   test/cpp/qps/client_sync.cc
5639   test/cpp/qps/driver.cc
5640   test/cpp/qps/parse_json.cc
5641   test/cpp/qps/qps_server_builder.cc
5642   test/cpp/qps/qps_worker.cc
5643   test/cpp/qps/report.cc
5644   test/cpp/qps/server_async.cc
5645   test/cpp/qps/server_callback.cc
5646   test/cpp/qps/server_sync.cc
5647   test/cpp/qps/usage_timer.cc
5648 )
5649
5650 if(WIN32 AND MSVC)
5651   set_target_properties(qps PROPERTIES COMPILE_PDB_NAME "qps"
5652     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5653   )
5654   if (gRPC_INSTALL)
5655     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qps.pdb
5656       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5657     )
5658   endif()
5659 endif()
5660
5661 protobuf_generate_grpc_cpp(
5662   src/proto/grpc/testing/messages.proto
5663 )
5664 protobuf_generate_grpc_cpp(
5665   src/proto/grpc/testing/payloads.proto
5666 )
5667 protobuf_generate_grpc_cpp(
5668   src/proto/grpc/testing/stats.proto
5669 )
5670 protobuf_generate_grpc_cpp(
5671   src/proto/grpc/testing/control.proto
5672 )
5673 protobuf_generate_grpc_cpp(
5674   src/proto/grpc/testing/benchmark_service.proto
5675 )
5676 protobuf_generate_grpc_cpp(
5677   src/proto/grpc/testing/report_qps_scenario_service.proto
5678 )
5679 protobuf_generate_grpc_cpp(
5680   src/proto/grpc/testing/worker_service.proto
5681 )
5682
5683 target_include_directories(qps
5684   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5685   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5686   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5687   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5688   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5689   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5690   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5691   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5692   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5693   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5694   PRIVATE third_party/googletest/googletest/include
5695   PRIVATE third_party/googletest/googletest
5696   PRIVATE third_party/googletest/googlemock/include
5697   PRIVATE third_party/googletest/googlemock
5698   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5699 )
5700 target_link_libraries(qps
5701   ${_gRPC_PROTOBUF_LIBRARIES}
5702   ${_gRPC_ALLTARGETS_LIBRARIES}
5703   grpc_test_util
5704   grpc++_test_util
5705   grpc++_core_stats
5706   grpc++
5707   grpc
5708   ${_gRPC_GFLAGS_LIBRARIES}
5709 )
5710
5711 endif (gRPC_BUILD_CODEGEN)
5712
5713 endif (gRPC_BUILD_TESTS)
5714 if (gRPC_BUILD_CSHARP_EXT)
5715
5716 add_library(grpc_csharp_ext SHARED
5717   src/csharp/ext/grpc_csharp_ext.c
5718 )
5719
5720 if(WIN32 AND MSVC)
5721   set_target_properties(grpc_csharp_ext PROPERTIES COMPILE_PDB_NAME "grpc_csharp_ext"
5722     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5723   )
5724   if (gRPC_INSTALL)
5725     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_csharp_ext.pdb
5726       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5727     )
5728   endif()
5729 endif()
5730
5731
5732 target_include_directories(grpc_csharp_ext
5733   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5734   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5735   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5736   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5737   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5738   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5739   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5740   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5741   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5742   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5743 )
5744   # avoid dependency on libstdc++
5745   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5746     set_target_properties(grpc_csharp_ext PROPERTIES LINKER_LANGUAGE C)
5747     # only use the flags for C++ source files
5748     target_compile_options(grpc_csharp_ext PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5749   endif()
5750 target_link_libraries(grpc_csharp_ext
5751   ${_gRPC_ALLTARGETS_LIBRARIES}
5752   grpc
5753   gpr
5754 )
5755
5756
5757
5758 if (gRPC_INSTALL)
5759   install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
5760     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
5761     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
5762     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
5763   )
5764 endif()
5765
5766 endif (gRPC_BUILD_CSHARP_EXT)
5767 if (gRPC_BUILD_TESTS)
5768
5769 add_library(bad_client_test
5770   test/core/bad_client/bad_client.cc
5771 )
5772
5773 if(WIN32 AND MSVC)
5774   set_target_properties(bad_client_test PROPERTIES COMPILE_PDB_NAME "bad_client_test"
5775     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5776   )
5777   if (gRPC_INSTALL)
5778     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bad_client_test.pdb
5779       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5780     )
5781   endif()
5782 endif()
5783
5784
5785 target_include_directories(bad_client_test
5786   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5787   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5788   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5789   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5790   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5791   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5792   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5793   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5794   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5795   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5796   PRIVATE third_party/googletest/googletest/include
5797   PRIVATE third_party/googletest/googletest
5798   PRIVATE third_party/googletest/googlemock/include
5799   PRIVATE third_party/googletest/googlemock
5800   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5801 )
5802 target_link_libraries(bad_client_test
5803   ${_gRPC_PROTOBUF_LIBRARIES}
5804   ${_gRPC_ALLTARGETS_LIBRARIES}
5805   grpc_test_util_unsecure
5806   grpc_unsecure
5807   gpr
5808   ${_gRPC_GFLAGS_LIBRARIES}
5809 )
5810
5811
5812 endif (gRPC_BUILD_TESTS)
5813 if (gRPC_BUILD_TESTS)
5814
5815 add_library(bad_ssl_test_server
5816   test/core/bad_ssl/server_common.cc
5817 )
5818
5819 if(WIN32 AND MSVC)
5820   set_target_properties(bad_ssl_test_server PROPERTIES COMPILE_PDB_NAME "bad_ssl_test_server"
5821     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5822   )
5823   if (gRPC_INSTALL)
5824     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bad_ssl_test_server.pdb
5825       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5826     )
5827   endif()
5828 endif()
5829
5830
5831 target_include_directories(bad_ssl_test_server
5832   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5833   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5834   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5835   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5836   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5837   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5838   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5839   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5840   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5841   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5842 )
5843   # avoid dependency on libstdc++
5844   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5845     set_target_properties(bad_ssl_test_server PROPERTIES LINKER_LANGUAGE C)
5846     # only use the flags for C++ source files
5847     target_compile_options(bad_ssl_test_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5848   endif()
5849 target_link_libraries(bad_ssl_test_server
5850   ${_gRPC_ALLTARGETS_LIBRARIES}
5851   grpc_test_util
5852   grpc
5853   gpr
5854 )
5855
5856
5857 endif (gRPC_BUILD_TESTS)
5858 if (gRPC_BUILD_TESTS)
5859
5860 add_library(end2end_tests
5861   test/core/end2end/end2end_tests.cc
5862   test/core/end2end/end2end_test_utils.cc
5863   test/core/end2end/tests/authority_not_supported.cc
5864   test/core/end2end/tests/bad_hostname.cc
5865   test/core/end2end/tests/bad_ping.cc
5866   test/core/end2end/tests/binary_metadata.cc
5867   test/core/end2end/tests/call_creds.cc
5868   test/core/end2end/tests/call_host_override.cc
5869   test/core/end2end/tests/cancel_after_accept.cc
5870   test/core/end2end/tests/cancel_after_client_done.cc
5871   test/core/end2end/tests/cancel_after_invoke.cc
5872   test/core/end2end/tests/cancel_after_round_trip.cc
5873   test/core/end2end/tests/cancel_before_invoke.cc
5874   test/core/end2end/tests/cancel_in_a_vacuum.cc
5875   test/core/end2end/tests/cancel_with_status.cc
5876   test/core/end2end/tests/channelz.cc
5877   test/core/end2end/tests/compressed_payload.cc
5878   test/core/end2end/tests/connectivity.cc
5879   test/core/end2end/tests/default_host.cc
5880   test/core/end2end/tests/disappearing_server.cc
5881   test/core/end2end/tests/empty_batch.cc
5882   test/core/end2end/tests/filter_call_init_fails.cc
5883   test/core/end2end/tests/filter_causes_close.cc
5884   test/core/end2end/tests/filter_context.cc
5885   test/core/end2end/tests/filter_latency.cc
5886   test/core/end2end/tests/filter_status_code.cc
5887   test/core/end2end/tests/graceful_server_shutdown.cc
5888   test/core/end2end/tests/high_initial_seqno.cc
5889   test/core/end2end/tests/hpack_size.cc
5890   test/core/end2end/tests/idempotent_request.cc
5891   test/core/end2end/tests/invoke_large_request.cc
5892   test/core/end2end/tests/keepalive_timeout.cc
5893   test/core/end2end/tests/large_metadata.cc
5894   test/core/end2end/tests/max_concurrent_streams.cc
5895   test/core/end2end/tests/max_connection_age.cc
5896   test/core/end2end/tests/max_connection_idle.cc
5897   test/core/end2end/tests/max_message_length.cc
5898   test/core/end2end/tests/negative_deadline.cc
5899   test/core/end2end/tests/no_error_on_hotpath.cc
5900   test/core/end2end/tests/no_logging.cc
5901   test/core/end2end/tests/no_op.cc
5902   test/core/end2end/tests/payload.cc
5903   test/core/end2end/tests/ping.cc
5904   test/core/end2end/tests/ping_pong_streaming.cc
5905   test/core/end2end/tests/proxy_auth.cc
5906   test/core/end2end/tests/registered_call.cc
5907   test/core/end2end/tests/request_with_flags.cc
5908   test/core/end2end/tests/request_with_payload.cc
5909   test/core/end2end/tests/resource_quota_server.cc
5910   test/core/end2end/tests/retry.cc
5911   test/core/end2end/tests/retry_cancellation.cc
5912   test/core/end2end/tests/retry_disabled.cc
5913   test/core/end2end/tests/retry_exceeds_buffer_size_in_initial_batch.cc
5914   test/core/end2end/tests/retry_exceeds_buffer_size_in_subsequent_batch.cc
5915   test/core/end2end/tests/retry_non_retriable_status.cc
5916   test/core/end2end/tests/retry_non_retriable_status_before_recv_trailing_metadata_started.cc
5917   test/core/end2end/tests/retry_recv_initial_metadata.cc
5918   test/core/end2end/tests/retry_recv_message.cc
5919   test/core/end2end/tests/retry_server_pushback_delay.cc
5920   test/core/end2end/tests/retry_server_pushback_disabled.cc
5921   test/core/end2end/tests/retry_streaming.cc
5922   test/core/end2end/tests/retry_streaming_after_commit.cc
5923   test/core/end2end/tests/retry_streaming_succeeds_before_replay_finished.cc
5924   test/core/end2end/tests/retry_throttled.cc
5925   test/core/end2end/tests/retry_too_many_attempts.cc
5926   test/core/end2end/tests/server_finishes_request.cc
5927   test/core/end2end/tests/shutdown_finishes_calls.cc
5928   test/core/end2end/tests/shutdown_finishes_tags.cc
5929   test/core/end2end/tests/simple_cacheable_request.cc
5930   test/core/end2end/tests/simple_delayed_request.cc
5931   test/core/end2end/tests/simple_metadata.cc
5932   test/core/end2end/tests/simple_request.cc
5933   test/core/end2end/tests/stream_compression_compressed_payload.cc
5934   test/core/end2end/tests/stream_compression_payload.cc
5935   test/core/end2end/tests/stream_compression_ping_pong_streaming.cc
5936   test/core/end2end/tests/streaming_error_response.cc
5937   test/core/end2end/tests/trailing_metadata.cc
5938   test/core/end2end/tests/workaround_cronet_compression.cc
5939   test/core/end2end/tests/write_buffering.cc
5940   test/core/end2end/tests/write_buffering_at_end.cc
5941 )
5942
5943 if(WIN32 AND MSVC)
5944   set_target_properties(end2end_tests PROPERTIES COMPILE_PDB_NAME "end2end_tests"
5945     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5946   )
5947   if (gRPC_INSTALL)
5948     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/end2end_tests.pdb
5949       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5950     )
5951   endif()
5952 endif()
5953
5954
5955 target_include_directories(end2end_tests
5956   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5957   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5958   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5959   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5960   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5961   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5962   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5963   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5964   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5965   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5966 )
5967   # avoid dependency on libstdc++
5968   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5969     set_target_properties(end2end_tests PROPERTIES LINKER_LANGUAGE C)
5970     # only use the flags for C++ source files
5971     target_compile_options(end2end_tests PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5972   endif()
5973 target_link_libraries(end2end_tests
5974   ${_gRPC_SSL_LIBRARIES}
5975   ${_gRPC_ALLTARGETS_LIBRARIES}
5976   grpc_test_util
5977   grpc
5978   gpr
5979 )
5980
5981
5982 endif (gRPC_BUILD_TESTS)
5983 if (gRPC_BUILD_TESTS)
5984
5985 add_library(end2end_nosec_tests
5986   test/core/end2end/end2end_nosec_tests.cc
5987   test/core/end2end/end2end_test_utils.cc
5988   test/core/end2end/tests/authority_not_supported.cc
5989   test/core/end2end/tests/bad_hostname.cc
5990   test/core/end2end/tests/bad_ping.cc
5991   test/core/end2end/tests/binary_metadata.cc
5992   test/core/end2end/tests/call_host_override.cc
5993   test/core/end2end/tests/cancel_after_accept.cc
5994   test/core/end2end/tests/cancel_after_client_done.cc
5995   test/core/end2end/tests/cancel_after_invoke.cc
5996   test/core/end2end/tests/cancel_after_round_trip.cc
5997   test/core/end2end/tests/cancel_before_invoke.cc
5998   test/core/end2end/tests/cancel_in_a_vacuum.cc
5999   test/core/end2end/tests/cancel_with_status.cc
6000   test/core/end2end/tests/channelz.cc
6001   test/core/end2end/tests/compressed_payload.cc
6002   test/core/end2end/tests/connectivity.cc
6003   test/core/end2end/tests/default_host.cc
6004   test/core/end2end/tests/disappearing_server.cc
6005   test/core/end2end/tests/empty_batch.cc
6006   test/core/end2end/tests/filter_call_init_fails.cc
6007   test/core/end2end/tests/filter_causes_close.cc
6008   test/core/end2end/tests/filter_context.cc
6009   test/core/end2end/tests/filter_latency.cc
6010   test/core/end2end/tests/filter_status_code.cc
6011   test/core/end2end/tests/graceful_server_shutdown.cc
6012   test/core/end2end/tests/high_initial_seqno.cc
6013   test/core/end2end/tests/hpack_size.cc
6014   test/core/end2end/tests/idempotent_request.cc
6015   test/core/end2end/tests/invoke_large_request.cc
6016   test/core/end2end/tests/keepalive_timeout.cc
6017   test/core/end2end/tests/large_metadata.cc
6018   test/core/end2end/tests/max_concurrent_streams.cc
6019   test/core/end2end/tests/max_connection_age.cc
6020   test/core/end2end/tests/max_connection_idle.cc
6021   test/core/end2end/tests/max_message_length.cc
6022   test/core/end2end/tests/negative_deadline.cc
6023   test/core/end2end/tests/no_error_on_hotpath.cc
6024   test/core/end2end/tests/no_logging.cc
6025   test/core/end2end/tests/no_op.cc
6026   test/core/end2end/tests/payload.cc
6027   test/core/end2end/tests/ping.cc
6028   test/core/end2end/tests/ping_pong_streaming.cc
6029   test/core/end2end/tests/proxy_auth.cc
6030   test/core/end2end/tests/registered_call.cc
6031   test/core/end2end/tests/request_with_flags.cc
6032   test/core/end2end/tests/request_with_payload.cc
6033   test/core/end2end/tests/resource_quota_server.cc
6034   test/core/end2end/tests/retry.cc
6035   test/core/end2end/tests/retry_cancellation.cc
6036   test/core/end2end/tests/retry_disabled.cc
6037   test/core/end2end/tests/retry_exceeds_buffer_size_in_initial_batch.cc
6038   test/core/end2end/tests/retry_exceeds_buffer_size_in_subsequent_batch.cc
6039   test/core/end2end/tests/retry_non_retriable_status.cc
6040   test/core/end2end/tests/retry_non_retriable_status_before_recv_trailing_metadata_started.cc
6041   test/core/end2end/tests/retry_recv_initial_metadata.cc
6042   test/core/end2end/tests/retry_recv_message.cc
6043   test/core/end2end/tests/retry_server_pushback_delay.cc
6044   test/core/end2end/tests/retry_server_pushback_disabled.cc
6045   test/core/end2end/tests/retry_streaming.cc
6046   test/core/end2end/tests/retry_streaming_after_commit.cc
6047   test/core/end2end/tests/retry_streaming_succeeds_before_replay_finished.cc
6048   test/core/end2end/tests/retry_throttled.cc
6049   test/core/end2end/tests/retry_too_many_attempts.cc
6050   test/core/end2end/tests/server_finishes_request.cc
6051   test/core/end2end/tests/shutdown_finishes_calls.cc
6052   test/core/end2end/tests/shutdown_finishes_tags.cc
6053   test/core/end2end/tests/simple_cacheable_request.cc
6054   test/core/end2end/tests/simple_delayed_request.cc
6055   test/core/end2end/tests/simple_metadata.cc
6056   test/core/end2end/tests/simple_request.cc
6057   test/core/end2end/tests/stream_compression_compressed_payload.cc
6058   test/core/end2end/tests/stream_compression_payload.cc
6059   test/core/end2end/tests/stream_compression_ping_pong_streaming.cc
6060   test/core/end2end/tests/streaming_error_response.cc
6061   test/core/end2end/tests/trailing_metadata.cc
6062   test/core/end2end/tests/workaround_cronet_compression.cc
6063   test/core/end2end/tests/write_buffering.cc
6064   test/core/end2end/tests/write_buffering_at_end.cc
6065 )
6066
6067 if(WIN32 AND MSVC)
6068   set_target_properties(end2end_nosec_tests PROPERTIES COMPILE_PDB_NAME "end2end_nosec_tests"
6069     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
6070   )
6071   if (gRPC_INSTALL)
6072     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/end2end_nosec_tests.pdb
6073       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
6074     )
6075   endif()
6076 endif()
6077
6078
6079 target_include_directories(end2end_nosec_tests
6080   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
6081   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6082   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6083   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6084   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6085   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6086   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6087   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6088   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6089   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6090 )
6091   # avoid dependency on libstdc++
6092   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6093     set_target_properties(end2end_nosec_tests PROPERTIES LINKER_LANGUAGE C)
6094     # only use the flags for C++ source files
6095     target_compile_options(end2end_nosec_tests PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6096   endif()
6097 target_link_libraries(end2end_nosec_tests
6098   ${_gRPC_ALLTARGETS_LIBRARIES}
6099   grpc_test_util_unsecure
6100   grpc_unsecure
6101   gpr
6102 )
6103
6104
6105 endif (gRPC_BUILD_TESTS)
6106
6107 if (gRPC_BUILD_TESTS)
6108
6109 add_executable(algorithm_test
6110   test/core/compression/algorithm_test.cc
6111 )
6112
6113
6114 target_include_directories(algorithm_test
6115   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6116   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6117   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6118   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6119   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6120   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6121   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6122   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6123   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6124   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6125 )
6126
6127 target_link_libraries(algorithm_test
6128   ${_gRPC_ALLTARGETS_LIBRARIES}
6129   grpc_test_util
6130   grpc
6131   gpr
6132 )
6133
6134   # avoid dependency on libstdc++
6135   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6136     set_target_properties(algorithm_test PROPERTIES LINKER_LANGUAGE C)
6137     target_compile_options(algorithm_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6138   endif()
6139
6140 endif (gRPC_BUILD_TESTS)
6141 if (gRPC_BUILD_TESTS)
6142
6143 add_executable(alloc_test
6144   test/core/gpr/alloc_test.cc
6145 )
6146
6147
6148 target_include_directories(alloc_test
6149   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6150   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6151   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6152   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6153   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6154   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6155   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6156   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6157   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6158   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6159 )
6160
6161 target_link_libraries(alloc_test
6162   ${_gRPC_ALLTARGETS_LIBRARIES}
6163   gpr
6164   grpc_test_util_unsecure
6165   grpc_unsecure
6166 )
6167
6168   # avoid dependency on libstdc++
6169   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6170     set_target_properties(alloc_test PROPERTIES LINKER_LANGUAGE C)
6171     target_compile_options(alloc_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6172   endif()
6173
6174 endif (gRPC_BUILD_TESTS)
6175 if (gRPC_BUILD_TESTS)
6176
6177 add_executable(alpn_test
6178   test/core/transport/chttp2/alpn_test.cc
6179 )
6180
6181
6182 target_include_directories(alpn_test
6183   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6184   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6185   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6186   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6187   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6188   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6189   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6190   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6191   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6192   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6193 )
6194
6195 target_link_libraries(alpn_test
6196   ${_gRPC_ALLTARGETS_LIBRARIES}
6197   grpc_test_util
6198   grpc
6199   gpr
6200 )
6201
6202   # avoid dependency on libstdc++
6203   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6204     set_target_properties(alpn_test PROPERTIES LINKER_LANGUAGE C)
6205     target_compile_options(alpn_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6206   endif()
6207
6208 endif (gRPC_BUILD_TESTS)
6209 if (gRPC_BUILD_TESTS)
6210
6211 add_executable(arena_test
6212   test/core/gpr/arena_test.cc
6213 )
6214
6215
6216 target_include_directories(arena_test
6217   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6218   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6219   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6220   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6221   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6222   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6223   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6224   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6225   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6226   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6227 )
6228
6229 target_link_libraries(arena_test
6230   ${_gRPC_ALLTARGETS_LIBRARIES}
6231   gpr
6232   grpc_test_util_unsecure
6233   grpc_unsecure
6234 )
6235
6236   # avoid dependency on libstdc++
6237   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6238     set_target_properties(arena_test PROPERTIES LINKER_LANGUAGE C)
6239     target_compile_options(arena_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6240   endif()
6241
6242 endif (gRPC_BUILD_TESTS)
6243 if (gRPC_BUILD_TESTS)
6244
6245 add_executable(avl_test
6246   test/core/avl/avl_test.cc
6247 )
6248
6249
6250 target_include_directories(avl_test
6251   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6252   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6253   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6254   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6255   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6256   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6257   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6258   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6259   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6260   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6261 )
6262
6263 target_link_libraries(avl_test
6264   ${_gRPC_ALLTARGETS_LIBRARIES}
6265   gpr
6266   grpc_test_util
6267   grpc
6268 )
6269
6270   # avoid dependency on libstdc++
6271   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6272     set_target_properties(avl_test PROPERTIES LINKER_LANGUAGE C)
6273     target_compile_options(avl_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6274   endif()
6275
6276 endif (gRPC_BUILD_TESTS)
6277 if (gRPC_BUILD_TESTS)
6278
6279 add_executable(bad_server_response_test
6280   test/core/end2end/bad_server_response_test.cc
6281 )
6282
6283
6284 target_include_directories(bad_server_response_test
6285   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6286   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6287   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6288   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6289   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6290   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6291   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6292   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6293   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6294   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6295 )
6296
6297 target_link_libraries(bad_server_response_test
6298   ${_gRPC_ALLTARGETS_LIBRARIES}
6299   test_tcp_server
6300   grpc_test_util
6301   grpc
6302   gpr
6303 )
6304
6305   # avoid dependency on libstdc++
6306   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6307     set_target_properties(bad_server_response_test PROPERTIES LINKER_LANGUAGE C)
6308     target_compile_options(bad_server_response_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6309   endif()
6310
6311 endif (gRPC_BUILD_TESTS)
6312 if (gRPC_BUILD_TESTS)
6313
6314 add_executable(bin_decoder_test
6315   test/core/transport/chttp2/bin_decoder_test.cc
6316 )
6317
6318
6319 target_include_directories(bin_decoder_test
6320   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6321   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6322   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6323   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6324   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6325   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6326   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6327   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6328   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6329   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6330 )
6331
6332 target_link_libraries(bin_decoder_test
6333   ${_gRPC_ALLTARGETS_LIBRARIES}
6334   grpc_test_util
6335   grpc
6336 )
6337
6338   # avoid dependency on libstdc++
6339   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6340     set_target_properties(bin_decoder_test PROPERTIES LINKER_LANGUAGE C)
6341     target_compile_options(bin_decoder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6342   endif()
6343
6344 endif (gRPC_BUILD_TESTS)
6345 if (gRPC_BUILD_TESTS)
6346
6347 add_executable(bin_encoder_test
6348   test/core/transport/chttp2/bin_encoder_test.cc
6349 )
6350
6351
6352 target_include_directories(bin_encoder_test
6353   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6354   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6355   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6356   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6357   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6358   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6359   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6360   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6361   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6362   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6363 )
6364
6365 target_link_libraries(bin_encoder_test
6366   ${_gRPC_ALLTARGETS_LIBRARIES}
6367   grpc_test_util
6368   grpc
6369 )
6370
6371   # avoid dependency on libstdc++
6372   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6373     set_target_properties(bin_encoder_test PROPERTIES LINKER_LANGUAGE C)
6374     target_compile_options(bin_encoder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6375   endif()
6376
6377 endif (gRPC_BUILD_TESTS)
6378 if (gRPC_BUILD_TESTS)
6379 if(_gRPC_PLATFORM_LINUX)
6380
6381 add_executable(buffer_list_test
6382   test/core/iomgr/buffer_list_test.cc
6383 )
6384
6385
6386 target_include_directories(buffer_list_test
6387   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6388   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6389   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6390   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6391   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6392   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6393   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6394   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6395   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6396   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6397 )
6398
6399 target_link_libraries(buffer_list_test
6400   ${_gRPC_ALLTARGETS_LIBRARIES}
6401   grpc_test_util
6402   grpc
6403   gpr
6404 )
6405
6406   # avoid dependency on libstdc++
6407   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6408     set_target_properties(buffer_list_test PROPERTIES LINKER_LANGUAGE C)
6409     target_compile_options(buffer_list_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6410   endif()
6411
6412 endif()
6413 endif (gRPC_BUILD_TESTS)
6414 if (gRPC_BUILD_TESTS)
6415
6416 add_executable(channel_create_test
6417   test/core/surface/channel_create_test.cc
6418 )
6419
6420
6421 target_include_directories(channel_create_test
6422   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6423   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6424   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6425   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6426   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6427   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6428   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6429   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6430   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6431   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6432 )
6433
6434 target_link_libraries(channel_create_test
6435   ${_gRPC_ALLTARGETS_LIBRARIES}
6436   grpc_test_util
6437   grpc
6438   gpr
6439 )
6440
6441   # avoid dependency on libstdc++
6442   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6443     set_target_properties(channel_create_test PROPERTIES LINKER_LANGUAGE C)
6444     target_compile_options(channel_create_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6445   endif()
6446
6447 endif (gRPC_BUILD_TESTS)
6448
6449 add_executable(check_epollexclusive
6450   test/build/check_epollexclusive.c
6451 )
6452
6453
6454 target_include_directories(check_epollexclusive
6455   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6456   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6457   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6458   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6459   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6460   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6461   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6462   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6463   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6464   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6465 )
6466
6467 target_link_libraries(check_epollexclusive
6468   ${_gRPC_ALLTARGETS_LIBRARIES}
6469   grpc
6470   gpr
6471 )
6472
6473   # avoid dependency on libstdc++
6474   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6475     set_target_properties(check_epollexclusive PROPERTIES LINKER_LANGUAGE C)
6476     target_compile_options(check_epollexclusive PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6477   endif()
6478
6479 if (gRPC_BUILD_TESTS)
6480
6481 add_executable(chttp2_hpack_encoder_test
6482   test/core/transport/chttp2/hpack_encoder_test.cc
6483 )
6484
6485
6486 target_include_directories(chttp2_hpack_encoder_test
6487   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6488   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6489   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6490   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6491   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6492   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6493   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6494   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6495   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6496   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6497 )
6498
6499 target_link_libraries(chttp2_hpack_encoder_test
6500   ${_gRPC_ALLTARGETS_LIBRARIES}
6501   grpc_test_util
6502   grpc
6503   gpr
6504 )
6505
6506   # avoid dependency on libstdc++
6507   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6508     set_target_properties(chttp2_hpack_encoder_test PROPERTIES LINKER_LANGUAGE C)
6509     target_compile_options(chttp2_hpack_encoder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6510   endif()
6511
6512 endif (gRPC_BUILD_TESTS)
6513 if (gRPC_BUILD_TESTS)
6514
6515 add_executable(chttp2_stream_map_test
6516   test/core/transport/chttp2/stream_map_test.cc
6517 )
6518
6519
6520 target_include_directories(chttp2_stream_map_test
6521   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6522   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6523   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6524   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6525   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6526   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6527   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6528   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6529   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6530   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6531 )
6532
6533 target_link_libraries(chttp2_stream_map_test
6534   ${_gRPC_ALLTARGETS_LIBRARIES}
6535   grpc_test_util
6536   grpc
6537   gpr
6538 )
6539
6540   # avoid dependency on libstdc++
6541   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6542     set_target_properties(chttp2_stream_map_test PROPERTIES LINKER_LANGUAGE C)
6543     target_compile_options(chttp2_stream_map_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6544   endif()
6545
6546 endif (gRPC_BUILD_TESTS)
6547 if (gRPC_BUILD_TESTS)
6548
6549 add_executable(chttp2_varint_test
6550   test/core/transport/chttp2/varint_test.cc
6551 )
6552
6553
6554 target_include_directories(chttp2_varint_test
6555   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6556   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6557   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6558   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6559   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6560   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6561   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6562   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6563   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6564   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6565 )
6566
6567 target_link_libraries(chttp2_varint_test
6568   ${_gRPC_ALLTARGETS_LIBRARIES}
6569   grpc_test_util
6570   grpc
6571   gpr
6572 )
6573
6574   # avoid dependency on libstdc++
6575   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6576     set_target_properties(chttp2_varint_test PROPERTIES LINKER_LANGUAGE C)
6577     target_compile_options(chttp2_varint_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6578   endif()
6579
6580 endif (gRPC_BUILD_TESTS)
6581 if (gRPC_BUILD_TESTS)
6582 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6583
6584 add_executable(close_fd_test
6585   test/core/bad_connection/close_fd_test.cc
6586 )
6587
6588
6589 target_include_directories(close_fd_test
6590   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6591   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6592   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6593   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6594   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6595   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6596   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6597   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6598   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6599   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6600 )
6601
6602 target_link_libraries(close_fd_test
6603   ${_gRPC_ALLTARGETS_LIBRARIES}
6604   grpc_test_util
6605   grpc
6606   gpr
6607 )
6608
6609   # avoid dependency on libstdc++
6610   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6611     set_target_properties(close_fd_test PROPERTIES LINKER_LANGUAGE C)
6612     target_compile_options(close_fd_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6613   endif()
6614
6615 endif()
6616 endif (gRPC_BUILD_TESTS)
6617 if (gRPC_BUILD_TESTS)
6618
6619 add_executable(cmdline_test
6620   test/core/util/cmdline_test.cc
6621 )
6622
6623
6624 target_include_directories(cmdline_test
6625   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6626   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6627   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6628   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6629   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6630   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6631   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6632   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6633   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6634   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6635 )
6636
6637 target_link_libraries(cmdline_test
6638   ${_gRPC_ALLTARGETS_LIBRARIES}
6639   gpr
6640   grpc_test_util
6641   grpc
6642 )
6643
6644   # avoid dependency on libstdc++
6645   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6646     set_target_properties(cmdline_test PROPERTIES LINKER_LANGUAGE C)
6647     target_compile_options(cmdline_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6648   endif()
6649
6650 endif (gRPC_BUILD_TESTS)
6651 if (gRPC_BUILD_TESTS)
6652
6653 add_executable(combiner_test
6654   test/core/iomgr/combiner_test.cc
6655 )
6656
6657
6658 target_include_directories(combiner_test
6659   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6660   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6661   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6662   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6663   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6664   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6665   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6666   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6667   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6668   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6669 )
6670
6671 target_link_libraries(combiner_test
6672   ${_gRPC_ALLTARGETS_LIBRARIES}
6673   grpc_test_util
6674   grpc
6675   gpr
6676 )
6677
6678   # avoid dependency on libstdc++
6679   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6680     set_target_properties(combiner_test PROPERTIES LINKER_LANGUAGE C)
6681     target_compile_options(combiner_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6682   endif()
6683
6684 endif (gRPC_BUILD_TESTS)
6685 if (gRPC_BUILD_TESTS)
6686
6687 add_executable(compression_test
6688   test/core/compression/compression_test.cc
6689 )
6690
6691
6692 target_include_directories(compression_test
6693   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6694   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6695   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6696   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6697   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6698   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6699   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6700   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6701   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6702   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6703 )
6704
6705 target_link_libraries(compression_test
6706   ${_gRPC_ALLTARGETS_LIBRARIES}
6707   grpc_test_util
6708   grpc
6709   gpr
6710 )
6711
6712   # avoid dependency on libstdc++
6713   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6714     set_target_properties(compression_test PROPERTIES LINKER_LANGUAGE C)
6715     target_compile_options(compression_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6716   endif()
6717
6718 endif (gRPC_BUILD_TESTS)
6719 if (gRPC_BUILD_TESTS)
6720
6721 add_executable(concurrent_connectivity_test
6722   test/core/surface/concurrent_connectivity_test.cc
6723 )
6724
6725
6726 target_include_directories(concurrent_connectivity_test
6727   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6728   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6729   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6730   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6731   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6732   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6733   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6734   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6735   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6736   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6737 )
6738
6739 target_link_libraries(concurrent_connectivity_test
6740   ${_gRPC_ALLTARGETS_LIBRARIES}
6741   grpc_test_util
6742   grpc
6743   gpr
6744 )
6745
6746   # avoid dependency on libstdc++
6747   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6748     set_target_properties(concurrent_connectivity_test PROPERTIES LINKER_LANGUAGE C)
6749     target_compile_options(concurrent_connectivity_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6750   endif()
6751
6752 endif (gRPC_BUILD_TESTS)
6753 if (gRPC_BUILD_TESTS)
6754
6755 add_executable(connection_refused_test
6756   test/core/end2end/connection_refused_test.cc
6757 )
6758
6759
6760 target_include_directories(connection_refused_test
6761   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6762   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6763   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6764   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6765   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6766   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6767   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6768   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6769   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6770   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6771 )
6772
6773 target_link_libraries(connection_refused_test
6774   ${_gRPC_ALLTARGETS_LIBRARIES}
6775   grpc_test_util
6776   grpc
6777   gpr
6778 )
6779
6780   # avoid dependency on libstdc++
6781   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6782     set_target_properties(connection_refused_test PROPERTIES LINKER_LANGUAGE C)
6783     target_compile_options(connection_refused_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6784   endif()
6785
6786 endif (gRPC_BUILD_TESTS)
6787 if (gRPC_BUILD_TESTS)
6788
6789 add_executable(dns_resolver_connectivity_test
6790   test/core/client_channel/resolvers/dns_resolver_connectivity_test.cc
6791 )
6792
6793
6794 target_include_directories(dns_resolver_connectivity_test
6795   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6796   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6797   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6798   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6799   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6800   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6801   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6802   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6803   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6804   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6805 )
6806
6807 target_link_libraries(dns_resolver_connectivity_test
6808   ${_gRPC_ALLTARGETS_LIBRARIES}
6809   grpc_test_util
6810   grpc
6811   gpr
6812 )
6813
6814   # avoid dependency on libstdc++
6815   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6816     set_target_properties(dns_resolver_connectivity_test PROPERTIES LINKER_LANGUAGE C)
6817     target_compile_options(dns_resolver_connectivity_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6818   endif()
6819
6820 endif (gRPC_BUILD_TESTS)
6821 if (gRPC_BUILD_TESTS)
6822
6823 add_executable(dns_resolver_cooldown_test
6824   test/core/client_channel/resolvers/dns_resolver_cooldown_test.cc
6825 )
6826
6827
6828 target_include_directories(dns_resolver_cooldown_test
6829   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6830   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6831   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6832   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6833   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6834   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6835   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6836   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6837   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6838   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6839 )
6840
6841 target_link_libraries(dns_resolver_cooldown_test
6842   ${_gRPC_ALLTARGETS_LIBRARIES}
6843   grpc_test_util
6844   grpc
6845   gpr
6846 )
6847
6848   # avoid dependency on libstdc++
6849   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6850     set_target_properties(dns_resolver_cooldown_test PROPERTIES LINKER_LANGUAGE C)
6851     target_compile_options(dns_resolver_cooldown_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6852   endif()
6853
6854 endif (gRPC_BUILD_TESTS)
6855 if (gRPC_BUILD_TESTS)
6856
6857 add_executable(dns_resolver_test
6858   test/core/client_channel/resolvers/dns_resolver_test.cc
6859 )
6860
6861
6862 target_include_directories(dns_resolver_test
6863   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6864   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6865   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6866   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6867   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6868   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6869   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6870   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6871   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6872   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6873 )
6874
6875 target_link_libraries(dns_resolver_test
6876   ${_gRPC_ALLTARGETS_LIBRARIES}
6877   grpc_test_util
6878   grpc
6879   gpr
6880 )
6881
6882   # avoid dependency on libstdc++
6883   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6884     set_target_properties(dns_resolver_test PROPERTIES LINKER_LANGUAGE C)
6885     target_compile_options(dns_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6886   endif()
6887
6888 endif (gRPC_BUILD_TESTS)
6889 if (gRPC_BUILD_TESTS)
6890 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6891
6892 add_executable(dualstack_socket_test
6893   test/core/end2end/dualstack_socket_test.cc
6894 )
6895
6896
6897 target_include_directories(dualstack_socket_test
6898   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6899   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6900   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6901   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6902   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6903   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6904   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6905   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6906   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6907   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6908 )
6909
6910 target_link_libraries(dualstack_socket_test
6911   ${_gRPC_ALLTARGETS_LIBRARIES}
6912   grpc_test_util
6913   grpc
6914   gpr
6915 )
6916
6917   # avoid dependency on libstdc++
6918   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6919     set_target_properties(dualstack_socket_test PROPERTIES LINKER_LANGUAGE C)
6920     target_compile_options(dualstack_socket_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6921   endif()
6922
6923 endif()
6924 endif (gRPC_BUILD_TESTS)
6925 if (gRPC_BUILD_TESTS)
6926
6927 add_executable(endpoint_pair_test
6928   test/core/iomgr/endpoint_pair_test.cc
6929 )
6930
6931
6932 target_include_directories(endpoint_pair_test
6933   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6934   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6935   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6936   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6937   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6938   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6939   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6940   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6941   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6942   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6943 )
6944
6945 target_link_libraries(endpoint_pair_test
6946   ${_gRPC_ALLTARGETS_LIBRARIES}
6947   grpc_test_util
6948   grpc
6949   gpr
6950 )
6951
6952   # avoid dependency on libstdc++
6953   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6954     set_target_properties(endpoint_pair_test PROPERTIES LINKER_LANGUAGE C)
6955     target_compile_options(endpoint_pair_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6956   endif()
6957
6958 endif (gRPC_BUILD_TESTS)
6959 if (gRPC_BUILD_TESTS)
6960
6961 add_executable(error_test
6962   test/core/iomgr/error_test.cc
6963 )
6964
6965
6966 target_include_directories(error_test
6967   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6968   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6969   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6970   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6971   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6972   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6973   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6974   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6975   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6976   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6977 )
6978
6979 target_link_libraries(error_test
6980   ${_gRPC_ALLTARGETS_LIBRARIES}
6981   grpc_test_util
6982   grpc
6983   gpr
6984 )
6985
6986   # avoid dependency on libstdc++
6987   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6988     set_target_properties(error_test PROPERTIES LINKER_LANGUAGE C)
6989     target_compile_options(error_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6990   endif()
6991
6992 endif (gRPC_BUILD_TESTS)
6993 if (gRPC_BUILD_TESTS)
6994 if(_gRPC_PLATFORM_LINUX)
6995
6996 add_executable(ev_epollex_linux_test
6997   test/core/iomgr/ev_epollex_linux_test.cc
6998 )
6999
7000
7001 target_include_directories(ev_epollex_linux_test
7002   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7003   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7004   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7005   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7006   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7007   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7008   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7009   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7010   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7011   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7012 )
7013
7014 target_link_libraries(ev_epollex_linux_test
7015   ${_gRPC_ALLTARGETS_LIBRARIES}
7016   grpc_test_util
7017   grpc
7018   gpr
7019 )
7020
7021   # avoid dependency on libstdc++
7022   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7023     set_target_properties(ev_epollex_linux_test PROPERTIES LINKER_LANGUAGE C)
7024     target_compile_options(ev_epollex_linux_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7025   endif()
7026
7027 endif()
7028 endif (gRPC_BUILD_TESTS)
7029 if (gRPC_BUILD_TESTS)
7030
7031 add_executable(fake_resolver_test
7032   test/core/client_channel/resolvers/fake_resolver_test.cc
7033 )
7034
7035
7036 target_include_directories(fake_resolver_test
7037   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7038   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7039   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7040   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7041   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7042   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7043   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7044   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7045   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7046   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7047 )
7048
7049 target_link_libraries(fake_resolver_test
7050   ${_gRPC_ALLTARGETS_LIBRARIES}
7051   grpc_test_util
7052   grpc
7053   gpr
7054 )
7055
7056   # avoid dependency on libstdc++
7057   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7058     set_target_properties(fake_resolver_test PROPERTIES LINKER_LANGUAGE C)
7059     target_compile_options(fake_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7060   endif()
7061
7062 endif (gRPC_BUILD_TESTS)
7063 if (gRPC_BUILD_TESTS)
7064 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7065
7066 add_executable(fake_transport_security_test
7067   test/core/tsi/fake_transport_security_test.cc
7068   test/core/tsi/transport_security_test_lib.cc
7069 )
7070
7071
7072 target_include_directories(fake_transport_security_test
7073   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7074   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7075   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7076   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7077   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7078   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7079   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7080   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7081   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7082   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7083 )
7084
7085 target_link_libraries(fake_transport_security_test
7086   ${_gRPC_ALLTARGETS_LIBRARIES}
7087   gpr
7088   grpc_test_util
7089   grpc
7090 )
7091
7092   # avoid dependency on libstdc++
7093   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7094     set_target_properties(fake_transport_security_test PROPERTIES LINKER_LANGUAGE C)
7095     target_compile_options(fake_transport_security_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7096   endif()
7097
7098 endif()
7099 endif (gRPC_BUILD_TESTS)
7100 if (gRPC_BUILD_TESTS)
7101 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7102
7103 add_executable(fd_conservation_posix_test
7104   test/core/iomgr/fd_conservation_posix_test.cc
7105 )
7106
7107
7108 target_include_directories(fd_conservation_posix_test
7109   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7110   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7111   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7112   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7113   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7114   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7115   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7116   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7117   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7118   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7119 )
7120
7121 target_link_libraries(fd_conservation_posix_test
7122   ${_gRPC_ALLTARGETS_LIBRARIES}
7123   grpc_test_util
7124   grpc
7125   gpr
7126 )
7127
7128   # avoid dependency on libstdc++
7129   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7130     set_target_properties(fd_conservation_posix_test PROPERTIES LINKER_LANGUAGE C)
7131     target_compile_options(fd_conservation_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7132   endif()
7133
7134 endif()
7135 endif (gRPC_BUILD_TESTS)
7136 if (gRPC_BUILD_TESTS)
7137 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7138
7139 add_executable(fd_posix_test
7140   test/core/iomgr/fd_posix_test.cc
7141 )
7142
7143
7144 target_include_directories(fd_posix_test
7145   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7146   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7147   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7148   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7149   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7150   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7151   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7152   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7153   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7154   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7155 )
7156
7157 target_link_libraries(fd_posix_test
7158   ${_gRPC_ALLTARGETS_LIBRARIES}
7159   grpc_test_util
7160   grpc
7161   gpr
7162 )
7163
7164   # avoid dependency on libstdc++
7165   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7166     set_target_properties(fd_posix_test PROPERTIES LINKER_LANGUAGE C)
7167     target_compile_options(fd_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7168   endif()
7169
7170 endif()
7171 endif (gRPC_BUILD_TESTS)
7172 if (gRPC_BUILD_TESTS)
7173
7174 add_executable(fling_client
7175   test/core/fling/client.cc
7176 )
7177
7178
7179 target_include_directories(fling_client
7180   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7181   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7182   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7183   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7184   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7185   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7186   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7187   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7188   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7189   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7190 )
7191
7192 target_link_libraries(fling_client
7193   ${_gRPC_ALLTARGETS_LIBRARIES}
7194   grpc_test_util
7195   grpc
7196   gpr
7197 )
7198
7199   # avoid dependency on libstdc++
7200   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7201     set_target_properties(fling_client PROPERTIES LINKER_LANGUAGE C)
7202     target_compile_options(fling_client PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7203   endif()
7204
7205 endif (gRPC_BUILD_TESTS)
7206 if (gRPC_BUILD_TESTS)
7207
7208 add_executable(fling_server
7209   test/core/fling/server.cc
7210 )
7211
7212
7213 target_include_directories(fling_server
7214   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7215   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7216   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7217   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7218   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7219   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7220   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7221   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7222   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7223   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7224 )
7225
7226 target_link_libraries(fling_server
7227   ${_gRPC_ALLTARGETS_LIBRARIES}
7228   grpc_test_util
7229   grpc
7230   gpr
7231 )
7232
7233   # avoid dependency on libstdc++
7234   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7235     set_target_properties(fling_server PROPERTIES LINKER_LANGUAGE C)
7236     target_compile_options(fling_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7237   endif()
7238
7239 endif (gRPC_BUILD_TESTS)
7240 if (gRPC_BUILD_TESTS)
7241 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7242
7243 add_executable(fling_stream_test
7244   test/core/fling/fling_stream_test.cc
7245 )
7246
7247
7248 target_include_directories(fling_stream_test
7249   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7250   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7251   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7252   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7253   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7254   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7255   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7256   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7257   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7258   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7259 )
7260
7261 target_link_libraries(fling_stream_test
7262   ${_gRPC_ALLTARGETS_LIBRARIES}
7263   grpc_test_util
7264   grpc
7265   gpr
7266 )
7267
7268   # avoid dependency on libstdc++
7269   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7270     set_target_properties(fling_stream_test PROPERTIES LINKER_LANGUAGE C)
7271     target_compile_options(fling_stream_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7272   endif()
7273
7274 endif()
7275 endif (gRPC_BUILD_TESTS)
7276 if (gRPC_BUILD_TESTS)
7277 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7278
7279 add_executable(fling_test
7280   test/core/fling/fling_test.cc
7281 )
7282
7283
7284 target_include_directories(fling_test
7285   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7286   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7287   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7288   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7289   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7290   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7291   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7292   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7293   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7294   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7295 )
7296
7297 target_link_libraries(fling_test
7298   ${_gRPC_ALLTARGETS_LIBRARIES}
7299   grpc_test_util
7300   grpc
7301   gpr
7302 )
7303
7304   # avoid dependency on libstdc++
7305   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7306     set_target_properties(fling_test PROPERTIES LINKER_LANGUAGE C)
7307     target_compile_options(fling_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7308   endif()
7309
7310 endif()
7311 endif (gRPC_BUILD_TESTS)
7312 if (gRPC_BUILD_TESTS)
7313 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC)
7314
7315 add_executable(fork_test
7316   test/core/gprpp/fork_test.cc
7317 )
7318
7319
7320 target_include_directories(fork_test
7321   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7322   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7323   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7324   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7325   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7326   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7327   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7328   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7329   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7330   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7331 )
7332
7333 target_link_libraries(fork_test
7334   ${_gRPC_ALLTARGETS_LIBRARIES}
7335   gpr
7336   grpc_test_util_unsecure
7337   grpc_unsecure
7338 )
7339
7340   # avoid dependency on libstdc++
7341   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7342     set_target_properties(fork_test PROPERTIES LINKER_LANGUAGE C)
7343     target_compile_options(fork_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7344   endif()
7345
7346 endif()
7347 endif (gRPC_BUILD_TESTS)
7348 if (gRPC_BUILD_TESTS)
7349 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7350
7351 add_executable(goaway_server_test
7352   test/core/end2end/goaway_server_test.cc
7353 )
7354
7355
7356 target_include_directories(goaway_server_test
7357   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7358   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7359   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7360   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7361   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7362   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7363   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7364   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7365   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7366   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7367 )
7368
7369 target_link_libraries(goaway_server_test
7370   ${_gRPC_ALLTARGETS_LIBRARIES}
7371   grpc_test_util
7372   grpc
7373   gpr
7374 )
7375
7376   # avoid dependency on libstdc++
7377   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7378     set_target_properties(goaway_server_test PROPERTIES LINKER_LANGUAGE C)
7379     target_compile_options(goaway_server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7380   endif()
7381
7382 endif()
7383 endif (gRPC_BUILD_TESTS)
7384 if (gRPC_BUILD_TESTS)
7385
7386 add_executable(gpr_cpu_test
7387   test/core/gpr/cpu_test.cc
7388 )
7389
7390
7391 target_include_directories(gpr_cpu_test
7392   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7393   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7394   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7395   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7396   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7397   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7398   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7399   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7400   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7401   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7402 )
7403
7404 target_link_libraries(gpr_cpu_test
7405   ${_gRPC_ALLTARGETS_LIBRARIES}
7406   gpr
7407   grpc_test_util_unsecure
7408   grpc_unsecure
7409 )
7410
7411   # avoid dependency on libstdc++
7412   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7413     set_target_properties(gpr_cpu_test PROPERTIES LINKER_LANGUAGE C)
7414     target_compile_options(gpr_cpu_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7415   endif()
7416
7417 endif (gRPC_BUILD_TESTS)
7418 if (gRPC_BUILD_TESTS)
7419
7420 add_executable(gpr_env_test
7421   test/core/gpr/env_test.cc
7422 )
7423
7424
7425 target_include_directories(gpr_env_test
7426   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7427   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7428   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7429   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7430   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7431   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7432   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7433   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7434   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7435   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7436 )
7437
7438 target_link_libraries(gpr_env_test
7439   ${_gRPC_ALLTARGETS_LIBRARIES}
7440   gpr
7441   grpc_test_util_unsecure
7442   grpc_unsecure
7443 )
7444
7445   # avoid dependency on libstdc++
7446   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7447     set_target_properties(gpr_env_test PROPERTIES LINKER_LANGUAGE C)
7448     target_compile_options(gpr_env_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7449   endif()
7450
7451 endif (gRPC_BUILD_TESTS)
7452 if (gRPC_BUILD_TESTS)
7453
7454 add_executable(gpr_host_port_test
7455   test/core/gpr/host_port_test.cc
7456 )
7457
7458
7459 target_include_directories(gpr_host_port_test
7460   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7461   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7462   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7463   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7464   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7465   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7466   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7467   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7468   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7469   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7470 )
7471
7472 target_link_libraries(gpr_host_port_test
7473   ${_gRPC_ALLTARGETS_LIBRARIES}
7474   gpr
7475   grpc_test_util_unsecure
7476   grpc_unsecure
7477 )
7478
7479   # avoid dependency on libstdc++
7480   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7481     set_target_properties(gpr_host_port_test PROPERTIES LINKER_LANGUAGE C)
7482     target_compile_options(gpr_host_port_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7483   endif()
7484
7485 endif (gRPC_BUILD_TESTS)
7486 if (gRPC_BUILD_TESTS)
7487
7488 add_executable(gpr_log_test
7489   test/core/gpr/log_test.cc
7490 )
7491
7492
7493 target_include_directories(gpr_log_test
7494   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7495   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7496   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7497   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7498   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7499   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7500   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7501   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7502   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7503   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7504 )
7505
7506 target_link_libraries(gpr_log_test
7507   ${_gRPC_ALLTARGETS_LIBRARIES}
7508   gpr
7509   grpc_test_util_unsecure
7510   grpc_unsecure
7511 )
7512
7513   # avoid dependency on libstdc++
7514   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7515     set_target_properties(gpr_log_test PROPERTIES LINKER_LANGUAGE C)
7516     target_compile_options(gpr_log_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7517   endif()
7518
7519 endif (gRPC_BUILD_TESTS)
7520 if (gRPC_BUILD_TESTS)
7521
7522 add_executable(gpr_manual_constructor_test
7523   test/core/gprpp/manual_constructor_test.cc
7524 )
7525
7526
7527 target_include_directories(gpr_manual_constructor_test
7528   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7529   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7530   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7531   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7532   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7533   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7534   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7535   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7536   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7537   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7538 )
7539
7540 target_link_libraries(gpr_manual_constructor_test
7541   ${_gRPC_ALLTARGETS_LIBRARIES}
7542   gpr
7543   grpc_test_util_unsecure
7544   grpc_unsecure
7545 )
7546
7547   # avoid dependency on libstdc++
7548   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7549     set_target_properties(gpr_manual_constructor_test PROPERTIES LINKER_LANGUAGE C)
7550     target_compile_options(gpr_manual_constructor_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7551   endif()
7552
7553 endif (gRPC_BUILD_TESTS)
7554 if (gRPC_BUILD_TESTS)
7555
7556 add_executable(gpr_mpscq_test
7557   test/core/gpr/mpscq_test.cc
7558 )
7559
7560
7561 target_include_directories(gpr_mpscq_test
7562   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7563   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7564   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7565   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7566   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7567   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7568   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7569   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7570   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7571   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7572 )
7573
7574 target_link_libraries(gpr_mpscq_test
7575   ${_gRPC_ALLTARGETS_LIBRARIES}
7576   gpr
7577   grpc_test_util_unsecure
7578   grpc_unsecure
7579 )
7580
7581   # avoid dependency on libstdc++
7582   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7583     set_target_properties(gpr_mpscq_test PROPERTIES LINKER_LANGUAGE C)
7584     target_compile_options(gpr_mpscq_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7585   endif()
7586
7587 endif (gRPC_BUILD_TESTS)
7588 if (gRPC_BUILD_TESTS)
7589
7590 add_executable(gpr_spinlock_test
7591   test/core/gpr/spinlock_test.cc
7592 )
7593
7594
7595 target_include_directories(gpr_spinlock_test
7596   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7597   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7598   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7599   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7600   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7601   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7602   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7603   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7604   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7605   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7606 )
7607
7608 target_link_libraries(gpr_spinlock_test
7609   ${_gRPC_ALLTARGETS_LIBRARIES}
7610   gpr
7611   grpc_test_util_unsecure
7612   grpc_unsecure
7613 )
7614
7615   # avoid dependency on libstdc++
7616   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7617     set_target_properties(gpr_spinlock_test PROPERTIES LINKER_LANGUAGE C)
7618     target_compile_options(gpr_spinlock_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7619   endif()
7620
7621 endif (gRPC_BUILD_TESTS)
7622 if (gRPC_BUILD_TESTS)
7623
7624 add_executable(gpr_string_test
7625   test/core/gpr/string_test.cc
7626 )
7627
7628
7629 target_include_directories(gpr_string_test
7630   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7631   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7632   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7633   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7634   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7635   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7636   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7637   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7638   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7639   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7640 )
7641
7642 target_link_libraries(gpr_string_test
7643   ${_gRPC_ALLTARGETS_LIBRARIES}
7644   gpr
7645   grpc_test_util_unsecure
7646   grpc_unsecure
7647 )
7648
7649   # avoid dependency on libstdc++
7650   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7651     set_target_properties(gpr_string_test PROPERTIES LINKER_LANGUAGE C)
7652     target_compile_options(gpr_string_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7653   endif()
7654
7655 endif (gRPC_BUILD_TESTS)
7656 if (gRPC_BUILD_TESTS)
7657
7658 add_executable(gpr_sync_test
7659   test/core/gpr/sync_test.cc
7660 )
7661
7662
7663 target_include_directories(gpr_sync_test
7664   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7665   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7666   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7667   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7668   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7669   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7670   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7671   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7672   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7673   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7674 )
7675
7676 target_link_libraries(gpr_sync_test
7677   ${_gRPC_ALLTARGETS_LIBRARIES}
7678   gpr
7679   grpc_test_util_unsecure
7680   grpc_unsecure
7681 )
7682
7683   # avoid dependency on libstdc++
7684   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7685     set_target_properties(gpr_sync_test PROPERTIES LINKER_LANGUAGE C)
7686     target_compile_options(gpr_sync_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7687   endif()
7688
7689 endif (gRPC_BUILD_TESTS)
7690 if (gRPC_BUILD_TESTS)
7691
7692 add_executable(gpr_thd_test
7693   test/core/gprpp/thd_test.cc
7694 )
7695
7696
7697 target_include_directories(gpr_thd_test
7698   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7699   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7700   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7701   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7702   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7703   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7704   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7705   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7706   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7707   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7708 )
7709
7710 target_link_libraries(gpr_thd_test
7711   ${_gRPC_ALLTARGETS_LIBRARIES}
7712   gpr
7713   grpc_test_util_unsecure
7714   grpc_unsecure
7715 )
7716
7717   # avoid dependency on libstdc++
7718   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7719     set_target_properties(gpr_thd_test PROPERTIES LINKER_LANGUAGE C)
7720     target_compile_options(gpr_thd_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7721   endif()
7722
7723 endif (gRPC_BUILD_TESTS)
7724 if (gRPC_BUILD_TESTS)
7725
7726 add_executable(gpr_time_test
7727   test/core/gpr/time_test.cc
7728 )
7729
7730
7731 target_include_directories(gpr_time_test
7732   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7733   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7734   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7735   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7736   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7737   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7738   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7739   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7740   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7741   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7742 )
7743
7744 target_link_libraries(gpr_time_test
7745   ${_gRPC_ALLTARGETS_LIBRARIES}
7746   gpr
7747   grpc_test_util_unsecure
7748   grpc_unsecure
7749 )
7750
7751   # avoid dependency on libstdc++
7752   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7753     set_target_properties(gpr_time_test PROPERTIES LINKER_LANGUAGE C)
7754     target_compile_options(gpr_time_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7755   endif()
7756
7757 endif (gRPC_BUILD_TESTS)
7758 if (gRPC_BUILD_TESTS)
7759
7760 add_executable(gpr_tls_test
7761   test/core/gpr/tls_test.cc
7762 )
7763
7764
7765 target_include_directories(gpr_tls_test
7766   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7767   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7768   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7769   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7770   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7771   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7772   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7773   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7774   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7775   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7776 )
7777
7778 target_link_libraries(gpr_tls_test
7779   ${_gRPC_ALLTARGETS_LIBRARIES}
7780   gpr
7781   grpc_test_util_unsecure
7782   grpc_unsecure
7783 )
7784
7785   # avoid dependency on libstdc++
7786   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7787     set_target_properties(gpr_tls_test PROPERTIES LINKER_LANGUAGE C)
7788     target_compile_options(gpr_tls_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7789   endif()
7790
7791 endif (gRPC_BUILD_TESTS)
7792 if (gRPC_BUILD_TESTS)
7793
7794 add_executable(gpr_useful_test
7795   test/core/gpr/useful_test.cc
7796 )
7797
7798
7799 target_include_directories(gpr_useful_test
7800   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7801   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7802   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7803   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7804   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7805   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7806   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7807   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7808   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7809   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7810 )
7811
7812 target_link_libraries(gpr_useful_test
7813   ${_gRPC_ALLTARGETS_LIBRARIES}
7814   gpr
7815   grpc_test_util_unsecure
7816   grpc_unsecure
7817 )
7818
7819   # avoid dependency on libstdc++
7820   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7821     set_target_properties(gpr_useful_test PROPERTIES LINKER_LANGUAGE C)
7822     target_compile_options(gpr_useful_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7823   endif()
7824
7825 endif (gRPC_BUILD_TESTS)
7826 if (gRPC_BUILD_TESTS)
7827
7828 add_executable(grpc_auth_context_test
7829   test/core/security/auth_context_test.cc
7830 )
7831
7832
7833 target_include_directories(grpc_auth_context_test
7834   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7835   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7836   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7837   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7838   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7839   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7840   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7841   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7842   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7843   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7844 )
7845
7846 target_link_libraries(grpc_auth_context_test
7847   ${_gRPC_ALLTARGETS_LIBRARIES}
7848   grpc_test_util
7849   grpc
7850   gpr
7851 )
7852
7853   # avoid dependency on libstdc++
7854   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7855     set_target_properties(grpc_auth_context_test PROPERTIES LINKER_LANGUAGE C)
7856     target_compile_options(grpc_auth_context_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7857   endif()
7858
7859 endif (gRPC_BUILD_TESTS)
7860 if (gRPC_BUILD_TESTS)
7861
7862 add_executable(grpc_b64_test
7863   test/core/slice/b64_test.cc
7864 )
7865
7866
7867 target_include_directories(grpc_b64_test
7868   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7869   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7870   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7871   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7872   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7873   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7874   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7875   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7876   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7877   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7878 )
7879
7880 target_link_libraries(grpc_b64_test
7881   ${_gRPC_ALLTARGETS_LIBRARIES}
7882   grpc_test_util
7883   grpc
7884   gpr
7885 )
7886
7887   # avoid dependency on libstdc++
7888   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7889     set_target_properties(grpc_b64_test PROPERTIES LINKER_LANGUAGE C)
7890     target_compile_options(grpc_b64_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7891   endif()
7892
7893 endif (gRPC_BUILD_TESTS)
7894 if (gRPC_BUILD_TESTS)
7895
7896 add_executable(grpc_byte_buffer_reader_test
7897   test/core/surface/byte_buffer_reader_test.cc
7898 )
7899
7900
7901 target_include_directories(grpc_byte_buffer_reader_test
7902   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7903   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7904   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7905   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7906   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7907   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7908   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7909   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7910   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7911   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7912 )
7913
7914 target_link_libraries(grpc_byte_buffer_reader_test
7915   ${_gRPC_ALLTARGETS_LIBRARIES}
7916   grpc_test_util
7917   grpc
7918   gpr
7919 )
7920
7921   # avoid dependency on libstdc++
7922   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7923     set_target_properties(grpc_byte_buffer_reader_test PROPERTIES LINKER_LANGUAGE C)
7924     target_compile_options(grpc_byte_buffer_reader_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7925   endif()
7926
7927 endif (gRPC_BUILD_TESTS)
7928 if (gRPC_BUILD_TESTS)
7929
7930 add_executable(grpc_channel_args_test
7931   test/core/channel/channel_args_test.cc
7932 )
7933
7934
7935 target_include_directories(grpc_channel_args_test
7936   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7937   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7938   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7939   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7940   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7941   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7942   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7943   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7944   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7945   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7946 )
7947
7948 target_link_libraries(grpc_channel_args_test
7949   ${_gRPC_ALLTARGETS_LIBRARIES}
7950   grpc_test_util
7951   grpc
7952   gpr
7953 )
7954
7955   # avoid dependency on libstdc++
7956   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7957     set_target_properties(grpc_channel_args_test PROPERTIES LINKER_LANGUAGE C)
7958     target_compile_options(grpc_channel_args_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7959   endif()
7960
7961 endif (gRPC_BUILD_TESTS)
7962 if (gRPC_BUILD_TESTS)
7963
7964 add_executable(grpc_channel_stack_builder_test
7965   test/core/channel/channel_stack_builder_test.cc
7966 )
7967
7968
7969 target_include_directories(grpc_channel_stack_builder_test
7970   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7971   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7972   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7973   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7974   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7975   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7976   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7977   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7978   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7979   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7980 )
7981
7982 target_link_libraries(grpc_channel_stack_builder_test
7983   ${_gRPC_ALLTARGETS_LIBRARIES}
7984   grpc_test_util
7985   grpc
7986   gpr
7987 )
7988
7989   # avoid dependency on libstdc++
7990   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7991     set_target_properties(grpc_channel_stack_builder_test PROPERTIES LINKER_LANGUAGE C)
7992     target_compile_options(grpc_channel_stack_builder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7993   endif()
7994
7995 endif (gRPC_BUILD_TESTS)
7996 if (gRPC_BUILD_TESTS)
7997
7998 add_executable(grpc_channel_stack_test
7999   test/core/channel/channel_stack_test.cc
8000 )
8001
8002
8003 target_include_directories(grpc_channel_stack_test
8004   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8005   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8006   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8007   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8008   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8009   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8010   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8011   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8012   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8013   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8014 )
8015
8016 target_link_libraries(grpc_channel_stack_test
8017   ${_gRPC_ALLTARGETS_LIBRARIES}
8018   grpc_test_util
8019   grpc
8020   gpr
8021 )
8022
8023   # avoid dependency on libstdc++
8024   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8025     set_target_properties(grpc_channel_stack_test PROPERTIES LINKER_LANGUAGE C)
8026     target_compile_options(grpc_channel_stack_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8027   endif()
8028
8029 endif (gRPC_BUILD_TESTS)
8030 if (gRPC_BUILD_TESTS)
8031
8032 add_executable(grpc_completion_queue_test
8033   test/core/surface/completion_queue_test.cc
8034 )
8035
8036
8037 target_include_directories(grpc_completion_queue_test
8038   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8039   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8040   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8041   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8042   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8043   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8044   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8045   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8046   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8047   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8048 )
8049
8050 target_link_libraries(grpc_completion_queue_test
8051   ${_gRPC_ALLTARGETS_LIBRARIES}
8052   grpc_test_util
8053   grpc
8054   gpr
8055 )
8056
8057   # avoid dependency on libstdc++
8058   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8059     set_target_properties(grpc_completion_queue_test PROPERTIES LINKER_LANGUAGE C)
8060     target_compile_options(grpc_completion_queue_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8061   endif()
8062
8063 endif (gRPC_BUILD_TESTS)
8064 if (gRPC_BUILD_TESTS)
8065
8066 add_executable(grpc_completion_queue_threading_test
8067   test/core/surface/completion_queue_threading_test.cc
8068 )
8069
8070
8071 target_include_directories(grpc_completion_queue_threading_test
8072   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8073   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8074   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8075   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8076   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8077   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8078   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8079   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8080   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8081   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8082 )
8083
8084 target_link_libraries(grpc_completion_queue_threading_test
8085   ${_gRPC_ALLTARGETS_LIBRARIES}
8086   grpc_test_util
8087   grpc
8088   gpr
8089 )
8090
8091   # avoid dependency on libstdc++
8092   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8093     set_target_properties(grpc_completion_queue_threading_test PROPERTIES LINKER_LANGUAGE C)
8094     target_compile_options(grpc_completion_queue_threading_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8095   endif()
8096
8097 endif (gRPC_BUILD_TESTS)
8098
8099 add_executable(grpc_create_jwt
8100   test/core/security/create_jwt.cc
8101   test/core/util/cmdline.cc
8102 )
8103
8104
8105 target_include_directories(grpc_create_jwt
8106   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8107   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8108   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8109   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8110   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8111   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8112   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8113   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8114   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8115   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8116 )
8117
8118 target_link_libraries(grpc_create_jwt
8119   ${_gRPC_SSL_LIBRARIES}
8120   ${_gRPC_ALLTARGETS_LIBRARIES}
8121   grpc
8122   gpr
8123 )
8124
8125   # avoid dependency on libstdc++
8126   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8127     set_target_properties(grpc_create_jwt PROPERTIES LINKER_LANGUAGE C)
8128     target_compile_options(grpc_create_jwt PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8129   endif()
8130
8131 if (gRPC_BUILD_TESTS)
8132
8133 add_executable(grpc_credentials_test
8134   test/core/security/credentials_test.cc
8135 )
8136
8137
8138 target_include_directories(grpc_credentials_test
8139   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8140   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8141   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8142   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8143   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8144   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8145   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8146   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8147   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8148   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8149 )
8150
8151 target_link_libraries(grpc_credentials_test
8152   ${_gRPC_ALLTARGETS_LIBRARIES}
8153   grpc_test_util
8154   grpc
8155   gpr
8156 )
8157
8158   # avoid dependency on libstdc++
8159   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8160     set_target_properties(grpc_credentials_test PROPERTIES LINKER_LANGUAGE C)
8161     target_compile_options(grpc_credentials_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8162   endif()
8163
8164 endif (gRPC_BUILD_TESTS)
8165 if (gRPC_BUILD_TESTS)
8166
8167 add_executable(grpc_fetch_oauth2
8168   test/core/security/fetch_oauth2.cc
8169 )
8170
8171
8172 target_include_directories(grpc_fetch_oauth2
8173   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8174   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8175   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8176   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8177   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8178   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8179   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8180   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8181   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8182   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8183 )
8184
8185 target_link_libraries(grpc_fetch_oauth2
8186   ${_gRPC_ALLTARGETS_LIBRARIES}
8187   grpc_test_util
8188   grpc
8189   gpr
8190 )
8191
8192   # avoid dependency on libstdc++
8193   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8194     set_target_properties(grpc_fetch_oauth2 PROPERTIES LINKER_LANGUAGE C)
8195     target_compile_options(grpc_fetch_oauth2 PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8196   endif()
8197
8198 endif (gRPC_BUILD_TESTS)
8199 if (gRPC_BUILD_TESTS)
8200
8201 add_executable(grpc_ipv6_loopback_available_test
8202   test/core/iomgr/grpc_ipv6_loopback_available_test.cc
8203 )
8204
8205
8206 target_include_directories(grpc_ipv6_loopback_available_test
8207   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8208   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8209   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8210   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8211   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8212   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8213   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8214   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8215   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8216   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8217 )
8218
8219 target_link_libraries(grpc_ipv6_loopback_available_test
8220   ${_gRPC_ALLTARGETS_LIBRARIES}
8221   grpc_test_util
8222   grpc
8223   gpr
8224 )
8225
8226   # avoid dependency on libstdc++
8227   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8228     set_target_properties(grpc_ipv6_loopback_available_test PROPERTIES LINKER_LANGUAGE C)
8229     target_compile_options(grpc_ipv6_loopback_available_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8230   endif()
8231
8232 endif (gRPC_BUILD_TESTS)
8233 if (gRPC_BUILD_TESTS)
8234 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
8235
8236 add_executable(grpc_json_token_test
8237   test/core/security/json_token_test.cc
8238 )
8239
8240
8241 target_include_directories(grpc_json_token_test
8242   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8243   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8244   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8245   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8246   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8247   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8248   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8249   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8250   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8251   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8252 )
8253
8254 target_link_libraries(grpc_json_token_test
8255   ${_gRPC_ALLTARGETS_LIBRARIES}
8256   grpc_test_util
8257   grpc
8258   gpr
8259 )
8260
8261   # avoid dependency on libstdc++
8262   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8263     set_target_properties(grpc_json_token_test PROPERTIES LINKER_LANGUAGE C)
8264     target_compile_options(grpc_json_token_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8265   endif()
8266
8267 endif()
8268 endif (gRPC_BUILD_TESTS)
8269 if (gRPC_BUILD_TESTS)
8270
8271 add_executable(grpc_jwt_verifier_test
8272   test/core/security/jwt_verifier_test.cc
8273 )
8274
8275
8276 target_include_directories(grpc_jwt_verifier_test
8277   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8278   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8279   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8280   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8281   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8282   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8283   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8284   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8285   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8286   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8287 )
8288
8289 target_link_libraries(grpc_jwt_verifier_test
8290   ${_gRPC_ALLTARGETS_LIBRARIES}
8291   grpc_test_util
8292   grpc
8293   gpr
8294 )
8295
8296   # avoid dependency on libstdc++
8297   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8298     set_target_properties(grpc_jwt_verifier_test PROPERTIES LINKER_LANGUAGE C)
8299     target_compile_options(grpc_jwt_verifier_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8300   endif()
8301
8302 endif (gRPC_BUILD_TESTS)
8303
8304 add_executable(grpc_print_google_default_creds_token
8305   test/core/security/print_google_default_creds_token.cc
8306   test/core/util/cmdline.cc
8307 )
8308
8309
8310 target_include_directories(grpc_print_google_default_creds_token
8311   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8312   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8313   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8314   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8315   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8316   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8317   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8318   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8319   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8320   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8321 )
8322
8323 target_link_libraries(grpc_print_google_default_creds_token
8324   ${_gRPC_ALLTARGETS_LIBRARIES}
8325   grpc
8326   gpr
8327 )
8328
8329   # avoid dependency on libstdc++
8330   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8331     set_target_properties(grpc_print_google_default_creds_token PROPERTIES LINKER_LANGUAGE C)
8332     target_compile_options(grpc_print_google_default_creds_token PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8333   endif()
8334
8335 if (gRPC_BUILD_TESTS)
8336
8337 add_executable(grpc_security_connector_test
8338   test/core/security/security_connector_test.cc
8339 )
8340
8341
8342 target_include_directories(grpc_security_connector_test
8343   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8344   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8345   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8346   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8347   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8348   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8349   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8350   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8351   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8352   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8353 )
8354
8355 target_link_libraries(grpc_security_connector_test
8356   ${_gRPC_ALLTARGETS_LIBRARIES}
8357   grpc_test_util
8358   grpc
8359   gpr
8360 )
8361
8362   # avoid dependency on libstdc++
8363   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8364     set_target_properties(grpc_security_connector_test PROPERTIES LINKER_LANGUAGE C)
8365     target_compile_options(grpc_security_connector_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8366   endif()
8367
8368 endif (gRPC_BUILD_TESTS)
8369 if (gRPC_BUILD_TESTS)
8370
8371 add_executable(grpc_ssl_credentials_test
8372   test/core/security/ssl_credentials_test.cc
8373 )
8374
8375
8376 target_include_directories(grpc_ssl_credentials_test
8377   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8378   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8379   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8380   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8381   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8382   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8383   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8384   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8385   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8386   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8387 )
8388
8389 target_link_libraries(grpc_ssl_credentials_test
8390   ${_gRPC_ALLTARGETS_LIBRARIES}
8391   grpc_test_util
8392   grpc
8393   gpr
8394 )
8395
8396   # avoid dependency on libstdc++
8397   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8398     set_target_properties(grpc_ssl_credentials_test PROPERTIES LINKER_LANGUAGE C)
8399     target_compile_options(grpc_ssl_credentials_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8400   endif()
8401
8402 endif (gRPC_BUILD_TESTS)
8403
8404 add_executable(grpc_verify_jwt
8405   test/core/security/verify_jwt.cc
8406   test/core/util/cmdline.cc
8407 )
8408
8409
8410 target_include_directories(grpc_verify_jwt
8411   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8412   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8413   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8414   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8415   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8416   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8417   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8418   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8419   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8420   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8421 )
8422
8423 target_link_libraries(grpc_verify_jwt
8424   ${_gRPC_ALLTARGETS_LIBRARIES}
8425   grpc
8426   gpr
8427 )
8428
8429   # avoid dependency on libstdc++
8430   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8431     set_target_properties(grpc_verify_jwt PROPERTIES LINKER_LANGUAGE C)
8432     target_compile_options(grpc_verify_jwt PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8433   endif()
8434
8435 if (gRPC_BUILD_TESTS)
8436 if(_gRPC_PLATFORM_LINUX)
8437
8438 add_executable(handshake_client_ssl
8439   test/core/handshake/client_ssl.cc
8440 )
8441
8442
8443 target_include_directories(handshake_client_ssl
8444   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8445   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8446   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8447   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8448   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8449   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8450   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8451   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8452   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8453   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8454 )
8455
8456 target_link_libraries(handshake_client_ssl
8457   ${_gRPC_SSL_LIBRARIES}
8458   ${_gRPC_ALLTARGETS_LIBRARIES}
8459   grpc_test_util
8460   grpc
8461   gpr
8462 )
8463
8464   # avoid dependency on libstdc++
8465   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8466     set_target_properties(handshake_client_ssl PROPERTIES LINKER_LANGUAGE C)
8467     target_compile_options(handshake_client_ssl PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8468   endif()
8469
8470 endif()
8471 endif (gRPC_BUILD_TESTS)
8472 if (gRPC_BUILD_TESTS)
8473 if(_gRPC_PLATFORM_LINUX)
8474
8475 add_executable(handshake_server_ssl
8476   test/core/handshake/server_ssl.cc
8477   test/core/handshake/server_ssl_common.cc
8478 )
8479
8480
8481 target_include_directories(handshake_server_ssl
8482   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8483   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8484   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8485   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8486   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8487   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8488   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8489   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8490   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8491   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8492 )
8493
8494 target_link_libraries(handshake_server_ssl
8495   ${_gRPC_SSL_LIBRARIES}
8496   ${_gRPC_ALLTARGETS_LIBRARIES}
8497   grpc_test_util
8498   grpc
8499   gpr
8500 )
8501
8502   # avoid dependency on libstdc++
8503   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8504     set_target_properties(handshake_server_ssl PROPERTIES LINKER_LANGUAGE C)
8505     target_compile_options(handshake_server_ssl PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8506   endif()
8507
8508 endif()
8509 endif (gRPC_BUILD_TESTS)
8510 if (gRPC_BUILD_TESTS)
8511 if(_gRPC_PLATFORM_LINUX)
8512
8513 add_executable(handshake_server_with_readahead_handshaker
8514   test/core/handshake/readahead_handshaker_server_ssl.cc
8515   test/core/handshake/server_ssl_common.cc
8516 )
8517
8518
8519 target_include_directories(handshake_server_with_readahead_handshaker
8520   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8521   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8522   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8523   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8524   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8525   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8526   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8527   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8528   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8529   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8530 )
8531
8532 target_link_libraries(handshake_server_with_readahead_handshaker
8533   ${_gRPC_SSL_LIBRARIES}
8534   ${_gRPC_ALLTARGETS_LIBRARIES}
8535   grpc_test_util
8536   grpc
8537   gpr
8538 )
8539
8540   # avoid dependency on libstdc++
8541   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8542     set_target_properties(handshake_server_with_readahead_handshaker PROPERTIES LINKER_LANGUAGE C)
8543     target_compile_options(handshake_server_with_readahead_handshaker PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8544   endif()
8545
8546 endif()
8547 endif (gRPC_BUILD_TESTS)
8548 if (gRPC_BUILD_TESTS)
8549 if(_gRPC_PLATFORM_LINUX)
8550
8551 add_executable(handshake_verify_peer_options
8552   test/core/handshake/verify_peer_options.cc
8553 )
8554
8555
8556 target_include_directories(handshake_verify_peer_options
8557   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8558   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8559   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8560   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8561   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8562   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8563   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8564   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8565   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8566   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8567 )
8568
8569 target_link_libraries(handshake_verify_peer_options
8570   ${_gRPC_SSL_LIBRARIES}
8571   ${_gRPC_ALLTARGETS_LIBRARIES}
8572   grpc_test_util
8573   grpc
8574   gpr
8575 )
8576
8577   # avoid dependency on libstdc++
8578   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8579     set_target_properties(handshake_verify_peer_options PROPERTIES LINKER_LANGUAGE C)
8580     target_compile_options(handshake_verify_peer_options PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8581   endif()
8582
8583 endif()
8584 endif (gRPC_BUILD_TESTS)
8585 if (gRPC_BUILD_TESTS)
8586
8587 add_executable(histogram_test
8588   test/core/util/histogram_test.cc
8589 )
8590
8591
8592 target_include_directories(histogram_test
8593   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8594   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8595   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8596   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8597   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8598   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8599   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8600   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8601   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8602   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8603 )
8604
8605 target_link_libraries(histogram_test
8606   ${_gRPC_ALLTARGETS_LIBRARIES}
8607   grpc_test_util
8608   gpr
8609 )
8610
8611   # avoid dependency on libstdc++
8612   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8613     set_target_properties(histogram_test PROPERTIES LINKER_LANGUAGE C)
8614     target_compile_options(histogram_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8615   endif()
8616
8617 endif (gRPC_BUILD_TESTS)
8618 if (gRPC_BUILD_TESTS)
8619
8620 add_executable(hpack_parser_test
8621   test/core/transport/chttp2/hpack_parser_test.cc
8622 )
8623
8624
8625 target_include_directories(hpack_parser_test
8626   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8627   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8628   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8629   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8630   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8631   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8632   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8633   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8634   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8635   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8636 )
8637
8638 target_link_libraries(hpack_parser_test
8639   ${_gRPC_ALLTARGETS_LIBRARIES}
8640   grpc_test_util
8641   grpc
8642   gpr
8643 )
8644
8645   # avoid dependency on libstdc++
8646   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8647     set_target_properties(hpack_parser_test PROPERTIES LINKER_LANGUAGE C)
8648     target_compile_options(hpack_parser_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8649   endif()
8650
8651 endif (gRPC_BUILD_TESTS)
8652 if (gRPC_BUILD_TESTS)
8653
8654 add_executable(hpack_table_test
8655   test/core/transport/chttp2/hpack_table_test.cc
8656 )
8657
8658
8659 target_include_directories(hpack_table_test
8660   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8661   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8662   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8663   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8664   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8665   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8666   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8667   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8668   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8669   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8670 )
8671
8672 target_link_libraries(hpack_table_test
8673   ${_gRPC_ALLTARGETS_LIBRARIES}
8674   grpc_test_util
8675   grpc
8676   gpr
8677 )
8678
8679   # avoid dependency on libstdc++
8680   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8681     set_target_properties(hpack_table_test PROPERTIES LINKER_LANGUAGE C)
8682     target_compile_options(hpack_table_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8683   endif()
8684
8685 endif (gRPC_BUILD_TESTS)
8686 if (gRPC_BUILD_TESTS)
8687
8688 add_executable(http_parser_test
8689   test/core/http/parser_test.cc
8690 )
8691
8692
8693 target_include_directories(http_parser_test
8694   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8695   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8696   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8697   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8698   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8699   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8700   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8701   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8702   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8703   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8704 )
8705
8706 target_link_libraries(http_parser_test
8707   ${_gRPC_ALLTARGETS_LIBRARIES}
8708   grpc_test_util
8709   grpc
8710   gpr
8711 )
8712
8713   # avoid dependency on libstdc++
8714   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8715     set_target_properties(http_parser_test PROPERTIES LINKER_LANGUAGE C)
8716     target_compile_options(http_parser_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8717   endif()
8718
8719 endif (gRPC_BUILD_TESTS)
8720 if (gRPC_BUILD_TESTS)
8721
8722 add_executable(httpcli_format_request_test
8723   test/core/http/format_request_test.cc
8724 )
8725
8726
8727 target_include_directories(httpcli_format_request_test
8728   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8729   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8730   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8731   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8732   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8733   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8734   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8735   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8736   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8737   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8738 )
8739
8740 target_link_libraries(httpcli_format_request_test
8741   ${_gRPC_ALLTARGETS_LIBRARIES}
8742   grpc_test_util
8743   grpc
8744   gpr
8745 )
8746
8747   # avoid dependency on libstdc++
8748   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8749     set_target_properties(httpcli_format_request_test PROPERTIES LINKER_LANGUAGE C)
8750     target_compile_options(httpcli_format_request_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8751   endif()
8752
8753 endif (gRPC_BUILD_TESTS)
8754 if (gRPC_BUILD_TESTS)
8755 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
8756
8757 add_executable(httpcli_test
8758   test/core/http/httpcli_test.cc
8759 )
8760
8761
8762 target_include_directories(httpcli_test
8763   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8764   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8765   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8766   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8767   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8768   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8769   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8770   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8771   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8772   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8773 )
8774
8775 target_link_libraries(httpcli_test
8776   ${_gRPC_ALLTARGETS_LIBRARIES}
8777   grpc_test_util
8778   grpc
8779   gpr
8780 )
8781
8782   # avoid dependency on libstdc++
8783   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8784     set_target_properties(httpcli_test PROPERTIES LINKER_LANGUAGE C)
8785     target_compile_options(httpcli_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8786   endif()
8787
8788 endif()
8789 endif (gRPC_BUILD_TESTS)
8790 if (gRPC_BUILD_TESTS)
8791 if(_gRPC_PLATFORM_LINUX)
8792
8793 add_executable(httpscli_test
8794   test/core/http/httpscli_test.cc
8795 )
8796
8797
8798 target_include_directories(httpscli_test
8799   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8800   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8801   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8802   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8803   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8804   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8805   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8806   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8807   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8808   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8809 )
8810
8811 target_link_libraries(httpscli_test
8812   ${_gRPC_ALLTARGETS_LIBRARIES}
8813   grpc_test_util
8814   grpc
8815   gpr
8816 )
8817
8818   # avoid dependency on libstdc++
8819   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8820     set_target_properties(httpscli_test PROPERTIES LINKER_LANGUAGE C)
8821     target_compile_options(httpscli_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8822   endif()
8823
8824 endif()
8825 endif (gRPC_BUILD_TESTS)
8826 if (gRPC_BUILD_TESTS)
8827
8828 add_executable(init_test
8829   test/core/surface/init_test.cc
8830 )
8831
8832
8833 target_include_directories(init_test
8834   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8835   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8836   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8837   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8838   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8839   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8840   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8841   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8842   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8843   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8844 )
8845
8846 target_link_libraries(init_test
8847   ${_gRPC_ALLTARGETS_LIBRARIES}
8848   grpc_test_util
8849   grpc
8850   gpr
8851 )
8852
8853   # avoid dependency on libstdc++
8854   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8855     set_target_properties(init_test PROPERTIES LINKER_LANGUAGE C)
8856     target_compile_options(init_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8857   endif()
8858
8859 endif (gRPC_BUILD_TESTS)
8860 if (gRPC_BUILD_TESTS)
8861
8862 add_executable(inproc_callback_test
8863   test/core/end2end/inproc_callback_test.cc
8864 )
8865
8866
8867 target_include_directories(inproc_callback_test
8868   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8869   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8870   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8871   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8872   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8873   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8874   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8875   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8876   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8877   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8878 )
8879
8880 target_link_libraries(inproc_callback_test
8881   ${_gRPC_ALLTARGETS_LIBRARIES}
8882   grpc_test_util
8883   grpc
8884   gpr
8885 )
8886
8887   # avoid dependency on libstdc++
8888   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8889     set_target_properties(inproc_callback_test PROPERTIES LINKER_LANGUAGE C)
8890     target_compile_options(inproc_callback_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8891   endif()
8892
8893 endif (gRPC_BUILD_TESTS)
8894 if (gRPC_BUILD_TESTS)
8895
8896 add_executable(invalid_call_argument_test
8897   test/core/end2end/invalid_call_argument_test.cc
8898 )
8899
8900
8901 target_include_directories(invalid_call_argument_test
8902   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8903   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8904   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8905   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8906   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8907   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8908   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8909   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8910   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8911   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8912 )
8913
8914 target_link_libraries(invalid_call_argument_test
8915   ${_gRPC_ALLTARGETS_LIBRARIES}
8916   grpc_test_util
8917   grpc
8918   gpr
8919 )
8920
8921   # avoid dependency on libstdc++
8922   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8923     set_target_properties(invalid_call_argument_test PROPERTIES LINKER_LANGUAGE C)
8924     target_compile_options(invalid_call_argument_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8925   endif()
8926
8927 endif (gRPC_BUILD_TESTS)
8928 if (gRPC_BUILD_TESTS)
8929
8930 add_executable(json_rewrite
8931   test/core/json/json_rewrite.cc
8932 )
8933
8934
8935 target_include_directories(json_rewrite
8936   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8937   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8938   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8939   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8940   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8941   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8942   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8943   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8944   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8945   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8946 )
8947
8948 target_link_libraries(json_rewrite
8949   ${_gRPC_ALLTARGETS_LIBRARIES}
8950   grpc_test_util
8951   grpc
8952   gpr
8953 )
8954
8955   # avoid dependency on libstdc++
8956   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8957     set_target_properties(json_rewrite PROPERTIES LINKER_LANGUAGE C)
8958     target_compile_options(json_rewrite PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8959   endif()
8960
8961 endif (gRPC_BUILD_TESTS)
8962 if (gRPC_BUILD_TESTS)
8963
8964 add_executable(json_rewrite_test
8965   test/core/json/json_rewrite_test.cc
8966 )
8967
8968
8969 target_include_directories(json_rewrite_test
8970   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8971   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8972   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8973   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8974   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8975   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8976   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8977   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8978   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8979   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8980 )
8981
8982 target_link_libraries(json_rewrite_test
8983   ${_gRPC_ALLTARGETS_LIBRARIES}
8984   grpc_test_util
8985   grpc
8986   gpr
8987 )
8988
8989   # avoid dependency on libstdc++
8990   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8991     set_target_properties(json_rewrite_test PROPERTIES LINKER_LANGUAGE C)
8992     target_compile_options(json_rewrite_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8993   endif()
8994
8995 endif (gRPC_BUILD_TESTS)
8996 if (gRPC_BUILD_TESTS)
8997
8998 add_executable(json_stream_error_test
8999   test/core/json/json_stream_error_test.cc
9000 )
9001
9002
9003 target_include_directories(json_stream_error_test
9004   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9005   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9006   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9007   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9008   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9009   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9010   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9011   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9012   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9013   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9014 )
9015
9016 target_link_libraries(json_stream_error_test
9017   ${_gRPC_ALLTARGETS_LIBRARIES}
9018   grpc_test_util
9019   grpc
9020   gpr
9021 )
9022
9023   # avoid dependency on libstdc++
9024   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9025     set_target_properties(json_stream_error_test PROPERTIES LINKER_LANGUAGE C)
9026     target_compile_options(json_stream_error_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9027   endif()
9028
9029 endif (gRPC_BUILD_TESTS)
9030 if (gRPC_BUILD_TESTS)
9031
9032 add_executable(json_test
9033   test/core/json/json_test.cc
9034 )
9035
9036
9037 target_include_directories(json_test
9038   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9039   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9040   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9041   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9042   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9043   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9044   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9045   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9046   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9047   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9048 )
9049
9050 target_link_libraries(json_test
9051   ${_gRPC_ALLTARGETS_LIBRARIES}
9052   grpc_test_util
9053   grpc
9054   gpr
9055 )
9056
9057   # avoid dependency on libstdc++
9058   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9059     set_target_properties(json_test PROPERTIES LINKER_LANGUAGE C)
9060     target_compile_options(json_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9061   endif()
9062
9063 endif (gRPC_BUILD_TESTS)
9064 if (gRPC_BUILD_TESTS)
9065
9066 add_executable(lame_client_test
9067   test/core/surface/lame_client_test.cc
9068 )
9069
9070
9071 target_include_directories(lame_client_test
9072   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9073   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9074   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9075   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9076   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9077   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9078   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9079   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9080   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9081   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9082 )
9083
9084 target_link_libraries(lame_client_test
9085   ${_gRPC_ALLTARGETS_LIBRARIES}
9086   grpc_test_util
9087   grpc
9088   gpr
9089 )
9090
9091   # avoid dependency on libstdc++
9092   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9093     set_target_properties(lame_client_test PROPERTIES LINKER_LANGUAGE C)
9094     target_compile_options(lame_client_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9095   endif()
9096
9097 endif (gRPC_BUILD_TESTS)
9098 if (gRPC_BUILD_TESTS)
9099
9100 add_executable(load_file_test
9101   test/core/iomgr/load_file_test.cc
9102 )
9103
9104
9105 target_include_directories(load_file_test
9106   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9107   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9108   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9109   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9110   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9111   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9112   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9113   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9114   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9115   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9116 )
9117
9118 target_link_libraries(load_file_test
9119   ${_gRPC_ALLTARGETS_LIBRARIES}
9120   grpc_test_util
9121   grpc
9122   gpr
9123 )
9124
9125   # avoid dependency on libstdc++
9126   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9127     set_target_properties(load_file_test PROPERTIES LINKER_LANGUAGE C)
9128     target_compile_options(load_file_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9129   endif()
9130
9131 endif (gRPC_BUILD_TESTS)
9132 if (gRPC_BUILD_TESTS)
9133
9134 add_executable(memory_usage_client
9135   test/core/memory_usage/client.cc
9136 )
9137
9138
9139 target_include_directories(memory_usage_client
9140   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9141   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9142   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9143   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9144   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9145   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9146   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9147   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9148   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9149   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9150 )
9151
9152 target_link_libraries(memory_usage_client
9153   ${_gRPC_ALLTARGETS_LIBRARIES}
9154   grpc_test_util
9155   grpc
9156   gpr
9157 )
9158
9159   # avoid dependency on libstdc++
9160   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9161     set_target_properties(memory_usage_client PROPERTIES LINKER_LANGUAGE C)
9162     target_compile_options(memory_usage_client PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9163   endif()
9164
9165 endif (gRPC_BUILD_TESTS)
9166 if (gRPC_BUILD_TESTS)
9167
9168 add_executable(memory_usage_server
9169   test/core/memory_usage/server.cc
9170 )
9171
9172
9173 target_include_directories(memory_usage_server
9174   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9175   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9176   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9177   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9178   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9179   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9180   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9181   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9182   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9183   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9184 )
9185
9186 target_link_libraries(memory_usage_server
9187   ${_gRPC_ALLTARGETS_LIBRARIES}
9188   grpc_test_util
9189   grpc
9190   gpr
9191 )
9192
9193   # avoid dependency on libstdc++
9194   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9195     set_target_properties(memory_usage_server PROPERTIES LINKER_LANGUAGE C)
9196     target_compile_options(memory_usage_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9197   endif()
9198
9199 endif (gRPC_BUILD_TESTS)
9200 if (gRPC_BUILD_TESTS)
9201 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9202
9203 add_executable(memory_usage_test
9204   test/core/memory_usage/memory_usage_test.cc
9205 )
9206
9207
9208 target_include_directories(memory_usage_test
9209   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9210   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9211   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9212   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9213   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9214   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9215   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9216   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9217   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9218   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9219 )
9220
9221 target_link_libraries(memory_usage_test
9222   ${_gRPC_ALLTARGETS_LIBRARIES}
9223   grpc_test_util
9224   grpc
9225   gpr
9226 )
9227
9228   # avoid dependency on libstdc++
9229   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9230     set_target_properties(memory_usage_test PROPERTIES LINKER_LANGUAGE C)
9231     target_compile_options(memory_usage_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9232   endif()
9233
9234 endif()
9235 endif (gRPC_BUILD_TESTS)
9236 if (gRPC_BUILD_TESTS)
9237
9238 add_executable(message_compress_test
9239   test/core/compression/message_compress_test.cc
9240 )
9241
9242
9243 target_include_directories(message_compress_test
9244   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9245   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9246   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9247   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9248   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9249   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9250   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9251   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9252   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9253   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9254 )
9255
9256 target_link_libraries(message_compress_test
9257   ${_gRPC_ALLTARGETS_LIBRARIES}
9258   grpc_test_util
9259   grpc
9260   gpr
9261 )
9262
9263   # avoid dependency on libstdc++
9264   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9265     set_target_properties(message_compress_test PROPERTIES LINKER_LANGUAGE C)
9266     target_compile_options(message_compress_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9267   endif()
9268
9269 endif (gRPC_BUILD_TESTS)
9270 if (gRPC_BUILD_TESTS)
9271
9272 add_executable(minimal_stack_is_minimal_test
9273   test/core/channel/minimal_stack_is_minimal_test.cc
9274 )
9275
9276
9277 target_include_directories(minimal_stack_is_minimal_test
9278   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9279   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9280   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9281   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9282   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9283   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9284   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9285   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9286   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9287   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9288 )
9289
9290 target_link_libraries(minimal_stack_is_minimal_test
9291   ${_gRPC_ALLTARGETS_LIBRARIES}
9292   grpc_test_util
9293   grpc
9294   gpr
9295 )
9296
9297   # avoid dependency on libstdc++
9298   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9299     set_target_properties(minimal_stack_is_minimal_test PROPERTIES LINKER_LANGUAGE C)
9300     target_compile_options(minimal_stack_is_minimal_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9301   endif()
9302
9303 endif (gRPC_BUILD_TESTS)
9304 if (gRPC_BUILD_TESTS)
9305
9306 add_executable(multiple_server_queues_test
9307   test/core/end2end/multiple_server_queues_test.cc
9308 )
9309
9310
9311 target_include_directories(multiple_server_queues_test
9312   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9313   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9314   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9315   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9316   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9317   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9318   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9319   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9320   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9321   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9322 )
9323
9324 target_link_libraries(multiple_server_queues_test
9325   ${_gRPC_ALLTARGETS_LIBRARIES}
9326   grpc_test_util
9327   grpc
9328   gpr
9329 )
9330
9331   # avoid dependency on libstdc++
9332   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9333     set_target_properties(multiple_server_queues_test PROPERTIES LINKER_LANGUAGE C)
9334     target_compile_options(multiple_server_queues_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9335   endif()
9336
9337 endif (gRPC_BUILD_TESTS)
9338 if (gRPC_BUILD_TESTS)
9339
9340 add_executable(murmur_hash_test
9341   test/core/gpr/murmur_hash_test.cc
9342 )
9343
9344
9345 target_include_directories(murmur_hash_test
9346   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9347   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9348   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9349   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9350   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9351   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9352   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9353   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9354   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9355   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9356 )
9357
9358 target_link_libraries(murmur_hash_test
9359   ${_gRPC_ALLTARGETS_LIBRARIES}
9360   gpr
9361   grpc_test_util_unsecure
9362   grpc_unsecure
9363 )
9364
9365   # avoid dependency on libstdc++
9366   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9367     set_target_properties(murmur_hash_test PROPERTIES LINKER_LANGUAGE C)
9368     target_compile_options(murmur_hash_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9369   endif()
9370
9371 endif (gRPC_BUILD_TESTS)
9372 if (gRPC_BUILD_TESTS)
9373
9374 add_executable(no_server_test
9375   test/core/end2end/no_server_test.cc
9376 )
9377
9378
9379 target_include_directories(no_server_test
9380   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9381   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9382   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9383   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9384   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9385   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9386   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9387   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9388   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9389   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9390 )
9391
9392 target_link_libraries(no_server_test
9393   ${_gRPC_ALLTARGETS_LIBRARIES}
9394   grpc_test_util
9395   grpc
9396   gpr
9397 )
9398
9399   # avoid dependency on libstdc++
9400   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9401     set_target_properties(no_server_test PROPERTIES LINKER_LANGUAGE C)
9402     target_compile_options(no_server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9403   endif()
9404
9405 endif (gRPC_BUILD_TESTS)
9406 if (gRPC_BUILD_TESTS)
9407
9408 add_executable(num_external_connectivity_watchers_test
9409   test/core/surface/num_external_connectivity_watchers_test.cc
9410 )
9411
9412
9413 target_include_directories(num_external_connectivity_watchers_test
9414   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9415   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9416   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9417   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9418   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9419   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9420   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9421   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9422   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9423   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9424 )
9425
9426 target_link_libraries(num_external_connectivity_watchers_test
9427   ${_gRPC_ALLTARGETS_LIBRARIES}
9428   grpc_test_util
9429   grpc
9430   gpr
9431 )
9432
9433   # avoid dependency on libstdc++
9434   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9435     set_target_properties(num_external_connectivity_watchers_test PROPERTIES LINKER_LANGUAGE C)
9436     target_compile_options(num_external_connectivity_watchers_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9437   endif()
9438
9439 endif (gRPC_BUILD_TESTS)
9440 if (gRPC_BUILD_TESTS)
9441
9442 add_executable(parse_address_test
9443   test/core/client_channel/parse_address_test.cc
9444 )
9445
9446
9447 target_include_directories(parse_address_test
9448   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9449   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9450   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9451   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9452   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9453   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9454   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9455   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9456   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9457   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9458 )
9459
9460 target_link_libraries(parse_address_test
9461   ${_gRPC_ALLTARGETS_LIBRARIES}
9462   grpc_test_util
9463   grpc
9464   gpr
9465 )
9466
9467   # avoid dependency on libstdc++
9468   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9469     set_target_properties(parse_address_test PROPERTIES LINKER_LANGUAGE C)
9470     target_compile_options(parse_address_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9471   endif()
9472
9473 endif (gRPC_BUILD_TESTS)
9474 if (gRPC_BUILD_TESTS)
9475 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9476
9477 add_executable(parse_address_with_named_scope_id_test
9478   test/core/client_channel/parse_address_with_named_scope_id_test.cc
9479 )
9480
9481
9482 target_include_directories(parse_address_with_named_scope_id_test
9483   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9484   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9485   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9486   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9487   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9488   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9489   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9490   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9491   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9492   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9493 )
9494
9495 target_link_libraries(parse_address_with_named_scope_id_test
9496   ${_gRPC_ALLTARGETS_LIBRARIES}
9497   grpc_test_util
9498   grpc
9499   gpr
9500 )
9501
9502   # avoid dependency on libstdc++
9503   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9504     set_target_properties(parse_address_with_named_scope_id_test PROPERTIES LINKER_LANGUAGE C)
9505     target_compile_options(parse_address_with_named_scope_id_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9506   endif()
9507
9508 endif()
9509 endif (gRPC_BUILD_TESTS)
9510 if (gRPC_BUILD_TESTS)
9511
9512 add_executable(percent_encoding_test
9513   test/core/slice/percent_encoding_test.cc
9514 )
9515
9516
9517 target_include_directories(percent_encoding_test
9518   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9519   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9520   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9521   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9522   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9523   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9524   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9525   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9526   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9527   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9528 )
9529
9530 target_link_libraries(percent_encoding_test
9531   ${_gRPC_ALLTARGETS_LIBRARIES}
9532   grpc_test_util
9533   grpc
9534   gpr
9535 )
9536
9537   # avoid dependency on libstdc++
9538   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9539     set_target_properties(percent_encoding_test PROPERTIES LINKER_LANGUAGE C)
9540     target_compile_options(percent_encoding_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9541   endif()
9542
9543 endif (gRPC_BUILD_TESTS)
9544 if (gRPC_BUILD_TESTS)
9545 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9546
9547 add_executable(resolve_address_using_ares_resolver_posix_test
9548   test/core/iomgr/resolve_address_posix_test.cc
9549 )
9550
9551
9552 target_include_directories(resolve_address_using_ares_resolver_posix_test
9553   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9554   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9555   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9556   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9557   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9558   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9559   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9560   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9561   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9562   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9563 )
9564
9565 target_link_libraries(resolve_address_using_ares_resolver_posix_test
9566   ${_gRPC_ALLTARGETS_LIBRARIES}
9567   grpc_test_util
9568   grpc
9569   gpr
9570 )
9571
9572   # avoid dependency on libstdc++
9573   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9574     set_target_properties(resolve_address_using_ares_resolver_posix_test PROPERTIES LINKER_LANGUAGE C)
9575     target_compile_options(resolve_address_using_ares_resolver_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9576   endif()
9577
9578 endif()
9579 endif (gRPC_BUILD_TESTS)
9580 if (gRPC_BUILD_TESTS)
9581
9582 add_executable(resolve_address_using_ares_resolver_test
9583   test/core/iomgr/resolve_address_test.cc
9584 )
9585
9586
9587 target_include_directories(resolve_address_using_ares_resolver_test
9588   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9589   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9590   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9591   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9592   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9593   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9594   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9595   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9596   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9597   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9598 )
9599
9600 target_link_libraries(resolve_address_using_ares_resolver_test
9601   ${_gRPC_ALLTARGETS_LIBRARIES}
9602   grpc_test_util
9603   grpc
9604   gpr
9605 )
9606
9607   # avoid dependency on libstdc++
9608   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9609     set_target_properties(resolve_address_using_ares_resolver_test PROPERTIES LINKER_LANGUAGE C)
9610     target_compile_options(resolve_address_using_ares_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9611   endif()
9612
9613 endif (gRPC_BUILD_TESTS)
9614 if (gRPC_BUILD_TESTS)
9615 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9616
9617 add_executable(resolve_address_using_native_resolver_posix_test
9618   test/core/iomgr/resolve_address_posix_test.cc
9619 )
9620
9621
9622 target_include_directories(resolve_address_using_native_resolver_posix_test
9623   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9624   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9625   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9626   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9627   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9628   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9629   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9630   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9631   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9632   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9633 )
9634
9635 target_link_libraries(resolve_address_using_native_resolver_posix_test
9636   ${_gRPC_ALLTARGETS_LIBRARIES}
9637   grpc_test_util
9638   grpc
9639   gpr
9640 )
9641
9642   # avoid dependency on libstdc++
9643   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9644     set_target_properties(resolve_address_using_native_resolver_posix_test PROPERTIES LINKER_LANGUAGE C)
9645     target_compile_options(resolve_address_using_native_resolver_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9646   endif()
9647
9648 endif()
9649 endif (gRPC_BUILD_TESTS)
9650 if (gRPC_BUILD_TESTS)
9651
9652 add_executable(resolve_address_using_native_resolver_test
9653   test/core/iomgr/resolve_address_test.cc
9654 )
9655
9656
9657 target_include_directories(resolve_address_using_native_resolver_test
9658   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9659   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9660   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9661   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9662   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9663   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9664   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9665   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9666   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9667   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9668 )
9669
9670 target_link_libraries(resolve_address_using_native_resolver_test
9671   ${_gRPC_ALLTARGETS_LIBRARIES}
9672   grpc_test_util
9673   grpc
9674   gpr
9675 )
9676
9677   # avoid dependency on libstdc++
9678   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9679     set_target_properties(resolve_address_using_native_resolver_test PROPERTIES LINKER_LANGUAGE C)
9680     target_compile_options(resolve_address_using_native_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9681   endif()
9682
9683 endif (gRPC_BUILD_TESTS)
9684 if (gRPC_BUILD_TESTS)
9685
9686 add_executable(resource_quota_test
9687   test/core/iomgr/resource_quota_test.cc
9688 )
9689
9690
9691 target_include_directories(resource_quota_test
9692   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9693   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9694   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9695   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9696   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9697   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9698   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9699   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9700   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9701   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9702 )
9703
9704 target_link_libraries(resource_quota_test
9705   ${_gRPC_ALLTARGETS_LIBRARIES}
9706   grpc_test_util
9707   grpc
9708   gpr
9709 )
9710
9711   # avoid dependency on libstdc++
9712   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9713     set_target_properties(resource_quota_test PROPERTIES LINKER_LANGUAGE C)
9714     target_compile_options(resource_quota_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9715   endif()
9716
9717 endif (gRPC_BUILD_TESTS)
9718 if (gRPC_BUILD_TESTS)
9719
9720 add_executable(secure_channel_create_test
9721   test/core/surface/secure_channel_create_test.cc
9722 )
9723
9724
9725 target_include_directories(secure_channel_create_test
9726   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9727   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9728   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9729   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9730   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9731   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9732   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9733   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9734   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9735   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9736 )
9737
9738 target_link_libraries(secure_channel_create_test
9739   ${_gRPC_ALLTARGETS_LIBRARIES}
9740   grpc_test_util
9741   grpc
9742   gpr
9743 )
9744
9745   # avoid dependency on libstdc++
9746   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9747     set_target_properties(secure_channel_create_test PROPERTIES LINKER_LANGUAGE C)
9748     target_compile_options(secure_channel_create_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9749   endif()
9750
9751 endif (gRPC_BUILD_TESTS)
9752 if (gRPC_BUILD_TESTS)
9753
9754 add_executable(secure_endpoint_test
9755   test/core/security/secure_endpoint_test.cc
9756 )
9757
9758
9759 target_include_directories(secure_endpoint_test
9760   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9761   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9762   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9763   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9764   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9765   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9766   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9767   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9768   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9769   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9770 )
9771
9772 target_link_libraries(secure_endpoint_test
9773   ${_gRPC_ALLTARGETS_LIBRARIES}
9774   grpc_test_util
9775   grpc
9776   gpr
9777 )
9778
9779   # avoid dependency on libstdc++
9780   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9781     set_target_properties(secure_endpoint_test PROPERTIES LINKER_LANGUAGE C)
9782     target_compile_options(secure_endpoint_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9783   endif()
9784
9785 endif (gRPC_BUILD_TESTS)
9786 if (gRPC_BUILD_TESTS)
9787
9788 add_executable(sequential_connectivity_test
9789   test/core/surface/sequential_connectivity_test.cc
9790 )
9791
9792
9793 target_include_directories(sequential_connectivity_test
9794   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9795   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9796   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9797   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9798   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9799   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9800   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9801   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9802   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9803   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9804 )
9805
9806 target_link_libraries(sequential_connectivity_test
9807   ${_gRPC_ALLTARGETS_LIBRARIES}
9808   grpc_test_util
9809   grpc
9810   gpr
9811 )
9812
9813   # avoid dependency on libstdc++
9814   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9815     set_target_properties(sequential_connectivity_test PROPERTIES LINKER_LANGUAGE C)
9816     target_compile_options(sequential_connectivity_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9817   endif()
9818
9819 endif (gRPC_BUILD_TESTS)
9820 if (gRPC_BUILD_TESTS)
9821
9822 add_executable(server_chttp2_test
9823   test/core/surface/server_chttp2_test.cc
9824 )
9825
9826
9827 target_include_directories(server_chttp2_test
9828   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9829   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9830   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9831   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9832   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9833   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9834   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9835   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9836   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9837   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9838 )
9839
9840 target_link_libraries(server_chttp2_test
9841   ${_gRPC_ALLTARGETS_LIBRARIES}
9842   grpc_test_util
9843   grpc
9844   gpr
9845 )
9846
9847   # avoid dependency on libstdc++
9848   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9849     set_target_properties(server_chttp2_test PROPERTIES LINKER_LANGUAGE C)
9850     target_compile_options(server_chttp2_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9851   endif()
9852
9853 endif (gRPC_BUILD_TESTS)
9854 if (gRPC_BUILD_TESTS)
9855
9856 add_executable(server_test
9857   test/core/surface/server_test.cc
9858 )
9859
9860
9861 target_include_directories(server_test
9862   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9863   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9864   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9865   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9866   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9867   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9868   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9869   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9870   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9871   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9872 )
9873
9874 target_link_libraries(server_test
9875   ${_gRPC_ALLTARGETS_LIBRARIES}
9876   grpc_test_util
9877   grpc
9878   gpr
9879 )
9880
9881   # avoid dependency on libstdc++
9882   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9883     set_target_properties(server_test PROPERTIES LINKER_LANGUAGE C)
9884     target_compile_options(server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9885   endif()
9886
9887 endif (gRPC_BUILD_TESTS)
9888 if (gRPC_BUILD_TESTS)
9889
9890 add_executable(slice_buffer_test
9891   test/core/slice/slice_buffer_test.cc
9892 )
9893
9894
9895 target_include_directories(slice_buffer_test
9896   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9897   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9898   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9899   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9900   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9901   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9902   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9903   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9904   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9905   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9906 )
9907
9908 target_link_libraries(slice_buffer_test
9909   ${_gRPC_ALLTARGETS_LIBRARIES}
9910   grpc_test_util
9911   grpc
9912   gpr
9913 )
9914
9915   # avoid dependency on libstdc++
9916   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9917     set_target_properties(slice_buffer_test PROPERTIES LINKER_LANGUAGE C)
9918     target_compile_options(slice_buffer_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9919   endif()
9920
9921 endif (gRPC_BUILD_TESTS)
9922 if (gRPC_BUILD_TESTS)
9923
9924 add_executable(slice_string_helpers_test
9925   test/core/slice/slice_string_helpers_test.cc
9926 )
9927
9928
9929 target_include_directories(slice_string_helpers_test
9930   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9931   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9932   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9933   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9934   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9935   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9936   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9937   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9938   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9939   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9940 )
9941
9942 target_link_libraries(slice_string_helpers_test
9943   ${_gRPC_ALLTARGETS_LIBRARIES}
9944   grpc_test_util
9945   grpc
9946   gpr
9947 )
9948
9949   # avoid dependency on libstdc++
9950   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9951     set_target_properties(slice_string_helpers_test PROPERTIES LINKER_LANGUAGE C)
9952     target_compile_options(slice_string_helpers_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9953   endif()
9954
9955 endif (gRPC_BUILD_TESTS)
9956 if (gRPC_BUILD_TESTS)
9957
9958 add_executable(slice_test
9959   test/core/slice/slice_test.cc
9960 )
9961
9962
9963 target_include_directories(slice_test
9964   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9965   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9966   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9967   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9968   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9969   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9970   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9971   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9972   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9973   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9974 )
9975
9976 target_link_libraries(slice_test
9977   ${_gRPC_ALLTARGETS_LIBRARIES}
9978   grpc_test_util
9979   grpc
9980   gpr
9981 )
9982
9983   # avoid dependency on libstdc++
9984   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9985     set_target_properties(slice_test PROPERTIES LINKER_LANGUAGE C)
9986     target_compile_options(slice_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9987   endif()
9988
9989 endif (gRPC_BUILD_TESTS)
9990 if (gRPC_BUILD_TESTS)
9991
9992 add_executable(sockaddr_resolver_test
9993   test/core/client_channel/resolvers/sockaddr_resolver_test.cc
9994 )
9995
9996
9997 target_include_directories(sockaddr_resolver_test
9998   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9999   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10000   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10001   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10002   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10003   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10004   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10005   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10006   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10007   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10008 )
10009
10010 target_link_libraries(sockaddr_resolver_test
10011   ${_gRPC_ALLTARGETS_LIBRARIES}
10012   grpc_test_util
10013   grpc
10014   gpr
10015 )
10016
10017   # avoid dependency on libstdc++
10018   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10019     set_target_properties(sockaddr_resolver_test PROPERTIES LINKER_LANGUAGE C)
10020     target_compile_options(sockaddr_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10021   endif()
10022
10023 endif (gRPC_BUILD_TESTS)
10024 if (gRPC_BUILD_TESTS)
10025
10026 add_executable(sockaddr_utils_test
10027   test/core/iomgr/sockaddr_utils_test.cc
10028 )
10029
10030
10031 target_include_directories(sockaddr_utils_test
10032   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10033   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10034   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10035   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10036   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10037   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10038   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10039   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10040   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10041   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10042 )
10043
10044 target_link_libraries(sockaddr_utils_test
10045   ${_gRPC_ALLTARGETS_LIBRARIES}
10046   grpc_test_util
10047   grpc
10048   gpr
10049 )
10050
10051   # avoid dependency on libstdc++
10052   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10053     set_target_properties(sockaddr_utils_test PROPERTIES LINKER_LANGUAGE C)
10054     target_compile_options(sockaddr_utils_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10055   endif()
10056
10057 endif (gRPC_BUILD_TESTS)
10058 if (gRPC_BUILD_TESTS)
10059 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10060
10061 add_executable(socket_utils_test
10062   test/core/iomgr/socket_utils_test.cc
10063 )
10064
10065
10066 target_include_directories(socket_utils_test
10067   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10068   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10069   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10070   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10071   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10072   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10073   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10074   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10075   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10076   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10077 )
10078
10079 target_link_libraries(socket_utils_test
10080   ${_gRPC_ALLTARGETS_LIBRARIES}
10081   grpc_test_util
10082   grpc
10083   gpr
10084 )
10085
10086   # avoid dependency on libstdc++
10087   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10088     set_target_properties(socket_utils_test PROPERTIES LINKER_LANGUAGE C)
10089     target_compile_options(socket_utils_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10090   endif()
10091
10092 endif()
10093 endif (gRPC_BUILD_TESTS)
10094 if (gRPC_BUILD_TESTS)
10095 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10096
10097 add_executable(ssl_transport_security_test
10098   test/core/tsi/ssl_transport_security_test.cc
10099   test/core/tsi/transport_security_test_lib.cc
10100 )
10101
10102
10103 target_include_directories(ssl_transport_security_test
10104   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10105   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10106   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10107   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10108   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10109   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10110   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10111   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10112   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10113   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10114 )
10115
10116 target_link_libraries(ssl_transport_security_test
10117   ${_gRPC_ALLTARGETS_LIBRARIES}
10118   gpr
10119   grpc_test_util
10120   grpc
10121 )
10122
10123   # avoid dependency on libstdc++
10124   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10125     set_target_properties(ssl_transport_security_test PROPERTIES LINKER_LANGUAGE C)
10126     target_compile_options(ssl_transport_security_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10127   endif()
10128
10129 endif()
10130 endif (gRPC_BUILD_TESTS)
10131 if (gRPC_BUILD_TESTS)
10132
10133 add_executable(status_conversion_test
10134   test/core/transport/status_conversion_test.cc
10135 )
10136
10137
10138 target_include_directories(status_conversion_test
10139   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10140   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10141   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10142   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10143   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10144   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10145   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10146   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10147   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10148   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10149 )
10150
10151 target_link_libraries(status_conversion_test
10152   ${_gRPC_ALLTARGETS_LIBRARIES}
10153   grpc_test_util
10154   grpc
10155   gpr
10156 )
10157
10158   # avoid dependency on libstdc++
10159   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10160     set_target_properties(status_conversion_test PROPERTIES LINKER_LANGUAGE C)
10161     target_compile_options(status_conversion_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10162   endif()
10163
10164 endif (gRPC_BUILD_TESTS)
10165 if (gRPC_BUILD_TESTS)
10166
10167 add_executable(stream_compression_test
10168   test/core/compression/stream_compression_test.cc
10169 )
10170
10171
10172 target_include_directories(stream_compression_test
10173   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10174   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10175   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10176   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10177   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10178   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10179   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10180   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10181   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10182   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10183 )
10184
10185 target_link_libraries(stream_compression_test
10186   ${_gRPC_ALLTARGETS_LIBRARIES}
10187   grpc_test_util
10188   grpc
10189   gpr
10190 )
10191
10192   # avoid dependency on libstdc++
10193   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10194     set_target_properties(stream_compression_test PROPERTIES LINKER_LANGUAGE C)
10195     target_compile_options(stream_compression_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10196   endif()
10197
10198 endif (gRPC_BUILD_TESTS)
10199 if (gRPC_BUILD_TESTS)
10200
10201 add_executable(stream_owned_slice_test
10202   test/core/transport/stream_owned_slice_test.cc
10203 )
10204
10205
10206 target_include_directories(stream_owned_slice_test
10207   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10208   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10209   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10210   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10211   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10212   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10213   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10214   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10215   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10216   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10217 )
10218
10219 target_link_libraries(stream_owned_slice_test
10220   ${_gRPC_ALLTARGETS_LIBRARIES}
10221   grpc_test_util
10222   grpc
10223   gpr
10224 )
10225
10226   # avoid dependency on libstdc++
10227   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10228     set_target_properties(stream_owned_slice_test PROPERTIES LINKER_LANGUAGE C)
10229     target_compile_options(stream_owned_slice_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10230   endif()
10231
10232 endif (gRPC_BUILD_TESTS)
10233 if (gRPC_BUILD_TESTS)
10234 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10235
10236 add_executable(tcp_client_posix_test
10237   test/core/iomgr/tcp_client_posix_test.cc
10238 )
10239
10240
10241 target_include_directories(tcp_client_posix_test
10242   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10243   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10244   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10245   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10246   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10247   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10248   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10249   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10250   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10251   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10252 )
10253
10254 target_link_libraries(tcp_client_posix_test
10255   ${_gRPC_ALLTARGETS_LIBRARIES}
10256   grpc_test_util
10257   grpc
10258   gpr
10259 )
10260
10261   # avoid dependency on libstdc++
10262   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10263     set_target_properties(tcp_client_posix_test PROPERTIES LINKER_LANGUAGE C)
10264     target_compile_options(tcp_client_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10265   endif()
10266
10267 endif()
10268 endif (gRPC_BUILD_TESTS)
10269 if (gRPC_BUILD_TESTS)
10270
10271 add_executable(tcp_client_uv_test
10272   test/core/iomgr/tcp_client_uv_test.cc
10273 )
10274
10275
10276 target_include_directories(tcp_client_uv_test
10277   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10278   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10279   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10280   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10281   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10282   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10283   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10284   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10285   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10286   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10287 )
10288
10289 target_link_libraries(tcp_client_uv_test
10290   ${_gRPC_ALLTARGETS_LIBRARIES}
10291   grpc_test_util
10292   grpc
10293   gpr
10294 )
10295
10296   # avoid dependency on libstdc++
10297   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10298     set_target_properties(tcp_client_uv_test PROPERTIES LINKER_LANGUAGE C)
10299     target_compile_options(tcp_client_uv_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10300   endif()
10301
10302 endif (gRPC_BUILD_TESTS)
10303 if (gRPC_BUILD_TESTS)
10304 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10305
10306 add_executable(tcp_posix_test
10307   test/core/iomgr/tcp_posix_test.cc
10308 )
10309
10310
10311 target_include_directories(tcp_posix_test
10312   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10313   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10314   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10315   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10316   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10317   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10318   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10319   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10320   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10321   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10322 )
10323
10324 target_link_libraries(tcp_posix_test
10325   ${_gRPC_ALLTARGETS_LIBRARIES}
10326   grpc_test_util
10327   grpc
10328   gpr
10329 )
10330
10331   # avoid dependency on libstdc++
10332   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10333     set_target_properties(tcp_posix_test PROPERTIES LINKER_LANGUAGE C)
10334     target_compile_options(tcp_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10335   endif()
10336
10337 endif()
10338 endif (gRPC_BUILD_TESTS)
10339 if (gRPC_BUILD_TESTS)
10340 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10341
10342 add_executable(tcp_server_posix_test
10343   test/core/iomgr/tcp_server_posix_test.cc
10344 )
10345
10346
10347 target_include_directories(tcp_server_posix_test
10348   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10349   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10350   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10351   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10352   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10353   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10354   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10355   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10356   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10357   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10358 )
10359
10360 target_link_libraries(tcp_server_posix_test
10361   ${_gRPC_ALLTARGETS_LIBRARIES}
10362   grpc_test_util
10363   grpc
10364   gpr
10365 )
10366
10367   # avoid dependency on libstdc++
10368   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10369     set_target_properties(tcp_server_posix_test PROPERTIES LINKER_LANGUAGE C)
10370     target_compile_options(tcp_server_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10371   endif()
10372
10373 endif()
10374 endif (gRPC_BUILD_TESTS)
10375 if (gRPC_BUILD_TESTS)
10376
10377 add_executable(tcp_server_uv_test
10378   test/core/iomgr/tcp_server_uv_test.cc
10379 )
10380
10381
10382 target_include_directories(tcp_server_uv_test
10383   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10384   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10385   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10386   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10387   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10388   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10389   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10390   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10391   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10392   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10393 )
10394
10395 target_link_libraries(tcp_server_uv_test
10396   ${_gRPC_ALLTARGETS_LIBRARIES}
10397   grpc_test_util
10398   grpc
10399   gpr
10400 )
10401
10402   # avoid dependency on libstdc++
10403   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10404     set_target_properties(tcp_server_uv_test PROPERTIES LINKER_LANGUAGE C)
10405     target_compile_options(tcp_server_uv_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10406   endif()
10407
10408 endif (gRPC_BUILD_TESTS)
10409 if (gRPC_BUILD_TESTS)
10410
10411 add_executable(time_averaged_stats_test
10412   test/core/iomgr/time_averaged_stats_test.cc
10413 )
10414
10415
10416 target_include_directories(time_averaged_stats_test
10417   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10418   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10419   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10420   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10421   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10422   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10423   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10424   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10425   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10426   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10427 )
10428
10429 target_link_libraries(time_averaged_stats_test
10430   ${_gRPC_ALLTARGETS_LIBRARIES}
10431   grpc_test_util
10432   grpc
10433   gpr
10434 )
10435
10436   # avoid dependency on libstdc++
10437   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10438     set_target_properties(time_averaged_stats_test PROPERTIES LINKER_LANGUAGE C)
10439     target_compile_options(time_averaged_stats_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10440   endif()
10441
10442 endif (gRPC_BUILD_TESTS)
10443 if (gRPC_BUILD_TESTS)
10444
10445 add_executable(timeout_encoding_test
10446   test/core/transport/timeout_encoding_test.cc
10447 )
10448
10449
10450 target_include_directories(timeout_encoding_test
10451   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10452   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10453   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10454   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10455   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10456   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10457   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10458   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10459   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10460   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10461 )
10462
10463 target_link_libraries(timeout_encoding_test
10464   ${_gRPC_ALLTARGETS_LIBRARIES}
10465   grpc_test_util
10466   grpc
10467   gpr
10468 )
10469
10470   # avoid dependency on libstdc++
10471   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10472     set_target_properties(timeout_encoding_test PROPERTIES LINKER_LANGUAGE C)
10473     target_compile_options(timeout_encoding_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10474   endif()
10475
10476 endif (gRPC_BUILD_TESTS)
10477 if (gRPC_BUILD_TESTS)
10478
10479 add_executable(timer_heap_test
10480   test/core/iomgr/timer_heap_test.cc
10481 )
10482
10483
10484 target_include_directories(timer_heap_test
10485   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10486   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10487   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10488   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10489   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10490   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10491   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10492   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10493   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10494   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10495 )
10496
10497 target_link_libraries(timer_heap_test
10498   ${_gRPC_ALLTARGETS_LIBRARIES}
10499   grpc_test_util
10500   grpc
10501   gpr
10502 )
10503
10504   # avoid dependency on libstdc++
10505   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10506     set_target_properties(timer_heap_test PROPERTIES LINKER_LANGUAGE C)
10507     target_compile_options(timer_heap_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10508   endif()
10509
10510 endif (gRPC_BUILD_TESTS)
10511 if (gRPC_BUILD_TESTS)
10512
10513 add_executable(timer_list_test
10514   test/core/iomgr/timer_list_test.cc
10515 )
10516
10517
10518 target_include_directories(timer_list_test
10519   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10520   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10521   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10522   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10523   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10524   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10525   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10526   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10527   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10528   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10529 )
10530
10531 target_link_libraries(timer_list_test
10532   ${_gRPC_ALLTARGETS_LIBRARIES}
10533   grpc_test_util
10534   grpc
10535   gpr
10536 )
10537
10538   # avoid dependency on libstdc++
10539   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10540     set_target_properties(timer_list_test PROPERTIES LINKER_LANGUAGE C)
10541     target_compile_options(timer_list_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10542   endif()
10543
10544 endif (gRPC_BUILD_TESTS)
10545 if (gRPC_BUILD_TESTS)
10546
10547 add_executable(transport_connectivity_state_test
10548   test/core/transport/connectivity_state_test.cc
10549 )
10550
10551
10552 target_include_directories(transport_connectivity_state_test
10553   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10554   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10555   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10556   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10557   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10558   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10559   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10560   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10561   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10562   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10563 )
10564
10565 target_link_libraries(transport_connectivity_state_test
10566   ${_gRPC_ALLTARGETS_LIBRARIES}
10567   grpc_test_util
10568   grpc
10569   gpr
10570 )
10571
10572   # avoid dependency on libstdc++
10573   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10574     set_target_properties(transport_connectivity_state_test PROPERTIES LINKER_LANGUAGE C)
10575     target_compile_options(transport_connectivity_state_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10576   endif()
10577
10578 endif (gRPC_BUILD_TESTS)
10579 if (gRPC_BUILD_TESTS)
10580
10581 add_executable(transport_metadata_test
10582   test/core/transport/metadata_test.cc
10583 )
10584
10585
10586 target_include_directories(transport_metadata_test
10587   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10588   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10589   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10590   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10591   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10592   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10593   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10594   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10595   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10596   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10597 )
10598
10599 target_link_libraries(transport_metadata_test
10600   ${_gRPC_ALLTARGETS_LIBRARIES}
10601   grpc_test_util
10602   grpc
10603   gpr
10604 )
10605
10606   # avoid dependency on libstdc++
10607   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10608     set_target_properties(transport_metadata_test PROPERTIES LINKER_LANGUAGE C)
10609     target_compile_options(transport_metadata_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10610   endif()
10611
10612 endif (gRPC_BUILD_TESTS)
10613 if (gRPC_BUILD_TESTS)
10614 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10615
10616 add_executable(transport_security_test
10617   test/core/tsi/transport_security_test.cc
10618 )
10619
10620
10621 target_include_directories(transport_security_test
10622   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10623   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10624   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10625   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10626   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10627   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10628   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10629   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10630   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10631   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10632 )
10633
10634 target_link_libraries(transport_security_test
10635   ${_gRPC_ALLTARGETS_LIBRARIES}
10636   grpc_test_util
10637   grpc
10638   gpr
10639 )
10640
10641   # avoid dependency on libstdc++
10642   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10643     set_target_properties(transport_security_test PROPERTIES LINKER_LANGUAGE C)
10644     target_compile_options(transport_security_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10645   endif()
10646
10647 endif()
10648 endif (gRPC_BUILD_TESTS)
10649 if (gRPC_BUILD_TESTS)
10650 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10651
10652 add_executable(udp_server_test
10653   test/core/iomgr/udp_server_test.cc
10654 )
10655
10656
10657 target_include_directories(udp_server_test
10658   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10659   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10660   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10661   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10662   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10663   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10664   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10665   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10666   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10667   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10668 )
10669
10670 target_link_libraries(udp_server_test
10671   ${_gRPC_ALLTARGETS_LIBRARIES}
10672   grpc_test_util
10673   grpc
10674   gpr
10675 )
10676
10677   # avoid dependency on libstdc++
10678   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10679     set_target_properties(udp_server_test PROPERTIES LINKER_LANGUAGE C)
10680     target_compile_options(udp_server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10681   endif()
10682
10683 endif()
10684 endif (gRPC_BUILD_TESTS)
10685 if (gRPC_BUILD_TESTS)
10686
10687 add_executable(uri_parser_test
10688   test/core/client_channel/uri_parser_test.cc
10689 )
10690
10691
10692 target_include_directories(uri_parser_test
10693   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10694   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10695   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10696   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10697   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10698   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10699   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10700   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10701   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10702   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10703 )
10704
10705 target_link_libraries(uri_parser_test
10706   ${_gRPC_ALLTARGETS_LIBRARIES}
10707   grpc_test_util
10708   grpc
10709   gpr
10710 )
10711
10712   # avoid dependency on libstdc++
10713   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10714     set_target_properties(uri_parser_test PROPERTIES LINKER_LANGUAGE C)
10715     target_compile_options(uri_parser_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10716   endif()
10717
10718 endif (gRPC_BUILD_TESTS)
10719 if (gRPC_BUILD_TESTS)
10720
10721 add_executable(alarm_test
10722   test/cpp/common/alarm_test.cc
10723   third_party/googletest/googletest/src/gtest-all.cc
10724   third_party/googletest/googlemock/src/gmock-all.cc
10725 )
10726
10727
10728 target_include_directories(alarm_test
10729   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10730   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10731   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10732   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10733   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10734   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10735   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10736   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10737   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10738   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10739   PRIVATE third_party/googletest/googletest/include
10740   PRIVATE third_party/googletest/googletest
10741   PRIVATE third_party/googletest/googlemock/include
10742   PRIVATE third_party/googletest/googlemock
10743   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10744 )
10745
10746 target_link_libraries(alarm_test
10747   ${_gRPC_PROTOBUF_LIBRARIES}
10748   ${_gRPC_ALLTARGETS_LIBRARIES}
10749   grpc++_test_util_unsecure
10750   grpc_test_util_unsecure
10751   grpc++_unsecure
10752   grpc_unsecure
10753   gpr
10754   ${_gRPC_GFLAGS_LIBRARIES}
10755 )
10756
10757
10758 endif (gRPC_BUILD_TESTS)
10759 if (gRPC_BUILD_TESTS)
10760
10761 add_executable(alts_counter_test
10762   test/core/tsi/alts/frame_protector/alts_counter_test.cc
10763   third_party/googletest/googletest/src/gtest-all.cc
10764   third_party/googletest/googlemock/src/gmock-all.cc
10765 )
10766
10767
10768 target_include_directories(alts_counter_test
10769   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10770   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10771   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10772   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10773   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10774   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10775   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10776   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10777   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10778   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10779   PRIVATE third_party/googletest/googletest/include
10780   PRIVATE third_party/googletest/googletest
10781   PRIVATE third_party/googletest/googlemock/include
10782   PRIVATE third_party/googletest/googlemock
10783   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10784 )
10785
10786 target_link_libraries(alts_counter_test
10787   ${_gRPC_PROTOBUF_LIBRARIES}
10788   ${_gRPC_ALLTARGETS_LIBRARIES}
10789   alts_test_util
10790   gpr
10791   grpc
10792   ${_gRPC_GFLAGS_LIBRARIES}
10793 )
10794
10795
10796 endif (gRPC_BUILD_TESTS)
10797 if (gRPC_BUILD_TESTS)
10798
10799 add_executable(alts_crypt_test
10800   test/core/tsi/alts/crypt/aes_gcm_test.cc
10801   third_party/googletest/googletest/src/gtest-all.cc
10802   third_party/googletest/googlemock/src/gmock-all.cc
10803 )
10804
10805
10806 target_include_directories(alts_crypt_test
10807   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10808   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10809   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10810   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10811   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10812   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10813   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10814   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10815   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10816   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10817   PRIVATE third_party/googletest/googletest/include
10818   PRIVATE third_party/googletest/googletest
10819   PRIVATE third_party/googletest/googlemock/include
10820   PRIVATE third_party/googletest/googlemock
10821   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10822 )
10823
10824 target_link_libraries(alts_crypt_test
10825   ${_gRPC_PROTOBUF_LIBRARIES}
10826   ${_gRPC_ALLTARGETS_LIBRARIES}
10827   alts_test_util
10828   gpr
10829   grpc_test_util
10830   grpc
10831   ${_gRPC_GFLAGS_LIBRARIES}
10832 )
10833
10834
10835 endif (gRPC_BUILD_TESTS)
10836 if (gRPC_BUILD_TESTS)
10837
10838 add_executable(alts_crypter_test
10839   test/core/tsi/alts/frame_protector/alts_crypter_test.cc
10840   third_party/googletest/googletest/src/gtest-all.cc
10841   third_party/googletest/googlemock/src/gmock-all.cc
10842 )
10843
10844
10845 target_include_directories(alts_crypter_test
10846   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10847   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10848   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10849   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10850   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10851   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10852   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10853   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10854   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10855   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10856   PRIVATE third_party/googletest/googletest/include
10857   PRIVATE third_party/googletest/googletest
10858   PRIVATE third_party/googletest/googlemock/include
10859   PRIVATE third_party/googletest/googlemock
10860   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10861 )
10862
10863 target_link_libraries(alts_crypter_test
10864   ${_gRPC_PROTOBUF_LIBRARIES}
10865   ${_gRPC_ALLTARGETS_LIBRARIES}
10866   alts_test_util
10867   gpr
10868   grpc
10869   ${_gRPC_GFLAGS_LIBRARIES}
10870 )
10871
10872
10873 endif (gRPC_BUILD_TESTS)
10874 if (gRPC_BUILD_TESTS)
10875
10876 add_executable(alts_frame_handler_test
10877   test/core/tsi/alts/frame_protector/frame_handler_test.cc
10878   third_party/googletest/googletest/src/gtest-all.cc
10879   third_party/googletest/googlemock/src/gmock-all.cc
10880 )
10881
10882
10883 target_include_directories(alts_frame_handler_test
10884   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10885   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10886   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10887   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10888   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10889   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10890   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10891   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10892   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10893   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10894   PRIVATE third_party/googletest/googletest/include
10895   PRIVATE third_party/googletest/googletest
10896   PRIVATE third_party/googletest/googlemock/include
10897   PRIVATE third_party/googletest/googlemock
10898   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10899 )
10900
10901 target_link_libraries(alts_frame_handler_test
10902   ${_gRPC_PROTOBUF_LIBRARIES}
10903   ${_gRPC_ALLTARGETS_LIBRARIES}
10904   alts_test_util
10905   gpr
10906   grpc
10907   ${_gRPC_GFLAGS_LIBRARIES}
10908 )
10909
10910
10911 endif (gRPC_BUILD_TESTS)
10912 if (gRPC_BUILD_TESTS)
10913
10914 add_executable(alts_frame_protector_test
10915   test/core/tsi/alts/frame_protector/alts_frame_protector_test.cc
10916   test/core/tsi/transport_security_test_lib.cc
10917   third_party/googletest/googletest/src/gtest-all.cc
10918   third_party/googletest/googlemock/src/gmock-all.cc
10919 )
10920
10921
10922 target_include_directories(alts_frame_protector_test
10923   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10924   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10925   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10926   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10927   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10928   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10929   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10930   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10931   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10932   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10933   PRIVATE third_party/googletest/googletest/include
10934   PRIVATE third_party/googletest/googletest
10935   PRIVATE third_party/googletest/googlemock/include
10936   PRIVATE third_party/googletest/googlemock
10937   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10938 )
10939
10940 target_link_libraries(alts_frame_protector_test
10941   ${_gRPC_PROTOBUF_LIBRARIES}
10942   ${_gRPC_ALLTARGETS_LIBRARIES}
10943   alts_test_util
10944   gpr
10945   grpc
10946   ${_gRPC_GFLAGS_LIBRARIES}
10947 )
10948
10949
10950 endif (gRPC_BUILD_TESTS)
10951 if (gRPC_BUILD_TESTS)
10952
10953 add_executable(alts_grpc_record_protocol_test
10954   test/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_test.cc
10955   third_party/googletest/googletest/src/gtest-all.cc
10956   third_party/googletest/googlemock/src/gmock-all.cc
10957 )
10958
10959
10960 target_include_directories(alts_grpc_record_protocol_test
10961   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10962   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10963   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10964   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10965   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10966   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10967   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10968   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10969   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10970   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10971   PRIVATE third_party/googletest/googletest/include
10972   PRIVATE third_party/googletest/googletest
10973   PRIVATE third_party/googletest/googlemock/include
10974   PRIVATE third_party/googletest/googlemock
10975   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10976 )
10977
10978 target_link_libraries(alts_grpc_record_protocol_test
10979   ${_gRPC_PROTOBUF_LIBRARIES}
10980   ${_gRPC_ALLTARGETS_LIBRARIES}
10981   alts_test_util
10982   gpr
10983   grpc
10984   ${_gRPC_GFLAGS_LIBRARIES}
10985 )
10986
10987
10988 endif (gRPC_BUILD_TESTS)
10989 if (gRPC_BUILD_TESTS)
10990
10991 add_executable(alts_handshaker_client_test
10992   test/core/tsi/alts/handshaker/alts_handshaker_client_test.cc
10993   third_party/googletest/googletest/src/gtest-all.cc
10994   third_party/googletest/googlemock/src/gmock-all.cc
10995 )
10996
10997
10998 target_include_directories(alts_handshaker_client_test
10999   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11000   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11001   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11002   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11003   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11004   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11005   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11006   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11007   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11008   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11009   PRIVATE third_party/googletest/googletest/include
11010   PRIVATE third_party/googletest/googletest
11011   PRIVATE third_party/googletest/googlemock/include
11012   PRIVATE third_party/googletest/googlemock
11013   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11014 )
11015
11016 target_link_libraries(alts_handshaker_client_test
11017   ${_gRPC_PROTOBUF_LIBRARIES}
11018   ${_gRPC_ALLTARGETS_LIBRARIES}
11019   alts_test_util
11020   gpr
11021   grpc
11022   ${_gRPC_GFLAGS_LIBRARIES}
11023 )
11024
11025
11026 endif (gRPC_BUILD_TESTS)
11027 if (gRPC_BUILD_TESTS)
11028
11029 add_executable(alts_handshaker_service_api_test
11030   test/core/tsi/alts/handshaker/alts_handshaker_service_api_test.cc
11031   third_party/googletest/googletest/src/gtest-all.cc
11032   third_party/googletest/googlemock/src/gmock-all.cc
11033 )
11034
11035
11036 target_include_directories(alts_handshaker_service_api_test
11037   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11038   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11039   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11040   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11041   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11042   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11043   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11044   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11045   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11046   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11047   PRIVATE third_party/googletest/googletest/include
11048   PRIVATE third_party/googletest/googletest
11049   PRIVATE third_party/googletest/googlemock/include
11050   PRIVATE third_party/googletest/googlemock
11051   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11052 )
11053
11054 target_link_libraries(alts_handshaker_service_api_test
11055   ${_gRPC_PROTOBUF_LIBRARIES}
11056   ${_gRPC_ALLTARGETS_LIBRARIES}
11057   alts_test_util
11058   gpr
11059   grpc
11060   ${_gRPC_GFLAGS_LIBRARIES}
11061 )
11062
11063
11064 endif (gRPC_BUILD_TESTS)
11065 if (gRPC_BUILD_TESTS)
11066
11067 add_executable(alts_iovec_record_protocol_test
11068   test/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol_test.cc
11069   third_party/googletest/googletest/src/gtest-all.cc
11070   third_party/googletest/googlemock/src/gmock-all.cc
11071 )
11072
11073
11074 target_include_directories(alts_iovec_record_protocol_test
11075   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11076   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11077   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11078   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11079   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11080   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11081   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11082   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11083   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11084   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11085   PRIVATE third_party/googletest/googletest/include
11086   PRIVATE third_party/googletest/googletest
11087   PRIVATE third_party/googletest/googlemock/include
11088   PRIVATE third_party/googletest/googlemock
11089   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11090 )
11091
11092 target_link_libraries(alts_iovec_record_protocol_test
11093   ${_gRPC_PROTOBUF_LIBRARIES}
11094   ${_gRPC_ALLTARGETS_LIBRARIES}
11095   alts_test_util
11096   gpr
11097   grpc
11098   ${_gRPC_GFLAGS_LIBRARIES}
11099 )
11100
11101
11102 endif (gRPC_BUILD_TESTS)
11103 if (gRPC_BUILD_TESTS)
11104
11105 add_executable(alts_security_connector_test
11106   test/core/security/alts_security_connector_test.cc
11107   third_party/googletest/googletest/src/gtest-all.cc
11108   third_party/googletest/googlemock/src/gmock-all.cc
11109 )
11110
11111
11112 target_include_directories(alts_security_connector_test
11113   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11114   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11115   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11116   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11117   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11118   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11119   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11120   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11121   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11122   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11123   PRIVATE third_party/googletest/googletest/include
11124   PRIVATE third_party/googletest/googletest
11125   PRIVATE third_party/googletest/googlemock/include
11126   PRIVATE third_party/googletest/googlemock
11127   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11128 )
11129
11130 target_link_libraries(alts_security_connector_test
11131   ${_gRPC_PROTOBUF_LIBRARIES}
11132   ${_gRPC_ALLTARGETS_LIBRARIES}
11133   gpr
11134   grpc
11135   ${_gRPC_GFLAGS_LIBRARIES}
11136 )
11137
11138
11139 endif (gRPC_BUILD_TESTS)
11140 if (gRPC_BUILD_TESTS)
11141
11142 add_executable(alts_tsi_handshaker_test
11143   test/core/tsi/alts/handshaker/alts_tsi_handshaker_test.cc
11144   third_party/googletest/googletest/src/gtest-all.cc
11145   third_party/googletest/googlemock/src/gmock-all.cc
11146 )
11147
11148
11149 target_include_directories(alts_tsi_handshaker_test
11150   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11151   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11152   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11153   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11154   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11155   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11156   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11157   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11158   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11159   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11160   PRIVATE third_party/googletest/googletest/include
11161   PRIVATE third_party/googletest/googletest
11162   PRIVATE third_party/googletest/googlemock/include
11163   PRIVATE third_party/googletest/googlemock
11164   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11165 )
11166
11167 target_link_libraries(alts_tsi_handshaker_test
11168   ${_gRPC_PROTOBUF_LIBRARIES}
11169   ${_gRPC_ALLTARGETS_LIBRARIES}
11170   alts_test_util
11171   gpr
11172   grpc
11173   ${_gRPC_GFLAGS_LIBRARIES}
11174 )
11175
11176
11177 endif (gRPC_BUILD_TESTS)
11178 if (gRPC_BUILD_TESTS)
11179
11180 add_executable(alts_tsi_utils_test
11181   test/core/tsi/alts/handshaker/alts_tsi_utils_test.cc
11182   third_party/googletest/googletest/src/gtest-all.cc
11183   third_party/googletest/googlemock/src/gmock-all.cc
11184 )
11185
11186
11187 target_include_directories(alts_tsi_utils_test
11188   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11189   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11190   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11191   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11192   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11193   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11194   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11195   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11196   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11197   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11198   PRIVATE third_party/googletest/googletest/include
11199   PRIVATE third_party/googletest/googletest
11200   PRIVATE third_party/googletest/googlemock/include
11201   PRIVATE third_party/googletest/googlemock
11202   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11203 )
11204
11205 target_link_libraries(alts_tsi_utils_test
11206   ${_gRPC_PROTOBUF_LIBRARIES}
11207   ${_gRPC_ALLTARGETS_LIBRARIES}
11208   alts_test_util
11209   gpr
11210   grpc
11211   ${_gRPC_GFLAGS_LIBRARIES}
11212 )
11213
11214
11215 endif (gRPC_BUILD_TESTS)
11216 if (gRPC_BUILD_TESTS)
11217
11218 add_executable(alts_zero_copy_grpc_protector_test
11219   test/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector_test.cc
11220   third_party/googletest/googletest/src/gtest-all.cc
11221   third_party/googletest/googlemock/src/gmock-all.cc
11222 )
11223
11224
11225 target_include_directories(alts_zero_copy_grpc_protector_test
11226   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11227   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11228   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11229   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11230   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11231   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11232   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11233   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11234   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11235   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11236   PRIVATE third_party/googletest/googletest/include
11237   PRIVATE third_party/googletest/googletest
11238   PRIVATE third_party/googletest/googlemock/include
11239   PRIVATE third_party/googletest/googlemock
11240   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11241 )
11242
11243 target_link_libraries(alts_zero_copy_grpc_protector_test
11244   ${_gRPC_PROTOBUF_LIBRARIES}
11245   ${_gRPC_ALLTARGETS_LIBRARIES}
11246   alts_test_util
11247   gpr
11248   grpc
11249   ${_gRPC_GFLAGS_LIBRARIES}
11250 )
11251
11252
11253 endif (gRPC_BUILD_TESTS)
11254 if (gRPC_BUILD_TESTS)
11255
11256 add_executable(async_end2end_test
11257   test/cpp/end2end/async_end2end_test.cc
11258   third_party/googletest/googletest/src/gtest-all.cc
11259   third_party/googletest/googlemock/src/gmock-all.cc
11260 )
11261
11262
11263 target_include_directories(async_end2end_test
11264   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11265   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11266   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11267   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11268   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11269   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11270   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11271   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11272   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11273   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11274   PRIVATE third_party/googletest/googletest/include
11275   PRIVATE third_party/googletest/googletest
11276   PRIVATE third_party/googletest/googlemock/include
11277   PRIVATE third_party/googletest/googlemock
11278   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11279 )
11280
11281 target_link_libraries(async_end2end_test
11282   ${_gRPC_PROTOBUF_LIBRARIES}
11283   ${_gRPC_ALLTARGETS_LIBRARIES}
11284   grpc++_test_util
11285   grpc_test_util
11286   grpc++
11287   grpc
11288   gpr
11289   ${_gRPC_GFLAGS_LIBRARIES}
11290 )
11291
11292
11293 endif (gRPC_BUILD_TESTS)
11294 if (gRPC_BUILD_TESTS)
11295
11296 add_executable(auth_property_iterator_test
11297   test/cpp/common/auth_property_iterator_test.cc
11298   third_party/googletest/googletest/src/gtest-all.cc
11299   third_party/googletest/googlemock/src/gmock-all.cc
11300 )
11301
11302
11303 target_include_directories(auth_property_iterator_test
11304   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11305   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11306   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11307   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11308   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11309   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11310   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11311   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11312   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11313   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11314   PRIVATE third_party/googletest/googletest/include
11315   PRIVATE third_party/googletest/googletest
11316   PRIVATE third_party/googletest/googlemock/include
11317   PRIVATE third_party/googletest/googlemock
11318   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11319 )
11320
11321 target_link_libraries(auth_property_iterator_test
11322   ${_gRPC_PROTOBUF_LIBRARIES}
11323   ${_gRPC_ALLTARGETS_LIBRARIES}
11324   grpc++_test_util
11325   grpc_test_util
11326   grpc++
11327   grpc
11328   gpr
11329   ${_gRPC_GFLAGS_LIBRARIES}
11330 )
11331
11332
11333 endif (gRPC_BUILD_TESTS)
11334 if (gRPC_BUILD_TESTS)
11335
11336 add_executable(backoff_test
11337   test/core/backoff/backoff_test.cc
11338   third_party/googletest/googletest/src/gtest-all.cc
11339   third_party/googletest/googlemock/src/gmock-all.cc
11340 )
11341
11342
11343 target_include_directories(backoff_test
11344   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11345   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11346   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11347   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11348   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11349   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11350   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11351   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11352   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11353   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11354   PRIVATE third_party/googletest/googletest/include
11355   PRIVATE third_party/googletest/googletest
11356   PRIVATE third_party/googletest/googlemock/include
11357   PRIVATE third_party/googletest/googlemock
11358   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11359 )
11360
11361 target_link_libraries(backoff_test
11362   ${_gRPC_PROTOBUF_LIBRARIES}
11363   ${_gRPC_ALLTARGETS_LIBRARIES}
11364   grpc_test_util
11365   grpc
11366   gpr
11367   ${_gRPC_GFLAGS_LIBRARIES}
11368 )
11369
11370
11371 endif (gRPC_BUILD_TESTS)
11372 if (gRPC_BUILD_TESTS)
11373
11374 add_executable(bdp_estimator_test
11375   test/core/transport/bdp_estimator_test.cc
11376   third_party/googletest/googletest/src/gtest-all.cc
11377   third_party/googletest/googlemock/src/gmock-all.cc
11378 )
11379
11380
11381 target_include_directories(bdp_estimator_test
11382   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11383   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11384   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11385   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11386   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11387   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11388   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11389   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11390   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11391   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11392   PRIVATE third_party/googletest/googletest/include
11393   PRIVATE third_party/googletest/googletest
11394   PRIVATE third_party/googletest/googlemock/include
11395   PRIVATE third_party/googletest/googlemock
11396   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11397 )
11398
11399 target_link_libraries(bdp_estimator_test
11400   ${_gRPC_PROTOBUF_LIBRARIES}
11401   ${_gRPC_ALLTARGETS_LIBRARIES}
11402   grpc++_test_util
11403   grpc++
11404   grpc_test_util
11405   grpc
11406   gpr
11407   ${_gRPC_GFLAGS_LIBRARIES}
11408 )
11409
11410
11411 endif (gRPC_BUILD_TESTS)
11412 if (gRPC_BUILD_TESTS)
11413 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11414
11415 add_executable(bm_alarm
11416   test/cpp/microbenchmarks/bm_alarm.cc
11417   third_party/googletest/googletest/src/gtest-all.cc
11418   third_party/googletest/googlemock/src/gmock-all.cc
11419 )
11420
11421
11422 target_include_directories(bm_alarm
11423   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11424   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11425   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11426   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11427   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11428   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11429   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11430   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11431   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11432   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11433   PRIVATE third_party/googletest/googletest/include
11434   PRIVATE third_party/googletest/googletest
11435   PRIVATE third_party/googletest/googlemock/include
11436   PRIVATE third_party/googletest/googlemock
11437   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11438 )
11439
11440 target_link_libraries(bm_alarm
11441   ${_gRPC_PROTOBUF_LIBRARIES}
11442   ${_gRPC_ALLTARGETS_LIBRARIES}
11443   grpc_benchmark
11444   ${_gRPC_BENCHMARK_LIBRARIES}
11445   grpc++_test_util_unsecure
11446   grpc_test_util_unsecure
11447   grpc++_unsecure
11448   grpc_unsecure
11449   gpr
11450   grpc++_test_config
11451   ${_gRPC_GFLAGS_LIBRARIES}
11452 )
11453
11454
11455 endif()
11456 endif (gRPC_BUILD_TESTS)
11457 if (gRPC_BUILD_TESTS)
11458 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11459
11460 add_executable(bm_arena
11461   test/cpp/microbenchmarks/bm_arena.cc
11462   third_party/googletest/googletest/src/gtest-all.cc
11463   third_party/googletest/googlemock/src/gmock-all.cc
11464 )
11465
11466
11467 target_include_directories(bm_arena
11468   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11469   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11470   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11471   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11472   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11473   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11474   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11475   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11476   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11477   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11478   PRIVATE third_party/googletest/googletest/include
11479   PRIVATE third_party/googletest/googletest
11480   PRIVATE third_party/googletest/googlemock/include
11481   PRIVATE third_party/googletest/googlemock
11482   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11483 )
11484
11485 target_link_libraries(bm_arena
11486   ${_gRPC_PROTOBUF_LIBRARIES}
11487   ${_gRPC_ALLTARGETS_LIBRARIES}
11488   grpc_benchmark
11489   ${_gRPC_BENCHMARK_LIBRARIES}
11490   grpc++_test_util_unsecure
11491   grpc_test_util_unsecure
11492   grpc++_unsecure
11493   grpc_unsecure
11494   gpr
11495   grpc++_test_config
11496   ${_gRPC_GFLAGS_LIBRARIES}
11497 )
11498
11499
11500 endif()
11501 endif (gRPC_BUILD_TESTS)
11502 if (gRPC_BUILD_TESTS)
11503 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11504
11505 add_executable(bm_byte_buffer
11506   test/cpp/microbenchmarks/bm_byte_buffer.cc
11507   third_party/googletest/googletest/src/gtest-all.cc
11508   third_party/googletest/googlemock/src/gmock-all.cc
11509 )
11510
11511
11512 target_include_directories(bm_byte_buffer
11513   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11514   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11515   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11516   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11517   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11518   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11519   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11520   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11521   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11522   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11523   PRIVATE third_party/googletest/googletest/include
11524   PRIVATE third_party/googletest/googletest
11525   PRIVATE third_party/googletest/googlemock/include
11526   PRIVATE third_party/googletest/googlemock
11527   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11528 )
11529
11530 target_link_libraries(bm_byte_buffer
11531   ${_gRPC_PROTOBUF_LIBRARIES}
11532   ${_gRPC_ALLTARGETS_LIBRARIES}
11533   grpc_benchmark
11534   ${_gRPC_BENCHMARK_LIBRARIES}
11535   grpc++_test_util_unsecure
11536   grpc_test_util_unsecure
11537   grpc++_unsecure
11538   grpc_unsecure
11539   gpr
11540   grpc++_test_config
11541   ${_gRPC_GFLAGS_LIBRARIES}
11542 )
11543
11544
11545 endif()
11546 endif (gRPC_BUILD_TESTS)
11547 if (gRPC_BUILD_TESTS)
11548 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11549
11550 add_executable(bm_call_create
11551   test/cpp/microbenchmarks/bm_call_create.cc
11552   third_party/googletest/googletest/src/gtest-all.cc
11553   third_party/googletest/googlemock/src/gmock-all.cc
11554 )
11555
11556
11557 target_include_directories(bm_call_create
11558   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11559   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11560   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11561   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11562   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11563   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11564   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11565   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11566   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11567   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11568   PRIVATE third_party/googletest/googletest/include
11569   PRIVATE third_party/googletest/googletest
11570   PRIVATE third_party/googletest/googlemock/include
11571   PRIVATE third_party/googletest/googlemock
11572   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11573 )
11574
11575 target_link_libraries(bm_call_create
11576   ${_gRPC_PROTOBUF_LIBRARIES}
11577   ${_gRPC_ALLTARGETS_LIBRARIES}
11578   grpc_benchmark
11579   ${_gRPC_BENCHMARK_LIBRARIES}
11580   grpc++_test_util_unsecure
11581   grpc_test_util_unsecure
11582   grpc++_unsecure
11583   grpc_unsecure
11584   gpr
11585   grpc++_test_config
11586   ${_gRPC_GFLAGS_LIBRARIES}
11587 )
11588
11589
11590 endif()
11591 endif (gRPC_BUILD_TESTS)
11592 if (gRPC_BUILD_TESTS)
11593 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11594
11595 add_executable(bm_callback_streaming_ping_pong
11596   test/cpp/microbenchmarks/bm_callback_streaming_ping_pong.cc
11597   third_party/googletest/googletest/src/gtest-all.cc
11598   third_party/googletest/googlemock/src/gmock-all.cc
11599 )
11600
11601
11602 target_include_directories(bm_callback_streaming_ping_pong
11603   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11604   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11605   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11606   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11607   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11608   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11609   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11610   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11611   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11612   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11613   PRIVATE third_party/googletest/googletest/include
11614   PRIVATE third_party/googletest/googletest
11615   PRIVATE third_party/googletest/googlemock/include
11616   PRIVATE third_party/googletest/googlemock
11617   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11618 )
11619
11620 target_link_libraries(bm_callback_streaming_ping_pong
11621   ${_gRPC_PROTOBUF_LIBRARIES}
11622   ${_gRPC_ALLTARGETS_LIBRARIES}
11623   grpc_benchmark
11624   ${_gRPC_BENCHMARK_LIBRARIES}
11625   grpc++_test_util_unsecure
11626   grpc_test_util_unsecure
11627   grpc++_unsecure
11628   grpc_unsecure
11629   gpr
11630   grpc++_test_config
11631   bm_callback_test_service_impl
11632   ${_gRPC_GFLAGS_LIBRARIES}
11633 )
11634
11635
11636 endif()
11637 endif (gRPC_BUILD_TESTS)
11638 if (gRPC_BUILD_TESTS)
11639 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11640
11641 add_executable(bm_callback_unary_ping_pong
11642   test/cpp/microbenchmarks/bm_callback_unary_ping_pong.cc
11643   third_party/googletest/googletest/src/gtest-all.cc
11644   third_party/googletest/googlemock/src/gmock-all.cc
11645 )
11646
11647
11648 target_include_directories(bm_callback_unary_ping_pong
11649   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11650   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11651   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11652   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11653   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11654   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11655   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11656   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11657   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11658   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11659   PRIVATE third_party/googletest/googletest/include
11660   PRIVATE third_party/googletest/googletest
11661   PRIVATE third_party/googletest/googlemock/include
11662   PRIVATE third_party/googletest/googlemock
11663   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11664 )
11665
11666 target_link_libraries(bm_callback_unary_ping_pong
11667   ${_gRPC_PROTOBUF_LIBRARIES}
11668   ${_gRPC_ALLTARGETS_LIBRARIES}
11669   grpc_benchmark
11670   ${_gRPC_BENCHMARK_LIBRARIES}
11671   grpc++_test_util_unsecure
11672   grpc_test_util_unsecure
11673   grpc++_unsecure
11674   grpc_unsecure
11675   gpr
11676   grpc++_test_config
11677   bm_callback_test_service_impl
11678   ${_gRPC_GFLAGS_LIBRARIES}
11679 )
11680
11681
11682 endif()
11683 endif (gRPC_BUILD_TESTS)
11684 if (gRPC_BUILD_TESTS)
11685 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11686
11687 add_executable(bm_channel
11688   test/cpp/microbenchmarks/bm_channel.cc
11689   third_party/googletest/googletest/src/gtest-all.cc
11690   third_party/googletest/googlemock/src/gmock-all.cc
11691 )
11692
11693
11694 target_include_directories(bm_channel
11695   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11696   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11697   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11698   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11699   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11700   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11701   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11702   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11703   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11704   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11705   PRIVATE third_party/googletest/googletest/include
11706   PRIVATE third_party/googletest/googletest
11707   PRIVATE third_party/googletest/googlemock/include
11708   PRIVATE third_party/googletest/googlemock
11709   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11710 )
11711
11712 target_link_libraries(bm_channel
11713   ${_gRPC_PROTOBUF_LIBRARIES}
11714   ${_gRPC_ALLTARGETS_LIBRARIES}
11715   grpc_benchmark
11716   ${_gRPC_BENCHMARK_LIBRARIES}
11717   grpc++_test_util_unsecure
11718   grpc_test_util_unsecure
11719   grpc++_unsecure
11720   grpc_unsecure
11721   gpr
11722   grpc++_test_config
11723   ${_gRPC_GFLAGS_LIBRARIES}
11724 )
11725
11726
11727 endif()
11728 endif (gRPC_BUILD_TESTS)
11729 if (gRPC_BUILD_TESTS)
11730 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11731
11732 add_executable(bm_chttp2_hpack
11733   test/cpp/microbenchmarks/bm_chttp2_hpack.cc
11734   third_party/googletest/googletest/src/gtest-all.cc
11735   third_party/googletest/googlemock/src/gmock-all.cc
11736 )
11737
11738
11739 target_include_directories(bm_chttp2_hpack
11740   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11741   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11742   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11743   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11744   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11745   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11746   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11747   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11748   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11749   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11750   PRIVATE third_party/googletest/googletest/include
11751   PRIVATE third_party/googletest/googletest
11752   PRIVATE third_party/googletest/googlemock/include
11753   PRIVATE third_party/googletest/googlemock
11754   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11755 )
11756
11757 target_link_libraries(bm_chttp2_hpack
11758   ${_gRPC_PROTOBUF_LIBRARIES}
11759   ${_gRPC_ALLTARGETS_LIBRARIES}
11760   grpc_benchmark
11761   ${_gRPC_BENCHMARK_LIBRARIES}
11762   grpc++_test_util_unsecure
11763   grpc_test_util_unsecure
11764   grpc++_unsecure
11765   grpc_unsecure
11766   gpr
11767   grpc++_test_config
11768   ${_gRPC_GFLAGS_LIBRARIES}
11769 )
11770
11771
11772 endif()
11773 endif (gRPC_BUILD_TESTS)
11774 if (gRPC_BUILD_TESTS)
11775 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11776
11777 add_executable(bm_chttp2_transport
11778   test/cpp/microbenchmarks/bm_chttp2_transport.cc
11779   third_party/googletest/googletest/src/gtest-all.cc
11780   third_party/googletest/googlemock/src/gmock-all.cc
11781 )
11782
11783
11784 target_include_directories(bm_chttp2_transport
11785   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11786   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11787   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11788   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11789   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11790   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11791   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11792   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11793   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11794   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11795   PRIVATE third_party/googletest/googletest/include
11796   PRIVATE third_party/googletest/googletest
11797   PRIVATE third_party/googletest/googlemock/include
11798   PRIVATE third_party/googletest/googlemock
11799   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11800 )
11801
11802 target_link_libraries(bm_chttp2_transport
11803   ${_gRPC_PROTOBUF_LIBRARIES}
11804   ${_gRPC_ALLTARGETS_LIBRARIES}
11805   grpc_benchmark
11806   ${_gRPC_BENCHMARK_LIBRARIES}
11807   grpc++_test_util_unsecure
11808   grpc_test_util_unsecure
11809   grpc++_unsecure
11810   grpc_unsecure
11811   gpr
11812   grpc++_test_config
11813   ${_gRPC_GFLAGS_LIBRARIES}
11814 )
11815
11816
11817 endif()
11818 endif (gRPC_BUILD_TESTS)
11819 if (gRPC_BUILD_TESTS)
11820 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11821
11822 add_executable(bm_closure
11823   test/cpp/microbenchmarks/bm_closure.cc
11824   third_party/googletest/googletest/src/gtest-all.cc
11825   third_party/googletest/googlemock/src/gmock-all.cc
11826 )
11827
11828
11829 target_include_directories(bm_closure
11830   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11831   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11832   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11833   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11834   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11835   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11836   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11837   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11838   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11839   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11840   PRIVATE third_party/googletest/googletest/include
11841   PRIVATE third_party/googletest/googletest
11842   PRIVATE third_party/googletest/googlemock/include
11843   PRIVATE third_party/googletest/googlemock
11844   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11845 )
11846
11847 target_link_libraries(bm_closure
11848   ${_gRPC_PROTOBUF_LIBRARIES}
11849   ${_gRPC_ALLTARGETS_LIBRARIES}
11850   grpc_benchmark
11851   ${_gRPC_BENCHMARK_LIBRARIES}
11852   grpc++_test_util_unsecure
11853   grpc_test_util_unsecure
11854   grpc++_unsecure
11855   grpc_unsecure
11856   gpr
11857   grpc++_test_config
11858   ${_gRPC_GFLAGS_LIBRARIES}
11859 )
11860
11861
11862 endif()
11863 endif (gRPC_BUILD_TESTS)
11864 if (gRPC_BUILD_TESTS)
11865 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11866
11867 add_executable(bm_cq
11868   test/cpp/microbenchmarks/bm_cq.cc
11869   third_party/googletest/googletest/src/gtest-all.cc
11870   third_party/googletest/googlemock/src/gmock-all.cc
11871 )
11872
11873
11874 target_include_directories(bm_cq
11875   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11876   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11877   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11878   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11879   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11880   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11881   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11882   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11883   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11884   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11885   PRIVATE third_party/googletest/googletest/include
11886   PRIVATE third_party/googletest/googletest
11887   PRIVATE third_party/googletest/googlemock/include
11888   PRIVATE third_party/googletest/googlemock
11889   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11890 )
11891
11892 target_link_libraries(bm_cq
11893   ${_gRPC_PROTOBUF_LIBRARIES}
11894   ${_gRPC_ALLTARGETS_LIBRARIES}
11895   grpc_benchmark
11896   ${_gRPC_BENCHMARK_LIBRARIES}
11897   grpc++_test_util_unsecure
11898   grpc_test_util_unsecure
11899   grpc++_unsecure
11900   grpc_unsecure
11901   gpr
11902   grpc++_test_config
11903   ${_gRPC_GFLAGS_LIBRARIES}
11904 )
11905
11906
11907 endif()
11908 endif (gRPC_BUILD_TESTS)
11909 if (gRPC_BUILD_TESTS)
11910 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11911
11912 add_executable(bm_cq_multiple_threads
11913   test/cpp/microbenchmarks/bm_cq_multiple_threads.cc
11914   third_party/googletest/googletest/src/gtest-all.cc
11915   third_party/googletest/googlemock/src/gmock-all.cc
11916 )
11917
11918
11919 target_include_directories(bm_cq_multiple_threads
11920   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11921   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11922   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11923   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11924   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11925   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11926   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11927   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11928   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11929   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11930   PRIVATE third_party/googletest/googletest/include
11931   PRIVATE third_party/googletest/googletest
11932   PRIVATE third_party/googletest/googlemock/include
11933   PRIVATE third_party/googletest/googlemock
11934   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11935 )
11936
11937 target_link_libraries(bm_cq_multiple_threads
11938   ${_gRPC_PROTOBUF_LIBRARIES}
11939   ${_gRPC_ALLTARGETS_LIBRARIES}
11940   grpc_benchmark
11941   ${_gRPC_BENCHMARK_LIBRARIES}
11942   grpc++_test_util_unsecure
11943   grpc_test_util_unsecure
11944   grpc++_unsecure
11945   grpc_unsecure
11946   gpr
11947   grpc++_test_config
11948   ${_gRPC_GFLAGS_LIBRARIES}
11949 )
11950
11951
11952 endif()
11953 endif (gRPC_BUILD_TESTS)
11954 if (gRPC_BUILD_TESTS)
11955 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11956
11957 add_executable(bm_error
11958   test/cpp/microbenchmarks/bm_error.cc
11959   third_party/googletest/googletest/src/gtest-all.cc
11960   third_party/googletest/googlemock/src/gmock-all.cc
11961 )
11962
11963
11964 target_include_directories(bm_error
11965   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11966   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11967   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11968   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11969   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11970   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11971   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11972   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11973   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11974   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11975   PRIVATE third_party/googletest/googletest/include
11976   PRIVATE third_party/googletest/googletest
11977   PRIVATE third_party/googletest/googlemock/include
11978   PRIVATE third_party/googletest/googlemock
11979   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11980 )
11981
11982 target_link_libraries(bm_error
11983   ${_gRPC_PROTOBUF_LIBRARIES}
11984   ${_gRPC_ALLTARGETS_LIBRARIES}
11985   grpc_benchmark
11986   ${_gRPC_BENCHMARK_LIBRARIES}
11987   grpc++_test_util_unsecure
11988   grpc_test_util_unsecure
11989   grpc++_unsecure
11990   grpc_unsecure
11991   gpr
11992   grpc++_test_config
11993   ${_gRPC_GFLAGS_LIBRARIES}
11994 )
11995
11996
11997 endif()
11998 endif (gRPC_BUILD_TESTS)
11999 if (gRPC_BUILD_TESTS)
12000 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12001
12002 add_executable(bm_fullstack_streaming_ping_pong
12003   test/cpp/microbenchmarks/bm_fullstack_streaming_ping_pong.cc
12004   third_party/googletest/googletest/src/gtest-all.cc
12005   third_party/googletest/googlemock/src/gmock-all.cc
12006 )
12007
12008
12009 target_include_directories(bm_fullstack_streaming_ping_pong
12010   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12011   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12012   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12013   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12014   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12015   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12016   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12017   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12018   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12019   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12020   PRIVATE third_party/googletest/googletest/include
12021   PRIVATE third_party/googletest/googletest
12022   PRIVATE third_party/googletest/googlemock/include
12023   PRIVATE third_party/googletest/googlemock
12024   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12025 )
12026
12027 target_link_libraries(bm_fullstack_streaming_ping_pong
12028   ${_gRPC_PROTOBUF_LIBRARIES}
12029   ${_gRPC_ALLTARGETS_LIBRARIES}
12030   grpc_benchmark
12031   ${_gRPC_BENCHMARK_LIBRARIES}
12032   grpc++_test_util_unsecure
12033   grpc_test_util_unsecure
12034   grpc++_unsecure
12035   grpc_unsecure
12036   gpr
12037   grpc++_test_config
12038   ${_gRPC_GFLAGS_LIBRARIES}
12039 )
12040
12041
12042 endif()
12043 endif (gRPC_BUILD_TESTS)
12044 if (gRPC_BUILD_TESTS)
12045 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12046
12047 add_executable(bm_fullstack_streaming_pump
12048   test/cpp/microbenchmarks/bm_fullstack_streaming_pump.cc
12049   third_party/googletest/googletest/src/gtest-all.cc
12050   third_party/googletest/googlemock/src/gmock-all.cc
12051 )
12052
12053
12054 target_include_directories(bm_fullstack_streaming_pump
12055   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12056   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12057   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12058   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12059   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12060   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12061   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12062   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12063   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12064   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12065   PRIVATE third_party/googletest/googletest/include
12066   PRIVATE third_party/googletest/googletest
12067   PRIVATE third_party/googletest/googlemock/include
12068   PRIVATE third_party/googletest/googlemock
12069   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12070 )
12071
12072 target_link_libraries(bm_fullstack_streaming_pump
12073   ${_gRPC_PROTOBUF_LIBRARIES}
12074   ${_gRPC_ALLTARGETS_LIBRARIES}
12075   grpc_benchmark
12076   ${_gRPC_BENCHMARK_LIBRARIES}
12077   grpc++_test_util_unsecure
12078   grpc_test_util_unsecure
12079   grpc++_unsecure
12080   grpc_unsecure
12081   gpr
12082   grpc++_test_config
12083   ${_gRPC_GFLAGS_LIBRARIES}
12084 )
12085
12086
12087 endif()
12088 endif (gRPC_BUILD_TESTS)
12089 if (gRPC_BUILD_TESTS)
12090 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12091
12092 add_executable(bm_fullstack_trickle
12093   test/cpp/microbenchmarks/bm_fullstack_trickle.cc
12094   third_party/googletest/googletest/src/gtest-all.cc
12095   third_party/googletest/googlemock/src/gmock-all.cc
12096 )
12097
12098
12099 target_include_directories(bm_fullstack_trickle
12100   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12101   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12102   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12103   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12104   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12105   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12106   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12107   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12108   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12109   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12110   PRIVATE third_party/googletest/googletest/include
12111   PRIVATE third_party/googletest/googletest
12112   PRIVATE third_party/googletest/googlemock/include
12113   PRIVATE third_party/googletest/googlemock
12114   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12115 )
12116
12117 target_link_libraries(bm_fullstack_trickle
12118   ${_gRPC_PROTOBUF_LIBRARIES}
12119   ${_gRPC_ALLTARGETS_LIBRARIES}
12120   grpc_benchmark
12121   ${_gRPC_BENCHMARK_LIBRARIES}
12122   grpc++_test_util_unsecure
12123   grpc_test_util_unsecure
12124   grpc++_unsecure
12125   grpc_unsecure
12126   gpr
12127   grpc++_test_config
12128   ${_gRPC_GFLAGS_LIBRARIES}
12129 )
12130
12131
12132 endif()
12133 endif (gRPC_BUILD_TESTS)
12134 if (gRPC_BUILD_TESTS)
12135 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12136
12137 add_executable(bm_fullstack_unary_ping_pong
12138   test/cpp/microbenchmarks/bm_fullstack_unary_ping_pong.cc
12139   third_party/googletest/googletest/src/gtest-all.cc
12140   third_party/googletest/googlemock/src/gmock-all.cc
12141 )
12142
12143
12144 target_include_directories(bm_fullstack_unary_ping_pong
12145   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12146   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12147   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12148   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12149   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12150   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12151   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12152   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12153   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12154   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12155   PRIVATE third_party/googletest/googletest/include
12156   PRIVATE third_party/googletest/googletest
12157   PRIVATE third_party/googletest/googlemock/include
12158   PRIVATE third_party/googletest/googlemock
12159   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12160 )
12161
12162 target_link_libraries(bm_fullstack_unary_ping_pong
12163   ${_gRPC_PROTOBUF_LIBRARIES}
12164   ${_gRPC_ALLTARGETS_LIBRARIES}
12165   grpc_benchmark
12166   ${_gRPC_BENCHMARK_LIBRARIES}
12167   grpc++_test_util_unsecure
12168   grpc_test_util_unsecure
12169   grpc++_unsecure
12170   grpc_unsecure
12171   gpr
12172   grpc++_test_config
12173   ${_gRPC_GFLAGS_LIBRARIES}
12174 )
12175
12176
12177 endif()
12178 endif (gRPC_BUILD_TESTS)
12179 if (gRPC_BUILD_TESTS)
12180 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12181
12182 add_executable(bm_metadata
12183   test/cpp/microbenchmarks/bm_metadata.cc
12184   third_party/googletest/googletest/src/gtest-all.cc
12185   third_party/googletest/googlemock/src/gmock-all.cc
12186 )
12187
12188
12189 target_include_directories(bm_metadata
12190   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12191   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12192   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12193   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12194   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12195   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12196   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12197   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12198   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12199   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12200   PRIVATE third_party/googletest/googletest/include
12201   PRIVATE third_party/googletest/googletest
12202   PRIVATE third_party/googletest/googlemock/include
12203   PRIVATE third_party/googletest/googlemock
12204   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12205 )
12206
12207 target_link_libraries(bm_metadata
12208   ${_gRPC_PROTOBUF_LIBRARIES}
12209   ${_gRPC_ALLTARGETS_LIBRARIES}
12210   grpc_benchmark
12211   ${_gRPC_BENCHMARK_LIBRARIES}
12212   grpc++_test_util_unsecure
12213   grpc_test_util_unsecure
12214   grpc++_unsecure
12215   grpc_unsecure
12216   gpr
12217   grpc++_test_config
12218   ${_gRPC_GFLAGS_LIBRARIES}
12219 )
12220
12221
12222 endif()
12223 endif (gRPC_BUILD_TESTS)
12224 if (gRPC_BUILD_TESTS)
12225 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12226
12227 add_executable(bm_pollset
12228   test/cpp/microbenchmarks/bm_pollset.cc
12229   third_party/googletest/googletest/src/gtest-all.cc
12230   third_party/googletest/googlemock/src/gmock-all.cc
12231 )
12232
12233
12234 target_include_directories(bm_pollset
12235   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12236   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12237   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12238   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12239   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12240   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12241   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12242   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12243   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12244   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12245   PRIVATE third_party/googletest/googletest/include
12246   PRIVATE third_party/googletest/googletest
12247   PRIVATE third_party/googletest/googlemock/include
12248   PRIVATE third_party/googletest/googlemock
12249   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12250 )
12251
12252 target_link_libraries(bm_pollset
12253   ${_gRPC_PROTOBUF_LIBRARIES}
12254   ${_gRPC_ALLTARGETS_LIBRARIES}
12255   grpc_benchmark
12256   ${_gRPC_BENCHMARK_LIBRARIES}
12257   grpc++_test_util_unsecure
12258   grpc_test_util_unsecure
12259   grpc++_unsecure
12260   grpc_unsecure
12261   gpr
12262   grpc++_test_config
12263   ${_gRPC_GFLAGS_LIBRARIES}
12264 )
12265
12266
12267 endif()
12268 endif (gRPC_BUILD_TESTS)
12269 if (gRPC_BUILD_TESTS)
12270 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12271
12272 add_executable(bm_timer
12273   test/cpp/microbenchmarks/bm_timer.cc
12274   third_party/googletest/googletest/src/gtest-all.cc
12275   third_party/googletest/googlemock/src/gmock-all.cc
12276 )
12277
12278
12279 target_include_directories(bm_timer
12280   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12281   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12282   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12283   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12284   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12285   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12286   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12287   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12288   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12289   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12290   PRIVATE third_party/googletest/googletest/include
12291   PRIVATE third_party/googletest/googletest
12292   PRIVATE third_party/googletest/googlemock/include
12293   PRIVATE third_party/googletest/googlemock
12294   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12295 )
12296
12297 target_link_libraries(bm_timer
12298   ${_gRPC_PROTOBUF_LIBRARIES}
12299   ${_gRPC_ALLTARGETS_LIBRARIES}
12300   grpc_benchmark
12301   ${_gRPC_BENCHMARK_LIBRARIES}
12302   grpc++_test_util_unsecure
12303   grpc_test_util_unsecure
12304   grpc++_unsecure
12305   grpc_unsecure
12306   gpr
12307   grpc++_test_config
12308   ${_gRPC_GFLAGS_LIBRARIES}
12309 )
12310
12311
12312 endif()
12313 endif (gRPC_BUILD_TESTS)
12314 if (gRPC_BUILD_TESTS)
12315
12316 add_executable(byte_stream_test
12317   test/core/transport/byte_stream_test.cc
12318   third_party/googletest/googletest/src/gtest-all.cc
12319   third_party/googletest/googlemock/src/gmock-all.cc
12320 )
12321
12322
12323 target_include_directories(byte_stream_test
12324   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12325   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12326   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12327   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12328   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12329   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12330   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12331   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12332   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12333   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12334   PRIVATE third_party/googletest/googletest/include
12335   PRIVATE third_party/googletest/googletest
12336   PRIVATE third_party/googletest/googlemock/include
12337   PRIVATE third_party/googletest/googlemock
12338   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12339 )
12340
12341 target_link_libraries(byte_stream_test
12342   ${_gRPC_PROTOBUF_LIBRARIES}
12343   ${_gRPC_ALLTARGETS_LIBRARIES}
12344   grpc_test_util
12345   grpc
12346   gpr
12347   ${_gRPC_GFLAGS_LIBRARIES}
12348 )
12349
12350
12351 endif (gRPC_BUILD_TESTS)
12352 if (gRPC_BUILD_TESTS)
12353
12354 add_executable(channel_arguments_test
12355   test/cpp/common/channel_arguments_test.cc
12356   third_party/googletest/googletest/src/gtest-all.cc
12357   third_party/googletest/googlemock/src/gmock-all.cc
12358 )
12359
12360
12361 target_include_directories(channel_arguments_test
12362   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12363   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12364   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12365   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12366   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12367   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12368   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12369   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12370   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12371   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12372   PRIVATE third_party/googletest/googletest/include
12373   PRIVATE third_party/googletest/googletest
12374   PRIVATE third_party/googletest/googlemock/include
12375   PRIVATE third_party/googletest/googlemock
12376   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12377 )
12378
12379 target_link_libraries(channel_arguments_test
12380   ${_gRPC_PROTOBUF_LIBRARIES}
12381   ${_gRPC_ALLTARGETS_LIBRARIES}
12382   grpc++
12383   grpc
12384   gpr
12385   ${_gRPC_GFLAGS_LIBRARIES}
12386 )
12387
12388
12389 endif (gRPC_BUILD_TESTS)
12390 if (gRPC_BUILD_TESTS)
12391
12392 add_executable(channel_filter_test
12393   test/cpp/common/channel_filter_test.cc
12394   third_party/googletest/googletest/src/gtest-all.cc
12395   third_party/googletest/googlemock/src/gmock-all.cc
12396 )
12397
12398
12399 target_include_directories(channel_filter_test
12400   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12401   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12402   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12403   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12404   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12405   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12406   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12407   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12408   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12409   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12410   PRIVATE third_party/googletest/googletest/include
12411   PRIVATE third_party/googletest/googletest
12412   PRIVATE third_party/googletest/googlemock/include
12413   PRIVATE third_party/googletest/googlemock
12414   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12415 )
12416
12417 target_link_libraries(channel_filter_test
12418   ${_gRPC_PROTOBUF_LIBRARIES}
12419   ${_gRPC_ALLTARGETS_LIBRARIES}
12420   grpc++
12421   grpc
12422   gpr
12423   ${_gRPC_GFLAGS_LIBRARIES}
12424 )
12425
12426
12427 endif (gRPC_BUILD_TESTS)
12428 if (gRPC_BUILD_TESTS)
12429
12430 add_executable(channel_trace_test
12431   test/core/channel/channel_trace_test.cc
12432   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
12433   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
12434   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
12435   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
12436   third_party/googletest/googletest/src/gtest-all.cc
12437   third_party/googletest/googlemock/src/gmock-all.cc
12438 )
12439
12440 protobuf_generate_grpc_cpp(
12441   src/proto/grpc/channelz/channelz.proto
12442 )
12443
12444 target_include_directories(channel_trace_test
12445   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12446   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12447   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12448   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12449   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12450   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12451   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12452   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12453   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12454   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12455   PRIVATE third_party/googletest/googletest/include
12456   PRIVATE third_party/googletest/googletest
12457   PRIVATE third_party/googletest/googlemock/include
12458   PRIVATE third_party/googletest/googlemock
12459   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12460 )
12461
12462 target_link_libraries(channel_trace_test
12463   ${_gRPC_PROTOBUF_LIBRARIES}
12464   ${_gRPC_ALLTARGETS_LIBRARIES}
12465   grpc_test_util
12466   grpc++_test_util
12467   grpc++
12468   grpc
12469   gpr
12470   ${_gRPC_GFLAGS_LIBRARIES}
12471 )
12472
12473
12474 endif (gRPC_BUILD_TESTS)
12475 if (gRPC_BUILD_TESTS)
12476
12477 add_executable(channelz_registry_test
12478   test/core/channel/channelz_registry_test.cc
12479   third_party/googletest/googletest/src/gtest-all.cc
12480   third_party/googletest/googlemock/src/gmock-all.cc
12481 )
12482
12483
12484 target_include_directories(channelz_registry_test
12485   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12486   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12487   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12488   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12489   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12490   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12491   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12492   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12493   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12494   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12495   PRIVATE third_party/googletest/googletest/include
12496   PRIVATE third_party/googletest/googletest
12497   PRIVATE third_party/googletest/googlemock/include
12498   PRIVATE third_party/googletest/googlemock
12499   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12500 )
12501
12502 target_link_libraries(channelz_registry_test
12503   ${_gRPC_PROTOBUF_LIBRARIES}
12504   ${_gRPC_ALLTARGETS_LIBRARIES}
12505   grpc_test_util
12506   grpc++_test_util
12507   grpc++
12508   grpc
12509   gpr
12510   ${_gRPC_GFLAGS_LIBRARIES}
12511 )
12512
12513
12514 endif (gRPC_BUILD_TESTS)
12515 if (gRPC_BUILD_TESTS)
12516
12517 add_executable(channelz_service_test
12518   test/cpp/end2end/channelz_service_test.cc
12519   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
12520   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
12521   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
12522   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
12523   third_party/googletest/googletest/src/gtest-all.cc
12524   third_party/googletest/googlemock/src/gmock-all.cc
12525 )
12526
12527 protobuf_generate_grpc_cpp(
12528   src/proto/grpc/channelz/channelz.proto
12529 )
12530
12531 target_include_directories(channelz_service_test
12532   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12533   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12534   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12535   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12536   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12537   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12538   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12539   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12540   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12541   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12542   PRIVATE third_party/googletest/googletest/include
12543   PRIVATE third_party/googletest/googletest
12544   PRIVATE third_party/googletest/googlemock/include
12545   PRIVATE third_party/googletest/googlemock
12546   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12547 )
12548
12549 target_link_libraries(channelz_service_test
12550   ${_gRPC_PROTOBUF_LIBRARIES}
12551   ${_gRPC_ALLTARGETS_LIBRARIES}
12552   grpcpp_channelz
12553   grpc++_test_util
12554   grpc_test_util
12555   grpc++
12556   grpc
12557   gpr
12558   ${_gRPC_GFLAGS_LIBRARIES}
12559 )
12560
12561
12562 endif (gRPC_BUILD_TESTS)
12563 if (gRPC_BUILD_TESTS)
12564
12565 add_executable(channelz_test
12566   test/core/channel/channelz_test.cc
12567   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
12568   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
12569   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
12570   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
12571   third_party/googletest/googletest/src/gtest-all.cc
12572   third_party/googletest/googlemock/src/gmock-all.cc
12573 )
12574
12575 protobuf_generate_grpc_cpp(
12576   src/proto/grpc/channelz/channelz.proto
12577 )
12578
12579 target_include_directories(channelz_test
12580   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12581   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12582   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12583   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12584   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12585   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12586   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12587   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12588   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12589   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12590   PRIVATE third_party/googletest/googletest/include
12591   PRIVATE third_party/googletest/googletest
12592   PRIVATE third_party/googletest/googlemock/include
12593   PRIVATE third_party/googletest/googlemock
12594   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12595 )
12596
12597 target_link_libraries(channelz_test
12598   ${_gRPC_PROTOBUF_LIBRARIES}
12599   ${_gRPC_ALLTARGETS_LIBRARIES}
12600   grpc_test_util
12601   grpc++_test_util
12602   grpc++
12603   grpc
12604   gpr
12605   ${_gRPC_GFLAGS_LIBRARIES}
12606 )
12607
12608
12609 endif (gRPC_BUILD_TESTS)
12610 if (gRPC_BUILD_TESTS)
12611
12612 add_executable(check_gcp_environment_linux_test
12613   test/core/security/check_gcp_environment_linux_test.cc
12614   third_party/googletest/googletest/src/gtest-all.cc
12615   third_party/googletest/googlemock/src/gmock-all.cc
12616 )
12617
12618
12619 target_include_directories(check_gcp_environment_linux_test
12620   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12621   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12622   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12623   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12624   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12625   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12626   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12627   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12628   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12629   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12630   PRIVATE third_party/googletest/googletest/include
12631   PRIVATE third_party/googletest/googletest
12632   PRIVATE third_party/googletest/googlemock/include
12633   PRIVATE third_party/googletest/googlemock
12634   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12635 )
12636
12637 target_link_libraries(check_gcp_environment_linux_test
12638   ${_gRPC_PROTOBUF_LIBRARIES}
12639   ${_gRPC_ALLTARGETS_LIBRARIES}
12640   grpc
12641   gpr
12642   ${_gRPC_GFLAGS_LIBRARIES}
12643 )
12644
12645
12646 endif (gRPC_BUILD_TESTS)
12647 if (gRPC_BUILD_TESTS)
12648
12649 add_executable(check_gcp_environment_windows_test
12650   test/core/security/check_gcp_environment_windows_test.cc
12651   third_party/googletest/googletest/src/gtest-all.cc
12652   third_party/googletest/googlemock/src/gmock-all.cc
12653 )
12654
12655
12656 target_include_directories(check_gcp_environment_windows_test
12657   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12658   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12659   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12660   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12661   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12662   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12663   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12664   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12665   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12666   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12667   PRIVATE third_party/googletest/googletest/include
12668   PRIVATE third_party/googletest/googletest
12669   PRIVATE third_party/googletest/googlemock/include
12670   PRIVATE third_party/googletest/googlemock
12671   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12672 )
12673
12674 target_link_libraries(check_gcp_environment_windows_test
12675   ${_gRPC_PROTOBUF_LIBRARIES}
12676   ${_gRPC_ALLTARGETS_LIBRARIES}
12677   grpc
12678   gpr
12679   ${_gRPC_GFLAGS_LIBRARIES}
12680 )
12681
12682
12683 endif (gRPC_BUILD_TESTS)
12684 if (gRPC_BUILD_TESTS)
12685
12686 add_executable(chttp2_settings_timeout_test
12687   test/core/transport/chttp2/settings_timeout_test.cc
12688   third_party/googletest/googletest/src/gtest-all.cc
12689   third_party/googletest/googlemock/src/gmock-all.cc
12690 )
12691
12692
12693 target_include_directories(chttp2_settings_timeout_test
12694   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12695   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12696   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12697   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12698   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12699   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12700   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12701   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12702   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12703   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12704   PRIVATE third_party/googletest/googletest/include
12705   PRIVATE third_party/googletest/googletest
12706   PRIVATE third_party/googletest/googlemock/include
12707   PRIVATE third_party/googletest/googlemock
12708   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12709 )
12710
12711 target_link_libraries(chttp2_settings_timeout_test
12712   ${_gRPC_PROTOBUF_LIBRARIES}
12713   ${_gRPC_ALLTARGETS_LIBRARIES}
12714   grpc_test_util
12715   grpc
12716   gpr
12717   ${_gRPC_GFLAGS_LIBRARIES}
12718 )
12719
12720
12721 endif (gRPC_BUILD_TESTS)
12722 if (gRPC_BUILD_TESTS)
12723
12724 add_executable(cli_call_test
12725   test/cpp/util/cli_call_test.cc
12726   third_party/googletest/googletest/src/gtest-all.cc
12727   third_party/googletest/googlemock/src/gmock-all.cc
12728 )
12729
12730
12731 target_include_directories(cli_call_test
12732   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12733   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12734   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12735   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12736   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12737   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12738   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12739   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12740   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12741   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12742   PRIVATE third_party/googletest/googletest/include
12743   PRIVATE third_party/googletest/googletest
12744   PRIVATE third_party/googletest/googlemock/include
12745   PRIVATE third_party/googletest/googlemock
12746   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12747 )
12748
12749 target_link_libraries(cli_call_test
12750   ${_gRPC_PROTOBUF_LIBRARIES}
12751   ${_gRPC_ALLTARGETS_LIBRARIES}
12752   grpc_cli_libs
12753   grpc++_test_util
12754   grpc_test_util
12755   grpc++
12756   grpc
12757   gpr
12758   ${_gRPC_GFLAGS_LIBRARIES}
12759 )
12760
12761
12762 endif (gRPC_BUILD_TESTS)
12763 if (gRPC_BUILD_TESTS)
12764
12765 add_executable(client_callback_end2end_test
12766   test/cpp/end2end/client_callback_end2end_test.cc
12767   test/cpp/end2end/interceptors_util.cc
12768   third_party/googletest/googletest/src/gtest-all.cc
12769   third_party/googletest/googlemock/src/gmock-all.cc
12770 )
12771
12772
12773 target_include_directories(client_callback_end2end_test
12774   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12775   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12776   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12777   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12778   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12779   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12780   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12781   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12782   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12783   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12784   PRIVATE third_party/googletest/googletest/include
12785   PRIVATE third_party/googletest/googletest
12786   PRIVATE third_party/googletest/googlemock/include
12787   PRIVATE third_party/googletest/googlemock
12788   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12789 )
12790
12791 target_link_libraries(client_callback_end2end_test
12792   ${_gRPC_PROTOBUF_LIBRARIES}
12793   ${_gRPC_ALLTARGETS_LIBRARIES}
12794   grpc++_test_util
12795   grpc_test_util
12796   grpc++
12797   grpc
12798   gpr
12799   ${_gRPC_GFLAGS_LIBRARIES}
12800 )
12801
12802
12803 endif (gRPC_BUILD_TESTS)
12804 if (gRPC_BUILD_TESTS)
12805
12806 add_executable(client_channel_stress_test
12807   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
12808   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
12809   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
12810   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
12811   test/cpp/client/client_channel_stress_test.cc
12812   third_party/googletest/googletest/src/gtest-all.cc
12813   third_party/googletest/googlemock/src/gmock-all.cc
12814 )
12815
12816 protobuf_generate_grpc_cpp(
12817   src/proto/grpc/lb/v1/load_balancer.proto
12818 )
12819
12820 target_include_directories(client_channel_stress_test
12821   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12822   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12823   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12824   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12825   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12826   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12827   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12828   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12829   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12830   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12831   PRIVATE third_party/googletest/googletest/include
12832   PRIVATE third_party/googletest/googletest
12833   PRIVATE third_party/googletest/googlemock/include
12834   PRIVATE third_party/googletest/googlemock
12835   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12836 )
12837
12838 target_link_libraries(client_channel_stress_test
12839   ${_gRPC_PROTOBUF_LIBRARIES}
12840   ${_gRPC_ALLTARGETS_LIBRARIES}
12841   grpc++_test_util
12842   grpc_test_util
12843   grpc++
12844   grpc
12845   gpr
12846   ${_gRPC_GFLAGS_LIBRARIES}
12847 )
12848
12849
12850 endif (gRPC_BUILD_TESTS)
12851 if (gRPC_BUILD_TESTS)
12852 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12853
12854 add_executable(client_crash_test
12855   test/cpp/end2end/client_crash_test.cc
12856   third_party/googletest/googletest/src/gtest-all.cc
12857   third_party/googletest/googlemock/src/gmock-all.cc
12858 )
12859
12860
12861 target_include_directories(client_crash_test
12862   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12863   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12864   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12865   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12866   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12867   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12868   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12869   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12870   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12871   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12872   PRIVATE third_party/googletest/googletest/include
12873   PRIVATE third_party/googletest/googletest
12874   PRIVATE third_party/googletest/googlemock/include
12875   PRIVATE third_party/googletest/googlemock
12876   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12877 )
12878
12879 target_link_libraries(client_crash_test
12880   ${_gRPC_PROTOBUF_LIBRARIES}
12881   ${_gRPC_ALLTARGETS_LIBRARIES}
12882   grpc++_test_util
12883   grpc_test_util
12884   grpc++
12885   grpc
12886   gpr
12887   ${_gRPC_GFLAGS_LIBRARIES}
12888 )
12889
12890
12891 endif()
12892 endif (gRPC_BUILD_TESTS)
12893 if (gRPC_BUILD_TESTS)
12894
12895 add_executable(client_crash_test_server
12896   test/cpp/end2end/client_crash_test_server.cc
12897   third_party/googletest/googletest/src/gtest-all.cc
12898   third_party/googletest/googlemock/src/gmock-all.cc
12899 )
12900
12901
12902 target_include_directories(client_crash_test_server
12903   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12904   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12905   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12906   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12907   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12908   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12909   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12910   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12911   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12912   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12913   PRIVATE third_party/googletest/googletest/include
12914   PRIVATE third_party/googletest/googletest
12915   PRIVATE third_party/googletest/googlemock/include
12916   PRIVATE third_party/googletest/googlemock
12917   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12918 )
12919
12920 target_link_libraries(client_crash_test_server
12921   ${_gRPC_PROTOBUF_LIBRARIES}
12922   ${_gRPC_ALLTARGETS_LIBRARIES}
12923   grpc++_test_config
12924   grpc++_test_util
12925   grpc_test_util
12926   grpc++
12927   grpc
12928   gpr
12929   ${_gRPC_GFLAGS_LIBRARIES}
12930 )
12931
12932
12933 endif (gRPC_BUILD_TESTS)
12934 if (gRPC_BUILD_TESTS)
12935
12936 add_executable(client_interceptors_end2end_test
12937   test/cpp/end2end/client_interceptors_end2end_test.cc
12938   test/cpp/end2end/interceptors_util.cc
12939   third_party/googletest/googletest/src/gtest-all.cc
12940   third_party/googletest/googlemock/src/gmock-all.cc
12941 )
12942
12943
12944 target_include_directories(client_interceptors_end2end_test
12945   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12946   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12947   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12948   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12949   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12950   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12951   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12952   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12953   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12954   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12955   PRIVATE third_party/googletest/googletest/include
12956   PRIVATE third_party/googletest/googletest
12957   PRIVATE third_party/googletest/googlemock/include
12958   PRIVATE third_party/googletest/googlemock
12959   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12960 )
12961
12962 target_link_libraries(client_interceptors_end2end_test
12963   ${_gRPC_PROTOBUF_LIBRARIES}
12964   ${_gRPC_ALLTARGETS_LIBRARIES}
12965   grpc++_test_util
12966   grpc_test_util
12967   grpc++
12968   grpc
12969   gpr
12970   ${_gRPC_GFLAGS_LIBRARIES}
12971 )
12972
12973
12974 endif (gRPC_BUILD_TESTS)
12975 if (gRPC_BUILD_TESTS)
12976
12977 add_executable(client_lb_end2end_test
12978   test/cpp/end2end/client_lb_end2end_test.cc
12979   third_party/googletest/googletest/src/gtest-all.cc
12980   third_party/googletest/googlemock/src/gmock-all.cc
12981 )
12982
12983
12984 target_include_directories(client_lb_end2end_test
12985   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12986   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12987   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12988   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12989   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12990   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12991   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12992   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12993   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12994   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12995   PRIVATE third_party/googletest/googletest/include
12996   PRIVATE third_party/googletest/googletest
12997   PRIVATE third_party/googletest/googlemock/include
12998   PRIVATE third_party/googletest/googlemock
12999   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13000 )
13001
13002 target_link_libraries(client_lb_end2end_test
13003   ${_gRPC_PROTOBUF_LIBRARIES}
13004   ${_gRPC_ALLTARGETS_LIBRARIES}
13005   grpc++_test_util
13006   grpc_test_util
13007   grpc++
13008   grpc
13009   gpr
13010   ${_gRPC_GFLAGS_LIBRARIES}
13011 )
13012
13013
13014 endif (gRPC_BUILD_TESTS)
13015 if (gRPC_BUILD_TESTS)
13016
13017 add_executable(codegen_test_full
13018   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.cc
13019   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.cc
13020   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.h
13021   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.h
13022   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
13023   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
13024   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
13025   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
13026   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.cc
13027   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.cc
13028   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.h
13029   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.h
13030   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.cc
13031   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.cc
13032   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.h
13033   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.h
13034   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.cc
13035   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.cc
13036   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.h
13037   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.h
13038   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.cc
13039   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.cc
13040   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.h
13041   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.h
13042   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.cc
13043   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.cc
13044   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.h
13045   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.h
13046   test/cpp/codegen/codegen_test_full.cc
13047   third_party/googletest/googletest/src/gtest-all.cc
13048   third_party/googletest/googlemock/src/gmock-all.cc
13049 )
13050
13051 protobuf_generate_grpc_cpp(
13052   src/proto/grpc/testing/control.proto
13053 )
13054 protobuf_generate_grpc_cpp(
13055   src/proto/grpc/testing/messages.proto
13056 )
13057 protobuf_generate_grpc_cpp(
13058   src/proto/grpc/testing/payloads.proto
13059 )
13060 protobuf_generate_grpc_cpp(
13061   src/proto/grpc/testing/benchmark_service.proto
13062 )
13063 protobuf_generate_grpc_cpp(
13064   src/proto/grpc/testing/report_qps_scenario_service.proto
13065 )
13066 protobuf_generate_grpc_cpp(
13067   src/proto/grpc/testing/worker_service.proto
13068 )
13069 protobuf_generate_grpc_cpp(
13070   src/proto/grpc/testing/stats.proto
13071 )
13072
13073 target_include_directories(codegen_test_full
13074   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13075   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13076   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13077   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13078   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13079   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13080   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13081   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13082   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13083   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13084   PRIVATE third_party/googletest/googletest/include
13085   PRIVATE third_party/googletest/googletest
13086   PRIVATE third_party/googletest/googlemock/include
13087   PRIVATE third_party/googletest/googlemock
13088   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13089 )
13090
13091 target_link_libraries(codegen_test_full
13092   ${_gRPC_PROTOBUF_LIBRARIES}
13093   ${_gRPC_ALLTARGETS_LIBRARIES}
13094   grpc++_core_stats
13095   grpc++
13096   grpc
13097   gpr
13098   ${_gRPC_GFLAGS_LIBRARIES}
13099 )
13100
13101
13102 endif (gRPC_BUILD_TESTS)
13103 if (gRPC_BUILD_TESTS)
13104
13105 add_executable(codegen_test_minimal
13106   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.cc
13107   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.cc
13108   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.h
13109   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.h
13110   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
13111   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
13112   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
13113   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
13114   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.cc
13115   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.cc
13116   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.h
13117   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.h
13118   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.cc
13119   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.cc
13120   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.h
13121   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.h
13122   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.cc
13123   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.cc
13124   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.h
13125   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.h
13126   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.cc
13127   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.cc
13128   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.h
13129   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.h
13130   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.cc
13131   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.cc
13132   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.h
13133   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.h
13134   test/cpp/codegen/codegen_test_minimal.cc
13135   src/cpp/codegen/codegen_init.cc
13136   third_party/googletest/googletest/src/gtest-all.cc
13137   third_party/googletest/googlemock/src/gmock-all.cc
13138 )
13139
13140 protobuf_generate_grpc_cpp(
13141   src/proto/grpc/testing/control.proto
13142 )
13143 protobuf_generate_grpc_cpp(
13144   src/proto/grpc/testing/messages.proto
13145 )
13146 protobuf_generate_grpc_cpp(
13147   src/proto/grpc/testing/payloads.proto
13148 )
13149 protobuf_generate_grpc_cpp(
13150   src/proto/grpc/testing/benchmark_service.proto
13151 )
13152 protobuf_generate_grpc_cpp(
13153   src/proto/grpc/testing/report_qps_scenario_service.proto
13154 )
13155 protobuf_generate_grpc_cpp(
13156   src/proto/grpc/testing/worker_service.proto
13157 )
13158 protobuf_generate_grpc_cpp(
13159   src/proto/grpc/testing/stats.proto
13160 )
13161
13162 target_include_directories(codegen_test_minimal
13163   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13164   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13165   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13166   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13167   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13168   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13169   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13170   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13171   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13172   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13173   PRIVATE third_party/googletest/googletest/include
13174   PRIVATE third_party/googletest/googletest
13175   PRIVATE third_party/googletest/googlemock/include
13176   PRIVATE third_party/googletest/googlemock
13177   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13178 )
13179
13180 target_link_libraries(codegen_test_minimal
13181   ${_gRPC_PROTOBUF_LIBRARIES}
13182   ${_gRPC_ALLTARGETS_LIBRARIES}
13183   grpc++_core_stats
13184   grpc
13185   gpr
13186   ${_gRPC_GFLAGS_LIBRARIES}
13187 )
13188
13189
13190 endif (gRPC_BUILD_TESTS)
13191 if (gRPC_BUILD_TESTS)
13192
13193 add_executable(context_list_test
13194   test/core/transport/chttp2/context_list_test.cc
13195   third_party/googletest/googletest/src/gtest-all.cc
13196   third_party/googletest/googlemock/src/gmock-all.cc
13197 )
13198
13199
13200 target_include_directories(context_list_test
13201   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13202   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13203   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13204   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13205   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13206   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13207   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13208   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13209   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13210   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13211   PRIVATE third_party/googletest/googletest/include
13212   PRIVATE third_party/googletest/googletest
13213   PRIVATE third_party/googletest/googlemock/include
13214   PRIVATE third_party/googletest/googlemock
13215   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13216 )
13217
13218 target_link_libraries(context_list_test
13219   ${_gRPC_PROTOBUF_LIBRARIES}
13220   ${_gRPC_ALLTARGETS_LIBRARIES}
13221   grpc_test_util
13222   grpc
13223   gpr
13224   ${_gRPC_GFLAGS_LIBRARIES}
13225 )
13226
13227
13228 endif (gRPC_BUILD_TESTS)
13229 if (gRPC_BUILD_TESTS)
13230
13231 add_executable(credentials_test
13232   test/cpp/client/credentials_test.cc
13233   third_party/googletest/googletest/src/gtest-all.cc
13234   third_party/googletest/googlemock/src/gmock-all.cc
13235 )
13236
13237
13238 target_include_directories(credentials_test
13239   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13240   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13241   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13242   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13243   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13244   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13245   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13246   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13247   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13248   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13249   PRIVATE third_party/googletest/googletest/include
13250   PRIVATE third_party/googletest/googletest
13251   PRIVATE third_party/googletest/googlemock/include
13252   PRIVATE third_party/googletest/googlemock
13253   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13254 )
13255
13256 target_link_libraries(credentials_test
13257   ${_gRPC_PROTOBUF_LIBRARIES}
13258   ${_gRPC_ALLTARGETS_LIBRARIES}
13259   grpc++
13260   grpc
13261   gpr
13262   ${_gRPC_GFLAGS_LIBRARIES}
13263 )
13264
13265
13266 endif (gRPC_BUILD_TESTS)
13267 if (gRPC_BUILD_TESTS)
13268
13269 add_executable(cxx_byte_buffer_test
13270   test/cpp/util/byte_buffer_test.cc
13271   third_party/googletest/googletest/src/gtest-all.cc
13272   third_party/googletest/googlemock/src/gmock-all.cc
13273 )
13274
13275
13276 target_include_directories(cxx_byte_buffer_test
13277   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13278   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13279   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13280   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13281   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13282   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13283   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13284   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13285   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13286   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13287   PRIVATE third_party/googletest/googletest/include
13288   PRIVATE third_party/googletest/googletest
13289   PRIVATE third_party/googletest/googlemock/include
13290   PRIVATE third_party/googletest/googlemock
13291   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13292 )
13293
13294 target_link_libraries(cxx_byte_buffer_test
13295   ${_gRPC_PROTOBUF_LIBRARIES}
13296   ${_gRPC_ALLTARGETS_LIBRARIES}
13297   grpc_test_util
13298   grpc++
13299   grpc
13300   gpr
13301   ${_gRPC_GFLAGS_LIBRARIES}
13302 )
13303
13304
13305 endif (gRPC_BUILD_TESTS)
13306 if (gRPC_BUILD_TESTS)
13307
13308 add_executable(cxx_slice_test
13309   test/cpp/util/slice_test.cc
13310   third_party/googletest/googletest/src/gtest-all.cc
13311   third_party/googletest/googlemock/src/gmock-all.cc
13312 )
13313
13314
13315 target_include_directories(cxx_slice_test
13316   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13317   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13318   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13319   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13320   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13321   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13322   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13323   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13324   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13325   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13326   PRIVATE third_party/googletest/googletest/include
13327   PRIVATE third_party/googletest/googletest
13328   PRIVATE third_party/googletest/googlemock/include
13329   PRIVATE third_party/googletest/googlemock
13330   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13331 )
13332
13333 target_link_libraries(cxx_slice_test
13334   ${_gRPC_PROTOBUF_LIBRARIES}
13335   ${_gRPC_ALLTARGETS_LIBRARIES}
13336   grpc_test_util
13337   grpc++
13338   grpc
13339   gpr
13340   ${_gRPC_GFLAGS_LIBRARIES}
13341 )
13342
13343
13344 endif (gRPC_BUILD_TESTS)
13345 if (gRPC_BUILD_TESTS)
13346
13347 add_executable(cxx_string_ref_test
13348   test/cpp/util/string_ref_test.cc
13349   third_party/googletest/googletest/src/gtest-all.cc
13350   third_party/googletest/googlemock/src/gmock-all.cc
13351 )
13352
13353
13354 target_include_directories(cxx_string_ref_test
13355   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13356   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13357   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13358   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13359   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13360   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13361   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13362   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13363   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13364   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13365   PRIVATE third_party/googletest/googletest/include
13366   PRIVATE third_party/googletest/googletest
13367   PRIVATE third_party/googletest/googlemock/include
13368   PRIVATE third_party/googletest/googlemock
13369   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13370 )
13371
13372 target_link_libraries(cxx_string_ref_test
13373   ${_gRPC_PROTOBUF_LIBRARIES}
13374   ${_gRPC_ALLTARGETS_LIBRARIES}
13375   grpc++
13376   grpc
13377   ${_gRPC_GFLAGS_LIBRARIES}
13378 )
13379
13380
13381 endif (gRPC_BUILD_TESTS)
13382 if (gRPC_BUILD_TESTS)
13383
13384 add_executable(cxx_time_test
13385   test/cpp/util/time_test.cc
13386   third_party/googletest/googletest/src/gtest-all.cc
13387   third_party/googletest/googlemock/src/gmock-all.cc
13388 )
13389
13390
13391 target_include_directories(cxx_time_test
13392   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13393   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13394   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13395   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13396   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13397   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13398   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13399   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13400   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13401   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13402   PRIVATE third_party/googletest/googletest/include
13403   PRIVATE third_party/googletest/googletest
13404   PRIVATE third_party/googletest/googlemock/include
13405   PRIVATE third_party/googletest/googlemock
13406   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13407 )
13408
13409 target_link_libraries(cxx_time_test
13410   ${_gRPC_PROTOBUF_LIBRARIES}
13411   ${_gRPC_ALLTARGETS_LIBRARIES}
13412   grpc_test_util
13413   grpc++
13414   grpc
13415   gpr
13416   ${_gRPC_GFLAGS_LIBRARIES}
13417 )
13418
13419
13420 endif (gRPC_BUILD_TESTS)
13421 if (gRPC_BUILD_TESTS)
13422
13423 add_executable(end2end_test
13424   test/cpp/end2end/end2end_test.cc
13425   test/cpp/end2end/interceptors_util.cc
13426   third_party/googletest/googletest/src/gtest-all.cc
13427   third_party/googletest/googlemock/src/gmock-all.cc
13428 )
13429
13430
13431 target_include_directories(end2end_test
13432   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13433   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13434   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13435   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13436   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13437   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13438   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13439   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13440   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13441   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13442   PRIVATE third_party/googletest/googletest/include
13443   PRIVATE third_party/googletest/googletest
13444   PRIVATE third_party/googletest/googlemock/include
13445   PRIVATE third_party/googletest/googlemock
13446   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13447 )
13448
13449 target_link_libraries(end2end_test
13450   ${_gRPC_PROTOBUF_LIBRARIES}
13451   ${_gRPC_ALLTARGETS_LIBRARIES}
13452   grpc++_test_util
13453   grpc_test_util
13454   grpc++
13455   grpc
13456   gpr
13457   ${_gRPC_GFLAGS_LIBRARIES}
13458 )
13459
13460
13461 endif (gRPC_BUILD_TESTS)
13462 if (gRPC_BUILD_TESTS)
13463
13464 add_executable(error_details_test
13465   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
13466   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
13467   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
13468   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
13469   test/cpp/util/error_details_test.cc
13470   third_party/googletest/googletest/src/gtest-all.cc
13471   third_party/googletest/googlemock/src/gmock-all.cc
13472 )
13473
13474 protobuf_generate_grpc_cpp(
13475   src/proto/grpc/testing/echo_messages.proto
13476 )
13477
13478 target_include_directories(error_details_test
13479   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13480   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13481   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13482   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13483   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13484   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13485   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13486   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13487   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13488   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13489   PRIVATE third_party/googletest/googletest/include
13490   PRIVATE third_party/googletest/googletest
13491   PRIVATE third_party/googletest/googlemock/include
13492   PRIVATE third_party/googletest/googlemock
13493   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13494 )
13495
13496 target_link_libraries(error_details_test
13497   ${_gRPC_PROTOBUF_LIBRARIES}
13498   ${_gRPC_ALLTARGETS_LIBRARIES}
13499   grpc++_error_details
13500   grpc++
13501   ${_gRPC_GFLAGS_LIBRARIES}
13502 )
13503
13504
13505 endif (gRPC_BUILD_TESTS)
13506 if (gRPC_BUILD_TESTS)
13507
13508 add_executable(exception_test
13509   test/cpp/end2end/exception_test.cc
13510   third_party/googletest/googletest/src/gtest-all.cc
13511   third_party/googletest/googlemock/src/gmock-all.cc
13512 )
13513
13514
13515 target_include_directories(exception_test
13516   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13517   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13518   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13519   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13520   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13521   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13522   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13523   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13524   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13525   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13526   PRIVATE third_party/googletest/googletest/include
13527   PRIVATE third_party/googletest/googletest
13528   PRIVATE third_party/googletest/googlemock/include
13529   PRIVATE third_party/googletest/googlemock
13530   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13531 )
13532
13533 target_link_libraries(exception_test
13534   ${_gRPC_PROTOBUF_LIBRARIES}
13535   ${_gRPC_ALLTARGETS_LIBRARIES}
13536   grpc++_test_util
13537   grpc_test_util
13538   grpc++
13539   grpc
13540   gpr
13541   ${_gRPC_GFLAGS_LIBRARIES}
13542 )
13543
13544
13545 endif (gRPC_BUILD_TESTS)
13546 if (gRPC_BUILD_TESTS)
13547
13548 add_executable(filter_end2end_test
13549   test/cpp/end2end/filter_end2end_test.cc
13550   third_party/googletest/googletest/src/gtest-all.cc
13551   third_party/googletest/googlemock/src/gmock-all.cc
13552 )
13553
13554
13555 target_include_directories(filter_end2end_test
13556   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13557   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13558   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13559   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13560   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13561   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13562   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13563   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13564   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13565   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13566   PRIVATE third_party/googletest/googletest/include
13567   PRIVATE third_party/googletest/googletest
13568   PRIVATE third_party/googletest/googlemock/include
13569   PRIVATE third_party/googletest/googlemock
13570   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13571 )
13572
13573 target_link_libraries(filter_end2end_test
13574   ${_gRPC_PROTOBUF_LIBRARIES}
13575   ${_gRPC_ALLTARGETS_LIBRARIES}
13576   grpc++_test_util
13577   grpc_test_util
13578   grpc++
13579   grpc
13580   gpr
13581   ${_gRPC_GFLAGS_LIBRARIES}
13582 )
13583
13584
13585 endif (gRPC_BUILD_TESTS)
13586 if (gRPC_BUILD_TESTS)
13587
13588 add_executable(generic_end2end_test
13589   test/cpp/end2end/generic_end2end_test.cc
13590   third_party/googletest/googletest/src/gtest-all.cc
13591   third_party/googletest/googlemock/src/gmock-all.cc
13592 )
13593
13594
13595 target_include_directories(generic_end2end_test
13596   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13597   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13598   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13599   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13600   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13601   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13602   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13603   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13604   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13605   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13606   PRIVATE third_party/googletest/googletest/include
13607   PRIVATE third_party/googletest/googletest
13608   PRIVATE third_party/googletest/googlemock/include
13609   PRIVATE third_party/googletest/googlemock
13610   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13611 )
13612
13613 target_link_libraries(generic_end2end_test
13614   ${_gRPC_PROTOBUF_LIBRARIES}
13615   ${_gRPC_ALLTARGETS_LIBRARIES}
13616   grpc++_test_util
13617   grpc_test_util
13618   grpc++
13619   grpc
13620   gpr
13621   ${_gRPC_GFLAGS_LIBRARIES}
13622 )
13623
13624
13625 endif (gRPC_BUILD_TESTS)
13626 if (gRPC_BUILD_TESTS)
13627
13628 add_executable(global_config_env_test
13629   test/core/gprpp/global_config_env_test.cc
13630   third_party/googletest/googletest/src/gtest-all.cc
13631   third_party/googletest/googlemock/src/gmock-all.cc
13632 )
13633
13634
13635 target_include_directories(global_config_env_test
13636   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13637   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13638   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13639   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13640   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13641   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13642   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13643   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13644   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13645   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13646   PRIVATE third_party/googletest/googletest/include
13647   PRIVATE third_party/googletest/googletest
13648   PRIVATE third_party/googletest/googlemock/include
13649   PRIVATE third_party/googletest/googlemock
13650   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13651 )
13652
13653 target_link_libraries(global_config_env_test
13654   ${_gRPC_PROTOBUF_LIBRARIES}
13655   ${_gRPC_ALLTARGETS_LIBRARIES}
13656   gpr
13657   grpc_test_util_unsecure
13658   ${_gRPC_GFLAGS_LIBRARIES}
13659 )
13660
13661
13662 endif (gRPC_BUILD_TESTS)
13663 if (gRPC_BUILD_TESTS)
13664
13665 add_executable(global_config_test
13666   test/core/gprpp/global_config_test.cc
13667   third_party/googletest/googletest/src/gtest-all.cc
13668   third_party/googletest/googlemock/src/gmock-all.cc
13669 )
13670
13671
13672 target_include_directories(global_config_test
13673   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13674   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13675   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13676   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13677   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13678   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13679   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13680   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13681   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13682   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13683   PRIVATE third_party/googletest/googletest/include
13684   PRIVATE third_party/googletest/googletest
13685   PRIVATE third_party/googletest/googlemock/include
13686   PRIVATE third_party/googletest/googlemock
13687   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13688 )
13689
13690 target_link_libraries(global_config_test
13691   ${_gRPC_PROTOBUF_LIBRARIES}
13692   ${_gRPC_ALLTARGETS_LIBRARIES}
13693   gpr
13694   grpc_test_util_unsecure
13695   ${_gRPC_GFLAGS_LIBRARIES}
13696 )
13697
13698
13699 endif (gRPC_BUILD_TESTS)
13700 if (gRPC_BUILD_TESTS)
13701
13702 add_executable(golden_file_test
13703   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.pb.cc
13704   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.grpc.pb.cc
13705   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.pb.h
13706   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.grpc.pb.h
13707   test/cpp/codegen/golden_file_test.cc
13708   third_party/googletest/googletest/src/gtest-all.cc
13709   third_party/googletest/googlemock/src/gmock-all.cc
13710 )
13711
13712 protobuf_generate_grpc_cpp(
13713   src/proto/grpc/testing/compiler_test.proto
13714 )
13715
13716 target_include_directories(golden_file_test
13717   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13718   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13719   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13720   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13721   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13722   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13723   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13724   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13725   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13726   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13727   PRIVATE third_party/googletest/googletest/include
13728   PRIVATE third_party/googletest/googletest
13729   PRIVATE third_party/googletest/googlemock/include
13730   PRIVATE third_party/googletest/googlemock
13731   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13732 )
13733
13734 target_link_libraries(golden_file_test
13735   ${_gRPC_PROTOBUF_LIBRARIES}
13736   ${_gRPC_ALLTARGETS_LIBRARIES}
13737   grpc++_test_config
13738   grpc++
13739   grpc
13740   gpr
13741   ${_gRPC_GFLAGS_LIBRARIES}
13742 )
13743
13744
13745 endif (gRPC_BUILD_TESTS)
13746 if (gRPC_BUILD_TESTS)
13747
13748 add_executable(grpc_alts_credentials_options_test
13749   test/core/security/grpc_alts_credentials_options_test.cc
13750   third_party/googletest/googletest/src/gtest-all.cc
13751   third_party/googletest/googlemock/src/gmock-all.cc
13752 )
13753
13754
13755 target_include_directories(grpc_alts_credentials_options_test
13756   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13757   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13758   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13759   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13760   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13761   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13762   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13763   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13764   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13765   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13766   PRIVATE third_party/googletest/googletest/include
13767   PRIVATE third_party/googletest/googletest
13768   PRIVATE third_party/googletest/googlemock/include
13769   PRIVATE third_party/googletest/googlemock
13770   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13771 )
13772
13773 target_link_libraries(grpc_alts_credentials_options_test
13774   ${_gRPC_PROTOBUF_LIBRARIES}
13775   ${_gRPC_ALLTARGETS_LIBRARIES}
13776   grpc
13777   gpr
13778   ${_gRPC_GFLAGS_LIBRARIES}
13779 )
13780
13781
13782 endif (gRPC_BUILD_TESTS)
13783 if (gRPC_BUILD_TESTS)
13784
13785 add_executable(grpc_cli
13786   test/cpp/util/grpc_cli.cc
13787   third_party/googletest/googletest/src/gtest-all.cc
13788   third_party/googletest/googlemock/src/gmock-all.cc
13789 )
13790
13791
13792 target_include_directories(grpc_cli
13793   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13794   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13795   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13796   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13797   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13798   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13799   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13800   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13801   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13802   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13803   PRIVATE third_party/googletest/googletest/include
13804   PRIVATE third_party/googletest/googletest
13805   PRIVATE third_party/googletest/googlemock/include
13806   PRIVATE third_party/googletest/googlemock
13807   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13808 )
13809
13810 target_link_libraries(grpc_cli
13811   ${_gRPC_PROTOBUF_LIBRARIES}
13812   ${_gRPC_ALLTARGETS_LIBRARIES}
13813   grpc_cli_libs
13814   grpc++_proto_reflection_desc_db
13815   grpc++
13816   grpc
13817   gpr
13818   grpc++_test_config
13819   ${_gRPC_GFLAGS_LIBRARIES}
13820 )
13821
13822
13823 endif (gRPC_BUILD_TESTS)
13824 if (gRPC_BUILD_TESTS)
13825
13826 add_executable(grpc_core_map_test
13827   test/core/gprpp/map_test.cc
13828   third_party/googletest/googletest/src/gtest-all.cc
13829   third_party/googletest/googlemock/src/gmock-all.cc
13830 )
13831
13832
13833 target_include_directories(grpc_core_map_test
13834   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13835   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13836   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13837   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13838   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13839   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13840   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13841   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13842   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13843   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13844   PRIVATE third_party/googletest/googletest/include
13845   PRIVATE third_party/googletest/googletest
13846   PRIVATE third_party/googletest/googlemock/include
13847   PRIVATE third_party/googletest/googlemock
13848   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13849 )
13850
13851 target_link_libraries(grpc_core_map_test
13852   ${_gRPC_PROTOBUF_LIBRARIES}
13853   ${_gRPC_ALLTARGETS_LIBRARIES}
13854   grpc_test_util
13855   grpc++
13856   grpc
13857   gpr
13858   ${_gRPC_GFLAGS_LIBRARIES}
13859 )
13860
13861
13862 endif (gRPC_BUILD_TESTS)
13863 if (gRPC_BUILD_CODEGEN)
13864
13865 add_executable(grpc_cpp_plugin
13866   src/compiler/cpp_plugin.cc
13867 )
13868
13869
13870 target_include_directories(grpc_cpp_plugin
13871   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13872   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13873   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13874   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13875   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13876   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13877   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13878   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13879   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13880   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13881   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13882 )
13883
13884 target_link_libraries(grpc_cpp_plugin
13885   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13886   ${_gRPC_PROTOBUF_LIBRARIES}
13887   ${_gRPC_ALLTARGETS_LIBRARIES}
13888   grpc_plugin_support
13889 )
13890
13891
13892
13893 if (gRPC_INSTALL)
13894   install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
13895     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13896     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13897     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13898   )
13899 endif()
13900
13901 endif (gRPC_BUILD_CODEGEN)
13902 if (gRPC_BUILD_CODEGEN)
13903
13904 add_executable(grpc_csharp_plugin
13905   src/compiler/csharp_plugin.cc
13906 )
13907
13908
13909 target_include_directories(grpc_csharp_plugin
13910   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13911   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13912   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13913   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13914   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13915   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13916   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13917   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13918   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13919   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13920   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13921 )
13922
13923 target_link_libraries(grpc_csharp_plugin
13924   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13925   ${_gRPC_PROTOBUF_LIBRARIES}
13926   ${_gRPC_ALLTARGETS_LIBRARIES}
13927   grpc_plugin_support
13928 )
13929
13930
13931
13932 if (gRPC_INSTALL)
13933   install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
13934     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13935     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13936     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13937   )
13938 endif()
13939
13940 endif (gRPC_BUILD_CODEGEN)
13941 if (gRPC_BUILD_TESTS)
13942
13943 add_executable(grpc_linux_system_roots_test
13944   test/core/security/linux_system_roots_test.cc
13945   third_party/googletest/googletest/src/gtest-all.cc
13946   third_party/googletest/googlemock/src/gmock-all.cc
13947 )
13948
13949
13950 target_include_directories(grpc_linux_system_roots_test
13951   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13952   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13953   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13954   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13955   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13956   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13957   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13958   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13959   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13960   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13961   PRIVATE third_party/googletest/googletest/include
13962   PRIVATE third_party/googletest/googletest
13963   PRIVATE third_party/googletest/googlemock/include
13964   PRIVATE third_party/googletest/googlemock
13965   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13966 )
13967
13968 target_link_libraries(grpc_linux_system_roots_test
13969   ${_gRPC_PROTOBUF_LIBRARIES}
13970   ${_gRPC_ALLTARGETS_LIBRARIES}
13971   grpc_test_util
13972   grpc
13973   gpr
13974   ${_gRPC_GFLAGS_LIBRARIES}
13975 )
13976
13977
13978 endif (gRPC_BUILD_TESTS)
13979 if (gRPC_BUILD_CODEGEN)
13980
13981 add_executable(grpc_node_plugin
13982   src/compiler/node_plugin.cc
13983 )
13984
13985
13986 target_include_directories(grpc_node_plugin
13987   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13988   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13989   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13990   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13991   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13992   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13993   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13994   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13995   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13996   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13997   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13998 )
13999
14000 target_link_libraries(grpc_node_plugin
14001   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
14002   ${_gRPC_PROTOBUF_LIBRARIES}
14003   ${_gRPC_ALLTARGETS_LIBRARIES}
14004   grpc_plugin_support
14005 )
14006
14007
14008
14009 if (gRPC_INSTALL)
14010   install(TARGETS grpc_node_plugin EXPORT gRPCTargets
14011     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
14012     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
14013     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
14014   )
14015 endif()
14016
14017 endif (gRPC_BUILD_CODEGEN)
14018 if (gRPC_BUILD_CODEGEN)
14019
14020 add_executable(grpc_objective_c_plugin
14021   src/compiler/objective_c_plugin.cc
14022 )
14023
14024
14025 target_include_directories(grpc_objective_c_plugin
14026   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14027   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14028   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14029   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14030   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14031   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14032   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14033   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14034   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14035   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14036   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14037 )
14038
14039 target_link_libraries(grpc_objective_c_plugin
14040   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
14041   ${_gRPC_PROTOBUF_LIBRARIES}
14042   ${_gRPC_ALLTARGETS_LIBRARIES}
14043   grpc_plugin_support
14044 )
14045
14046
14047
14048 if (gRPC_INSTALL)
14049   install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
14050     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
14051     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
14052     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
14053   )
14054 endif()
14055
14056 endif (gRPC_BUILD_CODEGEN)
14057 if (gRPC_BUILD_CODEGEN)
14058
14059 add_executable(grpc_php_plugin
14060   src/compiler/php_plugin.cc
14061 )
14062
14063
14064 target_include_directories(grpc_php_plugin
14065   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14066   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14067   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14068   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14069   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14070   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14071   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14072   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14073   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14074   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14075   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14076 )
14077
14078 target_link_libraries(grpc_php_plugin
14079   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
14080   ${_gRPC_PROTOBUF_LIBRARIES}
14081   ${_gRPC_ALLTARGETS_LIBRARIES}
14082   grpc_plugin_support
14083 )
14084
14085
14086
14087 if (gRPC_INSTALL)
14088   install(TARGETS grpc_php_plugin EXPORT gRPCTargets
14089     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
14090     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
14091     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
14092   )
14093 endif()
14094
14095 endif (gRPC_BUILD_CODEGEN)
14096 if (gRPC_BUILD_CODEGEN)
14097
14098 add_executable(grpc_python_plugin
14099   src/compiler/python_plugin.cc
14100 )
14101
14102
14103 target_include_directories(grpc_python_plugin
14104   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14105   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14106   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14107   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14108   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14109   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14110   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14111   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14112   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14113   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14114   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14115 )
14116
14117 target_link_libraries(grpc_python_plugin
14118   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
14119   ${_gRPC_PROTOBUF_LIBRARIES}
14120   ${_gRPC_ALLTARGETS_LIBRARIES}
14121   grpc_plugin_support
14122 )
14123
14124
14125
14126 if (gRPC_INSTALL)
14127   install(TARGETS grpc_python_plugin EXPORT gRPCTargets
14128     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
14129     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
14130     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
14131   )
14132 endif()
14133
14134 endif (gRPC_BUILD_CODEGEN)
14135 if (gRPC_BUILD_CODEGEN)
14136
14137 add_executable(grpc_ruby_plugin
14138   src/compiler/ruby_plugin.cc
14139 )
14140
14141
14142 target_include_directories(grpc_ruby_plugin
14143   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14144   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14145   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14146   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14147   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14148   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14149   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14150   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14151   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14152   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14153   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14154 )
14155
14156 target_link_libraries(grpc_ruby_plugin
14157   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
14158   ${_gRPC_PROTOBUF_LIBRARIES}
14159   ${_gRPC_ALLTARGETS_LIBRARIES}
14160   grpc_plugin_support
14161 )
14162
14163
14164
14165 if (gRPC_INSTALL)
14166   install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
14167     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
14168     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
14169     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
14170   )
14171 endif()
14172
14173 endif (gRPC_BUILD_CODEGEN)
14174 if (gRPC_BUILD_TESTS)
14175
14176 add_executable(grpc_tool_test
14177   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
14178   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
14179   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
14180   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
14181   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
14182   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
14183   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
14184   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
14185   test/cpp/util/grpc_tool_test.cc
14186   third_party/googletest/googletest/src/gtest-all.cc
14187   third_party/googletest/googlemock/src/gmock-all.cc
14188 )
14189
14190 protobuf_generate_grpc_cpp(
14191   src/proto/grpc/testing/echo.proto
14192 )
14193 protobuf_generate_grpc_cpp(
14194   src/proto/grpc/testing/echo_messages.proto
14195 )
14196
14197 target_include_directories(grpc_tool_test
14198   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14199   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14200   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14201   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14202   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14203   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14204   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14205   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14206   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14207   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14208   PRIVATE third_party/googletest/googletest/include
14209   PRIVATE third_party/googletest/googletest
14210   PRIVATE third_party/googletest/googlemock/include
14211   PRIVATE third_party/googletest/googlemock
14212   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14213 )
14214
14215 target_link_libraries(grpc_tool_test
14216   ${_gRPC_PROTOBUF_LIBRARIES}
14217   ${_gRPC_ALLTARGETS_LIBRARIES}
14218   grpc_cli_libs
14219   grpc++_proto_reflection_desc_db
14220   grpc++_reflection
14221   grpc++_test_util
14222   grpc_test_util
14223   grpc++
14224   grpc
14225   gpr
14226   ${_gRPC_GFLAGS_LIBRARIES}
14227 )
14228
14229
14230 endif (gRPC_BUILD_TESTS)
14231 if (gRPC_BUILD_TESTS)
14232
14233 add_executable(grpclb_api_test
14234   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
14235   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
14236   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
14237   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
14238   test/cpp/grpclb/grpclb_api_test.cc
14239   third_party/googletest/googletest/src/gtest-all.cc
14240   third_party/googletest/googlemock/src/gmock-all.cc
14241 )
14242
14243 protobuf_generate_grpc_cpp(
14244   src/proto/grpc/lb/v1/load_balancer.proto
14245 )
14246
14247 target_include_directories(grpclb_api_test
14248   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14249   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14250   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14251   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14252   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14253   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14254   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14255   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14256   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14257   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14258   PRIVATE third_party/googletest/googletest/include
14259   PRIVATE third_party/googletest/googletest
14260   PRIVATE third_party/googletest/googlemock/include
14261   PRIVATE third_party/googletest/googlemock
14262   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14263 )
14264
14265 target_link_libraries(grpclb_api_test
14266   ${_gRPC_PROTOBUF_LIBRARIES}
14267   ${_gRPC_ALLTARGETS_LIBRARIES}
14268   grpc++_test_util
14269   grpc_test_util
14270   grpc++
14271   grpc
14272   ${_gRPC_GFLAGS_LIBRARIES}
14273 )
14274
14275
14276 endif (gRPC_BUILD_TESTS)
14277 if (gRPC_BUILD_TESTS)
14278
14279 add_executable(grpclb_end2end_test
14280   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
14281   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
14282   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
14283   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
14284   test/cpp/end2end/grpclb_end2end_test.cc
14285   third_party/googletest/googletest/src/gtest-all.cc
14286   third_party/googletest/googlemock/src/gmock-all.cc
14287 )
14288
14289 protobuf_generate_grpc_cpp(
14290   src/proto/grpc/lb/v1/load_balancer.proto
14291 )
14292
14293 target_include_directories(grpclb_end2end_test
14294   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14295   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14296   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14297   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14298   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14299   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14300   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14301   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14302   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14303   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14304   PRIVATE third_party/googletest/googletest/include
14305   PRIVATE third_party/googletest/googletest
14306   PRIVATE third_party/googletest/googlemock/include
14307   PRIVATE third_party/googletest/googlemock
14308   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14309 )
14310
14311 target_link_libraries(grpclb_end2end_test
14312   ${_gRPC_PROTOBUF_LIBRARIES}
14313   ${_gRPC_ALLTARGETS_LIBRARIES}
14314   grpc++_test_util
14315   grpc_test_util
14316   grpc++
14317   grpc
14318   gpr
14319   ${_gRPC_GFLAGS_LIBRARIES}
14320 )
14321
14322
14323 endif (gRPC_BUILD_TESTS)
14324 if (gRPC_BUILD_TESTS)
14325
14326 add_executable(h2_ssl_cert_test
14327   test/core/end2end/h2_ssl_cert_test.cc
14328   third_party/googletest/googletest/src/gtest-all.cc
14329   third_party/googletest/googlemock/src/gmock-all.cc
14330 )
14331
14332
14333 target_include_directories(h2_ssl_cert_test
14334   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14335   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14336   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14337   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14338   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14339   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14340   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14341   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14342   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14343   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14344   PRIVATE third_party/googletest/googletest/include
14345   PRIVATE third_party/googletest/googletest
14346   PRIVATE third_party/googletest/googlemock/include
14347   PRIVATE third_party/googletest/googlemock
14348   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14349 )
14350
14351 target_link_libraries(h2_ssl_cert_test
14352   ${_gRPC_PROTOBUF_LIBRARIES}
14353   ${_gRPC_ALLTARGETS_LIBRARIES}
14354   grpc_test_util
14355   grpc++
14356   grpc
14357   gpr
14358   ${_gRPC_GFLAGS_LIBRARIES}
14359 )
14360
14361
14362 endif (gRPC_BUILD_TESTS)
14363 if (gRPC_BUILD_TESTS)
14364
14365 add_executable(h2_ssl_session_reuse_test
14366   test/core/end2end/h2_ssl_session_reuse_test.cc
14367   third_party/googletest/googletest/src/gtest-all.cc
14368   third_party/googletest/googlemock/src/gmock-all.cc
14369 )
14370
14371
14372 target_include_directories(h2_ssl_session_reuse_test
14373   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14374   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14375   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14376   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14377   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14378   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14379   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14380   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14381   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14382   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14383   PRIVATE third_party/googletest/googletest/include
14384   PRIVATE third_party/googletest/googletest
14385   PRIVATE third_party/googletest/googlemock/include
14386   PRIVATE third_party/googletest/googlemock
14387   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14388 )
14389
14390 target_link_libraries(h2_ssl_session_reuse_test
14391   ${_gRPC_PROTOBUF_LIBRARIES}
14392   ${_gRPC_ALLTARGETS_LIBRARIES}
14393   grpc_test_util
14394   grpc++
14395   grpc
14396   gpr
14397   ${_gRPC_GFLAGS_LIBRARIES}
14398 )
14399
14400
14401 endif (gRPC_BUILD_TESTS)
14402 if (gRPC_BUILD_TESTS)
14403
14404 add_executable(health_service_end2end_test
14405   test/cpp/end2end/health_service_end2end_test.cc
14406   third_party/googletest/googletest/src/gtest-all.cc
14407   third_party/googletest/googlemock/src/gmock-all.cc
14408 )
14409
14410
14411 target_include_directories(health_service_end2end_test
14412   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14413   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14414   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14415   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14416   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14417   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14418   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14419   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14420   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14421   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14422   PRIVATE third_party/googletest/googletest/include
14423   PRIVATE third_party/googletest/googletest
14424   PRIVATE third_party/googletest/googlemock/include
14425   PRIVATE third_party/googletest/googlemock
14426   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14427 )
14428
14429 target_link_libraries(health_service_end2end_test
14430   ${_gRPC_PROTOBUF_LIBRARIES}
14431   ${_gRPC_ALLTARGETS_LIBRARIES}
14432   grpc++_test_util
14433   grpc_test_util
14434   grpc++
14435   grpc
14436   gpr
14437   ${_gRPC_GFLAGS_LIBRARIES}
14438 )
14439
14440
14441 endif (gRPC_BUILD_TESTS)
14442 if (gRPC_BUILD_TESTS)
14443 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14444
14445 add_executable(http2_client
14446   third_party/googletest/googletest/src/gtest-all.cc
14447   third_party/googletest/googlemock/src/gmock-all.cc
14448 )
14449
14450
14451 target_include_directories(http2_client
14452   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14453   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14454   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14455   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14456   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14457   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14458   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14459   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14460   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14461   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14462   PRIVATE third_party/googletest/googletest/include
14463   PRIVATE third_party/googletest/googletest
14464   PRIVATE third_party/googletest/googlemock/include
14465   PRIVATE third_party/googletest/googlemock
14466   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14467 )
14468
14469 target_link_libraries(http2_client
14470   ${_gRPC_PROTOBUF_LIBRARIES}
14471   ${_gRPC_ALLTARGETS_LIBRARIES}
14472   http2_client_main
14473   grpc++_test_util
14474   grpc_test_util
14475   grpc++
14476   grpc
14477   grpc++_test_config
14478   ${_gRPC_GFLAGS_LIBRARIES}
14479 )
14480
14481
14482 endif()
14483 endif (gRPC_BUILD_TESTS)
14484 if (gRPC_BUILD_TESTS)
14485
14486 add_executable(hybrid_end2end_test
14487   test/cpp/end2end/hybrid_end2end_test.cc
14488   third_party/googletest/googletest/src/gtest-all.cc
14489   third_party/googletest/googlemock/src/gmock-all.cc
14490 )
14491
14492
14493 target_include_directories(hybrid_end2end_test
14494   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14495   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14496   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14497   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14498   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14499   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14500   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14501   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14502   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14503   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14504   PRIVATE third_party/googletest/googletest/include
14505   PRIVATE third_party/googletest/googletest
14506   PRIVATE third_party/googletest/googlemock/include
14507   PRIVATE third_party/googletest/googlemock
14508   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14509 )
14510
14511 target_link_libraries(hybrid_end2end_test
14512   ${_gRPC_PROTOBUF_LIBRARIES}
14513   ${_gRPC_ALLTARGETS_LIBRARIES}
14514   grpc++_test_util
14515   grpc_test_util
14516   grpc++
14517   grpc
14518   gpr
14519   ${_gRPC_GFLAGS_LIBRARIES}
14520 )
14521
14522
14523 endif (gRPC_BUILD_TESTS)
14524 if (gRPC_BUILD_TESTS)
14525
14526 add_executable(inlined_vector_test
14527   test/core/gprpp/inlined_vector_test.cc
14528   third_party/googletest/googletest/src/gtest-all.cc
14529   third_party/googletest/googlemock/src/gmock-all.cc
14530 )
14531
14532
14533 target_include_directories(inlined_vector_test
14534   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14535   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14536   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14537   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14538   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14539   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14540   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14541   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14542   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14543   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14544   PRIVATE third_party/googletest/googletest/include
14545   PRIVATE third_party/googletest/googletest
14546   PRIVATE third_party/googletest/googlemock/include
14547   PRIVATE third_party/googletest/googlemock
14548   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14549 )
14550
14551 target_link_libraries(inlined_vector_test
14552   ${_gRPC_PROTOBUF_LIBRARIES}
14553   ${_gRPC_ALLTARGETS_LIBRARIES}
14554   grpc_test_util
14555   grpc++
14556   grpc
14557   gpr
14558   ${_gRPC_GFLAGS_LIBRARIES}
14559 )
14560
14561
14562 endif (gRPC_BUILD_TESTS)
14563 if (gRPC_BUILD_TESTS)
14564 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14565
14566 add_executable(inproc_sync_unary_ping_pong_test
14567   test/cpp/qps/inproc_sync_unary_ping_pong_test.cc
14568   third_party/googletest/googletest/src/gtest-all.cc
14569   third_party/googletest/googlemock/src/gmock-all.cc
14570 )
14571
14572
14573 target_include_directories(inproc_sync_unary_ping_pong_test
14574   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14575   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14576   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14577   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14578   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14579   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14580   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14581   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14582   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14583   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14584   PRIVATE third_party/googletest/googletest/include
14585   PRIVATE third_party/googletest/googletest
14586   PRIVATE third_party/googletest/googlemock/include
14587   PRIVATE third_party/googletest/googlemock
14588   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14589 )
14590
14591 target_link_libraries(inproc_sync_unary_ping_pong_test
14592   ${_gRPC_PROTOBUF_LIBRARIES}
14593   ${_gRPC_ALLTARGETS_LIBRARIES}
14594   qps
14595   grpc++_core_stats
14596   grpc++_test_util
14597   grpc_test_util
14598   grpc++
14599   grpc
14600   gpr
14601   grpc++_test_config
14602   ${_gRPC_GFLAGS_LIBRARIES}
14603 )
14604
14605
14606 endif()
14607 endif (gRPC_BUILD_TESTS)
14608 if (gRPC_BUILD_TESTS)
14609 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14610
14611 add_executable(interop_client
14612   third_party/googletest/googletest/src/gtest-all.cc
14613   third_party/googletest/googlemock/src/gmock-all.cc
14614 )
14615
14616
14617 target_include_directories(interop_client
14618   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14619   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14620   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14621   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14622   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14623   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14624   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14625   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14626   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14627   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14628   PRIVATE third_party/googletest/googletest/include
14629   PRIVATE third_party/googletest/googletest
14630   PRIVATE third_party/googletest/googlemock/include
14631   PRIVATE third_party/googletest/googlemock
14632   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14633 )
14634
14635 target_link_libraries(interop_client
14636   ${_gRPC_PROTOBUF_LIBRARIES}
14637   ${_gRPC_ALLTARGETS_LIBRARIES}
14638   interop_client_main
14639   interop_client_helper
14640   grpc++_test_util
14641   grpc_test_util
14642   grpc++
14643   grpc
14644   gpr
14645   grpc++_test_config
14646   ${_gRPC_GFLAGS_LIBRARIES}
14647 )
14648
14649
14650 endif()
14651 endif (gRPC_BUILD_TESTS)
14652 if (gRPC_BUILD_TESTS)
14653 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14654
14655 add_executable(interop_server
14656   third_party/googletest/googletest/src/gtest-all.cc
14657   third_party/googletest/googlemock/src/gmock-all.cc
14658 )
14659
14660
14661 target_include_directories(interop_server
14662   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14663   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14664   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14665   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14666   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14667   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14668   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14669   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14670   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14671   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14672   PRIVATE third_party/googletest/googletest/include
14673   PRIVATE third_party/googletest/googletest
14674   PRIVATE third_party/googletest/googlemock/include
14675   PRIVATE third_party/googletest/googlemock
14676   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14677 )
14678
14679 target_link_libraries(interop_server
14680   ${_gRPC_PROTOBUF_LIBRARIES}
14681   ${_gRPC_ALLTARGETS_LIBRARIES}
14682   interop_server_main
14683   interop_server_helper
14684   interop_server_lib
14685   grpc++_test_util
14686   grpc_test_util
14687   grpc++
14688   grpc
14689   gpr
14690   grpc++_test_config
14691   ${_gRPC_GFLAGS_LIBRARIES}
14692 )
14693
14694
14695 endif()
14696 endif (gRPC_BUILD_TESTS)
14697 if (gRPC_BUILD_TESTS)
14698 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14699
14700 add_executable(interop_test
14701   test/cpp/interop/interop_test.cc
14702   third_party/googletest/googletest/src/gtest-all.cc
14703   third_party/googletest/googlemock/src/gmock-all.cc
14704 )
14705
14706
14707 target_include_directories(interop_test
14708   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14709   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14710   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14711   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14712   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14713   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14714   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14715   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14716   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14717   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14718   PRIVATE third_party/googletest/googletest/include
14719   PRIVATE third_party/googletest/googletest
14720   PRIVATE third_party/googletest/googlemock/include
14721   PRIVATE third_party/googletest/googlemock
14722   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14723 )
14724
14725 target_link_libraries(interop_test
14726   ${_gRPC_PROTOBUF_LIBRARIES}
14727   ${_gRPC_ALLTARGETS_LIBRARIES}
14728   grpc_test_util
14729   grpc
14730   gpr
14731   grpc++_test_config
14732   ${_gRPC_GFLAGS_LIBRARIES}
14733 )
14734
14735
14736 endif()
14737 endif (gRPC_BUILD_TESTS)
14738 if (gRPC_BUILD_TESTS)
14739 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14740
14741 add_executable(json_run_localhost
14742   test/cpp/qps/json_run_localhost.cc
14743   third_party/googletest/googletest/src/gtest-all.cc
14744   third_party/googletest/googlemock/src/gmock-all.cc
14745 )
14746
14747
14748 target_include_directories(json_run_localhost
14749   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14750   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14751   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14752   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14753   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14754   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14755   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14756   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14757   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14758   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14759   PRIVATE third_party/googletest/googletest/include
14760   PRIVATE third_party/googletest/googletest
14761   PRIVATE third_party/googletest/googlemock/include
14762   PRIVATE third_party/googletest/googlemock
14763   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14764 )
14765
14766 target_link_libraries(json_run_localhost
14767   ${_gRPC_PROTOBUF_LIBRARIES}
14768   ${_gRPC_ALLTARGETS_LIBRARIES}
14769   grpc++_test_util
14770   grpc_test_util
14771   grpc++
14772   grpc
14773   gpr
14774   grpc++_test_config
14775   ${_gRPC_GFLAGS_LIBRARIES}
14776 )
14777
14778
14779 endif()
14780 endif (gRPC_BUILD_TESTS)
14781 if (gRPC_BUILD_TESTS)
14782
14783 add_executable(memory_test
14784   test/core/gprpp/memory_test.cc
14785   third_party/googletest/googletest/src/gtest-all.cc
14786   third_party/googletest/googlemock/src/gmock-all.cc
14787 )
14788
14789
14790 target_include_directories(memory_test
14791   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14792   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14793   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14794   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14795   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14796   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14797   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14798   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14799   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14800   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14801   PRIVATE third_party/googletest/googletest/include
14802   PRIVATE third_party/googletest/googletest
14803   PRIVATE third_party/googletest/googlemock/include
14804   PRIVATE third_party/googletest/googlemock
14805   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14806 )
14807
14808 target_link_libraries(memory_test
14809   ${_gRPC_PROTOBUF_LIBRARIES}
14810   ${_gRPC_ALLTARGETS_LIBRARIES}
14811   grpc_test_util
14812   grpc++
14813   grpc
14814   gpr
14815   ${_gRPC_GFLAGS_LIBRARIES}
14816 )
14817
14818
14819 endif (gRPC_BUILD_TESTS)
14820 if (gRPC_BUILD_TESTS)
14821
14822 add_executable(message_allocator_end2end_test
14823   test/cpp/end2end/message_allocator_end2end_test.cc
14824   third_party/googletest/googletest/src/gtest-all.cc
14825   third_party/googletest/googlemock/src/gmock-all.cc
14826 )
14827
14828
14829 target_include_directories(message_allocator_end2end_test
14830   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14831   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14832   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14833   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14834   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14835   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14836   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14837   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14838   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14839   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14840   PRIVATE third_party/googletest/googletest/include
14841   PRIVATE third_party/googletest/googletest
14842   PRIVATE third_party/googletest/googlemock/include
14843   PRIVATE third_party/googletest/googlemock
14844   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14845 )
14846
14847 target_link_libraries(message_allocator_end2end_test
14848   ${_gRPC_PROTOBUF_LIBRARIES}
14849   ${_gRPC_ALLTARGETS_LIBRARIES}
14850   grpc++_test_util
14851   grpc_test_util
14852   grpc++
14853   grpc
14854   gpr
14855   ${_gRPC_GFLAGS_LIBRARIES}
14856 )
14857
14858
14859 endif (gRPC_BUILD_TESTS)
14860 if (gRPC_BUILD_TESTS)
14861
14862 add_executable(metrics_client
14863   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.cc
14864   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.cc
14865   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.h
14866   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.h
14867   test/cpp/interop/metrics_client.cc
14868   third_party/googletest/googletest/src/gtest-all.cc
14869   third_party/googletest/googlemock/src/gmock-all.cc
14870 )
14871
14872 protobuf_generate_grpc_cpp(
14873   src/proto/grpc/testing/metrics.proto
14874 )
14875
14876 target_include_directories(metrics_client
14877   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14878   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14879   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14880   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14881   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14882   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14883   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14884   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14885   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14886   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14887   PRIVATE third_party/googletest/googletest/include
14888   PRIVATE third_party/googletest/googletest
14889   PRIVATE third_party/googletest/googlemock/include
14890   PRIVATE third_party/googletest/googlemock
14891   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14892 )
14893
14894 target_link_libraries(metrics_client
14895   ${_gRPC_PROTOBUF_LIBRARIES}
14896   ${_gRPC_ALLTARGETS_LIBRARIES}
14897   grpc++
14898   grpc
14899   gpr
14900   grpc++_test_config
14901   ${_gRPC_GFLAGS_LIBRARIES}
14902 )
14903
14904
14905 endif (gRPC_BUILD_TESTS)
14906 if (gRPC_BUILD_TESTS)
14907
14908 add_executable(mock_test
14909   test/cpp/end2end/mock_test.cc
14910   third_party/googletest/googletest/src/gtest-all.cc
14911   third_party/googletest/googlemock/src/gmock-all.cc
14912 )
14913
14914
14915 target_include_directories(mock_test
14916   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14917   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14918   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14919   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14920   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14921   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14922   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14923   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14924   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14925   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14926   PRIVATE third_party/googletest/googletest/include
14927   PRIVATE third_party/googletest/googletest
14928   PRIVATE third_party/googletest/googlemock/include
14929   PRIVATE third_party/googletest/googlemock
14930   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14931 )
14932
14933 target_link_libraries(mock_test
14934   ${_gRPC_PROTOBUF_LIBRARIES}
14935   ${_gRPC_ALLTARGETS_LIBRARIES}
14936   grpc++_test_util
14937   grpc_test_util
14938   grpc++
14939   grpc
14940   gpr
14941   ${_gRPC_GFLAGS_LIBRARIES}
14942 )
14943
14944
14945 endif (gRPC_BUILD_TESTS)
14946 if (gRPC_BUILD_TESTS)
14947
14948 add_executable(nonblocking_test
14949   test/cpp/end2end/nonblocking_test.cc
14950   third_party/googletest/googletest/src/gtest-all.cc
14951   third_party/googletest/googlemock/src/gmock-all.cc
14952 )
14953
14954
14955 target_include_directories(nonblocking_test
14956   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14957   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14958   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14959   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14960   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14961   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14962   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14963   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14964   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14965   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14966   PRIVATE third_party/googletest/googletest/include
14967   PRIVATE third_party/googletest/googletest
14968   PRIVATE third_party/googletest/googlemock/include
14969   PRIVATE third_party/googletest/googlemock
14970   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14971 )
14972
14973 target_link_libraries(nonblocking_test
14974   ${_gRPC_PROTOBUF_LIBRARIES}
14975   ${_gRPC_ALLTARGETS_LIBRARIES}
14976   grpc++_test_util
14977   grpc_test_util
14978   grpc++
14979   grpc
14980   gpr
14981   ${_gRPC_GFLAGS_LIBRARIES}
14982 )
14983
14984
14985 endif (gRPC_BUILD_TESTS)
14986 if (gRPC_BUILD_TESTS)
14987
14988 add_executable(noop-benchmark
14989   test/cpp/microbenchmarks/noop-benchmark.cc
14990   third_party/googletest/googletest/src/gtest-all.cc
14991   third_party/googletest/googlemock/src/gmock-all.cc
14992 )
14993
14994
14995 target_include_directories(noop-benchmark
14996   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14997   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14998   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14999   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15000   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15001   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15002   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15003   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15004   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15005   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15006   PRIVATE third_party/googletest/googletest/include
15007   PRIVATE third_party/googletest/googletest
15008   PRIVATE third_party/googletest/googlemock/include
15009   PRIVATE third_party/googletest/googlemock
15010   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15011 )
15012
15013 target_link_libraries(noop-benchmark
15014   ${_gRPC_PROTOBUF_LIBRARIES}
15015   ${_gRPC_ALLTARGETS_LIBRARIES}
15016   ${_gRPC_BENCHMARK_LIBRARIES}
15017   ${_gRPC_GFLAGS_LIBRARIES}
15018 )
15019
15020
15021 endif (gRPC_BUILD_TESTS)
15022 if (gRPC_BUILD_TESTS)
15023
15024 add_executable(optional_test
15025   test/core/gprpp/optional_test.cc
15026   third_party/googletest/googletest/src/gtest-all.cc
15027   third_party/googletest/googlemock/src/gmock-all.cc
15028 )
15029
15030
15031 target_include_directories(optional_test
15032   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15033   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15034   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15035   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15036   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15037   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15038   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15039   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15040   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15041   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15042   PRIVATE third_party/googletest/googletest/include
15043   PRIVATE third_party/googletest/googletest
15044   PRIVATE third_party/googletest/googlemock/include
15045   PRIVATE third_party/googletest/googlemock
15046   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15047 )
15048
15049 target_link_libraries(optional_test
15050   ${_gRPC_PROTOBUF_LIBRARIES}
15051   ${_gRPC_ALLTARGETS_LIBRARIES}
15052   grpc_test_util
15053   grpc++
15054   grpc
15055   gpr
15056   ${_gRPC_GFLAGS_LIBRARIES}
15057 )
15058
15059
15060 endif (gRPC_BUILD_TESTS)
15061 if (gRPC_BUILD_TESTS)
15062
15063 add_executable(orphanable_test
15064   test/core/gprpp/orphanable_test.cc
15065   third_party/googletest/googletest/src/gtest-all.cc
15066   third_party/googletest/googlemock/src/gmock-all.cc
15067 )
15068
15069
15070 target_include_directories(orphanable_test
15071   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15072   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15073   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15074   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15075   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15076   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15077   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15078   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15079   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15080   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15081   PRIVATE third_party/googletest/googletest/include
15082   PRIVATE third_party/googletest/googletest
15083   PRIVATE third_party/googletest/googlemock/include
15084   PRIVATE third_party/googletest/googlemock
15085   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15086 )
15087
15088 target_link_libraries(orphanable_test
15089   ${_gRPC_PROTOBUF_LIBRARIES}
15090   ${_gRPC_ALLTARGETS_LIBRARIES}
15091   grpc_test_util
15092   grpc++
15093   grpc
15094   gpr
15095   ${_gRPC_GFLAGS_LIBRARIES}
15096 )
15097
15098
15099 endif (gRPC_BUILD_TESTS)
15100 if (gRPC_BUILD_TESTS)
15101
15102 add_executable(port_sharing_end2end_test
15103   test/cpp/end2end/port_sharing_end2end_test.cc
15104   third_party/googletest/googletest/src/gtest-all.cc
15105   third_party/googletest/googlemock/src/gmock-all.cc
15106 )
15107
15108
15109 target_include_directories(port_sharing_end2end_test
15110   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15111   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15112   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15113   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15114   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15115   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15116   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15117   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15118   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15119   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15120   PRIVATE third_party/googletest/googletest/include
15121   PRIVATE third_party/googletest/googletest
15122   PRIVATE third_party/googletest/googlemock/include
15123   PRIVATE third_party/googletest/googlemock
15124   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15125 )
15126
15127 target_link_libraries(port_sharing_end2end_test
15128   ${_gRPC_PROTOBUF_LIBRARIES}
15129   ${_gRPC_ALLTARGETS_LIBRARIES}
15130   test_tcp_server
15131   grpc++_test_util
15132   grpc_test_util
15133   grpc++
15134   grpc
15135   gpr
15136   ${_gRPC_GFLAGS_LIBRARIES}
15137 )
15138
15139
15140 endif (gRPC_BUILD_TESTS)
15141 if (gRPC_BUILD_TESTS)
15142
15143 add_executable(proto_server_reflection_test
15144   test/cpp/end2end/proto_server_reflection_test.cc
15145   third_party/googletest/googletest/src/gtest-all.cc
15146   third_party/googletest/googlemock/src/gmock-all.cc
15147 )
15148
15149
15150 target_include_directories(proto_server_reflection_test
15151   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15152   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15153   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15154   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15155   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15156   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15157   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15158   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15159   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15160   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15161   PRIVATE third_party/googletest/googletest/include
15162   PRIVATE third_party/googletest/googletest
15163   PRIVATE third_party/googletest/googlemock/include
15164   PRIVATE third_party/googletest/googlemock
15165   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15166 )
15167
15168 target_link_libraries(proto_server_reflection_test
15169   ${_gRPC_PROTOBUF_LIBRARIES}
15170   ${_gRPC_ALLTARGETS_LIBRARIES}
15171   grpc++_proto_reflection_desc_db
15172   grpc++_reflection
15173   grpc++_test_util
15174   grpc_test_util
15175   grpc++
15176   grpc
15177   gpr
15178   ${_gRPC_GFLAGS_LIBRARIES}
15179 )
15180
15181
15182 endif (gRPC_BUILD_TESTS)
15183 if (gRPC_BUILD_TESTS)
15184
15185 add_executable(proto_utils_test
15186   test/cpp/codegen/proto_utils_test.cc
15187   third_party/googletest/googletest/src/gtest-all.cc
15188   third_party/googletest/googlemock/src/gmock-all.cc
15189 )
15190
15191
15192 target_include_directories(proto_utils_test
15193   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15194   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15195   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15196   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15197   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15198   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15199   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15200   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15201   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15202   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15203   PRIVATE third_party/googletest/googletest/include
15204   PRIVATE third_party/googletest/googletest
15205   PRIVATE third_party/googletest/googlemock/include
15206   PRIVATE third_party/googletest/googlemock
15207   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15208 )
15209
15210 target_link_libraries(proto_utils_test
15211   ${_gRPC_PROTOBUF_LIBRARIES}
15212   ${_gRPC_ALLTARGETS_LIBRARIES}
15213   grpc++
15214   grpc
15215   ${_gRPC_GFLAGS_LIBRARIES}
15216 )
15217
15218
15219 endif (gRPC_BUILD_TESTS)
15220 if (gRPC_BUILD_TESTS)
15221 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15222
15223 add_executable(qps_interarrival_test
15224   test/cpp/qps/qps_interarrival_test.cc
15225   third_party/googletest/googletest/src/gtest-all.cc
15226   third_party/googletest/googlemock/src/gmock-all.cc
15227 )
15228
15229
15230 target_include_directories(qps_interarrival_test
15231   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15232   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15233   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15234   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15235   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15236   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15237   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15238   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15239   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15240   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15241   PRIVATE third_party/googletest/googletest/include
15242   PRIVATE third_party/googletest/googletest
15243   PRIVATE third_party/googletest/googlemock/include
15244   PRIVATE third_party/googletest/googlemock
15245   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15246 )
15247
15248 target_link_libraries(qps_interarrival_test
15249   ${_gRPC_PROTOBUF_LIBRARIES}
15250   ${_gRPC_ALLTARGETS_LIBRARIES}
15251   qps
15252   grpc++_test_util
15253   grpc_test_util
15254   grpc++
15255   grpc
15256   gpr
15257   grpc++_test_config
15258   ${_gRPC_GFLAGS_LIBRARIES}
15259 )
15260
15261
15262 endif()
15263 endif (gRPC_BUILD_TESTS)
15264 if (gRPC_BUILD_TESTS)
15265
15266 add_executable(qps_json_driver
15267   test/cpp/qps/qps_json_driver.cc
15268   third_party/googletest/googletest/src/gtest-all.cc
15269   third_party/googletest/googlemock/src/gmock-all.cc
15270 )
15271
15272
15273 target_include_directories(qps_json_driver
15274   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15275   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15276   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15277   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15278   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15279   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15280   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15281   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15282   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15283   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15284   PRIVATE third_party/googletest/googletest/include
15285   PRIVATE third_party/googletest/googletest
15286   PRIVATE third_party/googletest/googlemock/include
15287   PRIVATE third_party/googletest/googlemock
15288   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15289 )
15290
15291 target_link_libraries(qps_json_driver
15292   ${_gRPC_PROTOBUF_LIBRARIES}
15293   ${_gRPC_ALLTARGETS_LIBRARIES}
15294   qps
15295   grpc++_core_stats
15296   grpc++_test_util
15297   grpc_test_util
15298   grpc++
15299   grpc
15300   gpr
15301   grpc++_test_config
15302   ${_gRPC_GFLAGS_LIBRARIES}
15303 )
15304
15305
15306 endif (gRPC_BUILD_TESTS)
15307 if (gRPC_BUILD_TESTS)
15308 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15309
15310 add_executable(qps_openloop_test
15311   test/cpp/qps/qps_openloop_test.cc
15312   third_party/googletest/googletest/src/gtest-all.cc
15313   third_party/googletest/googlemock/src/gmock-all.cc
15314 )
15315
15316
15317 target_include_directories(qps_openloop_test
15318   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15319   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15320   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15321   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15322   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15323   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15324   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15325   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15326   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15327   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15328   PRIVATE third_party/googletest/googletest/include
15329   PRIVATE third_party/googletest/googletest
15330   PRIVATE third_party/googletest/googlemock/include
15331   PRIVATE third_party/googletest/googlemock
15332   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15333 )
15334
15335 target_link_libraries(qps_openloop_test
15336   ${_gRPC_PROTOBUF_LIBRARIES}
15337   ${_gRPC_ALLTARGETS_LIBRARIES}
15338   qps
15339   grpc++_core_stats
15340   grpc++_test_util
15341   grpc_test_util
15342   grpc++
15343   grpc
15344   gpr
15345   grpc++_test_config
15346   ${_gRPC_GFLAGS_LIBRARIES}
15347 )
15348
15349
15350 endif()
15351 endif (gRPC_BUILD_TESTS)
15352 if (gRPC_BUILD_TESTS)
15353
15354 add_executable(qps_worker
15355   test/cpp/qps/worker.cc
15356   third_party/googletest/googletest/src/gtest-all.cc
15357   third_party/googletest/googlemock/src/gmock-all.cc
15358 )
15359
15360
15361 target_include_directories(qps_worker
15362   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15363   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15364   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15365   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15366   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15367   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15368   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15369   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15370   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15371   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15372   PRIVATE third_party/googletest/googletest/include
15373   PRIVATE third_party/googletest/googletest
15374   PRIVATE third_party/googletest/googlemock/include
15375   PRIVATE third_party/googletest/googlemock
15376   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15377 )
15378
15379 target_link_libraries(qps_worker
15380   ${_gRPC_PROTOBUF_LIBRARIES}
15381   ${_gRPC_ALLTARGETS_LIBRARIES}
15382   qps
15383   grpc++_core_stats
15384   grpc++_test_util
15385   grpc_test_util
15386   grpc++
15387   grpc
15388   gpr
15389   grpc++_test_config
15390   ${_gRPC_GFLAGS_LIBRARIES}
15391 )
15392
15393
15394 endif (gRPC_BUILD_TESTS)
15395 if (gRPC_BUILD_TESTS)
15396
15397 add_executable(raw_end2end_test
15398   test/cpp/end2end/raw_end2end_test.cc
15399   third_party/googletest/googletest/src/gtest-all.cc
15400   third_party/googletest/googlemock/src/gmock-all.cc
15401 )
15402
15403
15404 target_include_directories(raw_end2end_test
15405   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15406   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15407   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15408   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15409   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15410   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15411   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15412   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15413   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15414   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15415   PRIVATE third_party/googletest/googletest/include
15416   PRIVATE third_party/googletest/googletest
15417   PRIVATE third_party/googletest/googlemock/include
15418   PRIVATE third_party/googletest/googlemock
15419   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15420 )
15421
15422 target_link_libraries(raw_end2end_test
15423   ${_gRPC_PROTOBUF_LIBRARIES}
15424   ${_gRPC_ALLTARGETS_LIBRARIES}
15425   grpc++_test_util
15426   grpc_test_util
15427   grpc++
15428   grpc
15429   gpr
15430   ${_gRPC_GFLAGS_LIBRARIES}
15431 )
15432
15433
15434 endif (gRPC_BUILD_TESTS)
15435 if (gRPC_BUILD_TESTS)
15436
15437 add_executable(reconnect_interop_client
15438   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
15439   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
15440   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
15441   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
15442   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
15443   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
15444   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
15445   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
15446   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
15447   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
15448   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
15449   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
15450   test/cpp/interop/reconnect_interop_client.cc
15451   third_party/googletest/googletest/src/gtest-all.cc
15452   third_party/googletest/googlemock/src/gmock-all.cc
15453 )
15454
15455 protobuf_generate_grpc_cpp(
15456   src/proto/grpc/testing/empty.proto
15457 )
15458 protobuf_generate_grpc_cpp(
15459   src/proto/grpc/testing/messages.proto
15460 )
15461 protobuf_generate_grpc_cpp(
15462   src/proto/grpc/testing/test.proto
15463 )
15464
15465 target_include_directories(reconnect_interop_client
15466   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15467   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15468   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15469   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15470   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15471   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15472   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15473   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15474   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15475   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15476   PRIVATE third_party/googletest/googletest/include
15477   PRIVATE third_party/googletest/googletest
15478   PRIVATE third_party/googletest/googlemock/include
15479   PRIVATE third_party/googletest/googlemock
15480   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15481 )
15482
15483 target_link_libraries(reconnect_interop_client
15484   ${_gRPC_PROTOBUF_LIBRARIES}
15485   ${_gRPC_ALLTARGETS_LIBRARIES}
15486   grpc++_test_util
15487   grpc_test_util
15488   grpc++
15489   grpc
15490   gpr
15491   grpc++_test_config
15492   ${_gRPC_GFLAGS_LIBRARIES}
15493 )
15494
15495
15496 endif (gRPC_BUILD_TESTS)
15497 if (gRPC_BUILD_TESTS)
15498
15499 add_executable(reconnect_interop_server
15500   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
15501   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
15502   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
15503   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
15504   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
15505   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
15506   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
15507   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
15508   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
15509   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
15510   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
15511   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
15512   test/cpp/interop/reconnect_interop_server.cc
15513   third_party/googletest/googletest/src/gtest-all.cc
15514   third_party/googletest/googlemock/src/gmock-all.cc
15515 )
15516
15517 protobuf_generate_grpc_cpp(
15518   src/proto/grpc/testing/empty.proto
15519 )
15520 protobuf_generate_grpc_cpp(
15521   src/proto/grpc/testing/messages.proto
15522 )
15523 protobuf_generate_grpc_cpp(
15524   src/proto/grpc/testing/test.proto
15525 )
15526
15527 target_include_directories(reconnect_interop_server
15528   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15529   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15530   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15531   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15532   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15533   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15534   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15535   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15536   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15537   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15538   PRIVATE third_party/googletest/googletest/include
15539   PRIVATE third_party/googletest/googletest
15540   PRIVATE third_party/googletest/googlemock/include
15541   PRIVATE third_party/googletest/googlemock
15542   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15543 )
15544
15545 target_link_libraries(reconnect_interop_server
15546   ${_gRPC_PROTOBUF_LIBRARIES}
15547   ${_gRPC_ALLTARGETS_LIBRARIES}
15548   reconnect_server
15549   test_tcp_server
15550   grpc++_test_util
15551   grpc_test_util
15552   grpc++
15553   grpc
15554   gpr
15555   grpc++_test_config
15556   ${_gRPC_GFLAGS_LIBRARIES}
15557 )
15558
15559
15560 endif (gRPC_BUILD_TESTS)
15561 if (gRPC_BUILD_TESTS)
15562
15563 add_executable(ref_counted_ptr_test
15564   test/core/gprpp/ref_counted_ptr_test.cc
15565   third_party/googletest/googletest/src/gtest-all.cc
15566   third_party/googletest/googlemock/src/gmock-all.cc
15567 )
15568
15569
15570 target_include_directories(ref_counted_ptr_test
15571   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15572   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15573   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15574   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15575   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15576   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15577   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15578   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15579   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15580   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15581   PRIVATE third_party/googletest/googletest/include
15582   PRIVATE third_party/googletest/googletest
15583   PRIVATE third_party/googletest/googlemock/include
15584   PRIVATE third_party/googletest/googlemock
15585   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15586 )
15587
15588 target_link_libraries(ref_counted_ptr_test
15589   ${_gRPC_PROTOBUF_LIBRARIES}
15590   ${_gRPC_ALLTARGETS_LIBRARIES}
15591   grpc_test_util
15592   grpc++
15593   grpc
15594   gpr
15595   ${_gRPC_GFLAGS_LIBRARIES}
15596 )
15597
15598
15599 endif (gRPC_BUILD_TESTS)
15600 if (gRPC_BUILD_TESTS)
15601
15602 add_executable(ref_counted_test
15603   test/core/gprpp/ref_counted_test.cc
15604   third_party/googletest/googletest/src/gtest-all.cc
15605   third_party/googletest/googlemock/src/gmock-all.cc
15606 )
15607
15608
15609 target_include_directories(ref_counted_test
15610   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15611   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15612   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15613   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15614   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15615   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15616   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15617   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15618   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15619   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15620   PRIVATE third_party/googletest/googletest/include
15621   PRIVATE third_party/googletest/googletest
15622   PRIVATE third_party/googletest/googlemock/include
15623   PRIVATE third_party/googletest/googlemock
15624   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15625 )
15626
15627 target_link_libraries(ref_counted_test
15628   ${_gRPC_PROTOBUF_LIBRARIES}
15629   ${_gRPC_ALLTARGETS_LIBRARIES}
15630   grpc_test_util
15631   grpc++
15632   grpc
15633   gpr
15634   ${_gRPC_GFLAGS_LIBRARIES}
15635 )
15636
15637
15638 endif (gRPC_BUILD_TESTS)
15639 if (gRPC_BUILD_TESTS)
15640
15641 add_executable(retry_throttle_test
15642   test/core/client_channel/retry_throttle_test.cc
15643   third_party/googletest/googletest/src/gtest-all.cc
15644   third_party/googletest/googlemock/src/gmock-all.cc
15645 )
15646
15647
15648 target_include_directories(retry_throttle_test
15649   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15650   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15651   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15652   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15653   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15654   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15655   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15656   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15657   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15658   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15659   PRIVATE third_party/googletest/googletest/include
15660   PRIVATE third_party/googletest/googletest
15661   PRIVATE third_party/googletest/googlemock/include
15662   PRIVATE third_party/googletest/googlemock
15663   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15664 )
15665
15666 target_link_libraries(retry_throttle_test
15667   ${_gRPC_PROTOBUF_LIBRARIES}
15668   ${_gRPC_ALLTARGETS_LIBRARIES}
15669   grpc_test_util
15670   grpc
15671   gpr
15672   ${_gRPC_GFLAGS_LIBRARIES}
15673 )
15674
15675
15676 endif (gRPC_BUILD_TESTS)
15677 if (gRPC_BUILD_TESTS)
15678
15679 add_executable(secure_auth_context_test
15680   test/cpp/common/secure_auth_context_test.cc
15681   third_party/googletest/googletest/src/gtest-all.cc
15682   third_party/googletest/googlemock/src/gmock-all.cc
15683 )
15684
15685
15686 target_include_directories(secure_auth_context_test
15687   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15688   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15689   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15690   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15691   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15692   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15693   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15694   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15695   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15696   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15697   PRIVATE third_party/googletest/googletest/include
15698   PRIVATE third_party/googletest/googletest
15699   PRIVATE third_party/googletest/googlemock/include
15700   PRIVATE third_party/googletest/googlemock
15701   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15702 )
15703
15704 target_link_libraries(secure_auth_context_test
15705   ${_gRPC_PROTOBUF_LIBRARIES}
15706   ${_gRPC_ALLTARGETS_LIBRARIES}
15707   grpc++_test_util
15708   grpc_test_util
15709   grpc++
15710   grpc
15711   gpr
15712   ${_gRPC_GFLAGS_LIBRARIES}
15713 )
15714
15715
15716 endif (gRPC_BUILD_TESTS)
15717 if (gRPC_BUILD_TESTS)
15718 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15719
15720 add_executable(secure_sync_unary_ping_pong_test
15721   test/cpp/qps/secure_sync_unary_ping_pong_test.cc
15722   third_party/googletest/googletest/src/gtest-all.cc
15723   third_party/googletest/googlemock/src/gmock-all.cc
15724 )
15725
15726
15727 target_include_directories(secure_sync_unary_ping_pong_test
15728   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15729   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15730   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15731   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15732   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15733   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15734   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15735   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15736   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15737   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15738   PRIVATE third_party/googletest/googletest/include
15739   PRIVATE third_party/googletest/googletest
15740   PRIVATE third_party/googletest/googlemock/include
15741   PRIVATE third_party/googletest/googlemock
15742   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15743 )
15744
15745 target_link_libraries(secure_sync_unary_ping_pong_test
15746   ${_gRPC_PROTOBUF_LIBRARIES}
15747   ${_gRPC_ALLTARGETS_LIBRARIES}
15748   qps
15749   grpc++_core_stats
15750   grpc++_test_util
15751   grpc_test_util
15752   grpc++
15753   grpc
15754   gpr
15755   grpc++_test_config
15756   ${_gRPC_GFLAGS_LIBRARIES}
15757 )
15758
15759
15760 endif()
15761 endif (gRPC_BUILD_TESTS)
15762 if (gRPC_BUILD_TESTS)
15763
15764 add_executable(server_builder_plugin_test
15765   test/cpp/end2end/server_builder_plugin_test.cc
15766   third_party/googletest/googletest/src/gtest-all.cc
15767   third_party/googletest/googlemock/src/gmock-all.cc
15768 )
15769
15770
15771 target_include_directories(server_builder_plugin_test
15772   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15773   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15774   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15775   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15776   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15777   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15778   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15779   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15780   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15781   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15782   PRIVATE third_party/googletest/googletest/include
15783   PRIVATE third_party/googletest/googletest
15784   PRIVATE third_party/googletest/googlemock/include
15785   PRIVATE third_party/googletest/googlemock
15786   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15787 )
15788
15789 target_link_libraries(server_builder_plugin_test
15790   ${_gRPC_PROTOBUF_LIBRARIES}
15791   ${_gRPC_ALLTARGETS_LIBRARIES}
15792   grpc++_test_util
15793   grpc_test_util
15794   grpc++
15795   grpc
15796   gpr
15797   ${_gRPC_GFLAGS_LIBRARIES}
15798 )
15799
15800
15801 endif (gRPC_BUILD_TESTS)
15802 if (gRPC_BUILD_TESTS)
15803
15804 add_executable(server_builder_test
15805   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
15806   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
15807   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
15808   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
15809   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
15810   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
15811   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
15812   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
15813   test/cpp/server/server_builder_test.cc
15814   third_party/googletest/googletest/src/gtest-all.cc
15815   third_party/googletest/googlemock/src/gmock-all.cc
15816 )
15817
15818 protobuf_generate_grpc_cpp(
15819   src/proto/grpc/testing/echo_messages.proto
15820 )
15821 protobuf_generate_grpc_cpp(
15822   src/proto/grpc/testing/echo.proto
15823 )
15824
15825 target_include_directories(server_builder_test
15826   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15827   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15828   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15829   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15830   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15831   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15832   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15833   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15834   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15835   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15836   PRIVATE third_party/googletest/googletest/include
15837   PRIVATE third_party/googletest/googletest
15838   PRIVATE third_party/googletest/googlemock/include
15839   PRIVATE third_party/googletest/googlemock
15840   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15841 )
15842
15843 target_link_libraries(server_builder_test
15844   ${_gRPC_PROTOBUF_LIBRARIES}
15845   ${_gRPC_ALLTARGETS_LIBRARIES}
15846   grpc++_test_util_unsecure
15847   grpc_test_util_unsecure
15848   grpc++_unsecure
15849   grpc_unsecure
15850   gpr
15851   ${_gRPC_GFLAGS_LIBRARIES}
15852 )
15853
15854
15855 endif (gRPC_BUILD_TESTS)
15856 if (gRPC_BUILD_TESTS)
15857 if(_gRPC_PLATFORM_POSIX)
15858
15859 add_executable(server_builder_with_socket_mutator_test
15860   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
15861   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
15862   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
15863   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
15864   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
15865   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
15866   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
15867   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
15868   test/cpp/server/server_builder_with_socket_mutator_test.cc
15869   third_party/googletest/googletest/src/gtest-all.cc
15870   third_party/googletest/googlemock/src/gmock-all.cc
15871 )
15872
15873 protobuf_generate_grpc_cpp(
15874   src/proto/grpc/testing/echo_messages.proto
15875 )
15876 protobuf_generate_grpc_cpp(
15877   src/proto/grpc/testing/echo.proto
15878 )
15879
15880 target_include_directories(server_builder_with_socket_mutator_test
15881   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15882   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15883   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15884   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15885   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15886   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15887   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15888   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15889   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15890   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15891   PRIVATE third_party/googletest/googletest/include
15892   PRIVATE third_party/googletest/googletest
15893   PRIVATE third_party/googletest/googlemock/include
15894   PRIVATE third_party/googletest/googlemock
15895   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15896 )
15897
15898 target_link_libraries(server_builder_with_socket_mutator_test
15899   ${_gRPC_PROTOBUF_LIBRARIES}
15900   ${_gRPC_ALLTARGETS_LIBRARIES}
15901   grpc++_test_util_unsecure
15902   grpc_test_util_unsecure
15903   grpc++_unsecure
15904   grpc_unsecure
15905   gpr
15906   ${_gRPC_GFLAGS_LIBRARIES}
15907 )
15908
15909
15910 endif()
15911 endif (gRPC_BUILD_TESTS)
15912 if (gRPC_BUILD_TESTS)
15913
15914 add_executable(server_context_test_spouse_test
15915   test/cpp/test/server_context_test_spouse_test.cc
15916   third_party/googletest/googletest/src/gtest-all.cc
15917   third_party/googletest/googlemock/src/gmock-all.cc
15918 )
15919
15920
15921 target_include_directories(server_context_test_spouse_test
15922   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15923   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15924   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15925   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15926   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15927   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15928   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15929   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15930   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15931   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15932   PRIVATE third_party/googletest/googletest/include
15933   PRIVATE third_party/googletest/googletest
15934   PRIVATE third_party/googletest/googlemock/include
15935   PRIVATE third_party/googletest/googlemock
15936   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15937 )
15938
15939 target_link_libraries(server_context_test_spouse_test
15940   ${_gRPC_PROTOBUF_LIBRARIES}
15941   ${_gRPC_ALLTARGETS_LIBRARIES}
15942   grpc_test_util
15943   grpc++
15944   grpc
15945   gpr
15946   ${_gRPC_GFLAGS_LIBRARIES}
15947 )
15948
15949
15950 endif (gRPC_BUILD_TESTS)
15951 if (gRPC_BUILD_TESTS)
15952 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15953
15954 add_executable(server_crash_test
15955   test/cpp/end2end/server_crash_test.cc
15956   third_party/googletest/googletest/src/gtest-all.cc
15957   third_party/googletest/googlemock/src/gmock-all.cc
15958 )
15959
15960
15961 target_include_directories(server_crash_test
15962   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15963   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15964   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15965   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15966   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15967   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15968   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15969   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15970   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15971   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15972   PRIVATE third_party/googletest/googletest/include
15973   PRIVATE third_party/googletest/googletest
15974   PRIVATE third_party/googletest/googlemock/include
15975   PRIVATE third_party/googletest/googlemock
15976   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15977 )
15978
15979 target_link_libraries(server_crash_test
15980   ${_gRPC_PROTOBUF_LIBRARIES}
15981   ${_gRPC_ALLTARGETS_LIBRARIES}
15982   grpc++_test_util
15983   grpc_test_util
15984   grpc++
15985   grpc
15986   gpr
15987   ${_gRPC_GFLAGS_LIBRARIES}
15988 )
15989
15990
15991 endif()
15992 endif (gRPC_BUILD_TESTS)
15993 if (gRPC_BUILD_TESTS)
15994
15995 add_executable(server_crash_test_client
15996   test/cpp/end2end/server_crash_test_client.cc
15997   third_party/googletest/googletest/src/gtest-all.cc
15998   third_party/googletest/googlemock/src/gmock-all.cc
15999 )
16000
16001
16002 target_include_directories(server_crash_test_client
16003   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16004   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16005   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16006   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16007   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16008   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16009   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16010   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16011   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16012   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16013   PRIVATE third_party/googletest/googletest/include
16014   PRIVATE third_party/googletest/googletest
16015   PRIVATE third_party/googletest/googlemock/include
16016   PRIVATE third_party/googletest/googlemock
16017   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16018 )
16019
16020 target_link_libraries(server_crash_test_client
16021   ${_gRPC_PROTOBUF_LIBRARIES}
16022   ${_gRPC_ALLTARGETS_LIBRARIES}
16023   grpc++_test_config
16024   grpc++_test_util
16025   grpc_test_util
16026   grpc++
16027   grpc
16028   gpr
16029   ${_gRPC_GFLAGS_LIBRARIES}
16030 )
16031
16032
16033 endif (gRPC_BUILD_TESTS)
16034 if (gRPC_BUILD_TESTS)
16035
16036 add_executable(server_early_return_test
16037   test/cpp/end2end/server_early_return_test.cc
16038   third_party/googletest/googletest/src/gtest-all.cc
16039   third_party/googletest/googlemock/src/gmock-all.cc
16040 )
16041
16042
16043 target_include_directories(server_early_return_test
16044   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16045   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16046   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16047   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16048   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16049   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16050   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16051   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16052   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16053   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16054   PRIVATE third_party/googletest/googletest/include
16055   PRIVATE third_party/googletest/googletest
16056   PRIVATE third_party/googletest/googlemock/include
16057   PRIVATE third_party/googletest/googlemock
16058   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16059 )
16060
16061 target_link_libraries(server_early_return_test
16062   ${_gRPC_PROTOBUF_LIBRARIES}
16063   ${_gRPC_ALLTARGETS_LIBRARIES}
16064   grpc++_test_util
16065   grpc_test_util
16066   grpc++
16067   grpc
16068   gpr
16069   ${_gRPC_GFLAGS_LIBRARIES}
16070 )
16071
16072
16073 endif (gRPC_BUILD_TESTS)
16074 if (gRPC_BUILD_TESTS)
16075
16076 add_executable(server_interceptors_end2end_test
16077   test/cpp/end2end/interceptors_util.cc
16078   test/cpp/end2end/server_interceptors_end2end_test.cc
16079   third_party/googletest/googletest/src/gtest-all.cc
16080   third_party/googletest/googlemock/src/gmock-all.cc
16081 )
16082
16083
16084 target_include_directories(server_interceptors_end2end_test
16085   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16086   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16087   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16088   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16089   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16090   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16091   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16092   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16093   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16094   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16095   PRIVATE third_party/googletest/googletest/include
16096   PRIVATE third_party/googletest/googletest
16097   PRIVATE third_party/googletest/googlemock/include
16098   PRIVATE third_party/googletest/googlemock
16099   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16100 )
16101
16102 target_link_libraries(server_interceptors_end2end_test
16103   ${_gRPC_PROTOBUF_LIBRARIES}
16104   ${_gRPC_ALLTARGETS_LIBRARIES}
16105   grpc++_test_util
16106   grpc_test_util
16107   grpc++
16108   grpc
16109   gpr
16110   ${_gRPC_GFLAGS_LIBRARIES}
16111 )
16112
16113
16114 endif (gRPC_BUILD_TESTS)
16115 if (gRPC_BUILD_TESTS)
16116
16117 add_executable(server_request_call_test
16118   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
16119   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
16120   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
16121   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
16122   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
16123   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
16124   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
16125   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
16126   test/cpp/server/server_request_call_test.cc
16127   third_party/googletest/googletest/src/gtest-all.cc
16128   third_party/googletest/googlemock/src/gmock-all.cc
16129 )
16130
16131 protobuf_generate_grpc_cpp(
16132   src/proto/grpc/testing/echo_messages.proto
16133 )
16134 protobuf_generate_grpc_cpp(
16135   src/proto/grpc/testing/echo.proto
16136 )
16137
16138 target_include_directories(server_request_call_test
16139   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16140   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16141   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16142   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16143   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16144   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16145   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16146   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16147   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16148   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16149   PRIVATE third_party/googletest/googletest/include
16150   PRIVATE third_party/googletest/googletest
16151   PRIVATE third_party/googletest/googlemock/include
16152   PRIVATE third_party/googletest/googlemock
16153   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16154 )
16155
16156 target_link_libraries(server_request_call_test
16157   ${_gRPC_PROTOBUF_LIBRARIES}
16158   ${_gRPC_ALLTARGETS_LIBRARIES}
16159   grpc++_test_util_unsecure
16160   grpc_test_util_unsecure
16161   grpc++_unsecure
16162   grpc_unsecure
16163   gpr
16164   ${_gRPC_GFLAGS_LIBRARIES}
16165 )
16166
16167
16168 endif (gRPC_BUILD_TESTS)
16169 if (gRPC_BUILD_TESTS)
16170
16171 add_executable(service_config_end2end_test
16172   test/cpp/end2end/service_config_end2end_test.cc
16173   third_party/googletest/googletest/src/gtest-all.cc
16174   third_party/googletest/googlemock/src/gmock-all.cc
16175 )
16176
16177
16178 target_include_directories(service_config_end2end_test
16179   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16180   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16181   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16182   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16183   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16184   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16185   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16186   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16187   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16188   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16189   PRIVATE third_party/googletest/googletest/include
16190   PRIVATE third_party/googletest/googletest
16191   PRIVATE third_party/googletest/googlemock/include
16192   PRIVATE third_party/googletest/googlemock
16193   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16194 )
16195
16196 target_link_libraries(service_config_end2end_test
16197   ${_gRPC_PROTOBUF_LIBRARIES}
16198   ${_gRPC_ALLTARGETS_LIBRARIES}
16199   grpc++_test_util
16200   grpc_test_util
16201   grpc++
16202   grpc
16203   gpr
16204   ${_gRPC_GFLAGS_LIBRARIES}
16205 )
16206
16207
16208 endif (gRPC_BUILD_TESTS)
16209 if (gRPC_BUILD_TESTS)
16210
16211 add_executable(service_config_test
16212   test/core/client_channel/service_config_test.cc
16213   third_party/googletest/googletest/src/gtest-all.cc
16214   third_party/googletest/googlemock/src/gmock-all.cc
16215 )
16216
16217
16218 target_include_directories(service_config_test
16219   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16220   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16221   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16222   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16223   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16224   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16225   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16226   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16227   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16228   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16229   PRIVATE third_party/googletest/googletest/include
16230   PRIVATE third_party/googletest/googletest
16231   PRIVATE third_party/googletest/googlemock/include
16232   PRIVATE third_party/googletest/googlemock
16233   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16234 )
16235
16236 target_link_libraries(service_config_test
16237   ${_gRPC_PROTOBUF_LIBRARIES}
16238   ${_gRPC_ALLTARGETS_LIBRARIES}
16239   grpc_test_util
16240   grpc++
16241   grpc
16242   gpr
16243   ${_gRPC_GFLAGS_LIBRARIES}
16244 )
16245
16246
16247 endif (gRPC_BUILD_TESTS)
16248 if (gRPC_BUILD_TESTS)
16249
16250 add_executable(shutdown_test
16251   test/cpp/end2end/shutdown_test.cc
16252   third_party/googletest/googletest/src/gtest-all.cc
16253   third_party/googletest/googlemock/src/gmock-all.cc
16254 )
16255
16256
16257 target_include_directories(shutdown_test
16258   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16259   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16260   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16261   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16262   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16263   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16264   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16265   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16266   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16267   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16268   PRIVATE third_party/googletest/googletest/include
16269   PRIVATE third_party/googletest/googletest
16270   PRIVATE third_party/googletest/googlemock/include
16271   PRIVATE third_party/googletest/googlemock
16272   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16273 )
16274
16275 target_link_libraries(shutdown_test
16276   ${_gRPC_PROTOBUF_LIBRARIES}
16277   ${_gRPC_ALLTARGETS_LIBRARIES}
16278   grpc++_test_util
16279   grpc_test_util
16280   grpc++
16281   grpc
16282   gpr
16283   ${_gRPC_GFLAGS_LIBRARIES}
16284 )
16285
16286
16287 endif (gRPC_BUILD_TESTS)
16288 if (gRPC_BUILD_TESTS)
16289
16290 add_executable(slice_hash_table_test
16291   test/core/slice/slice_hash_table_test.cc
16292   third_party/googletest/googletest/src/gtest-all.cc
16293   third_party/googletest/googlemock/src/gmock-all.cc
16294 )
16295
16296
16297 target_include_directories(slice_hash_table_test
16298   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16299   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16300   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16301   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16302   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16303   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16304   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16305   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16306   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16307   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16308   PRIVATE third_party/googletest/googletest/include
16309   PRIVATE third_party/googletest/googletest
16310   PRIVATE third_party/googletest/googlemock/include
16311   PRIVATE third_party/googletest/googlemock
16312   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16313 )
16314
16315 target_link_libraries(slice_hash_table_test
16316   ${_gRPC_PROTOBUF_LIBRARIES}
16317   ${_gRPC_ALLTARGETS_LIBRARIES}
16318   grpc_test_util
16319   grpc
16320   gpr
16321   ${_gRPC_GFLAGS_LIBRARIES}
16322 )
16323
16324
16325 endif (gRPC_BUILD_TESTS)
16326 if (gRPC_BUILD_TESTS)
16327
16328 add_executable(slice_weak_hash_table_test
16329   test/core/slice/slice_weak_hash_table_test.cc
16330   third_party/googletest/googletest/src/gtest-all.cc
16331   third_party/googletest/googlemock/src/gmock-all.cc
16332 )
16333
16334
16335 target_include_directories(slice_weak_hash_table_test
16336   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16337   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16338   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16339   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16340   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16341   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16342   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16343   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16344   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16345   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16346   PRIVATE third_party/googletest/googletest/include
16347   PRIVATE third_party/googletest/googletest
16348   PRIVATE third_party/googletest/googlemock/include
16349   PRIVATE third_party/googletest/googlemock
16350   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16351 )
16352
16353 target_link_libraries(slice_weak_hash_table_test
16354   ${_gRPC_PROTOBUF_LIBRARIES}
16355   ${_gRPC_ALLTARGETS_LIBRARIES}
16356   grpc_test_util
16357   grpc
16358   gpr
16359   ${_gRPC_GFLAGS_LIBRARIES}
16360 )
16361
16362
16363 endif (gRPC_BUILD_TESTS)
16364 if (gRPC_BUILD_TESTS)
16365
16366 add_executable(stats_test
16367   test/core/debug/stats_test.cc
16368   third_party/googletest/googletest/src/gtest-all.cc
16369   third_party/googletest/googlemock/src/gmock-all.cc
16370 )
16371
16372
16373 target_include_directories(stats_test
16374   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16375   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16376   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16377   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16378   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16379   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16380   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16381   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16382   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16383   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16384   PRIVATE third_party/googletest/googletest/include
16385   PRIVATE third_party/googletest/googletest
16386   PRIVATE third_party/googletest/googlemock/include
16387   PRIVATE third_party/googletest/googlemock
16388   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16389 )
16390
16391 target_link_libraries(stats_test
16392   ${_gRPC_PROTOBUF_LIBRARIES}
16393   ${_gRPC_ALLTARGETS_LIBRARIES}
16394   grpc++_test_util
16395   grpc_test_util
16396   grpc
16397   gpr
16398   ${_gRPC_GFLAGS_LIBRARIES}
16399 )
16400
16401
16402 endif (gRPC_BUILD_TESTS)
16403 if (gRPC_BUILD_TESTS)
16404
16405 add_executable(status_metadata_test
16406   test/core/transport/status_metadata_test.cc
16407   third_party/googletest/googletest/src/gtest-all.cc
16408   third_party/googletest/googlemock/src/gmock-all.cc
16409 )
16410
16411
16412 target_include_directories(status_metadata_test
16413   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16414   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16415   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16416   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16417   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16418   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16419   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16420   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16421   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16422   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16423   PRIVATE third_party/googletest/googletest/include
16424   PRIVATE third_party/googletest/googletest
16425   PRIVATE third_party/googletest/googlemock/include
16426   PRIVATE third_party/googletest/googlemock
16427   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16428 )
16429
16430 target_link_libraries(status_metadata_test
16431   ${_gRPC_PROTOBUF_LIBRARIES}
16432   ${_gRPC_ALLTARGETS_LIBRARIES}
16433   grpc
16434   ${_gRPC_GFLAGS_LIBRARIES}
16435 )
16436
16437
16438 endif (gRPC_BUILD_TESTS)
16439 if (gRPC_BUILD_TESTS)
16440
16441 add_executable(status_util_test
16442   test/core/channel/status_util_test.cc
16443   third_party/googletest/googletest/src/gtest-all.cc
16444   third_party/googletest/googlemock/src/gmock-all.cc
16445 )
16446
16447
16448 target_include_directories(status_util_test
16449   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16450   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16451   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16452   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16453   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16454   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16455   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16456   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16457   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16458   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16459   PRIVATE third_party/googletest/googletest/include
16460   PRIVATE third_party/googletest/googletest
16461   PRIVATE third_party/googletest/googlemock/include
16462   PRIVATE third_party/googletest/googlemock
16463   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16464 )
16465
16466 target_link_libraries(status_util_test
16467   ${_gRPC_PROTOBUF_LIBRARIES}
16468   ${_gRPC_ALLTARGETS_LIBRARIES}
16469   grpc
16470   ${_gRPC_GFLAGS_LIBRARIES}
16471 )
16472
16473
16474 endif (gRPC_BUILD_TESTS)
16475 if (gRPC_BUILD_TESTS)
16476 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
16477
16478 add_executable(streaming_throughput_test
16479   test/cpp/end2end/streaming_throughput_test.cc
16480   third_party/googletest/googletest/src/gtest-all.cc
16481   third_party/googletest/googlemock/src/gmock-all.cc
16482 )
16483
16484
16485 target_include_directories(streaming_throughput_test
16486   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16487   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16488   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16489   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16490   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16491   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16492   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16493   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16494   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16495   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16496   PRIVATE third_party/googletest/googletest/include
16497   PRIVATE third_party/googletest/googletest
16498   PRIVATE third_party/googletest/googlemock/include
16499   PRIVATE third_party/googletest/googlemock
16500   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16501 )
16502
16503 target_link_libraries(streaming_throughput_test
16504   ${_gRPC_PROTOBUF_LIBRARIES}
16505   ${_gRPC_ALLTARGETS_LIBRARIES}
16506   grpc++_test_util
16507   grpc_test_util
16508   grpc++
16509   grpc
16510   gpr
16511   ${_gRPC_GFLAGS_LIBRARIES}
16512 )
16513
16514
16515 endif()
16516 endif (gRPC_BUILD_TESTS)
16517 if (gRPC_BUILD_TESTS)
16518
16519 add_executable(stress_test
16520   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
16521   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
16522   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
16523   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
16524   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
16525   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
16526   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
16527   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
16528   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.cc
16529   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.cc
16530   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.h
16531   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.h
16532   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
16533   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
16534   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
16535   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
16536   test/cpp/interop/interop_client.cc
16537   test/cpp/interop/stress_interop_client.cc
16538   test/cpp/interop/stress_test.cc
16539   test/cpp/util/metrics_server.cc
16540   third_party/googletest/googletest/src/gtest-all.cc
16541   third_party/googletest/googlemock/src/gmock-all.cc
16542 )
16543
16544 protobuf_generate_grpc_cpp(
16545   src/proto/grpc/testing/empty.proto
16546 )
16547 protobuf_generate_grpc_cpp(
16548   src/proto/grpc/testing/messages.proto
16549 )
16550 protobuf_generate_grpc_cpp(
16551   src/proto/grpc/testing/metrics.proto
16552 )
16553 protobuf_generate_grpc_cpp(
16554   src/proto/grpc/testing/test.proto
16555 )
16556
16557 target_include_directories(stress_test
16558   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16559   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16560   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16561   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16562   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16563   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16564   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16565   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16566   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16567   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16568   PRIVATE third_party/googletest/googletest/include
16569   PRIVATE third_party/googletest/googletest
16570   PRIVATE third_party/googletest/googlemock/include
16571   PRIVATE third_party/googletest/googlemock
16572   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16573 )
16574
16575 target_link_libraries(stress_test
16576   ${_gRPC_PROTOBUF_LIBRARIES}
16577   ${_gRPC_ALLTARGETS_LIBRARIES}
16578   grpc++_test_util
16579   grpc_test_util
16580   grpc++
16581   grpc
16582   gpr
16583   grpc++_test_config
16584   ${_gRPC_GFLAGS_LIBRARIES}
16585 )
16586
16587
16588 endif (gRPC_BUILD_TESTS)
16589 if (gRPC_BUILD_TESTS)
16590
16591 add_executable(thread_manager_test
16592   test/cpp/thread_manager/thread_manager_test.cc
16593   third_party/googletest/googletest/src/gtest-all.cc
16594   third_party/googletest/googlemock/src/gmock-all.cc
16595 )
16596
16597
16598 target_include_directories(thread_manager_test
16599   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16600   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16601   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16602   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16603   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16604   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16605   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16606   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16607   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16608   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16609   PRIVATE third_party/googletest/googletest/include
16610   PRIVATE third_party/googletest/googletest
16611   PRIVATE third_party/googletest/googlemock/include
16612   PRIVATE third_party/googletest/googlemock
16613   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16614 )
16615
16616 target_link_libraries(thread_manager_test
16617   ${_gRPC_PROTOBUF_LIBRARIES}
16618   ${_gRPC_ALLTARGETS_LIBRARIES}
16619   grpc++_unsecure
16620   grpc_unsecure
16621   gpr
16622   grpc++_test_config
16623   ${_gRPC_GFLAGS_LIBRARIES}
16624 )
16625
16626
16627 endif (gRPC_BUILD_TESTS)
16628 if (gRPC_BUILD_TESTS)
16629
16630 add_executable(thread_stress_test
16631   test/cpp/end2end/thread_stress_test.cc
16632   third_party/googletest/googletest/src/gtest-all.cc
16633   third_party/googletest/googlemock/src/gmock-all.cc
16634 )
16635
16636
16637 target_include_directories(thread_stress_test
16638   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16639   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16640   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16641   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16642   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16643   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16644   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16645   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16646   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16647   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16648   PRIVATE third_party/googletest/googletest/include
16649   PRIVATE third_party/googletest/googletest
16650   PRIVATE third_party/googletest/googlemock/include
16651   PRIVATE third_party/googletest/googlemock
16652   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16653 )
16654
16655 target_link_libraries(thread_stress_test
16656   ${_gRPC_PROTOBUF_LIBRARIES}
16657   ${_gRPC_ALLTARGETS_LIBRARIES}
16658   grpc++_test_util_unsecure
16659   grpc_test_util_unsecure
16660   grpc++_unsecure
16661   grpc_unsecure
16662   gpr
16663   ${_gRPC_GFLAGS_LIBRARIES}
16664 )
16665
16666
16667 endif (gRPC_BUILD_TESTS)
16668 if (gRPC_BUILD_TESTS)
16669 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
16670
16671 add_executable(time_change_test
16672   test/cpp/end2end/time_change_test.cc
16673   third_party/googletest/googletest/src/gtest-all.cc
16674   third_party/googletest/googlemock/src/gmock-all.cc
16675 )
16676
16677
16678 target_include_directories(time_change_test
16679   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16680   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16681   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16682   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16683   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16684   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16685   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16686   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16687   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16688   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16689   PRIVATE third_party/googletest/googletest/include
16690   PRIVATE third_party/googletest/googletest
16691   PRIVATE third_party/googletest/googlemock/include
16692   PRIVATE third_party/googletest/googlemock
16693   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16694 )
16695
16696 target_link_libraries(time_change_test
16697   ${_gRPC_PROTOBUF_LIBRARIES}
16698   ${_gRPC_ALLTARGETS_LIBRARIES}
16699   grpc++_test_util
16700   grpc_test_util
16701   grpc++
16702   grpc
16703   gpr
16704   ${_gRPC_GFLAGS_LIBRARIES}
16705 )
16706
16707
16708 endif()
16709 endif (gRPC_BUILD_TESTS)
16710 if (gRPC_BUILD_TESTS)
16711
16712 add_executable(transport_pid_controller_test
16713   test/core/transport/pid_controller_test.cc
16714   third_party/googletest/googletest/src/gtest-all.cc
16715   third_party/googletest/googlemock/src/gmock-all.cc
16716 )
16717
16718
16719 target_include_directories(transport_pid_controller_test
16720   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16721   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16722   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16723   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16724   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16725   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16726   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16727   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16728   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16729   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16730   PRIVATE third_party/googletest/googletest/include
16731   PRIVATE third_party/googletest/googletest
16732   PRIVATE third_party/googletest/googlemock/include
16733   PRIVATE third_party/googletest/googlemock
16734   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16735 )
16736
16737 target_link_libraries(transport_pid_controller_test
16738   ${_gRPC_PROTOBUF_LIBRARIES}
16739   ${_gRPC_ALLTARGETS_LIBRARIES}
16740   grpc++_test_util
16741   grpc++
16742   grpc_test_util
16743   grpc
16744   gpr
16745   ${_gRPC_GFLAGS_LIBRARIES}
16746 )
16747
16748
16749 endif (gRPC_BUILD_TESTS)
16750 if (gRPC_BUILD_TESTS)
16751
16752 add_executable(transport_security_common_api_test
16753   test/core/tsi/alts/handshaker/transport_security_common_api_test.cc
16754   third_party/googletest/googletest/src/gtest-all.cc
16755   third_party/googletest/googlemock/src/gmock-all.cc
16756 )
16757
16758
16759 target_include_directories(transport_security_common_api_test
16760   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16761   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16762   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16763   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16764   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16765   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16766   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16767   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16768   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16769   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16770   PRIVATE third_party/googletest/googletest/include
16771   PRIVATE third_party/googletest/googletest
16772   PRIVATE third_party/googletest/googlemock/include
16773   PRIVATE third_party/googletest/googlemock
16774   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16775 )
16776
16777 target_link_libraries(transport_security_common_api_test
16778   ${_gRPC_PROTOBUF_LIBRARIES}
16779   ${_gRPC_ALLTARGETS_LIBRARIES}
16780   alts_test_util
16781   gpr
16782   grpc
16783   ${_gRPC_GFLAGS_LIBRARIES}
16784 )
16785
16786
16787 endif (gRPC_BUILD_TESTS)
16788 if (gRPC_BUILD_TESTS)
16789 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
16790
16791 add_executable(writes_per_rpc_test
16792   test/cpp/performance/writes_per_rpc_test.cc
16793   third_party/googletest/googletest/src/gtest-all.cc
16794   third_party/googletest/googlemock/src/gmock-all.cc
16795 )
16796
16797
16798 target_include_directories(writes_per_rpc_test
16799   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16800   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16801   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16802   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16803   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16804   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16805   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16806   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16807   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16808   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16809   PRIVATE third_party/googletest/googletest/include
16810   PRIVATE third_party/googletest/googletest
16811   PRIVATE third_party/googletest/googlemock/include
16812   PRIVATE third_party/googletest/googlemock
16813   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16814 )
16815
16816 target_link_libraries(writes_per_rpc_test
16817   ${_gRPC_PROTOBUF_LIBRARIES}
16818   ${_gRPC_ALLTARGETS_LIBRARIES}
16819   grpc++_test_util
16820   grpc_test_util
16821   grpc++
16822   grpc
16823   gpr
16824   ${_gRPC_GFLAGS_LIBRARIES}
16825 )
16826
16827
16828 endif()
16829 endif (gRPC_BUILD_TESTS)
16830 if (gRPC_BUILD_TESTS)
16831
16832 add_executable(xds_end2end_test
16833   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
16834   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
16835   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
16836   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
16837   test/cpp/end2end/xds_end2end_test.cc
16838   third_party/googletest/googletest/src/gtest-all.cc
16839   third_party/googletest/googlemock/src/gmock-all.cc
16840 )
16841
16842 protobuf_generate_grpc_cpp(
16843   src/proto/grpc/lb/v1/load_balancer.proto
16844 )
16845
16846 target_include_directories(xds_end2end_test
16847   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16848   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16849   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16850   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16851   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16852   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16853   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16854   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16855   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16856   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16857   PRIVATE third_party/googletest/googletest/include
16858   PRIVATE third_party/googletest/googletest
16859   PRIVATE third_party/googletest/googlemock/include
16860   PRIVATE third_party/googletest/googlemock
16861   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16862 )
16863
16864 target_link_libraries(xds_end2end_test
16865   ${_gRPC_PROTOBUF_LIBRARIES}
16866   ${_gRPC_ALLTARGETS_LIBRARIES}
16867   grpc++_test_util
16868   grpc_test_util
16869   grpc++
16870   grpc
16871   gpr
16872   ${_gRPC_GFLAGS_LIBRARIES}
16873 )
16874
16875
16876 endif (gRPC_BUILD_TESTS)
16877 if (gRPC_BUILD_TESTS)
16878
16879 add_executable(public_headers_must_be_c89
16880   test/core/surface/public_headers_must_be_c89.c
16881 )
16882
16883
16884 target_include_directories(public_headers_must_be_c89
16885   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16886   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16887   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16888   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16889   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16890   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16891   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16892   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16893   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16894   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16895 )
16896
16897 target_link_libraries(public_headers_must_be_c89
16898   ${_gRPC_ALLTARGETS_LIBRARIES}
16899   grpc
16900   gpr
16901 )
16902
16903
16904 endif (gRPC_BUILD_TESTS)
16905
16906 add_executable(gen_hpack_tables
16907   tools/codegen/core/gen_hpack_tables.cc
16908 )
16909
16910
16911 target_include_directories(gen_hpack_tables
16912   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16913   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16914   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16915   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16916   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16917   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16918   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16919   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16920   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16921   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16922 )
16923
16924 target_link_libraries(gen_hpack_tables
16925   ${_gRPC_ALLTARGETS_LIBRARIES}
16926   gpr
16927   grpc
16928 )
16929
16930
16931
16932 add_executable(gen_legal_metadata_characters
16933   tools/codegen/core/gen_legal_metadata_characters.cc
16934 )
16935
16936
16937 target_include_directories(gen_legal_metadata_characters
16938   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16939   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16940   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16941   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16942   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16943   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16944   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16945   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16946   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16947   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16948 )
16949
16950 target_link_libraries(gen_legal_metadata_characters
16951   ${_gRPC_ALLTARGETS_LIBRARIES}
16952 )
16953
16954
16955
16956 add_executable(gen_percent_encoding_tables
16957   tools/codegen/core/gen_percent_encoding_tables.cc
16958 )
16959
16960
16961 target_include_directories(gen_percent_encoding_tables
16962   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16963   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16964   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16965   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16966   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16967   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16968   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16969   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16970   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16971   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16972 )
16973
16974 target_link_libraries(gen_percent_encoding_tables
16975   ${_gRPC_ALLTARGETS_LIBRARIES}
16976 )
16977
16978
16979 if (gRPC_BUILD_TESTS)
16980
16981 add_executable(badreq_bad_client_test
16982   test/core/bad_client/tests/badreq.cc
16983   third_party/googletest/googletest/src/gtest-all.cc
16984   third_party/googletest/googlemock/src/gmock-all.cc
16985 )
16986
16987
16988 target_include_directories(badreq_bad_client_test
16989   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16990   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16991   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16992   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16993   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16994   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16995   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16996   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16997   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16998   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16999   PRIVATE third_party/googletest/googletest/include
17000   PRIVATE third_party/googletest/googletest
17001   PRIVATE third_party/googletest/googlemock/include
17002   PRIVATE third_party/googletest/googlemock
17003   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17004 )
17005
17006 target_link_libraries(badreq_bad_client_test
17007   ${_gRPC_SSL_LIBRARIES}
17008   ${_gRPC_PROTOBUF_LIBRARIES}
17009   ${_gRPC_ALLTARGETS_LIBRARIES}
17010   bad_client_test
17011   grpc_test_util_unsecure
17012   grpc_unsecure
17013   gpr
17014   ${_gRPC_GFLAGS_LIBRARIES}
17015 )
17016
17017
17018 endif (gRPC_BUILD_TESTS)
17019 if (gRPC_BUILD_TESTS)
17020
17021 add_executable(connection_prefix_bad_client_test
17022   test/core/bad_client/tests/connection_prefix.cc
17023   third_party/googletest/googletest/src/gtest-all.cc
17024   third_party/googletest/googlemock/src/gmock-all.cc
17025 )
17026
17027
17028 target_include_directories(connection_prefix_bad_client_test
17029   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17030   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17031   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17032   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17033   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17034   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17035   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17036   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17037   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17038   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17039   PRIVATE third_party/googletest/googletest/include
17040   PRIVATE third_party/googletest/googletest
17041   PRIVATE third_party/googletest/googlemock/include
17042   PRIVATE third_party/googletest/googlemock
17043   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17044 )
17045
17046 target_link_libraries(connection_prefix_bad_client_test
17047   ${_gRPC_SSL_LIBRARIES}
17048   ${_gRPC_PROTOBUF_LIBRARIES}
17049   ${_gRPC_ALLTARGETS_LIBRARIES}
17050   bad_client_test
17051   grpc_test_util_unsecure
17052   grpc_unsecure
17053   gpr
17054   ${_gRPC_GFLAGS_LIBRARIES}
17055 )
17056
17057
17058 endif (gRPC_BUILD_TESTS)
17059 if (gRPC_BUILD_TESTS)
17060
17061 add_executable(duplicate_header_bad_client_test
17062   test/core/bad_client/tests/duplicate_header.cc
17063   third_party/googletest/googletest/src/gtest-all.cc
17064   third_party/googletest/googlemock/src/gmock-all.cc
17065 )
17066
17067
17068 target_include_directories(duplicate_header_bad_client_test
17069   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17070   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17071   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17072   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17073   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17074   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17075   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17076   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17077   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17078   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17079   PRIVATE third_party/googletest/googletest/include
17080   PRIVATE third_party/googletest/googletest
17081   PRIVATE third_party/googletest/googlemock/include
17082   PRIVATE third_party/googletest/googlemock
17083   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17084 )
17085
17086 target_link_libraries(duplicate_header_bad_client_test
17087   ${_gRPC_SSL_LIBRARIES}
17088   ${_gRPC_PROTOBUF_LIBRARIES}
17089   ${_gRPC_ALLTARGETS_LIBRARIES}
17090   bad_client_test
17091   grpc_test_util_unsecure
17092   grpc_unsecure
17093   gpr
17094   ${_gRPC_GFLAGS_LIBRARIES}
17095 )
17096
17097
17098 endif (gRPC_BUILD_TESTS)
17099 if (gRPC_BUILD_TESTS)
17100
17101 add_executable(head_of_line_blocking_bad_client_test
17102   test/core/bad_client/tests/head_of_line_blocking.cc
17103   third_party/googletest/googletest/src/gtest-all.cc
17104   third_party/googletest/googlemock/src/gmock-all.cc
17105 )
17106
17107
17108 target_include_directories(head_of_line_blocking_bad_client_test
17109   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17110   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17111   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17112   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17113   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17114   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17115   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17116   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17117   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17118   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17119   PRIVATE third_party/googletest/googletest/include
17120   PRIVATE third_party/googletest/googletest
17121   PRIVATE third_party/googletest/googlemock/include
17122   PRIVATE third_party/googletest/googlemock
17123   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17124 )
17125
17126 target_link_libraries(head_of_line_blocking_bad_client_test
17127   ${_gRPC_SSL_LIBRARIES}
17128   ${_gRPC_PROTOBUF_LIBRARIES}
17129   ${_gRPC_ALLTARGETS_LIBRARIES}
17130   bad_client_test
17131   grpc_test_util_unsecure
17132   grpc_unsecure
17133   gpr
17134   ${_gRPC_GFLAGS_LIBRARIES}
17135 )
17136
17137
17138 endif (gRPC_BUILD_TESTS)
17139 if (gRPC_BUILD_TESTS)
17140
17141 add_executable(headers_bad_client_test
17142   test/core/bad_client/tests/headers.cc
17143   third_party/googletest/googletest/src/gtest-all.cc
17144   third_party/googletest/googlemock/src/gmock-all.cc
17145 )
17146
17147
17148 target_include_directories(headers_bad_client_test
17149   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17150   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17151   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17152   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17153   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17154   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17155   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17156   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17157   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17158   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17159   PRIVATE third_party/googletest/googletest/include
17160   PRIVATE third_party/googletest/googletest
17161   PRIVATE third_party/googletest/googlemock/include
17162   PRIVATE third_party/googletest/googlemock
17163   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17164 )
17165
17166 target_link_libraries(headers_bad_client_test
17167   ${_gRPC_SSL_LIBRARIES}
17168   ${_gRPC_PROTOBUF_LIBRARIES}
17169   ${_gRPC_ALLTARGETS_LIBRARIES}
17170   bad_client_test
17171   grpc_test_util_unsecure
17172   grpc_unsecure
17173   gpr
17174   ${_gRPC_GFLAGS_LIBRARIES}
17175 )
17176
17177
17178 endif (gRPC_BUILD_TESTS)
17179 if (gRPC_BUILD_TESTS)
17180
17181 add_executable(initial_settings_frame_bad_client_test
17182   test/core/bad_client/tests/initial_settings_frame.cc
17183   third_party/googletest/googletest/src/gtest-all.cc
17184   third_party/googletest/googlemock/src/gmock-all.cc
17185 )
17186
17187
17188 target_include_directories(initial_settings_frame_bad_client_test
17189   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17190   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17191   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17192   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17193   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17194   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17195   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17196   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17197   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17198   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17199   PRIVATE third_party/googletest/googletest/include
17200   PRIVATE third_party/googletest/googletest
17201   PRIVATE third_party/googletest/googlemock/include
17202   PRIVATE third_party/googletest/googlemock
17203   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17204 )
17205
17206 target_link_libraries(initial_settings_frame_bad_client_test
17207   ${_gRPC_SSL_LIBRARIES}
17208   ${_gRPC_PROTOBUF_LIBRARIES}
17209   ${_gRPC_ALLTARGETS_LIBRARIES}
17210   bad_client_test
17211   grpc_test_util_unsecure
17212   grpc_unsecure
17213   gpr
17214   ${_gRPC_GFLAGS_LIBRARIES}
17215 )
17216
17217
17218 endif (gRPC_BUILD_TESTS)
17219 if (gRPC_BUILD_TESTS)
17220
17221 add_executable(large_metadata_bad_client_test
17222   test/core/bad_client/tests/large_metadata.cc
17223   third_party/googletest/googletest/src/gtest-all.cc
17224   third_party/googletest/googlemock/src/gmock-all.cc
17225 )
17226
17227
17228 target_include_directories(large_metadata_bad_client_test
17229   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17230   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17231   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17232   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17233   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17234   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17235   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17236   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17237   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17238   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17239   PRIVATE third_party/googletest/googletest/include
17240   PRIVATE third_party/googletest/googletest
17241   PRIVATE third_party/googletest/googlemock/include
17242   PRIVATE third_party/googletest/googlemock
17243   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17244 )
17245
17246 target_link_libraries(large_metadata_bad_client_test
17247   ${_gRPC_SSL_LIBRARIES}
17248   ${_gRPC_PROTOBUF_LIBRARIES}
17249   ${_gRPC_ALLTARGETS_LIBRARIES}
17250   bad_client_test
17251   grpc_test_util_unsecure
17252   grpc_unsecure
17253   gpr
17254   ${_gRPC_GFLAGS_LIBRARIES}
17255 )
17256
17257
17258 endif (gRPC_BUILD_TESTS)
17259 if (gRPC_BUILD_TESTS)
17260
17261 add_executable(server_registered_method_bad_client_test
17262   test/core/bad_client/tests/server_registered_method.cc
17263   third_party/googletest/googletest/src/gtest-all.cc
17264   third_party/googletest/googlemock/src/gmock-all.cc
17265 )
17266
17267
17268 target_include_directories(server_registered_method_bad_client_test
17269   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17270   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17271   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17272   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17273   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17274   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17275   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17276   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17277   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17278   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17279   PRIVATE third_party/googletest/googletest/include
17280   PRIVATE third_party/googletest/googletest
17281   PRIVATE third_party/googletest/googlemock/include
17282   PRIVATE third_party/googletest/googlemock
17283   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17284 )
17285
17286 target_link_libraries(server_registered_method_bad_client_test
17287   ${_gRPC_SSL_LIBRARIES}
17288   ${_gRPC_PROTOBUF_LIBRARIES}
17289   ${_gRPC_ALLTARGETS_LIBRARIES}
17290   bad_client_test
17291   grpc_test_util_unsecure
17292   grpc_unsecure
17293   gpr
17294   ${_gRPC_GFLAGS_LIBRARIES}
17295 )
17296
17297
17298 endif (gRPC_BUILD_TESTS)
17299 if (gRPC_BUILD_TESTS)
17300
17301 add_executable(simple_request_bad_client_test
17302   test/core/bad_client/tests/simple_request.cc
17303   third_party/googletest/googletest/src/gtest-all.cc
17304   third_party/googletest/googlemock/src/gmock-all.cc
17305 )
17306
17307
17308 target_include_directories(simple_request_bad_client_test
17309   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17310   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17311   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17312   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17313   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17314   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17315   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17316   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17317   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17318   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17319   PRIVATE third_party/googletest/googletest/include
17320   PRIVATE third_party/googletest/googletest
17321   PRIVATE third_party/googletest/googlemock/include
17322   PRIVATE third_party/googletest/googlemock
17323   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17324 )
17325
17326 target_link_libraries(simple_request_bad_client_test
17327   ${_gRPC_SSL_LIBRARIES}
17328   ${_gRPC_PROTOBUF_LIBRARIES}
17329   ${_gRPC_ALLTARGETS_LIBRARIES}
17330   bad_client_test
17331   grpc_test_util_unsecure
17332   grpc_unsecure
17333   gpr
17334   ${_gRPC_GFLAGS_LIBRARIES}
17335 )
17336
17337
17338 endif (gRPC_BUILD_TESTS)
17339 if (gRPC_BUILD_TESTS)
17340
17341 add_executable(unknown_frame_bad_client_test
17342   test/core/bad_client/tests/unknown_frame.cc
17343   third_party/googletest/googletest/src/gtest-all.cc
17344   third_party/googletest/googlemock/src/gmock-all.cc
17345 )
17346
17347
17348 target_include_directories(unknown_frame_bad_client_test
17349   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17350   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17351   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17352   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17353   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17354   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17355   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17356   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17357   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17358   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17359   PRIVATE third_party/googletest/googletest/include
17360   PRIVATE third_party/googletest/googletest
17361   PRIVATE third_party/googletest/googlemock/include
17362   PRIVATE third_party/googletest/googlemock
17363   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17364 )
17365
17366 target_link_libraries(unknown_frame_bad_client_test
17367   ${_gRPC_SSL_LIBRARIES}
17368   ${_gRPC_PROTOBUF_LIBRARIES}
17369   ${_gRPC_ALLTARGETS_LIBRARIES}
17370   bad_client_test
17371   grpc_test_util_unsecure
17372   grpc_unsecure
17373   gpr
17374   ${_gRPC_GFLAGS_LIBRARIES}
17375 )
17376
17377
17378 endif (gRPC_BUILD_TESTS)
17379 if (gRPC_BUILD_TESTS)
17380
17381 add_executable(window_overflow_bad_client_test
17382   test/core/bad_client/tests/window_overflow.cc
17383   third_party/googletest/googletest/src/gtest-all.cc
17384   third_party/googletest/googlemock/src/gmock-all.cc
17385 )
17386
17387
17388 target_include_directories(window_overflow_bad_client_test
17389   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17390   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17391   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17392   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17393   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17394   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17395   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17396   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17397   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17398   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17399   PRIVATE third_party/googletest/googletest/include
17400   PRIVATE third_party/googletest/googletest
17401   PRIVATE third_party/googletest/googlemock/include
17402   PRIVATE third_party/googletest/googlemock
17403   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17404 )
17405
17406 target_link_libraries(window_overflow_bad_client_test
17407   ${_gRPC_SSL_LIBRARIES}
17408   ${_gRPC_PROTOBUF_LIBRARIES}
17409   ${_gRPC_ALLTARGETS_LIBRARIES}
17410   bad_client_test
17411   grpc_test_util_unsecure
17412   grpc_unsecure
17413   gpr
17414   ${_gRPC_GFLAGS_LIBRARIES}
17415 )
17416
17417
17418 endif (gRPC_BUILD_TESTS)
17419 if (gRPC_BUILD_TESTS)
17420 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17421
17422 add_executable(bad_ssl_cert_server
17423   test/core/bad_ssl/servers/cert.cc
17424 )
17425
17426
17427 target_include_directories(bad_ssl_cert_server
17428   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17429   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17430   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17431   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17432   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17433   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17434   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17435   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17436   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17437   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17438 )
17439
17440 target_link_libraries(bad_ssl_cert_server
17441   ${_gRPC_ALLTARGETS_LIBRARIES}
17442   bad_ssl_test_server
17443   grpc_test_util
17444   grpc
17445   gpr
17446 )
17447
17448   # avoid dependency on libstdc++
17449   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17450     set_target_properties(bad_ssl_cert_server PROPERTIES LINKER_LANGUAGE C)
17451     target_compile_options(bad_ssl_cert_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17452   endif()
17453
17454 endif()
17455 endif (gRPC_BUILD_TESTS)
17456 if (gRPC_BUILD_TESTS)
17457 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17458
17459 add_executable(bad_ssl_cert_test
17460   test/core/bad_ssl/bad_ssl_test.cc
17461 )
17462
17463
17464 target_include_directories(bad_ssl_cert_test
17465   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17466   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17467   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17468   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17469   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17470   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17471   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17472   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17473   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17474   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17475 )
17476
17477 target_link_libraries(bad_ssl_cert_test
17478   ${_gRPC_ALLTARGETS_LIBRARIES}
17479   grpc_test_util
17480   grpc
17481   gpr
17482 )
17483
17484   # avoid dependency on libstdc++
17485   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17486     set_target_properties(bad_ssl_cert_test PROPERTIES LINKER_LANGUAGE C)
17487     target_compile_options(bad_ssl_cert_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17488   endif()
17489
17490 endif()
17491 endif (gRPC_BUILD_TESTS)
17492 if (gRPC_BUILD_TESTS)
17493
17494 add_executable(h2_census_test
17495   test/core/end2end/fixtures/h2_census.cc
17496 )
17497
17498
17499 target_include_directories(h2_census_test
17500   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17501   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17502   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17503   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17504   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17505   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17506   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17507   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17508   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17509   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17510 )
17511
17512 target_link_libraries(h2_census_test
17513   ${_gRPC_ALLTARGETS_LIBRARIES}
17514   end2end_tests
17515   grpc_test_util
17516   grpc
17517   gpr
17518 )
17519
17520   # avoid dependency on libstdc++
17521   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17522     set_target_properties(h2_census_test PROPERTIES LINKER_LANGUAGE C)
17523     target_compile_options(h2_census_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17524   endif()
17525
17526 endif (gRPC_BUILD_TESTS)
17527 if (gRPC_BUILD_TESTS)
17528
17529 add_executable(h2_compress_test
17530   test/core/end2end/fixtures/h2_compress.cc
17531 )
17532
17533
17534 target_include_directories(h2_compress_test
17535   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17536   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17537   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17538   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17539   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17540   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17541   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17542   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17543   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17544   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17545 )
17546
17547 target_link_libraries(h2_compress_test
17548   ${_gRPC_ALLTARGETS_LIBRARIES}
17549   end2end_tests
17550   grpc_test_util
17551   grpc
17552   gpr
17553 )
17554
17555   # avoid dependency on libstdc++
17556   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17557     set_target_properties(h2_compress_test PROPERTIES LINKER_LANGUAGE C)
17558     target_compile_options(h2_compress_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17559   endif()
17560
17561 endif (gRPC_BUILD_TESTS)
17562 if (gRPC_BUILD_TESTS)
17563
17564 add_executable(h2_fakesec_test
17565   test/core/end2end/fixtures/h2_fakesec.cc
17566 )
17567
17568
17569 target_include_directories(h2_fakesec_test
17570   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17571   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17572   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17573   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17574   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17575   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17576   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17577   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17578   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17579   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17580 )
17581
17582 target_link_libraries(h2_fakesec_test
17583   ${_gRPC_ALLTARGETS_LIBRARIES}
17584   end2end_tests
17585   grpc_test_util
17586   grpc
17587   gpr
17588 )
17589
17590   # avoid dependency on libstdc++
17591   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17592     set_target_properties(h2_fakesec_test PROPERTIES LINKER_LANGUAGE C)
17593     target_compile_options(h2_fakesec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17594   endif()
17595
17596 endif (gRPC_BUILD_TESTS)
17597 if (gRPC_BUILD_TESTS)
17598 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17599
17600 add_executable(h2_fd_test
17601   test/core/end2end/fixtures/h2_fd.cc
17602 )
17603
17604
17605 target_include_directories(h2_fd_test
17606   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17607   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17608   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17609   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17610   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17611   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17612   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17613   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17614   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17615   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17616 )
17617
17618 target_link_libraries(h2_fd_test
17619   ${_gRPC_ALLTARGETS_LIBRARIES}
17620   end2end_tests
17621   grpc_test_util
17622   grpc
17623   gpr
17624 )
17625
17626   # avoid dependency on libstdc++
17627   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17628     set_target_properties(h2_fd_test PROPERTIES LINKER_LANGUAGE C)
17629     target_compile_options(h2_fd_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17630   endif()
17631
17632 endif()
17633 endif (gRPC_BUILD_TESTS)
17634 if (gRPC_BUILD_TESTS)
17635
17636 add_executable(h2_full_test
17637   test/core/end2end/fixtures/h2_full.cc
17638 )
17639
17640
17641 target_include_directories(h2_full_test
17642   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17643   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17644   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17645   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17646   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17647   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17648   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17649   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17650   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17651   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17652 )
17653
17654 target_link_libraries(h2_full_test
17655   ${_gRPC_ALLTARGETS_LIBRARIES}
17656   end2end_tests
17657   grpc_test_util
17658   grpc
17659   gpr
17660 )
17661
17662   # avoid dependency on libstdc++
17663   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17664     set_target_properties(h2_full_test PROPERTIES LINKER_LANGUAGE C)
17665     target_compile_options(h2_full_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17666   endif()
17667
17668 endif (gRPC_BUILD_TESTS)
17669 if (gRPC_BUILD_TESTS)
17670 if(_gRPC_PLATFORM_LINUX)
17671
17672 add_executable(h2_full+pipe_test
17673   test/core/end2end/fixtures/h2_full+pipe.cc
17674 )
17675
17676
17677 target_include_directories(h2_full+pipe_test
17678   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17679   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17680   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17681   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17682   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17683   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17684   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17685   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17686   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17687   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17688 )
17689
17690 target_link_libraries(h2_full+pipe_test
17691   ${_gRPC_ALLTARGETS_LIBRARIES}
17692   end2end_tests
17693   grpc_test_util
17694   grpc
17695   gpr
17696 )
17697
17698   # avoid dependency on libstdc++
17699   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17700     set_target_properties(h2_full+pipe_test PROPERTIES LINKER_LANGUAGE C)
17701     target_compile_options(h2_full+pipe_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17702   endif()
17703
17704 endif()
17705 endif (gRPC_BUILD_TESTS)
17706 if (gRPC_BUILD_TESTS)
17707
17708 add_executable(h2_full+trace_test
17709   test/core/end2end/fixtures/h2_full+trace.cc
17710 )
17711
17712
17713 target_include_directories(h2_full+trace_test
17714   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17715   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17716   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17717   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17718   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17719   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17720   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17721   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17722   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17723   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17724 )
17725
17726 target_link_libraries(h2_full+trace_test
17727   ${_gRPC_ALLTARGETS_LIBRARIES}
17728   end2end_tests
17729   grpc_test_util
17730   grpc
17731   gpr
17732 )
17733
17734   # avoid dependency on libstdc++
17735   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17736     set_target_properties(h2_full+trace_test PROPERTIES LINKER_LANGUAGE C)
17737     target_compile_options(h2_full+trace_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17738   endif()
17739
17740 endif (gRPC_BUILD_TESTS)
17741 if (gRPC_BUILD_TESTS)
17742
17743 add_executable(h2_full+workarounds_test
17744   test/core/end2end/fixtures/h2_full+workarounds.cc
17745 )
17746
17747
17748 target_include_directories(h2_full+workarounds_test
17749   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17750   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17751   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17752   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17753   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17754   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17755   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17756   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17757   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17758   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17759 )
17760
17761 target_link_libraries(h2_full+workarounds_test
17762   ${_gRPC_ALLTARGETS_LIBRARIES}
17763   end2end_tests
17764   grpc_test_util
17765   grpc
17766   gpr
17767 )
17768
17769   # avoid dependency on libstdc++
17770   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17771     set_target_properties(h2_full+workarounds_test PROPERTIES LINKER_LANGUAGE C)
17772     target_compile_options(h2_full+workarounds_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17773   endif()
17774
17775 endif (gRPC_BUILD_TESTS)
17776 if (gRPC_BUILD_TESTS)
17777
17778 add_executable(h2_http_proxy_test
17779   test/core/end2end/fixtures/h2_http_proxy.cc
17780 )
17781
17782
17783 target_include_directories(h2_http_proxy_test
17784   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17785   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17786   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17787   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17788   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17789   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17790   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17791   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17792   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17793   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17794 )
17795
17796 target_link_libraries(h2_http_proxy_test
17797   ${_gRPC_ALLTARGETS_LIBRARIES}
17798   end2end_tests
17799   grpc_test_util
17800   grpc
17801   gpr
17802 )
17803
17804   # avoid dependency on libstdc++
17805   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17806     set_target_properties(h2_http_proxy_test PROPERTIES LINKER_LANGUAGE C)
17807     target_compile_options(h2_http_proxy_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17808   endif()
17809
17810 endif (gRPC_BUILD_TESTS)
17811 if (gRPC_BUILD_TESTS)
17812 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17813
17814 add_executable(h2_local_ipv4_test
17815   test/core/end2end/fixtures/h2_local_ipv4.cc
17816 )
17817
17818
17819 target_include_directories(h2_local_ipv4_test
17820   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17821   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17822   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17823   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17824   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17825   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17826   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17827   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17828   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17829   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17830 )
17831
17832 target_link_libraries(h2_local_ipv4_test
17833   ${_gRPC_ALLTARGETS_LIBRARIES}
17834   end2end_tests
17835   grpc_test_util
17836   grpc
17837   gpr
17838 )
17839
17840   # avoid dependency on libstdc++
17841   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17842     set_target_properties(h2_local_ipv4_test PROPERTIES LINKER_LANGUAGE C)
17843     target_compile_options(h2_local_ipv4_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17844   endif()
17845
17846 endif()
17847 endif (gRPC_BUILD_TESTS)
17848 if (gRPC_BUILD_TESTS)
17849 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17850
17851 add_executable(h2_local_ipv6_test
17852   test/core/end2end/fixtures/h2_local_ipv6.cc
17853 )
17854
17855
17856 target_include_directories(h2_local_ipv6_test
17857   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17858   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17859   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17860   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17861   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17862   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17863   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17864   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17865   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17866   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17867 )
17868
17869 target_link_libraries(h2_local_ipv6_test
17870   ${_gRPC_ALLTARGETS_LIBRARIES}
17871   end2end_tests
17872   grpc_test_util
17873   grpc
17874   gpr
17875 )
17876
17877   # avoid dependency on libstdc++
17878   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17879     set_target_properties(h2_local_ipv6_test PROPERTIES LINKER_LANGUAGE C)
17880     target_compile_options(h2_local_ipv6_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17881   endif()
17882
17883 endif()
17884 endif (gRPC_BUILD_TESTS)
17885 if (gRPC_BUILD_TESTS)
17886 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17887
17888 add_executable(h2_local_uds_test
17889   test/core/end2end/fixtures/h2_local_uds.cc
17890 )
17891
17892
17893 target_include_directories(h2_local_uds_test
17894   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17895   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17896   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17897   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17898   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17899   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17900   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17901   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17902   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17903   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17904 )
17905
17906 target_link_libraries(h2_local_uds_test
17907   ${_gRPC_ALLTARGETS_LIBRARIES}
17908   end2end_tests
17909   grpc_test_util
17910   grpc
17911   gpr
17912 )
17913
17914   # avoid dependency on libstdc++
17915   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17916     set_target_properties(h2_local_uds_test PROPERTIES LINKER_LANGUAGE C)
17917     target_compile_options(h2_local_uds_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17918   endif()
17919
17920 endif()
17921 endif (gRPC_BUILD_TESTS)
17922 if (gRPC_BUILD_TESTS)
17923
17924 add_executable(h2_oauth2_test
17925   test/core/end2end/fixtures/h2_oauth2.cc
17926 )
17927
17928
17929 target_include_directories(h2_oauth2_test
17930   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17931   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17932   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17933   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17934   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17935   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17936   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17937   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17938   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17939   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17940 )
17941
17942 target_link_libraries(h2_oauth2_test
17943   ${_gRPC_ALLTARGETS_LIBRARIES}
17944   end2end_tests
17945   grpc_test_util
17946   grpc
17947   gpr
17948 )
17949
17950   # avoid dependency on libstdc++
17951   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17952     set_target_properties(h2_oauth2_test PROPERTIES LINKER_LANGUAGE C)
17953     target_compile_options(h2_oauth2_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17954   endif()
17955
17956 endif (gRPC_BUILD_TESTS)
17957 if (gRPC_BUILD_TESTS)
17958
17959 add_executable(h2_proxy_test
17960   test/core/end2end/fixtures/h2_proxy.cc
17961 )
17962
17963
17964 target_include_directories(h2_proxy_test
17965   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17966   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17967   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17968   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17969   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17970   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17971   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17972   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17973   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17974   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17975 )
17976
17977 target_link_libraries(h2_proxy_test
17978   ${_gRPC_ALLTARGETS_LIBRARIES}
17979   end2end_tests
17980   grpc_test_util
17981   grpc
17982   gpr
17983 )
17984
17985   # avoid dependency on libstdc++
17986   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17987     set_target_properties(h2_proxy_test PROPERTIES LINKER_LANGUAGE C)
17988     target_compile_options(h2_proxy_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17989   endif()
17990
17991 endif (gRPC_BUILD_TESTS)
17992 if (gRPC_BUILD_TESTS)
17993
17994 add_executable(h2_sockpair_test
17995   test/core/end2end/fixtures/h2_sockpair.cc
17996 )
17997
17998
17999 target_include_directories(h2_sockpair_test
18000   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18001   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18002   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18003   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18004   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18005   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18006   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18007   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18008   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18009   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18010 )
18011
18012 target_link_libraries(h2_sockpair_test
18013   ${_gRPC_ALLTARGETS_LIBRARIES}
18014   end2end_tests
18015   grpc_test_util
18016   grpc
18017   gpr
18018 )
18019
18020   # avoid dependency on libstdc++
18021   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18022     set_target_properties(h2_sockpair_test PROPERTIES LINKER_LANGUAGE C)
18023     target_compile_options(h2_sockpair_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18024   endif()
18025
18026 endif (gRPC_BUILD_TESTS)
18027 if (gRPC_BUILD_TESTS)
18028
18029 add_executable(h2_sockpair+trace_test
18030   test/core/end2end/fixtures/h2_sockpair+trace.cc
18031 )
18032
18033
18034 target_include_directories(h2_sockpair+trace_test
18035   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18036   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18037   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18038   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18039   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18040   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18041   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18042   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18043   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18044   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18045 )
18046
18047 target_link_libraries(h2_sockpair+trace_test
18048   ${_gRPC_ALLTARGETS_LIBRARIES}
18049   end2end_tests
18050   grpc_test_util
18051   grpc
18052   gpr
18053 )
18054
18055   # avoid dependency on libstdc++
18056   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18057     set_target_properties(h2_sockpair+trace_test PROPERTIES LINKER_LANGUAGE C)
18058     target_compile_options(h2_sockpair+trace_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18059   endif()
18060
18061 endif (gRPC_BUILD_TESTS)
18062 if (gRPC_BUILD_TESTS)
18063
18064 add_executable(h2_sockpair_1byte_test
18065   test/core/end2end/fixtures/h2_sockpair_1byte.cc
18066 )
18067
18068
18069 target_include_directories(h2_sockpair_1byte_test
18070   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18071   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18072   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18073   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18074   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18075   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18076   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18077   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18078   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18079   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18080 )
18081
18082 target_link_libraries(h2_sockpair_1byte_test
18083   ${_gRPC_ALLTARGETS_LIBRARIES}
18084   end2end_tests
18085   grpc_test_util
18086   grpc
18087   gpr
18088 )
18089
18090   # avoid dependency on libstdc++
18091   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18092     set_target_properties(h2_sockpair_1byte_test PROPERTIES LINKER_LANGUAGE C)
18093     target_compile_options(h2_sockpair_1byte_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18094   endif()
18095
18096 endif (gRPC_BUILD_TESTS)
18097 if (gRPC_BUILD_TESTS)
18098
18099 add_executable(h2_spiffe_test
18100   test/core/end2end/fixtures/h2_spiffe.cc
18101 )
18102
18103
18104 target_include_directories(h2_spiffe_test
18105   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18106   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18107   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18108   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18109   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18110   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18111   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18112   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18113   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18114   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18115 )
18116
18117 target_link_libraries(h2_spiffe_test
18118   ${_gRPC_ALLTARGETS_LIBRARIES}
18119   end2end_tests
18120   grpc_test_util
18121   grpc
18122   gpr
18123 )
18124
18125   # avoid dependency on libstdc++
18126   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18127     set_target_properties(h2_spiffe_test PROPERTIES LINKER_LANGUAGE C)
18128     target_compile_options(h2_spiffe_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18129   endif()
18130
18131 endif (gRPC_BUILD_TESTS)
18132 if (gRPC_BUILD_TESTS)
18133
18134 add_executable(h2_ssl_test
18135   test/core/end2end/fixtures/h2_ssl.cc
18136 )
18137
18138
18139 target_include_directories(h2_ssl_test
18140   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18141   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18142   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18143   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18144   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18145   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18146   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18147   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18148   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18149   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18150 )
18151
18152 target_link_libraries(h2_ssl_test
18153   ${_gRPC_ALLTARGETS_LIBRARIES}
18154   end2end_tests
18155   grpc_test_util
18156   grpc
18157   gpr
18158 )
18159
18160   # avoid dependency on libstdc++
18161   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18162     set_target_properties(h2_ssl_test PROPERTIES LINKER_LANGUAGE C)
18163     target_compile_options(h2_ssl_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18164   endif()
18165
18166 endif (gRPC_BUILD_TESTS)
18167 if (gRPC_BUILD_TESTS)
18168
18169 add_executable(h2_ssl_cred_reload_test
18170   test/core/end2end/fixtures/h2_ssl_cred_reload.cc
18171 )
18172
18173
18174 target_include_directories(h2_ssl_cred_reload_test
18175   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18176   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18177   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18178   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18179   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18180   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18181   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18182   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18183   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18184   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18185 )
18186
18187 target_link_libraries(h2_ssl_cred_reload_test
18188   ${_gRPC_ALLTARGETS_LIBRARIES}
18189   end2end_tests
18190   grpc_test_util
18191   grpc
18192   gpr
18193 )
18194
18195   # avoid dependency on libstdc++
18196   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18197     set_target_properties(h2_ssl_cred_reload_test PROPERTIES LINKER_LANGUAGE C)
18198     target_compile_options(h2_ssl_cred_reload_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18199   endif()
18200
18201 endif (gRPC_BUILD_TESTS)
18202 if (gRPC_BUILD_TESTS)
18203
18204 add_executable(h2_ssl_proxy_test
18205   test/core/end2end/fixtures/h2_ssl_proxy.cc
18206 )
18207
18208
18209 target_include_directories(h2_ssl_proxy_test
18210   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18211   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18212   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18213   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18214   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18215   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18216   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18217   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18218   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18219   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18220 )
18221
18222 target_link_libraries(h2_ssl_proxy_test
18223   ${_gRPC_ALLTARGETS_LIBRARIES}
18224   end2end_tests
18225   grpc_test_util
18226   grpc
18227   gpr
18228 )
18229
18230   # avoid dependency on libstdc++
18231   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18232     set_target_properties(h2_ssl_proxy_test PROPERTIES LINKER_LANGUAGE C)
18233     target_compile_options(h2_ssl_proxy_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18234   endif()
18235
18236 endif (gRPC_BUILD_TESTS)
18237 if (gRPC_BUILD_TESTS)
18238 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18239
18240 add_executable(h2_uds_test
18241   test/core/end2end/fixtures/h2_uds.cc
18242 )
18243
18244
18245 target_include_directories(h2_uds_test
18246   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18247   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18248   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18249   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18250   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18251   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18252   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18253   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18254   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18255   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18256 )
18257
18258 target_link_libraries(h2_uds_test
18259   ${_gRPC_ALLTARGETS_LIBRARIES}
18260   end2end_tests
18261   grpc_test_util
18262   grpc
18263   gpr
18264 )
18265
18266   # avoid dependency on libstdc++
18267   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18268     set_target_properties(h2_uds_test PROPERTIES LINKER_LANGUAGE C)
18269     target_compile_options(h2_uds_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18270   endif()
18271
18272 endif()
18273 endif (gRPC_BUILD_TESTS)
18274 if (gRPC_BUILD_TESTS)
18275
18276 add_executable(inproc_test
18277   test/core/end2end/fixtures/inproc.cc
18278 )
18279
18280
18281 target_include_directories(inproc_test
18282   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18283   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18284   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18285   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18286   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18287   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18288   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18289   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18290   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18291   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18292 )
18293
18294 target_link_libraries(inproc_test
18295   ${_gRPC_ALLTARGETS_LIBRARIES}
18296   end2end_tests
18297   grpc_test_util
18298   grpc
18299   gpr
18300 )
18301
18302   # avoid dependency on libstdc++
18303   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18304     set_target_properties(inproc_test PROPERTIES LINKER_LANGUAGE C)
18305     target_compile_options(inproc_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18306   endif()
18307
18308 endif (gRPC_BUILD_TESTS)
18309 if (gRPC_BUILD_TESTS)
18310
18311 add_executable(h2_census_nosec_test
18312   test/core/end2end/fixtures/h2_census.cc
18313 )
18314
18315
18316 target_include_directories(h2_census_nosec_test
18317   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18318   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18319   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18320   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18321   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18322   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18323   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18324   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18325   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18326   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18327 )
18328
18329 target_link_libraries(h2_census_nosec_test
18330   ${_gRPC_ALLTARGETS_LIBRARIES}
18331   end2end_nosec_tests
18332   grpc_test_util_unsecure
18333   grpc_unsecure
18334   gpr
18335 )
18336
18337   # avoid dependency on libstdc++
18338   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18339     set_target_properties(h2_census_nosec_test PROPERTIES LINKER_LANGUAGE C)
18340     target_compile_options(h2_census_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18341   endif()
18342
18343 endif (gRPC_BUILD_TESTS)
18344 if (gRPC_BUILD_TESTS)
18345
18346 add_executable(h2_compress_nosec_test
18347   test/core/end2end/fixtures/h2_compress.cc
18348 )
18349
18350
18351 target_include_directories(h2_compress_nosec_test
18352   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18353   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18354   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18355   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18356   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18357   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18358   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18359   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18360   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18361   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18362 )
18363
18364 target_link_libraries(h2_compress_nosec_test
18365   ${_gRPC_ALLTARGETS_LIBRARIES}
18366   end2end_nosec_tests
18367   grpc_test_util_unsecure
18368   grpc_unsecure
18369   gpr
18370 )
18371
18372   # avoid dependency on libstdc++
18373   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18374     set_target_properties(h2_compress_nosec_test PROPERTIES LINKER_LANGUAGE C)
18375     target_compile_options(h2_compress_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18376   endif()
18377
18378 endif (gRPC_BUILD_TESTS)
18379 if (gRPC_BUILD_TESTS)
18380 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18381
18382 add_executable(h2_fd_nosec_test
18383   test/core/end2end/fixtures/h2_fd.cc
18384 )
18385
18386
18387 target_include_directories(h2_fd_nosec_test
18388   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18389   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18390   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18391   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18392   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18393   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18394   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18395   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18396   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18397   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18398 )
18399
18400 target_link_libraries(h2_fd_nosec_test
18401   ${_gRPC_ALLTARGETS_LIBRARIES}
18402   end2end_nosec_tests
18403   grpc_test_util_unsecure
18404   grpc_unsecure
18405   gpr
18406 )
18407
18408   # avoid dependency on libstdc++
18409   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18410     set_target_properties(h2_fd_nosec_test PROPERTIES LINKER_LANGUAGE C)
18411     target_compile_options(h2_fd_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18412   endif()
18413
18414 endif()
18415 endif (gRPC_BUILD_TESTS)
18416 if (gRPC_BUILD_TESTS)
18417
18418 add_executable(h2_full_nosec_test
18419   test/core/end2end/fixtures/h2_full.cc
18420 )
18421
18422
18423 target_include_directories(h2_full_nosec_test
18424   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18425   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18426   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18427   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18428   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18429   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18430   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18431   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18432   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18433   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18434 )
18435
18436 target_link_libraries(h2_full_nosec_test
18437   ${_gRPC_ALLTARGETS_LIBRARIES}
18438   end2end_nosec_tests
18439   grpc_test_util_unsecure
18440   grpc_unsecure
18441   gpr
18442 )
18443
18444   # avoid dependency on libstdc++
18445   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18446     set_target_properties(h2_full_nosec_test PROPERTIES LINKER_LANGUAGE C)
18447     target_compile_options(h2_full_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18448   endif()
18449
18450 endif (gRPC_BUILD_TESTS)
18451 if (gRPC_BUILD_TESTS)
18452 if(_gRPC_PLATFORM_LINUX)
18453
18454 add_executable(h2_full+pipe_nosec_test
18455   test/core/end2end/fixtures/h2_full+pipe.cc
18456 )
18457
18458
18459 target_include_directories(h2_full+pipe_nosec_test
18460   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18461   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18462   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18463   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18464   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18465   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18466   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18467   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18468   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18469   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18470 )
18471
18472 target_link_libraries(h2_full+pipe_nosec_test
18473   ${_gRPC_ALLTARGETS_LIBRARIES}
18474   end2end_nosec_tests
18475   grpc_test_util_unsecure
18476   grpc_unsecure
18477   gpr
18478 )
18479
18480   # avoid dependency on libstdc++
18481   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18482     set_target_properties(h2_full+pipe_nosec_test PROPERTIES LINKER_LANGUAGE C)
18483     target_compile_options(h2_full+pipe_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18484   endif()
18485
18486 endif()
18487 endif (gRPC_BUILD_TESTS)
18488 if (gRPC_BUILD_TESTS)
18489
18490 add_executable(h2_full+trace_nosec_test
18491   test/core/end2end/fixtures/h2_full+trace.cc
18492 )
18493
18494
18495 target_include_directories(h2_full+trace_nosec_test
18496   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18497   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18498   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18499   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18500   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18501   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18502   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18503   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18504   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18505   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18506 )
18507
18508 target_link_libraries(h2_full+trace_nosec_test
18509   ${_gRPC_ALLTARGETS_LIBRARIES}
18510   end2end_nosec_tests
18511   grpc_test_util_unsecure
18512   grpc_unsecure
18513   gpr
18514 )
18515
18516   # avoid dependency on libstdc++
18517   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18518     set_target_properties(h2_full+trace_nosec_test PROPERTIES LINKER_LANGUAGE C)
18519     target_compile_options(h2_full+trace_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18520   endif()
18521
18522 endif (gRPC_BUILD_TESTS)
18523 if (gRPC_BUILD_TESTS)
18524
18525 add_executable(h2_full+workarounds_nosec_test
18526   test/core/end2end/fixtures/h2_full+workarounds.cc
18527 )
18528
18529
18530 target_include_directories(h2_full+workarounds_nosec_test
18531   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18532   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18533   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18534   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18535   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18536   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18537   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18538   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18539   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18540   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18541 )
18542
18543 target_link_libraries(h2_full+workarounds_nosec_test
18544   ${_gRPC_ALLTARGETS_LIBRARIES}
18545   end2end_nosec_tests
18546   grpc_test_util_unsecure
18547   grpc_unsecure
18548   gpr
18549 )
18550
18551   # avoid dependency on libstdc++
18552   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18553     set_target_properties(h2_full+workarounds_nosec_test PROPERTIES LINKER_LANGUAGE C)
18554     target_compile_options(h2_full+workarounds_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18555   endif()
18556
18557 endif (gRPC_BUILD_TESTS)
18558 if (gRPC_BUILD_TESTS)
18559
18560 add_executable(h2_http_proxy_nosec_test
18561   test/core/end2end/fixtures/h2_http_proxy.cc
18562 )
18563
18564
18565 target_include_directories(h2_http_proxy_nosec_test
18566   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18567   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18568   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18569   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18570   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18571   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18572   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18573   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18574   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18575   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18576 )
18577
18578 target_link_libraries(h2_http_proxy_nosec_test
18579   ${_gRPC_ALLTARGETS_LIBRARIES}
18580   end2end_nosec_tests
18581   grpc_test_util_unsecure
18582   grpc_unsecure
18583   gpr
18584 )
18585
18586   # avoid dependency on libstdc++
18587   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18588     set_target_properties(h2_http_proxy_nosec_test PROPERTIES LINKER_LANGUAGE C)
18589     target_compile_options(h2_http_proxy_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18590   endif()
18591
18592 endif (gRPC_BUILD_TESTS)
18593 if (gRPC_BUILD_TESTS)
18594
18595 add_executable(h2_proxy_nosec_test
18596   test/core/end2end/fixtures/h2_proxy.cc
18597 )
18598
18599
18600 target_include_directories(h2_proxy_nosec_test
18601   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18602   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18603   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18604   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18605   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18606   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18607   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18608   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18609   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18610   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18611 )
18612
18613 target_link_libraries(h2_proxy_nosec_test
18614   ${_gRPC_ALLTARGETS_LIBRARIES}
18615   end2end_nosec_tests
18616   grpc_test_util_unsecure
18617   grpc_unsecure
18618   gpr
18619 )
18620
18621   # avoid dependency on libstdc++
18622   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18623     set_target_properties(h2_proxy_nosec_test PROPERTIES LINKER_LANGUAGE C)
18624     target_compile_options(h2_proxy_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18625   endif()
18626
18627 endif (gRPC_BUILD_TESTS)
18628 if (gRPC_BUILD_TESTS)
18629
18630 add_executable(h2_sockpair_nosec_test
18631   test/core/end2end/fixtures/h2_sockpair.cc
18632 )
18633
18634
18635 target_include_directories(h2_sockpair_nosec_test
18636   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18637   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18638   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18639   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18640   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18641   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18642   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18643   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18644   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18645   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18646 )
18647
18648 target_link_libraries(h2_sockpair_nosec_test
18649   ${_gRPC_ALLTARGETS_LIBRARIES}
18650   end2end_nosec_tests
18651   grpc_test_util_unsecure
18652   grpc_unsecure
18653   gpr
18654 )
18655
18656   # avoid dependency on libstdc++
18657   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18658     set_target_properties(h2_sockpair_nosec_test PROPERTIES LINKER_LANGUAGE C)
18659     target_compile_options(h2_sockpair_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18660   endif()
18661
18662 endif (gRPC_BUILD_TESTS)
18663 if (gRPC_BUILD_TESTS)
18664
18665 add_executable(h2_sockpair+trace_nosec_test
18666   test/core/end2end/fixtures/h2_sockpair+trace.cc
18667 )
18668
18669
18670 target_include_directories(h2_sockpair+trace_nosec_test
18671   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18672   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18673   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18674   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18675   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18676   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18677   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18678   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18679   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18680   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18681 )
18682
18683 target_link_libraries(h2_sockpair+trace_nosec_test
18684   ${_gRPC_ALLTARGETS_LIBRARIES}
18685   end2end_nosec_tests
18686   grpc_test_util_unsecure
18687   grpc_unsecure
18688   gpr
18689 )
18690
18691   # avoid dependency on libstdc++
18692   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18693     set_target_properties(h2_sockpair+trace_nosec_test PROPERTIES LINKER_LANGUAGE C)
18694     target_compile_options(h2_sockpair+trace_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18695   endif()
18696
18697 endif (gRPC_BUILD_TESTS)
18698 if (gRPC_BUILD_TESTS)
18699
18700 add_executable(h2_sockpair_1byte_nosec_test
18701   test/core/end2end/fixtures/h2_sockpair_1byte.cc
18702 )
18703
18704
18705 target_include_directories(h2_sockpair_1byte_nosec_test
18706   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18707   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18708   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18709   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18710   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18711   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18712   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18713   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18714   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18715   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18716 )
18717
18718 target_link_libraries(h2_sockpair_1byte_nosec_test
18719   ${_gRPC_ALLTARGETS_LIBRARIES}
18720   end2end_nosec_tests
18721   grpc_test_util_unsecure
18722   grpc_unsecure
18723   gpr
18724 )
18725
18726   # avoid dependency on libstdc++
18727   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18728     set_target_properties(h2_sockpair_1byte_nosec_test PROPERTIES LINKER_LANGUAGE C)
18729     target_compile_options(h2_sockpair_1byte_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18730   endif()
18731
18732 endif (gRPC_BUILD_TESTS)
18733 if (gRPC_BUILD_TESTS)
18734 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18735
18736 add_executable(h2_uds_nosec_test
18737   test/core/end2end/fixtures/h2_uds.cc
18738 )
18739
18740
18741 target_include_directories(h2_uds_nosec_test
18742   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18743   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18744   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18745   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18746   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18747   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18748   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18749   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18750   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18751   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18752 )
18753
18754 target_link_libraries(h2_uds_nosec_test
18755   ${_gRPC_ALLTARGETS_LIBRARIES}
18756   end2end_nosec_tests
18757   grpc_test_util_unsecure
18758   grpc_unsecure
18759   gpr
18760 )
18761
18762   # avoid dependency on libstdc++
18763   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18764     set_target_properties(h2_uds_nosec_test PROPERTIES LINKER_LANGUAGE C)
18765     target_compile_options(h2_uds_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18766   endif()
18767
18768 endif()
18769 endif (gRPC_BUILD_TESTS)
18770 if (gRPC_BUILD_TESTS)
18771
18772 add_executable(resolver_component_test_unsecure
18773   test/cpp/naming/resolver_component_test.cc
18774   third_party/googletest/googletest/src/gtest-all.cc
18775   third_party/googletest/googlemock/src/gmock-all.cc
18776 )
18777
18778
18779 target_include_directories(resolver_component_test_unsecure
18780   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18781   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18782   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18783   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18784   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18785   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18786   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18787   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18788   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18789   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18790   PRIVATE third_party/googletest/googletest/include
18791   PRIVATE third_party/googletest/googletest
18792   PRIVATE third_party/googletest/googlemock/include
18793   PRIVATE third_party/googletest/googlemock
18794   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18795 )
18796
18797 target_link_libraries(resolver_component_test_unsecure
18798   ${_gRPC_PROTOBUF_LIBRARIES}
18799   ${_gRPC_ALLTARGETS_LIBRARIES}
18800   dns_test_util
18801   grpc++_test_util_unsecure
18802   grpc_test_util_unsecure
18803   grpc++_unsecure
18804   grpc_unsecure
18805   gpr
18806   grpc++_test_config
18807   ${_gRPC_GFLAGS_LIBRARIES}
18808 )
18809
18810
18811 endif (gRPC_BUILD_TESTS)
18812 if (gRPC_BUILD_TESTS)
18813
18814 add_executable(resolver_component_test
18815   test/cpp/naming/resolver_component_test.cc
18816   third_party/googletest/googletest/src/gtest-all.cc
18817   third_party/googletest/googlemock/src/gmock-all.cc
18818 )
18819
18820
18821 target_include_directories(resolver_component_test
18822   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18823   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18824   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18825   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18826   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18827   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18828   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18829   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18830   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18831   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18832   PRIVATE third_party/googletest/googletest/include
18833   PRIVATE third_party/googletest/googletest
18834   PRIVATE third_party/googletest/googlemock/include
18835   PRIVATE third_party/googletest/googlemock
18836   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18837 )
18838
18839 target_link_libraries(resolver_component_test
18840   ${_gRPC_PROTOBUF_LIBRARIES}
18841   ${_gRPC_ALLTARGETS_LIBRARIES}
18842   dns_test_util
18843   grpc++_test_util
18844   grpc_test_util
18845   grpc++
18846   grpc
18847   gpr
18848   grpc++_test_config
18849   ${_gRPC_GFLAGS_LIBRARIES}
18850 )
18851
18852
18853 endif (gRPC_BUILD_TESTS)
18854 if (gRPC_BUILD_TESTS)
18855 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18856
18857 add_executable(resolver_component_tests_runner_invoker_unsecure
18858   test/cpp/naming/resolver_component_tests_runner_invoker.cc
18859   third_party/googletest/googletest/src/gtest-all.cc
18860   third_party/googletest/googlemock/src/gmock-all.cc
18861 )
18862
18863
18864 target_include_directories(resolver_component_tests_runner_invoker_unsecure
18865   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18866   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18867   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18868   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18869   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18870   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18871   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18872   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18873   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18874   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18875   PRIVATE third_party/googletest/googletest/include
18876   PRIVATE third_party/googletest/googletest
18877   PRIVATE third_party/googletest/googlemock/include
18878   PRIVATE third_party/googletest/googlemock
18879   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18880 )
18881
18882 target_link_libraries(resolver_component_tests_runner_invoker_unsecure
18883   ${_gRPC_PROTOBUF_LIBRARIES}
18884   ${_gRPC_ALLTARGETS_LIBRARIES}
18885   grpc++_test_util
18886   grpc_test_util
18887   grpc++
18888   grpc
18889   gpr
18890   grpc++_test_config
18891   ${_gRPC_GFLAGS_LIBRARIES}
18892 )
18893
18894
18895 endif()
18896 endif (gRPC_BUILD_TESTS)
18897 if (gRPC_BUILD_TESTS)
18898 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18899
18900 add_executable(resolver_component_tests_runner_invoker
18901   test/cpp/naming/resolver_component_tests_runner_invoker.cc
18902   third_party/googletest/googletest/src/gtest-all.cc
18903   third_party/googletest/googlemock/src/gmock-all.cc
18904 )
18905
18906
18907 target_include_directories(resolver_component_tests_runner_invoker
18908   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18909   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18910   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18911   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18912   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18913   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18914   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18915   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18916   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18917   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18918   PRIVATE third_party/googletest/googletest/include
18919   PRIVATE third_party/googletest/googletest
18920   PRIVATE third_party/googletest/googlemock/include
18921   PRIVATE third_party/googletest/googlemock
18922   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18923 )
18924
18925 target_link_libraries(resolver_component_tests_runner_invoker
18926   ${_gRPC_PROTOBUF_LIBRARIES}
18927   ${_gRPC_ALLTARGETS_LIBRARIES}
18928   grpc++_test_util
18929   grpc_test_util
18930   grpc++
18931   grpc
18932   gpr
18933   grpc++_test_config
18934   ${_gRPC_GFLAGS_LIBRARIES}
18935 )
18936
18937
18938 endif()
18939 endif (gRPC_BUILD_TESTS)
18940 if (gRPC_BUILD_TESTS)
18941
18942 add_executable(address_sorting_test_unsecure
18943   test/cpp/naming/address_sorting_test.cc
18944   third_party/googletest/googletest/src/gtest-all.cc
18945   third_party/googletest/googlemock/src/gmock-all.cc
18946 )
18947
18948
18949 target_include_directories(address_sorting_test_unsecure
18950   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18951   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18952   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18953   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18954   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18955   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18956   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18957   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18958   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18959   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18960   PRIVATE third_party/googletest/googletest/include
18961   PRIVATE third_party/googletest/googletest
18962   PRIVATE third_party/googletest/googlemock/include
18963   PRIVATE third_party/googletest/googlemock
18964   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18965 )
18966
18967 target_link_libraries(address_sorting_test_unsecure
18968   ${_gRPC_PROTOBUF_LIBRARIES}
18969   ${_gRPC_ALLTARGETS_LIBRARIES}
18970   grpc++_test_util_unsecure
18971   grpc_test_util_unsecure
18972   grpc++_unsecure
18973   grpc_unsecure
18974   gpr
18975   grpc++_test_config
18976   ${_gRPC_GFLAGS_LIBRARIES}
18977 )
18978
18979
18980 endif (gRPC_BUILD_TESTS)
18981 if (gRPC_BUILD_TESTS)
18982
18983 add_executable(address_sorting_test
18984   test/cpp/naming/address_sorting_test.cc
18985   third_party/googletest/googletest/src/gtest-all.cc
18986   third_party/googletest/googlemock/src/gmock-all.cc
18987 )
18988
18989
18990 target_include_directories(address_sorting_test
18991   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18992   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18993   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18994   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18995   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18996   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18997   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18998   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18999   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19000   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19001   PRIVATE third_party/googletest/googletest/include
19002   PRIVATE third_party/googletest/googletest
19003   PRIVATE third_party/googletest/googlemock/include
19004   PRIVATE third_party/googletest/googlemock
19005   PRIVATE ${_gRPC_PROTO_GENS_DIR}
19006 )
19007
19008 target_link_libraries(address_sorting_test
19009   ${_gRPC_PROTOBUF_LIBRARIES}
19010   ${_gRPC_ALLTARGETS_LIBRARIES}
19011   grpc++_test_util
19012   grpc_test_util
19013   grpc++
19014   grpc
19015   gpr
19016   grpc++_test_config
19017   ${_gRPC_GFLAGS_LIBRARIES}
19018 )
19019
19020
19021 endif (gRPC_BUILD_TESTS)
19022 if (gRPC_BUILD_TESTS)
19023
19024 add_executable(cancel_ares_query_test
19025   test/cpp/naming/cancel_ares_query_test.cc
19026   third_party/googletest/googletest/src/gtest-all.cc
19027   third_party/googletest/googlemock/src/gmock-all.cc
19028 )
19029
19030
19031 target_include_directories(cancel_ares_query_test
19032   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19033   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19034   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19035   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19036   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19037   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19038   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19039   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19040   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19041   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19042   PRIVATE third_party/googletest/googletest/include
19043   PRIVATE third_party/googletest/googletest
19044   PRIVATE third_party/googletest/googlemock/include
19045   PRIVATE third_party/googletest/googlemock
19046   PRIVATE ${_gRPC_PROTO_GENS_DIR}
19047 )
19048
19049 target_link_libraries(cancel_ares_query_test
19050   ${_gRPC_PROTOBUF_LIBRARIES}
19051   ${_gRPC_ALLTARGETS_LIBRARIES}
19052   dns_test_util
19053   grpc++_test_util
19054   grpc_test_util
19055   grpc++
19056   grpc
19057   gpr
19058   grpc++_test_config
19059   ${_gRPC_GFLAGS_LIBRARIES}
19060 )
19061
19062
19063 endif (gRPC_BUILD_TESTS)
19064 if (gRPC_BUILD_TESTS)
19065
19066 add_executable(alts_credentials_fuzzer_one_entry
19067   test/core/security/alts_credentials_fuzzer.cc
19068   test/core/util/one_corpus_entry_fuzzer.cc
19069 )
19070
19071
19072 target_include_directories(alts_credentials_fuzzer_one_entry
19073   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19074   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19075   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19076   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19077   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19078   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19079   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19080   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19081   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19082   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19083 )
19084
19085 target_link_libraries(alts_credentials_fuzzer_one_entry
19086   ${_gRPC_ALLTARGETS_LIBRARIES}
19087   grpc_test_util
19088   grpc
19089   gpr
19090 )
19091
19092   # avoid dependency on libstdc++
19093   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19094     set_target_properties(alts_credentials_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19095     target_compile_options(alts_credentials_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19096   endif()
19097
19098 endif (gRPC_BUILD_TESTS)
19099 if (gRPC_BUILD_TESTS)
19100
19101 add_executable(api_fuzzer_one_entry
19102   test/core/end2end/fuzzers/api_fuzzer.cc
19103   test/core/util/one_corpus_entry_fuzzer.cc
19104 )
19105
19106
19107 target_include_directories(api_fuzzer_one_entry
19108   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19109   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19110   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19111   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19112   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19113   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19114   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19115   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19116   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19117   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19118 )
19119
19120 target_link_libraries(api_fuzzer_one_entry
19121   ${_gRPC_ALLTARGETS_LIBRARIES}
19122   grpc_test_util
19123   grpc
19124   gpr
19125 )
19126
19127   # avoid dependency on libstdc++
19128   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19129     set_target_properties(api_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19130     target_compile_options(api_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19131   endif()
19132
19133 endif (gRPC_BUILD_TESTS)
19134 if (gRPC_BUILD_TESTS)
19135
19136 add_executable(client_fuzzer_one_entry
19137   test/core/end2end/fuzzers/client_fuzzer.cc
19138   test/core/util/one_corpus_entry_fuzzer.cc
19139 )
19140
19141
19142 target_include_directories(client_fuzzer_one_entry
19143   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19144   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19145   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19146   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19147   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19148   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19149   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19150   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19151   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19152   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19153 )
19154
19155 target_link_libraries(client_fuzzer_one_entry
19156   ${_gRPC_ALLTARGETS_LIBRARIES}
19157   grpc_test_util
19158   grpc
19159   gpr
19160 )
19161
19162   # avoid dependency on libstdc++
19163   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19164     set_target_properties(client_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19165     target_compile_options(client_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19166   endif()
19167
19168 endif (gRPC_BUILD_TESTS)
19169 if (gRPC_BUILD_TESTS)
19170
19171 add_executable(hpack_parser_fuzzer_test_one_entry
19172   test/core/transport/chttp2/hpack_parser_fuzzer_test.cc
19173   test/core/util/one_corpus_entry_fuzzer.cc
19174 )
19175
19176
19177 target_include_directories(hpack_parser_fuzzer_test_one_entry
19178   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19179   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19180   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19181   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19182   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19183   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19184   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19185   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19186   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19187   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19188 )
19189
19190 target_link_libraries(hpack_parser_fuzzer_test_one_entry
19191   ${_gRPC_ALLTARGETS_LIBRARIES}
19192   grpc_test_util
19193   grpc
19194   gpr
19195 )
19196
19197   # avoid dependency on libstdc++
19198   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19199     set_target_properties(hpack_parser_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19200     target_compile_options(hpack_parser_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19201   endif()
19202
19203 endif (gRPC_BUILD_TESTS)
19204 if (gRPC_BUILD_TESTS)
19205
19206 add_executable(http_request_fuzzer_test_one_entry
19207   test/core/http/request_fuzzer.cc
19208   test/core/util/one_corpus_entry_fuzzer.cc
19209 )
19210
19211
19212 target_include_directories(http_request_fuzzer_test_one_entry
19213   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19214   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19215   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19216   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19217   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19218   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19219   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19220   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19221   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19222   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19223 )
19224
19225 target_link_libraries(http_request_fuzzer_test_one_entry
19226   ${_gRPC_ALLTARGETS_LIBRARIES}
19227   grpc_test_util
19228   grpc
19229   gpr
19230 )
19231
19232   # avoid dependency on libstdc++
19233   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19234     set_target_properties(http_request_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19235     target_compile_options(http_request_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19236   endif()
19237
19238 endif (gRPC_BUILD_TESTS)
19239 if (gRPC_BUILD_TESTS)
19240
19241 add_executable(http_response_fuzzer_test_one_entry
19242   test/core/http/response_fuzzer.cc
19243   test/core/util/one_corpus_entry_fuzzer.cc
19244 )
19245
19246
19247 target_include_directories(http_response_fuzzer_test_one_entry
19248   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19249   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19250   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19251   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19252   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19253   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19254   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19255   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19256   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19257   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19258 )
19259
19260 target_link_libraries(http_response_fuzzer_test_one_entry
19261   ${_gRPC_ALLTARGETS_LIBRARIES}
19262   grpc_test_util
19263   grpc
19264   gpr
19265 )
19266
19267   # avoid dependency on libstdc++
19268   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19269     set_target_properties(http_response_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19270     target_compile_options(http_response_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19271   endif()
19272
19273 endif (gRPC_BUILD_TESTS)
19274 if (gRPC_BUILD_TESTS)
19275
19276 add_executable(json_fuzzer_test_one_entry
19277   test/core/json/fuzzer.cc
19278   test/core/util/one_corpus_entry_fuzzer.cc
19279 )
19280
19281
19282 target_include_directories(json_fuzzer_test_one_entry
19283   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19284   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19285   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19286   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19287   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19288   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19289   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19290   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19291   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19292   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19293 )
19294
19295 target_link_libraries(json_fuzzer_test_one_entry
19296   ${_gRPC_ALLTARGETS_LIBRARIES}
19297   grpc_test_util
19298   grpc
19299   gpr
19300 )
19301
19302   # avoid dependency on libstdc++
19303   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19304     set_target_properties(json_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19305     target_compile_options(json_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19306   endif()
19307
19308 endif (gRPC_BUILD_TESTS)
19309 if (gRPC_BUILD_TESTS)
19310
19311 add_executable(nanopb_fuzzer_response_test_one_entry
19312   test/core/nanopb/fuzzer_response.cc
19313   test/core/util/one_corpus_entry_fuzzer.cc
19314 )
19315
19316
19317 target_include_directories(nanopb_fuzzer_response_test_one_entry
19318   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19319   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19320   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19321   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19322   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19323   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19324   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19325   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19326   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19327   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19328 )
19329
19330 target_link_libraries(nanopb_fuzzer_response_test_one_entry
19331   ${_gRPC_ALLTARGETS_LIBRARIES}
19332   grpc_test_util
19333   grpc
19334   gpr
19335 )
19336
19337   # avoid dependency on libstdc++
19338   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19339     set_target_properties(nanopb_fuzzer_response_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19340     target_compile_options(nanopb_fuzzer_response_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19341   endif()
19342
19343 endif (gRPC_BUILD_TESTS)
19344 if (gRPC_BUILD_TESTS)
19345
19346 add_executable(nanopb_fuzzer_serverlist_test_one_entry
19347   test/core/nanopb/fuzzer_serverlist.cc
19348   test/core/util/one_corpus_entry_fuzzer.cc
19349 )
19350
19351
19352 target_include_directories(nanopb_fuzzer_serverlist_test_one_entry
19353   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19354   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19355   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19356   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19357   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19358   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19359   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19360   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19361   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19362   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19363 )
19364
19365 target_link_libraries(nanopb_fuzzer_serverlist_test_one_entry
19366   ${_gRPC_ALLTARGETS_LIBRARIES}
19367   grpc_test_util
19368   grpc
19369   gpr
19370 )
19371
19372   # avoid dependency on libstdc++
19373   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19374     set_target_properties(nanopb_fuzzer_serverlist_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19375     target_compile_options(nanopb_fuzzer_serverlist_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19376   endif()
19377
19378 endif (gRPC_BUILD_TESTS)
19379 if (gRPC_BUILD_TESTS)
19380
19381 add_executable(percent_decode_fuzzer_one_entry
19382   test/core/slice/percent_decode_fuzzer.cc
19383   test/core/util/one_corpus_entry_fuzzer.cc
19384 )
19385
19386
19387 target_include_directories(percent_decode_fuzzer_one_entry
19388   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19389   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19390   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19391   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19392   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19393   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19394   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19395   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19396   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19397   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19398 )
19399
19400 target_link_libraries(percent_decode_fuzzer_one_entry
19401   ${_gRPC_ALLTARGETS_LIBRARIES}
19402   grpc_test_util
19403   grpc
19404   gpr
19405 )
19406
19407   # avoid dependency on libstdc++
19408   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19409     set_target_properties(percent_decode_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19410     target_compile_options(percent_decode_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19411   endif()
19412
19413 endif (gRPC_BUILD_TESTS)
19414 if (gRPC_BUILD_TESTS)
19415
19416 add_executable(percent_encode_fuzzer_one_entry
19417   test/core/slice/percent_encode_fuzzer.cc
19418   test/core/util/one_corpus_entry_fuzzer.cc
19419 )
19420
19421
19422 target_include_directories(percent_encode_fuzzer_one_entry
19423   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19424   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19425   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19426   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19427   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19428   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19429   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19430   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19431   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19432   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19433 )
19434
19435 target_link_libraries(percent_encode_fuzzer_one_entry
19436   ${_gRPC_ALLTARGETS_LIBRARIES}
19437   grpc_test_util
19438   grpc
19439   gpr
19440 )
19441
19442   # avoid dependency on libstdc++
19443   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19444     set_target_properties(percent_encode_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19445     target_compile_options(percent_encode_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19446   endif()
19447
19448 endif (gRPC_BUILD_TESTS)
19449 if (gRPC_BUILD_TESTS)
19450
19451 add_executable(server_fuzzer_one_entry
19452   test/core/end2end/fuzzers/server_fuzzer.cc
19453   test/core/util/one_corpus_entry_fuzzer.cc
19454 )
19455
19456
19457 target_include_directories(server_fuzzer_one_entry
19458   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19459   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19460   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19461   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19462   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19463   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19464   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19465   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19466   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19467   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19468 )
19469
19470 target_link_libraries(server_fuzzer_one_entry
19471   ${_gRPC_ALLTARGETS_LIBRARIES}
19472   grpc_test_util
19473   grpc
19474   gpr
19475 )
19476
19477   # avoid dependency on libstdc++
19478   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19479     set_target_properties(server_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19480     target_compile_options(server_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19481   endif()
19482
19483 endif (gRPC_BUILD_TESTS)
19484 if (gRPC_BUILD_TESTS)
19485
19486 add_executable(ssl_server_fuzzer_one_entry
19487   test/core/security/ssl_server_fuzzer.cc
19488   test/core/util/one_corpus_entry_fuzzer.cc
19489 )
19490
19491
19492 target_include_directories(ssl_server_fuzzer_one_entry
19493   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19494   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19495   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19496   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19497   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19498   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19499   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19500   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19501   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19502   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19503 )
19504
19505 target_link_libraries(ssl_server_fuzzer_one_entry
19506   ${_gRPC_ALLTARGETS_LIBRARIES}
19507   grpc_test_util
19508   grpc
19509   gpr
19510 )
19511
19512   # avoid dependency on libstdc++
19513   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19514     set_target_properties(ssl_server_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19515     target_compile_options(ssl_server_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19516   endif()
19517
19518 endif (gRPC_BUILD_TESTS)
19519 if (gRPC_BUILD_TESTS)
19520
19521 add_executable(uri_fuzzer_test_one_entry
19522   test/core/client_channel/uri_fuzzer_test.cc
19523   test/core/util/one_corpus_entry_fuzzer.cc
19524 )
19525
19526
19527 target_include_directories(uri_fuzzer_test_one_entry
19528   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19529   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19530   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19531   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19532   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19533   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19534   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19535   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19536   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19537   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19538 )
19539
19540 target_link_libraries(uri_fuzzer_test_one_entry
19541   ${_gRPC_ALLTARGETS_LIBRARIES}
19542   grpc_test_util
19543   grpc
19544   gpr
19545 )
19546
19547   # avoid dependency on libstdc++
19548   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19549     set_target_properties(uri_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19550     target_compile_options(uri_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19551   endif()
19552
19553 endif (gRPC_BUILD_TESTS)
19554
19555
19556
19557
19558
19559
19560
19561 if (gRPC_INSTALL)
19562   install(EXPORT gRPCTargets
19563     DESTINATION ${gRPC_INSTALL_CMAKEDIR}
19564     NAMESPACE gRPC::
19565   )
19566 endif()
19567
19568 foreach(_config gRPCConfig gRPCConfigVersion)
19569   configure_file(cmake/${_config}.cmake.in
19570     ${_config}.cmake @ONLY)
19571   install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
19572     DESTINATION ${gRPC_INSTALL_CMAKEDIR}
19573   )
19574 endforeach()
19575
19576 install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/etc/roots.pem
19577   DESTINATION ${gRPC_INSTALL_SHAREDIR})