Imported Upstream version 1.23.1
[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 3.5.1)
25
26 set(PACKAGE_NAME      "grpc")
27 set(PACKAGE_VERSION   "1.23.1")
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_using_ares_resolver_test)
279 add_dependencies(buildtests_c dns_resolver_cooldown_using_native_resolver_test)
280 add_dependencies(buildtests_c dns_resolver_test)
281 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
282 add_dependencies(buildtests_c dualstack_socket_test)
283 endif()
284 add_dependencies(buildtests_c endpoint_pair_test)
285 add_dependencies(buildtests_c error_test)
286 if(_gRPC_PLATFORM_LINUX)
287 add_dependencies(buildtests_c ev_epollex_linux_test)
288 endif()
289 add_dependencies(buildtests_c fake_resolver_test)
290 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
291 add_dependencies(buildtests_c fake_transport_security_test)
292 endif()
293 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
294 add_dependencies(buildtests_c fd_conservation_posix_test)
295 endif()
296 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
297 add_dependencies(buildtests_c fd_posix_test)
298 endif()
299 add_dependencies(buildtests_c fling_client)
300 add_dependencies(buildtests_c fling_server)
301 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
302 add_dependencies(buildtests_c fling_stream_test)
303 endif()
304 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
305 add_dependencies(buildtests_c fling_test)
306 endif()
307 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC)
308 add_dependencies(buildtests_c fork_test)
309 endif()
310 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
311 add_dependencies(buildtests_c goaway_server_test)
312 endif()
313 add_dependencies(buildtests_c gpr_cpu_test)
314 add_dependencies(buildtests_c gpr_env_test)
315 add_dependencies(buildtests_c gpr_host_port_test)
316 add_dependencies(buildtests_c gpr_log_test)
317 add_dependencies(buildtests_c gpr_manual_constructor_test)
318 add_dependencies(buildtests_c gpr_mpscq_test)
319 add_dependencies(buildtests_c gpr_spinlock_test)
320 add_dependencies(buildtests_c gpr_string_test)
321 add_dependencies(buildtests_c gpr_sync_test)
322 add_dependencies(buildtests_c gpr_thd_test)
323 add_dependencies(buildtests_c gpr_time_test)
324 add_dependencies(buildtests_c gpr_tls_test)
325 add_dependencies(buildtests_c gpr_useful_test)
326 add_dependencies(buildtests_c grpc_auth_context_test)
327 add_dependencies(buildtests_c grpc_b64_test)
328 add_dependencies(buildtests_c grpc_byte_buffer_reader_test)
329 add_dependencies(buildtests_c grpc_channel_args_test)
330 add_dependencies(buildtests_c grpc_channel_stack_builder_test)
331 add_dependencies(buildtests_c grpc_channel_stack_test)
332 add_dependencies(buildtests_c grpc_completion_queue_test)
333 add_dependencies(buildtests_c grpc_completion_queue_threading_test)
334 add_dependencies(buildtests_c grpc_control_plane_credentials_test)
335 add_dependencies(buildtests_c grpc_credentials_test)
336 add_dependencies(buildtests_c grpc_ipv6_loopback_available_test)
337 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
338 add_dependencies(buildtests_c grpc_json_token_test)
339 endif()
340 add_dependencies(buildtests_c grpc_jwt_verifier_test)
341 add_dependencies(buildtests_c grpc_security_connector_test)
342 add_dependencies(buildtests_c grpc_ssl_credentials_test)
343 if(_gRPC_PLATFORM_LINUX)
344 add_dependencies(buildtests_c handshake_client_ssl)
345 endif()
346 if(_gRPC_PLATFORM_LINUX)
347 add_dependencies(buildtests_c handshake_server_ssl)
348 endif()
349 if(_gRPC_PLATFORM_LINUX)
350 add_dependencies(buildtests_c handshake_server_with_readahead_handshaker)
351 endif()
352 if(_gRPC_PLATFORM_LINUX)
353 add_dependencies(buildtests_c handshake_verify_peer_options)
354 endif()
355 add_dependencies(buildtests_c histogram_test)
356 add_dependencies(buildtests_c hpack_parser_test)
357 add_dependencies(buildtests_c hpack_table_test)
358 add_dependencies(buildtests_c http_parser_test)
359 add_dependencies(buildtests_c httpcli_format_request_test)
360 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
361 add_dependencies(buildtests_c httpcli_test)
362 endif()
363 if(_gRPC_PLATFORM_LINUX)
364 add_dependencies(buildtests_c httpscli_test)
365 endif()
366 add_dependencies(buildtests_c init_test)
367 add_dependencies(buildtests_c inproc_callback_test)
368 add_dependencies(buildtests_c invalid_call_argument_test)
369 add_dependencies(buildtests_c json_rewrite)
370 add_dependencies(buildtests_c json_rewrite_test)
371 add_dependencies(buildtests_c json_stream_error_test)
372 add_dependencies(buildtests_c json_test)
373 add_dependencies(buildtests_c lame_client_test)
374 add_dependencies(buildtests_c load_file_test)
375 add_dependencies(buildtests_c memory_usage_client)
376 add_dependencies(buildtests_c memory_usage_server)
377 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
378 add_dependencies(buildtests_c memory_usage_test)
379 endif()
380 add_dependencies(buildtests_c message_compress_test)
381 add_dependencies(buildtests_c minimal_stack_is_minimal_test)
382 add_dependencies(buildtests_c mpmcqueue_test)
383 add_dependencies(buildtests_c multiple_server_queues_test)
384 add_dependencies(buildtests_c murmur_hash_test)
385 add_dependencies(buildtests_c no_server_test)
386 add_dependencies(buildtests_c num_external_connectivity_watchers_test)
387 add_dependencies(buildtests_c parse_address_test)
388 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
389 add_dependencies(buildtests_c parse_address_with_named_scope_id_test)
390 endif()
391 add_dependencies(buildtests_c percent_encoding_test)
392 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
393 add_dependencies(buildtests_c resolve_address_using_ares_resolver_posix_test)
394 endif()
395 add_dependencies(buildtests_c resolve_address_using_ares_resolver_test)
396 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
397 add_dependencies(buildtests_c resolve_address_using_native_resolver_posix_test)
398 endif()
399 add_dependencies(buildtests_c resolve_address_using_native_resolver_test)
400 add_dependencies(buildtests_c resource_quota_test)
401 add_dependencies(buildtests_c secure_channel_create_test)
402 add_dependencies(buildtests_c secure_endpoint_test)
403 add_dependencies(buildtests_c sequential_connectivity_test)
404 add_dependencies(buildtests_c server_chttp2_test)
405 add_dependencies(buildtests_c server_test)
406 add_dependencies(buildtests_c slice_buffer_test)
407 add_dependencies(buildtests_c slice_string_helpers_test)
408 add_dependencies(buildtests_c slice_test)
409 add_dependencies(buildtests_c sockaddr_resolver_test)
410 add_dependencies(buildtests_c sockaddr_utils_test)
411 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
412 add_dependencies(buildtests_c socket_utils_test)
413 endif()
414 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
415 add_dependencies(buildtests_c ssl_transport_security_test)
416 endif()
417 add_dependencies(buildtests_c status_conversion_test)
418 add_dependencies(buildtests_c stream_compression_test)
419 add_dependencies(buildtests_c stream_owned_slice_test)
420 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
421 add_dependencies(buildtests_c tcp_client_posix_test)
422 endif()
423 add_dependencies(buildtests_c tcp_client_uv_test)
424 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
425 add_dependencies(buildtests_c tcp_posix_test)
426 endif()
427 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
428 add_dependencies(buildtests_c tcp_server_posix_test)
429 endif()
430 add_dependencies(buildtests_c tcp_server_uv_test)
431 add_dependencies(buildtests_c threadpool_test)
432 add_dependencies(buildtests_c time_averaged_stats_test)
433 add_dependencies(buildtests_c timeout_encoding_test)
434 add_dependencies(buildtests_c timer_heap_test)
435 add_dependencies(buildtests_c timer_list_test)
436 add_dependencies(buildtests_c transport_connectivity_state_test)
437 add_dependencies(buildtests_c transport_metadata_test)
438 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
439 add_dependencies(buildtests_c transport_security_test)
440 endif()
441 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
442 add_dependencies(buildtests_c udp_server_test)
443 endif()
444 add_dependencies(buildtests_c uri_parser_test)
445 add_dependencies(buildtests_c public_headers_must_be_c89)
446 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
447 add_dependencies(buildtests_c bad_ssl_cert_server)
448 endif()
449 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
450 add_dependencies(buildtests_c bad_ssl_cert_test)
451 endif()
452 add_dependencies(buildtests_c h2_census_test)
453 add_dependencies(buildtests_c h2_compress_test)
454 add_dependencies(buildtests_c h2_fakesec_test)
455 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
456 add_dependencies(buildtests_c h2_fd_test)
457 endif()
458 add_dependencies(buildtests_c h2_full_test)
459 if(_gRPC_PLATFORM_LINUX)
460 add_dependencies(buildtests_c h2_full+pipe_test)
461 endif()
462 add_dependencies(buildtests_c h2_full+trace_test)
463 add_dependencies(buildtests_c h2_full+workarounds_test)
464 add_dependencies(buildtests_c h2_http_proxy_test)
465 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
466 add_dependencies(buildtests_c h2_local_ipv4_test)
467 endif()
468 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
469 add_dependencies(buildtests_c h2_local_ipv6_test)
470 endif()
471 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
472 add_dependencies(buildtests_c h2_local_uds_test)
473 endif()
474 add_dependencies(buildtests_c h2_oauth2_test)
475 add_dependencies(buildtests_c h2_proxy_test)
476 add_dependencies(buildtests_c h2_sockpair_test)
477 add_dependencies(buildtests_c h2_sockpair+trace_test)
478 add_dependencies(buildtests_c h2_sockpair_1byte_test)
479 add_dependencies(buildtests_c h2_spiffe_test)
480 add_dependencies(buildtests_c h2_ssl_test)
481 add_dependencies(buildtests_c h2_ssl_cred_reload_test)
482 add_dependencies(buildtests_c h2_ssl_proxy_test)
483 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
484 add_dependencies(buildtests_c h2_uds_test)
485 endif()
486 add_dependencies(buildtests_c inproc_test)
487 add_dependencies(buildtests_c h2_census_nosec_test)
488 add_dependencies(buildtests_c h2_compress_nosec_test)
489 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
490 add_dependencies(buildtests_c h2_fd_nosec_test)
491 endif()
492 add_dependencies(buildtests_c h2_full_nosec_test)
493 if(_gRPC_PLATFORM_LINUX)
494 add_dependencies(buildtests_c h2_full+pipe_nosec_test)
495 endif()
496 add_dependencies(buildtests_c h2_full+trace_nosec_test)
497 add_dependencies(buildtests_c h2_full+workarounds_nosec_test)
498 add_dependencies(buildtests_c h2_http_proxy_nosec_test)
499 add_dependencies(buildtests_c h2_proxy_nosec_test)
500 add_dependencies(buildtests_c h2_sockpair_nosec_test)
501 add_dependencies(buildtests_c h2_sockpair+trace_nosec_test)
502 add_dependencies(buildtests_c h2_sockpair_1byte_nosec_test)
503 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
504 add_dependencies(buildtests_c h2_uds_nosec_test)
505 endif()
506 add_dependencies(buildtests_c alts_credentials_fuzzer_one_entry)
507 add_dependencies(buildtests_c api_fuzzer_one_entry)
508 add_dependencies(buildtests_c client_fuzzer_one_entry)
509 add_dependencies(buildtests_c hpack_parser_fuzzer_test_one_entry)
510 add_dependencies(buildtests_c http_request_fuzzer_test_one_entry)
511 add_dependencies(buildtests_c http_response_fuzzer_test_one_entry)
512 add_dependencies(buildtests_c json_fuzzer_test_one_entry)
513 add_dependencies(buildtests_c nanopb_fuzzer_response_test_one_entry)
514 add_dependencies(buildtests_c nanopb_fuzzer_serverlist_test_one_entry)
515 add_dependencies(buildtests_c percent_decode_fuzzer_one_entry)
516 add_dependencies(buildtests_c percent_encode_fuzzer_one_entry)
517 add_dependencies(buildtests_c server_fuzzer_one_entry)
518 add_dependencies(buildtests_c ssl_server_fuzzer_one_entry)
519 add_dependencies(buildtests_c uri_fuzzer_test_one_entry)
520
521 add_custom_target(buildtests_cxx)
522 add_dependencies(buildtests_cxx alarm_test)
523 add_dependencies(buildtests_cxx alts_counter_test)
524 add_dependencies(buildtests_cxx alts_crypt_test)
525 add_dependencies(buildtests_cxx alts_crypter_test)
526 add_dependencies(buildtests_cxx alts_frame_handler_test)
527 add_dependencies(buildtests_cxx alts_frame_protector_test)
528 add_dependencies(buildtests_cxx alts_grpc_record_protocol_test)
529 add_dependencies(buildtests_cxx alts_handshaker_client_test)
530 add_dependencies(buildtests_cxx alts_handshaker_service_api_test)
531 add_dependencies(buildtests_cxx alts_iovec_record_protocol_test)
532 add_dependencies(buildtests_cxx alts_security_connector_test)
533 add_dependencies(buildtests_cxx alts_tsi_handshaker_test)
534 add_dependencies(buildtests_cxx alts_tsi_utils_test)
535 add_dependencies(buildtests_cxx alts_zero_copy_grpc_protector_test)
536 add_dependencies(buildtests_cxx async_end2end_test)
537 add_dependencies(buildtests_cxx auth_property_iterator_test)
538 add_dependencies(buildtests_cxx backoff_test)
539 add_dependencies(buildtests_cxx bdp_estimator_test)
540 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
541 add_dependencies(buildtests_cxx bm_alarm)
542 endif()
543 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
544 add_dependencies(buildtests_cxx bm_arena)
545 endif()
546 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
547 add_dependencies(buildtests_cxx bm_byte_buffer)
548 endif()
549 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
550 add_dependencies(buildtests_cxx bm_call_create)
551 endif()
552 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
553 add_dependencies(buildtests_cxx bm_callback_streaming_ping_pong)
554 endif()
555 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
556 add_dependencies(buildtests_cxx bm_callback_unary_ping_pong)
557 endif()
558 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
559 add_dependencies(buildtests_cxx bm_channel)
560 endif()
561 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
562 add_dependencies(buildtests_cxx bm_chttp2_hpack)
563 endif()
564 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
565 add_dependencies(buildtests_cxx bm_chttp2_transport)
566 endif()
567 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
568 add_dependencies(buildtests_cxx bm_closure)
569 endif()
570 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
571 add_dependencies(buildtests_cxx bm_cq)
572 endif()
573 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
574 add_dependencies(buildtests_cxx bm_cq_multiple_threads)
575 endif()
576 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
577 add_dependencies(buildtests_cxx bm_error)
578 endif()
579 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
580 add_dependencies(buildtests_cxx bm_fullstack_streaming_ping_pong)
581 endif()
582 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
583 add_dependencies(buildtests_cxx bm_fullstack_streaming_pump)
584 endif()
585 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
586 add_dependencies(buildtests_cxx bm_fullstack_trickle)
587 endif()
588 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
589 add_dependencies(buildtests_cxx bm_fullstack_unary_ping_pong)
590 endif()
591 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
592 add_dependencies(buildtests_cxx bm_metadata)
593 endif()
594 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
595 add_dependencies(buildtests_cxx bm_pollset)
596 endif()
597 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
598 add_dependencies(buildtests_cxx bm_threadpool)
599 endif()
600 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
601 add_dependencies(buildtests_cxx bm_timer)
602 endif()
603 add_dependencies(buildtests_cxx byte_stream_test)
604 add_dependencies(buildtests_cxx channel_arguments_test)
605 add_dependencies(buildtests_cxx channel_filter_test)
606 add_dependencies(buildtests_cxx channel_trace_test)
607 add_dependencies(buildtests_cxx channelz_registry_test)
608 add_dependencies(buildtests_cxx channelz_service_test)
609 add_dependencies(buildtests_cxx channelz_test)
610 add_dependencies(buildtests_cxx check_gcp_environment_linux_test)
611 add_dependencies(buildtests_cxx check_gcp_environment_windows_test)
612 add_dependencies(buildtests_cxx chttp2_settings_timeout_test)
613 add_dependencies(buildtests_cxx cli_call_test)
614 add_dependencies(buildtests_cxx client_callback_end2end_test)
615 add_dependencies(buildtests_cxx client_channel_stress_test)
616 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
617 add_dependencies(buildtests_cxx client_crash_test)
618 endif()
619 add_dependencies(buildtests_cxx client_crash_test_server)
620 add_dependencies(buildtests_cxx client_interceptors_end2end_test)
621 add_dependencies(buildtests_cxx client_lb_end2end_test)
622 add_dependencies(buildtests_cxx codegen_test_full)
623 add_dependencies(buildtests_cxx codegen_test_minimal)
624 add_dependencies(buildtests_cxx context_list_test)
625 add_dependencies(buildtests_cxx credentials_test)
626 add_dependencies(buildtests_cxx cxx_byte_buffer_test)
627 add_dependencies(buildtests_cxx cxx_slice_test)
628 add_dependencies(buildtests_cxx cxx_string_ref_test)
629 add_dependencies(buildtests_cxx cxx_time_test)
630 add_dependencies(buildtests_cxx end2end_test)
631 add_dependencies(buildtests_cxx error_details_test)
632 add_dependencies(buildtests_cxx exception_test)
633 add_dependencies(buildtests_cxx filter_end2end_test)
634 add_dependencies(buildtests_cxx generic_end2end_test)
635 add_dependencies(buildtests_cxx global_config_env_test)
636 add_dependencies(buildtests_cxx global_config_test)
637 add_dependencies(buildtests_cxx golden_file_test)
638 add_dependencies(buildtests_cxx grpc_alts_credentials_options_test)
639 add_dependencies(buildtests_cxx grpc_cli)
640 add_dependencies(buildtests_cxx grpc_core_map_test)
641 add_dependencies(buildtests_cxx grpc_fetch_oauth2)
642 add_dependencies(buildtests_cxx grpc_linux_system_roots_test)
643 add_dependencies(buildtests_cxx grpc_tool_test)
644 add_dependencies(buildtests_cxx grpclb_api_test)
645 add_dependencies(buildtests_cxx grpclb_end2end_test)
646 if(_gRPC_PLATFORM_LINUX)
647 add_dependencies(buildtests_cxx grpclb_fallback_test)
648 endif()
649 add_dependencies(buildtests_cxx h2_ssl_cert_test)
650 add_dependencies(buildtests_cxx h2_ssl_session_reuse_test)
651 add_dependencies(buildtests_cxx health_service_end2end_test)
652 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
653 add_dependencies(buildtests_cxx http2_client)
654 endif()
655 add_dependencies(buildtests_cxx hybrid_end2end_test)
656 add_dependencies(buildtests_cxx inlined_vector_test)
657 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
658 add_dependencies(buildtests_cxx inproc_sync_unary_ping_pong_test)
659 endif()
660 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
661 add_dependencies(buildtests_cxx interop_client)
662 endif()
663 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
664 add_dependencies(buildtests_cxx interop_server)
665 endif()
666 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
667 add_dependencies(buildtests_cxx interop_test)
668 endif()
669 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
670 add_dependencies(buildtests_cxx json_run_localhost)
671 endif()
672 add_dependencies(buildtests_cxx memory_test)
673 add_dependencies(buildtests_cxx message_allocator_end2end_test)
674 add_dependencies(buildtests_cxx metrics_client)
675 add_dependencies(buildtests_cxx mock_test)
676 add_dependencies(buildtests_cxx nonblocking_test)
677 add_dependencies(buildtests_cxx noop-benchmark)
678 add_dependencies(buildtests_cxx optional_test)
679 add_dependencies(buildtests_cxx orphanable_test)
680 add_dependencies(buildtests_cxx port_sharing_end2end_test)
681 add_dependencies(buildtests_cxx proto_server_reflection_test)
682 add_dependencies(buildtests_cxx proto_utils_test)
683 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
684 add_dependencies(buildtests_cxx qps_interarrival_test)
685 endif()
686 add_dependencies(buildtests_cxx qps_json_driver)
687 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
688 add_dependencies(buildtests_cxx qps_openloop_test)
689 endif()
690 add_dependencies(buildtests_cxx qps_worker)
691 add_dependencies(buildtests_cxx raw_end2end_test)
692 add_dependencies(buildtests_cxx reconnect_interop_client)
693 add_dependencies(buildtests_cxx reconnect_interop_server)
694 add_dependencies(buildtests_cxx ref_counted_ptr_test)
695 add_dependencies(buildtests_cxx ref_counted_test)
696 add_dependencies(buildtests_cxx retry_throttle_test)
697 add_dependencies(buildtests_cxx secure_auth_context_test)
698 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
699 add_dependencies(buildtests_cxx secure_sync_unary_ping_pong_test)
700 endif()
701 add_dependencies(buildtests_cxx server_builder_plugin_test)
702 add_dependencies(buildtests_cxx server_builder_test)
703 if(_gRPC_PLATFORM_POSIX)
704 add_dependencies(buildtests_cxx server_builder_with_socket_mutator_test)
705 endif()
706 add_dependencies(buildtests_cxx server_context_test_spouse_test)
707 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
708 add_dependencies(buildtests_cxx server_crash_test)
709 endif()
710 add_dependencies(buildtests_cxx server_crash_test_client)
711 add_dependencies(buildtests_cxx server_early_return_test)
712 add_dependencies(buildtests_cxx server_interceptors_end2end_test)
713 add_dependencies(buildtests_cxx server_request_call_test)
714 add_dependencies(buildtests_cxx service_config_end2end_test)
715 add_dependencies(buildtests_cxx service_config_test)
716 add_dependencies(buildtests_cxx shutdown_test)
717 add_dependencies(buildtests_cxx slice_hash_table_test)
718 add_dependencies(buildtests_cxx slice_weak_hash_table_test)
719 add_dependencies(buildtests_cxx stats_test)
720 add_dependencies(buildtests_cxx status_metadata_test)
721 add_dependencies(buildtests_cxx status_util_test)
722 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
723 add_dependencies(buildtests_cxx streaming_throughput_test)
724 endif()
725 add_dependencies(buildtests_cxx stress_test)
726 add_dependencies(buildtests_cxx string_view_test)
727 add_dependencies(buildtests_cxx thread_manager_test)
728 add_dependencies(buildtests_cxx thread_stress_test)
729 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
730 add_dependencies(buildtests_cxx time_change_test)
731 endif()
732 add_dependencies(buildtests_cxx transport_pid_controller_test)
733 add_dependencies(buildtests_cxx transport_security_common_api_test)
734 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
735 add_dependencies(buildtests_cxx writes_per_rpc_test)
736 endif()
737 add_dependencies(buildtests_cxx xds_end2end_test)
738 add_dependencies(buildtests_cxx bad_streaming_id_bad_client_test)
739 add_dependencies(buildtests_cxx badreq_bad_client_test)
740 add_dependencies(buildtests_cxx connection_prefix_bad_client_test)
741 add_dependencies(buildtests_cxx duplicate_header_bad_client_test)
742 add_dependencies(buildtests_cxx head_of_line_blocking_bad_client_test)
743 add_dependencies(buildtests_cxx headers_bad_client_test)
744 add_dependencies(buildtests_cxx initial_settings_frame_bad_client_test)
745 add_dependencies(buildtests_cxx large_metadata_bad_client_test)
746 add_dependencies(buildtests_cxx out_of_bounds_bad_client_test)
747 add_dependencies(buildtests_cxx server_registered_method_bad_client_test)
748 add_dependencies(buildtests_cxx simple_request_bad_client_test)
749 add_dependencies(buildtests_cxx unknown_frame_bad_client_test)
750 add_dependencies(buildtests_cxx window_overflow_bad_client_test)
751 add_dependencies(buildtests_cxx resolver_component_test_unsecure)
752 add_dependencies(buildtests_cxx resolver_component_test)
753 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
754 add_dependencies(buildtests_cxx resolver_component_tests_runner_invoker_unsecure)
755 endif()
756 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
757 add_dependencies(buildtests_cxx resolver_component_tests_runner_invoker)
758 endif()
759 add_dependencies(buildtests_cxx address_sorting_test_unsecure)
760 add_dependencies(buildtests_cxx address_sorting_test)
761 add_dependencies(buildtests_cxx cancel_ares_query_test)
762
763 add_custom_target(buildtests
764   DEPENDS buildtests_c buildtests_cxx)
765 endif (gRPC_BUILD_TESTS)
766
767
768 add_library(address_sorting
769   third_party/address_sorting/address_sorting.c
770   third_party/address_sorting/address_sorting_posix.c
771   third_party/address_sorting/address_sorting_windows.c
772 )
773
774 if(WIN32 AND MSVC)
775   set_target_properties(address_sorting PROPERTIES COMPILE_PDB_NAME "address_sorting"
776     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
777   )
778   if (gRPC_INSTALL)
779     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/address_sorting.pdb
780       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
781     )
782   endif()
783 endif()
784
785
786 target_include_directories(address_sorting
787   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
788   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
789   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
790   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
791   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
792   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
793   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
794   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
795   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
796   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
797 )
798   # avoid dependency on libstdc++
799   if (_gRPC_CORE_NOSTDCXX_FLAGS)
800     set_target_properties(address_sorting PROPERTIES LINKER_LANGUAGE C)
801     # only use the flags for C++ source files
802     target_compile_options(address_sorting PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
803   endif()
804 target_link_libraries(address_sorting
805   ${_gRPC_BASELIB_LIBRARIES}
806   ${_gRPC_ALLTARGETS_LIBRARIES}
807 )
808
809
810
811 if (gRPC_INSTALL)
812   install(TARGETS address_sorting EXPORT gRPCTargets
813     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
814     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
815     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
816   )
817 endif()
818
819 if (gRPC_BUILD_TESTS)
820
821 add_library(alts_test_util
822   test/core/tsi/alts/crypt/gsec_test_util.cc
823   test/core/tsi/alts/handshaker/alts_handshaker_service_api_test_lib.cc
824 )
825
826 if(WIN32 AND MSVC)
827   set_target_properties(alts_test_util PROPERTIES COMPILE_PDB_NAME "alts_test_util"
828     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
829   )
830   if (gRPC_INSTALL)
831     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/alts_test_util.pdb
832       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
833     )
834   endif()
835 endif()
836
837
838 target_include_directories(alts_test_util
839   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
840   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
841   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
842   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
843   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
844   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
845   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
846   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
847   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
848   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
849 )
850   # avoid dependency on libstdc++
851   if (_gRPC_CORE_NOSTDCXX_FLAGS)
852     set_target_properties(alts_test_util PROPERTIES LINKER_LANGUAGE C)
853     # only use the flags for C++ source files
854     target_compile_options(alts_test_util PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
855   endif()
856 target_link_libraries(alts_test_util
857   ${_gRPC_SSL_LIBRARIES}
858   ${_gRPC_ALLTARGETS_LIBRARIES}
859   grpc
860 )
861
862
863 endif (gRPC_BUILD_TESTS)
864
865 add_library(gpr
866   src/core/lib/gpr/alloc.cc
867   src/core/lib/gpr/atm.cc
868   src/core/lib/gpr/cpu_iphone.cc
869   src/core/lib/gpr/cpu_linux.cc
870   src/core/lib/gpr/cpu_posix.cc
871   src/core/lib/gpr/cpu_windows.cc
872   src/core/lib/gpr/env_linux.cc
873   src/core/lib/gpr/env_posix.cc
874   src/core/lib/gpr/env_windows.cc
875   src/core/lib/gpr/log.cc
876   src/core/lib/gpr/log_android.cc
877   src/core/lib/gpr/log_linux.cc
878   src/core/lib/gpr/log_posix.cc
879   src/core/lib/gpr/log_windows.cc
880   src/core/lib/gpr/mpscq.cc
881   src/core/lib/gpr/murmur_hash.cc
882   src/core/lib/gpr/string.cc
883   src/core/lib/gpr/string_posix.cc
884   src/core/lib/gpr/string_util_windows.cc
885   src/core/lib/gpr/string_windows.cc
886   src/core/lib/gpr/sync.cc
887   src/core/lib/gpr/sync_posix.cc
888   src/core/lib/gpr/sync_windows.cc
889   src/core/lib/gpr/time.cc
890   src/core/lib/gpr/time_posix.cc
891   src/core/lib/gpr/time_precise.cc
892   src/core/lib/gpr/time_windows.cc
893   src/core/lib/gpr/tls_pthread.cc
894   src/core/lib/gpr/tmpfile_msys.cc
895   src/core/lib/gpr/tmpfile_posix.cc
896   src/core/lib/gpr/tmpfile_windows.cc
897   src/core/lib/gpr/wrap_memcpy.cc
898   src/core/lib/gprpp/arena.cc
899   src/core/lib/gprpp/fork.cc
900   src/core/lib/gprpp/global_config_env.cc
901   src/core/lib/gprpp/host_port.cc
902   src/core/lib/gprpp/thd_posix.cc
903   src/core/lib/gprpp/thd_windows.cc
904   src/core/lib/profiling/basic_timers.cc
905   src/core/lib/profiling/stap_timers.cc
906 )
907
908 if(WIN32 AND MSVC)
909   set_target_properties(gpr PROPERTIES COMPILE_PDB_NAME "gpr"
910     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
911   )
912   if (gRPC_INSTALL)
913     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gpr.pdb
914       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
915     )
916   endif()
917 endif()
918
919
920 target_include_directories(gpr
921   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
922   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
923   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
924   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
925   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
926   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
927   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
928   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
929   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
930   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
931 )
932   # avoid dependency on libstdc++
933   if (_gRPC_CORE_NOSTDCXX_FLAGS)
934     set_target_properties(gpr PROPERTIES LINKER_LANGUAGE C)
935     # only use the flags for C++ source files
936     target_compile_options(gpr PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
937   endif()
938 target_link_libraries(gpr
939   ${_gRPC_ALLTARGETS_LIBRARIES}
940 )
941 if (_gRPC_PLATFORM_ANDROID)
942   target_link_libraries(gpr
943     android
944     log
945   )
946 endif (_gRPC_PLATFORM_ANDROID)
947
948 foreach(_hdr
949   include/grpc/support/alloc.h
950   include/grpc/support/atm.h
951   include/grpc/support/atm_gcc_atomic.h
952   include/grpc/support/atm_gcc_sync.h
953   include/grpc/support/atm_windows.h
954   include/grpc/support/cpu.h
955   include/grpc/support/log.h
956   include/grpc/support/log_windows.h
957   include/grpc/support/port_platform.h
958   include/grpc/support/string_util.h
959   include/grpc/support/sync.h
960   include/grpc/support/sync_custom.h
961   include/grpc/support/sync_generic.h
962   include/grpc/support/sync_posix.h
963   include/grpc/support/sync_windows.h
964   include/grpc/support/thd_id.h
965   include/grpc/support/time.h
966   include/grpc/impl/codegen/atm.h
967   include/grpc/impl/codegen/atm_gcc_atomic.h
968   include/grpc/impl/codegen/atm_gcc_sync.h
969   include/grpc/impl/codegen/atm_windows.h
970   include/grpc/impl/codegen/fork.h
971   include/grpc/impl/codegen/gpr_slice.h
972   include/grpc/impl/codegen/gpr_types.h
973   include/grpc/impl/codegen/log.h
974   include/grpc/impl/codegen/port_platform.h
975   include/grpc/impl/codegen/sync.h
976   include/grpc/impl/codegen/sync_custom.h
977   include/grpc/impl/codegen/sync_generic.h
978   include/grpc/impl/codegen/sync_posix.h
979   include/grpc/impl/codegen/sync_windows.h
980 )
981   string(REPLACE "include/" "" _path ${_hdr})
982   get_filename_component(_path ${_path} PATH)
983   install(FILES ${_hdr}
984     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
985   )
986 endforeach()
987
988
989 if (gRPC_INSTALL)
990   install(TARGETS gpr EXPORT gRPCTargets
991     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
992     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
993     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
994   )
995 endif()
996
997
998 add_library(grpc
999   src/core/lib/surface/init.cc
1000   src/core/lib/avl/avl.cc
1001   src/core/lib/backoff/backoff.cc
1002   src/core/lib/channel/channel_args.cc
1003   src/core/lib/channel/channel_stack.cc
1004   src/core/lib/channel/channel_stack_builder.cc
1005   src/core/lib/channel/channel_trace.cc
1006   src/core/lib/channel/channelz.cc
1007   src/core/lib/channel/channelz_registry.cc
1008   src/core/lib/channel/connected_channel.cc
1009   src/core/lib/channel/handshaker.cc
1010   src/core/lib/channel/handshaker_registry.cc
1011   src/core/lib/channel/status_util.cc
1012   src/core/lib/compression/compression.cc
1013   src/core/lib/compression/compression_args.cc
1014   src/core/lib/compression/compression_internal.cc
1015   src/core/lib/compression/message_compress.cc
1016   src/core/lib/compression/stream_compression.cc
1017   src/core/lib/compression/stream_compression_gzip.cc
1018   src/core/lib/compression/stream_compression_identity.cc
1019   src/core/lib/debug/stats.cc
1020   src/core/lib/debug/stats_data.cc
1021   src/core/lib/http/format_request.cc
1022   src/core/lib/http/httpcli.cc
1023   src/core/lib/http/parser.cc
1024   src/core/lib/iomgr/buffer_list.cc
1025   src/core/lib/iomgr/call_combiner.cc
1026   src/core/lib/iomgr/cfstream_handle.cc
1027   src/core/lib/iomgr/combiner.cc
1028   src/core/lib/iomgr/endpoint.cc
1029   src/core/lib/iomgr/endpoint_cfstream.cc
1030   src/core/lib/iomgr/endpoint_pair_posix.cc
1031   src/core/lib/iomgr/endpoint_pair_uv.cc
1032   src/core/lib/iomgr/endpoint_pair_windows.cc
1033   src/core/lib/iomgr/error.cc
1034   src/core/lib/iomgr/error_cfstream.cc
1035   src/core/lib/iomgr/ev_epoll1_linux.cc
1036   src/core/lib/iomgr/ev_epollex_linux.cc
1037   src/core/lib/iomgr/ev_poll_posix.cc
1038   src/core/lib/iomgr/ev_posix.cc
1039   src/core/lib/iomgr/ev_windows.cc
1040   src/core/lib/iomgr/exec_ctx.cc
1041   src/core/lib/iomgr/executor.cc
1042   src/core/lib/iomgr/executor/mpmcqueue.cc
1043   src/core/lib/iomgr/executor/threadpool.cc
1044   src/core/lib/iomgr/fork_posix.cc
1045   src/core/lib/iomgr/fork_windows.cc
1046   src/core/lib/iomgr/gethostname_fallback.cc
1047   src/core/lib/iomgr/gethostname_host_name_max.cc
1048   src/core/lib/iomgr/gethostname_sysconf.cc
1049   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
1050   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
1051   src/core/lib/iomgr/internal_errqueue.cc
1052   src/core/lib/iomgr/iocp_windows.cc
1053   src/core/lib/iomgr/iomgr.cc
1054   src/core/lib/iomgr/iomgr_custom.cc
1055   src/core/lib/iomgr/iomgr_internal.cc
1056   src/core/lib/iomgr/iomgr_posix.cc
1057   src/core/lib/iomgr/iomgr_posix_cfstream.cc
1058   src/core/lib/iomgr/iomgr_uv.cc
1059   src/core/lib/iomgr/iomgr_windows.cc
1060   src/core/lib/iomgr/is_epollexclusive_available.cc
1061   src/core/lib/iomgr/load_file.cc
1062   src/core/lib/iomgr/lockfree_event.cc
1063   src/core/lib/iomgr/polling_entity.cc
1064   src/core/lib/iomgr/pollset.cc
1065   src/core/lib/iomgr/pollset_custom.cc
1066   src/core/lib/iomgr/pollset_set.cc
1067   src/core/lib/iomgr/pollset_set_custom.cc
1068   src/core/lib/iomgr/pollset_set_windows.cc
1069   src/core/lib/iomgr/pollset_uv.cc
1070   src/core/lib/iomgr/pollset_windows.cc
1071   src/core/lib/iomgr/resolve_address.cc
1072   src/core/lib/iomgr/resolve_address_custom.cc
1073   src/core/lib/iomgr/resolve_address_posix.cc
1074   src/core/lib/iomgr/resolve_address_windows.cc
1075   src/core/lib/iomgr/resource_quota.cc
1076   src/core/lib/iomgr/sockaddr_utils.cc
1077   src/core/lib/iomgr/socket_factory_posix.cc
1078   src/core/lib/iomgr/socket_mutator.cc
1079   src/core/lib/iomgr/socket_utils_common_posix.cc
1080   src/core/lib/iomgr/socket_utils_linux.cc
1081   src/core/lib/iomgr/socket_utils_posix.cc
1082   src/core/lib/iomgr/socket_utils_uv.cc
1083   src/core/lib/iomgr/socket_utils_windows.cc
1084   src/core/lib/iomgr/socket_windows.cc
1085   src/core/lib/iomgr/tcp_client.cc
1086   src/core/lib/iomgr/tcp_client_cfstream.cc
1087   src/core/lib/iomgr/tcp_client_custom.cc
1088   src/core/lib/iomgr/tcp_client_posix.cc
1089   src/core/lib/iomgr/tcp_client_windows.cc
1090   src/core/lib/iomgr/tcp_custom.cc
1091   src/core/lib/iomgr/tcp_posix.cc
1092   src/core/lib/iomgr/tcp_server.cc
1093   src/core/lib/iomgr/tcp_server_custom.cc
1094   src/core/lib/iomgr/tcp_server_posix.cc
1095   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
1096   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
1097   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
1098   src/core/lib/iomgr/tcp_server_windows.cc
1099   src/core/lib/iomgr/tcp_uv.cc
1100   src/core/lib/iomgr/tcp_windows.cc
1101   src/core/lib/iomgr/time_averaged_stats.cc
1102   src/core/lib/iomgr/timer.cc
1103   src/core/lib/iomgr/timer_custom.cc
1104   src/core/lib/iomgr/timer_generic.cc
1105   src/core/lib/iomgr/timer_heap.cc
1106   src/core/lib/iomgr/timer_manager.cc
1107   src/core/lib/iomgr/timer_uv.cc
1108   src/core/lib/iomgr/udp_server.cc
1109   src/core/lib/iomgr/unix_sockets_posix.cc
1110   src/core/lib/iomgr/unix_sockets_posix_noop.cc
1111   src/core/lib/iomgr/wakeup_fd_eventfd.cc
1112   src/core/lib/iomgr/wakeup_fd_nospecial.cc
1113   src/core/lib/iomgr/wakeup_fd_pipe.cc
1114   src/core/lib/iomgr/wakeup_fd_posix.cc
1115   src/core/lib/json/json.cc
1116   src/core/lib/json/json_reader.cc
1117   src/core/lib/json/json_string.cc
1118   src/core/lib/json/json_writer.cc
1119   src/core/lib/slice/b64.cc
1120   src/core/lib/slice/percent_encoding.cc
1121   src/core/lib/slice/slice.cc
1122   src/core/lib/slice/slice_buffer.cc
1123   src/core/lib/slice/slice_intern.cc
1124   src/core/lib/slice/slice_string_helpers.cc
1125   src/core/lib/surface/api_trace.cc
1126   src/core/lib/surface/byte_buffer.cc
1127   src/core/lib/surface/byte_buffer_reader.cc
1128   src/core/lib/surface/call.cc
1129   src/core/lib/surface/call_details.cc
1130   src/core/lib/surface/call_log_batch.cc
1131   src/core/lib/surface/channel.cc
1132   src/core/lib/surface/channel_init.cc
1133   src/core/lib/surface/channel_ping.cc
1134   src/core/lib/surface/channel_stack_type.cc
1135   src/core/lib/surface/completion_queue.cc
1136   src/core/lib/surface/completion_queue_factory.cc
1137   src/core/lib/surface/event_string.cc
1138   src/core/lib/surface/lame_client.cc
1139   src/core/lib/surface/metadata_array.cc
1140   src/core/lib/surface/server.cc
1141   src/core/lib/surface/validate_metadata.cc
1142   src/core/lib/surface/version.cc
1143   src/core/lib/transport/bdp_estimator.cc
1144   src/core/lib/transport/byte_stream.cc
1145   src/core/lib/transport/connectivity_state.cc
1146   src/core/lib/transport/error_utils.cc
1147   src/core/lib/transport/metadata.cc
1148   src/core/lib/transport/metadata_batch.cc
1149   src/core/lib/transport/pid_controller.cc
1150   src/core/lib/transport/static_metadata.cc
1151   src/core/lib/transport/status_conversion.cc
1152   src/core/lib/transport/status_metadata.cc
1153   src/core/lib/transport/timeout_encoding.cc
1154   src/core/lib/transport/transport.cc
1155   src/core/lib/transport/transport_op_string.cc
1156   src/core/lib/uri/uri_parser.cc
1157   src/core/lib/debug/trace.cc
1158   src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc
1159   src/core/ext/transport/chttp2/transport/bin_decoder.cc
1160   src/core/ext/transport/chttp2/transport/bin_encoder.cc
1161   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
1162   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
1163   src/core/ext/transport/chttp2/transport/context_list.cc
1164   src/core/ext/transport/chttp2/transport/flow_control.cc
1165   src/core/ext/transport/chttp2/transport/frame_data.cc
1166   src/core/ext/transport/chttp2/transport/frame_goaway.cc
1167   src/core/ext/transport/chttp2/transport/frame_ping.cc
1168   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
1169   src/core/ext/transport/chttp2/transport/frame_settings.cc
1170   src/core/ext/transport/chttp2/transport/frame_window_update.cc
1171   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
1172   src/core/ext/transport/chttp2/transport/hpack_parser.cc
1173   src/core/ext/transport/chttp2/transport/hpack_table.cc
1174   src/core/ext/transport/chttp2/transport/http2_settings.cc
1175   src/core/ext/transport/chttp2/transport/huffsyms.cc
1176   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
1177   src/core/ext/transport/chttp2/transport/parsing.cc
1178   src/core/ext/transport/chttp2/transport/stream_lists.cc
1179   src/core/ext/transport/chttp2/transport/stream_map.cc
1180   src/core/ext/transport/chttp2/transport/varint.cc
1181   src/core/ext/transport/chttp2/transport/writing.cc
1182   src/core/ext/transport/chttp2/alpn/alpn.cc
1183   src/core/ext/filters/http/client/http_client_filter.cc
1184   src/core/ext/filters/http/http_filters_plugin.cc
1185   src/core/ext/filters/http/message_compress/message_compress_filter.cc
1186   src/core/ext/filters/http/server/http_server_filter.cc
1187   src/core/lib/http/httpcli_security_connector.cc
1188   src/core/lib/security/context/security_context.cc
1189   src/core/lib/security/credentials/alts/alts_credentials.cc
1190   src/core/lib/security/credentials/composite/composite_credentials.cc
1191   src/core/lib/security/credentials/credentials.cc
1192   src/core/lib/security/credentials/credentials_metadata.cc
1193   src/core/lib/security/credentials/fake/fake_credentials.cc
1194   src/core/lib/security/credentials/google_default/credentials_generic.cc
1195   src/core/lib/security/credentials/google_default/google_default_credentials.cc
1196   src/core/lib/security/credentials/iam/iam_credentials.cc
1197   src/core/lib/security/credentials/jwt/json_token.cc
1198   src/core/lib/security/credentials/jwt/jwt_credentials.cc
1199   src/core/lib/security/credentials/jwt/jwt_verifier.cc
1200   src/core/lib/security/credentials/local/local_credentials.cc
1201   src/core/lib/security/credentials/oauth2/oauth2_credentials.cc
1202   src/core/lib/security/credentials/plugin/plugin_credentials.cc
1203   src/core/lib/security/credentials/ssl/ssl_credentials.cc
1204   src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc
1205   src/core/lib/security/credentials/tls/spiffe_credentials.cc
1206   src/core/lib/security/security_connector/alts/alts_security_connector.cc
1207   src/core/lib/security/security_connector/fake/fake_security_connector.cc
1208   src/core/lib/security/security_connector/load_system_roots_fallback.cc
1209   src/core/lib/security/security_connector/load_system_roots_linux.cc
1210   src/core/lib/security/security_connector/local/local_security_connector.cc
1211   src/core/lib/security/security_connector/security_connector.cc
1212   src/core/lib/security/security_connector/ssl/ssl_security_connector.cc
1213   src/core/lib/security/security_connector/ssl_utils.cc
1214   src/core/lib/security/security_connector/tls/spiffe_security_connector.cc
1215   src/core/lib/security/transport/client_auth_filter.cc
1216   src/core/lib/security/transport/secure_endpoint.cc
1217   src/core/lib/security/transport/security_handshaker.cc
1218   src/core/lib/security/transport/server_auth_filter.cc
1219   src/core/lib/security/transport/target_authority_table.cc
1220   src/core/lib/security/transport/tsi_error.cc
1221   src/core/lib/security/util/json_util.cc
1222   src/core/lib/surface/init_secure.cc
1223   src/core/tsi/alts/crypt/aes_gcm.cc
1224   src/core/tsi/alts/crypt/gsec.cc
1225   src/core/tsi/alts/frame_protector/alts_counter.cc
1226   src/core/tsi/alts/frame_protector/alts_crypter.cc
1227   src/core/tsi/alts/frame_protector/alts_frame_protector.cc
1228   src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc
1229   src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc
1230   src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc
1231   src/core/tsi/alts/frame_protector/frame_handler.cc
1232   src/core/tsi/alts/handshaker/alts_handshaker_client.cc
1233   src/core/tsi/alts/handshaker/alts_shared_resource.cc
1234   src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc
1235   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc
1236   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc
1237   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc
1238   src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc
1239   src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc
1240   src/core/lib/security/credentials/alts/check_gcp_environment.cc
1241   src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc
1242   src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc
1243   src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc
1244   src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc
1245   src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc
1246   src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc
1247   src/core/tsi/alts/handshaker/alts_handshaker_service_api.cc
1248   src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.cc
1249   src/core/tsi/alts/handshaker/alts_tsi_utils.cc
1250   src/core/tsi/alts/handshaker/transport_security_common_api.cc
1251   src/core/tsi/alts/handshaker/altscontext.pb.c
1252   src/core/tsi/alts/handshaker/handshaker.pb.c
1253   src/core/tsi/alts/handshaker/transport_security_common.pb.c
1254   third_party/nanopb/pb_common.c
1255   third_party/nanopb/pb_decode.c
1256   third_party/nanopb/pb_encode.c
1257   src/core/tsi/transport_security.cc
1258   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
1259   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
1260   src/core/ext/transport/chttp2/client/authority.cc
1261   src/core/ext/transport/chttp2/client/chttp2_connector.cc
1262   src/core/ext/filters/client_channel/backup_poller.cc
1263   src/core/ext/filters/client_channel/channel_connectivity.cc
1264   src/core/ext/filters/client_channel/client_channel.cc
1265   src/core/ext/filters/client_channel/client_channel_channelz.cc
1266   src/core/ext/filters/client_channel/client_channel_factory.cc
1267   src/core/ext/filters/client_channel/client_channel_plugin.cc
1268   src/core/ext/filters/client_channel/connector.cc
1269   src/core/ext/filters/client_channel/global_subchannel_pool.cc
1270   src/core/ext/filters/client_channel/health/health_check_client.cc
1271   src/core/ext/filters/client_channel/http_connect_handshaker.cc
1272   src/core/ext/filters/client_channel/http_proxy.cc
1273   src/core/ext/filters/client_channel/lb_policy.cc
1274   src/core/ext/filters/client_channel/lb_policy_registry.cc
1275   src/core/ext/filters/client_channel/local_subchannel_pool.cc
1276   src/core/ext/filters/client_channel/parse_address.cc
1277   src/core/ext/filters/client_channel/proxy_mapper.cc
1278   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
1279   src/core/ext/filters/client_channel/resolver.cc
1280   src/core/ext/filters/client_channel/resolver_registry.cc
1281   src/core/ext/filters/client_channel/resolver_result_parsing.cc
1282   src/core/ext/filters/client_channel/resolving_lb_policy.cc
1283   src/core/ext/filters/client_channel/retry_throttle.cc
1284   src/core/ext/filters/client_channel/server_address.cc
1285   src/core/ext/filters/client_channel/service_config.cc
1286   src/core/ext/filters/client_channel/subchannel.cc
1287   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
1288   src/core/ext/filters/deadline/deadline_filter.cc
1289   src/core/ext/filters/client_channel/health/health.pb.c
1290   src/core/tsi/fake_transport_security.cc
1291   src/core/tsi/local_transport_security.cc
1292   src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc
1293   src/core/tsi/ssl/session_cache/ssl_session_cache.cc
1294   src/core/tsi/ssl/session_cache/ssl_session_openssl.cc
1295   src/core/tsi/ssl_transport_security.cc
1296   src/core/tsi/transport_security_grpc.cc
1297   src/core/ext/transport/chttp2/server/chttp2_server.cc
1298   src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc
1299   src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc
1300   src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc
1301   src/core/ext/transport/inproc/inproc_plugin.cc
1302   src/core/ext/transport/inproc/inproc_transport.cc
1303   src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc
1304   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc
1305   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc
1306   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc
1307   src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc
1308   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
1309   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.c
1310   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.c
1311   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
1312   src/core/ext/filters/client_channel/lb_policy/xds/xds.cc
1313   src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc
1314   src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc
1315   src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc
1316   src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
1317   src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
1318   src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc
1319   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc
1320   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc
1321   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc
1322   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc
1323   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc
1324   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc
1325   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc
1326   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc
1327   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc
1328   src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc
1329   src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc
1330   src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc
1331   src/core/ext/filters/census/grpc_context.cc
1332   src/core/ext/filters/client_idle/client_idle_filter.cc
1333   src/core/ext/filters/max_age/max_age_filter.cc
1334   src/core/ext/filters/message_size/message_size_filter.cc
1335   src/core/ext/filters/http/client_authority_filter.cc
1336   src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc
1337   src/core/ext/filters/workarounds/workaround_utils.cc
1338   src/core/plugin_registry/grpc_plugin_registry.cc
1339 )
1340
1341 if(WIN32 AND MSVC)
1342   set_target_properties(grpc PROPERTIES COMPILE_PDB_NAME "grpc"
1343     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
1344   )
1345   if (gRPC_INSTALL)
1346     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc.pdb
1347       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
1348     )
1349   endif()
1350 endif()
1351
1352
1353 target_include_directories(grpc
1354   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
1355   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1356   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
1357   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
1358   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
1359   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
1360   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
1361   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
1362   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
1363   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
1364 )
1365   # avoid dependency on libstdc++
1366   if (_gRPC_CORE_NOSTDCXX_FLAGS)
1367     set_target_properties(grpc PROPERTIES LINKER_LANGUAGE C)
1368     # only use the flags for C++ source files
1369     target_compile_options(grpc PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
1370   endif()
1371 target_link_libraries(grpc
1372   ${_gRPC_BASELIB_LIBRARIES}
1373   ${_gRPC_SSL_LIBRARIES}
1374   ${_gRPC_ZLIB_LIBRARIES}
1375   ${_gRPC_CARES_LIBRARIES}
1376   ${_gRPC_ADDRESS_SORTING_LIBRARIES}
1377   ${_gRPC_ALLTARGETS_LIBRARIES}
1378   gpr
1379 )
1380 if (_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
1381   target_link_libraries(grpc "-framework CoreFoundation")
1382 endif()
1383
1384 foreach(_hdr
1385   include/grpc/impl/codegen/byte_buffer.h
1386   include/grpc/impl/codegen/byte_buffer_reader.h
1387   include/grpc/impl/codegen/compression_types.h
1388   include/grpc/impl/codegen/connectivity_state.h
1389   include/grpc/impl/codegen/grpc_types.h
1390   include/grpc/impl/codegen/propagation_bits.h
1391   include/grpc/impl/codegen/slice.h
1392   include/grpc/impl/codegen/status.h
1393   include/grpc/impl/codegen/atm.h
1394   include/grpc/impl/codegen/atm_gcc_atomic.h
1395   include/grpc/impl/codegen/atm_gcc_sync.h
1396   include/grpc/impl/codegen/atm_windows.h
1397   include/grpc/impl/codegen/fork.h
1398   include/grpc/impl/codegen/gpr_slice.h
1399   include/grpc/impl/codegen/gpr_types.h
1400   include/grpc/impl/codegen/log.h
1401   include/grpc/impl/codegen/port_platform.h
1402   include/grpc/impl/codegen/sync.h
1403   include/grpc/impl/codegen/sync_custom.h
1404   include/grpc/impl/codegen/sync_generic.h
1405   include/grpc/impl/codegen/sync_posix.h
1406   include/grpc/impl/codegen/sync_windows.h
1407   include/grpc/grpc_security.h
1408   include/grpc/byte_buffer.h
1409   include/grpc/byte_buffer_reader.h
1410   include/grpc/compression.h
1411   include/grpc/fork.h
1412   include/grpc/grpc.h
1413   include/grpc/grpc_posix.h
1414   include/grpc/grpc_security_constants.h
1415   include/grpc/load_reporting.h
1416   include/grpc/slice.h
1417   include/grpc/slice_buffer.h
1418   include/grpc/status.h
1419   include/grpc/support/workaround_list.h
1420   include/grpc/census.h
1421 )
1422   string(REPLACE "include/" "" _path ${_hdr})
1423   get_filename_component(_path ${_path} PATH)
1424   install(FILES ${_hdr}
1425     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
1426   )
1427 endforeach()
1428
1429
1430 if (gRPC_INSTALL)
1431   install(TARGETS grpc EXPORT gRPCTargets
1432     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
1433     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
1434     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
1435   )
1436 endif()
1437
1438
1439 add_library(grpc_cronet
1440   src/core/ext/transport/cronet/plugin_registry/grpc_cronet_plugin_registry.cc
1441   src/core/lib/surface/init.cc
1442   src/core/lib/avl/avl.cc
1443   src/core/lib/backoff/backoff.cc
1444   src/core/lib/channel/channel_args.cc
1445   src/core/lib/channel/channel_stack.cc
1446   src/core/lib/channel/channel_stack_builder.cc
1447   src/core/lib/channel/channel_trace.cc
1448   src/core/lib/channel/channelz.cc
1449   src/core/lib/channel/channelz_registry.cc
1450   src/core/lib/channel/connected_channel.cc
1451   src/core/lib/channel/handshaker.cc
1452   src/core/lib/channel/handshaker_registry.cc
1453   src/core/lib/channel/status_util.cc
1454   src/core/lib/compression/compression.cc
1455   src/core/lib/compression/compression_args.cc
1456   src/core/lib/compression/compression_internal.cc
1457   src/core/lib/compression/message_compress.cc
1458   src/core/lib/compression/stream_compression.cc
1459   src/core/lib/compression/stream_compression_gzip.cc
1460   src/core/lib/compression/stream_compression_identity.cc
1461   src/core/lib/debug/stats.cc
1462   src/core/lib/debug/stats_data.cc
1463   src/core/lib/http/format_request.cc
1464   src/core/lib/http/httpcli.cc
1465   src/core/lib/http/parser.cc
1466   src/core/lib/iomgr/buffer_list.cc
1467   src/core/lib/iomgr/call_combiner.cc
1468   src/core/lib/iomgr/cfstream_handle.cc
1469   src/core/lib/iomgr/combiner.cc
1470   src/core/lib/iomgr/endpoint.cc
1471   src/core/lib/iomgr/endpoint_cfstream.cc
1472   src/core/lib/iomgr/endpoint_pair_posix.cc
1473   src/core/lib/iomgr/endpoint_pair_uv.cc
1474   src/core/lib/iomgr/endpoint_pair_windows.cc
1475   src/core/lib/iomgr/error.cc
1476   src/core/lib/iomgr/error_cfstream.cc
1477   src/core/lib/iomgr/ev_epoll1_linux.cc
1478   src/core/lib/iomgr/ev_epollex_linux.cc
1479   src/core/lib/iomgr/ev_poll_posix.cc
1480   src/core/lib/iomgr/ev_posix.cc
1481   src/core/lib/iomgr/ev_windows.cc
1482   src/core/lib/iomgr/exec_ctx.cc
1483   src/core/lib/iomgr/executor.cc
1484   src/core/lib/iomgr/executor/mpmcqueue.cc
1485   src/core/lib/iomgr/executor/threadpool.cc
1486   src/core/lib/iomgr/fork_posix.cc
1487   src/core/lib/iomgr/fork_windows.cc
1488   src/core/lib/iomgr/gethostname_fallback.cc
1489   src/core/lib/iomgr/gethostname_host_name_max.cc
1490   src/core/lib/iomgr/gethostname_sysconf.cc
1491   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
1492   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
1493   src/core/lib/iomgr/internal_errqueue.cc
1494   src/core/lib/iomgr/iocp_windows.cc
1495   src/core/lib/iomgr/iomgr.cc
1496   src/core/lib/iomgr/iomgr_custom.cc
1497   src/core/lib/iomgr/iomgr_internal.cc
1498   src/core/lib/iomgr/iomgr_posix.cc
1499   src/core/lib/iomgr/iomgr_posix_cfstream.cc
1500   src/core/lib/iomgr/iomgr_uv.cc
1501   src/core/lib/iomgr/iomgr_windows.cc
1502   src/core/lib/iomgr/is_epollexclusive_available.cc
1503   src/core/lib/iomgr/load_file.cc
1504   src/core/lib/iomgr/lockfree_event.cc
1505   src/core/lib/iomgr/polling_entity.cc
1506   src/core/lib/iomgr/pollset.cc
1507   src/core/lib/iomgr/pollset_custom.cc
1508   src/core/lib/iomgr/pollset_set.cc
1509   src/core/lib/iomgr/pollset_set_custom.cc
1510   src/core/lib/iomgr/pollset_set_windows.cc
1511   src/core/lib/iomgr/pollset_uv.cc
1512   src/core/lib/iomgr/pollset_windows.cc
1513   src/core/lib/iomgr/resolve_address.cc
1514   src/core/lib/iomgr/resolve_address_custom.cc
1515   src/core/lib/iomgr/resolve_address_posix.cc
1516   src/core/lib/iomgr/resolve_address_windows.cc
1517   src/core/lib/iomgr/resource_quota.cc
1518   src/core/lib/iomgr/sockaddr_utils.cc
1519   src/core/lib/iomgr/socket_factory_posix.cc
1520   src/core/lib/iomgr/socket_mutator.cc
1521   src/core/lib/iomgr/socket_utils_common_posix.cc
1522   src/core/lib/iomgr/socket_utils_linux.cc
1523   src/core/lib/iomgr/socket_utils_posix.cc
1524   src/core/lib/iomgr/socket_utils_uv.cc
1525   src/core/lib/iomgr/socket_utils_windows.cc
1526   src/core/lib/iomgr/socket_windows.cc
1527   src/core/lib/iomgr/tcp_client.cc
1528   src/core/lib/iomgr/tcp_client_cfstream.cc
1529   src/core/lib/iomgr/tcp_client_custom.cc
1530   src/core/lib/iomgr/tcp_client_posix.cc
1531   src/core/lib/iomgr/tcp_client_windows.cc
1532   src/core/lib/iomgr/tcp_custom.cc
1533   src/core/lib/iomgr/tcp_posix.cc
1534   src/core/lib/iomgr/tcp_server.cc
1535   src/core/lib/iomgr/tcp_server_custom.cc
1536   src/core/lib/iomgr/tcp_server_posix.cc
1537   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
1538   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
1539   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
1540   src/core/lib/iomgr/tcp_server_windows.cc
1541   src/core/lib/iomgr/tcp_uv.cc
1542   src/core/lib/iomgr/tcp_windows.cc
1543   src/core/lib/iomgr/time_averaged_stats.cc
1544   src/core/lib/iomgr/timer.cc
1545   src/core/lib/iomgr/timer_custom.cc
1546   src/core/lib/iomgr/timer_generic.cc
1547   src/core/lib/iomgr/timer_heap.cc
1548   src/core/lib/iomgr/timer_manager.cc
1549   src/core/lib/iomgr/timer_uv.cc
1550   src/core/lib/iomgr/udp_server.cc
1551   src/core/lib/iomgr/unix_sockets_posix.cc
1552   src/core/lib/iomgr/unix_sockets_posix_noop.cc
1553   src/core/lib/iomgr/wakeup_fd_eventfd.cc
1554   src/core/lib/iomgr/wakeup_fd_nospecial.cc
1555   src/core/lib/iomgr/wakeup_fd_pipe.cc
1556   src/core/lib/iomgr/wakeup_fd_posix.cc
1557   src/core/lib/json/json.cc
1558   src/core/lib/json/json_reader.cc
1559   src/core/lib/json/json_string.cc
1560   src/core/lib/json/json_writer.cc
1561   src/core/lib/slice/b64.cc
1562   src/core/lib/slice/percent_encoding.cc
1563   src/core/lib/slice/slice.cc
1564   src/core/lib/slice/slice_buffer.cc
1565   src/core/lib/slice/slice_intern.cc
1566   src/core/lib/slice/slice_string_helpers.cc
1567   src/core/lib/surface/api_trace.cc
1568   src/core/lib/surface/byte_buffer.cc
1569   src/core/lib/surface/byte_buffer_reader.cc
1570   src/core/lib/surface/call.cc
1571   src/core/lib/surface/call_details.cc
1572   src/core/lib/surface/call_log_batch.cc
1573   src/core/lib/surface/channel.cc
1574   src/core/lib/surface/channel_init.cc
1575   src/core/lib/surface/channel_ping.cc
1576   src/core/lib/surface/channel_stack_type.cc
1577   src/core/lib/surface/completion_queue.cc
1578   src/core/lib/surface/completion_queue_factory.cc
1579   src/core/lib/surface/event_string.cc
1580   src/core/lib/surface/lame_client.cc
1581   src/core/lib/surface/metadata_array.cc
1582   src/core/lib/surface/server.cc
1583   src/core/lib/surface/validate_metadata.cc
1584   src/core/lib/surface/version.cc
1585   src/core/lib/transport/bdp_estimator.cc
1586   src/core/lib/transport/byte_stream.cc
1587   src/core/lib/transport/connectivity_state.cc
1588   src/core/lib/transport/error_utils.cc
1589   src/core/lib/transport/metadata.cc
1590   src/core/lib/transport/metadata_batch.cc
1591   src/core/lib/transport/pid_controller.cc
1592   src/core/lib/transport/static_metadata.cc
1593   src/core/lib/transport/status_conversion.cc
1594   src/core/lib/transport/status_metadata.cc
1595   src/core/lib/transport/timeout_encoding.cc
1596   src/core/lib/transport/transport.cc
1597   src/core/lib/transport/transport_op_string.cc
1598   src/core/lib/uri/uri_parser.cc
1599   src/core/lib/debug/trace.cc
1600   src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc
1601   src/core/ext/transport/cronet/transport/cronet_api_dummy.cc
1602   src/core/ext/transport/cronet/transport/cronet_transport.cc
1603   src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc
1604   src/core/ext/transport/chttp2/transport/bin_decoder.cc
1605   src/core/ext/transport/chttp2/transport/bin_encoder.cc
1606   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
1607   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
1608   src/core/ext/transport/chttp2/transport/context_list.cc
1609   src/core/ext/transport/chttp2/transport/flow_control.cc
1610   src/core/ext/transport/chttp2/transport/frame_data.cc
1611   src/core/ext/transport/chttp2/transport/frame_goaway.cc
1612   src/core/ext/transport/chttp2/transport/frame_ping.cc
1613   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
1614   src/core/ext/transport/chttp2/transport/frame_settings.cc
1615   src/core/ext/transport/chttp2/transport/frame_window_update.cc
1616   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
1617   src/core/ext/transport/chttp2/transport/hpack_parser.cc
1618   src/core/ext/transport/chttp2/transport/hpack_table.cc
1619   src/core/ext/transport/chttp2/transport/http2_settings.cc
1620   src/core/ext/transport/chttp2/transport/huffsyms.cc
1621   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
1622   src/core/ext/transport/chttp2/transport/parsing.cc
1623   src/core/ext/transport/chttp2/transport/stream_lists.cc
1624   src/core/ext/transport/chttp2/transport/stream_map.cc
1625   src/core/ext/transport/chttp2/transport/varint.cc
1626   src/core/ext/transport/chttp2/transport/writing.cc
1627   src/core/ext/transport/chttp2/alpn/alpn.cc
1628   src/core/ext/filters/http/client/http_client_filter.cc
1629   src/core/ext/filters/http/http_filters_plugin.cc
1630   src/core/ext/filters/http/message_compress/message_compress_filter.cc
1631   src/core/ext/filters/http/server/http_server_filter.cc
1632   src/core/ext/filters/client_channel/backup_poller.cc
1633   src/core/ext/filters/client_channel/channel_connectivity.cc
1634   src/core/ext/filters/client_channel/client_channel.cc
1635   src/core/ext/filters/client_channel/client_channel_channelz.cc
1636   src/core/ext/filters/client_channel/client_channel_factory.cc
1637   src/core/ext/filters/client_channel/client_channel_plugin.cc
1638   src/core/ext/filters/client_channel/connector.cc
1639   src/core/ext/filters/client_channel/global_subchannel_pool.cc
1640   src/core/ext/filters/client_channel/health/health_check_client.cc
1641   src/core/ext/filters/client_channel/http_connect_handshaker.cc
1642   src/core/ext/filters/client_channel/http_proxy.cc
1643   src/core/ext/filters/client_channel/lb_policy.cc
1644   src/core/ext/filters/client_channel/lb_policy_registry.cc
1645   src/core/ext/filters/client_channel/local_subchannel_pool.cc
1646   src/core/ext/filters/client_channel/parse_address.cc
1647   src/core/ext/filters/client_channel/proxy_mapper.cc
1648   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
1649   src/core/ext/filters/client_channel/resolver.cc
1650   src/core/ext/filters/client_channel/resolver_registry.cc
1651   src/core/ext/filters/client_channel/resolver_result_parsing.cc
1652   src/core/ext/filters/client_channel/resolving_lb_policy.cc
1653   src/core/ext/filters/client_channel/retry_throttle.cc
1654   src/core/ext/filters/client_channel/server_address.cc
1655   src/core/ext/filters/client_channel/service_config.cc
1656   src/core/ext/filters/client_channel/subchannel.cc
1657   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
1658   src/core/ext/filters/deadline/deadline_filter.cc
1659   src/core/ext/filters/client_channel/health/health.pb.c
1660   third_party/nanopb/pb_common.c
1661   third_party/nanopb/pb_decode.c
1662   third_party/nanopb/pb_encode.c
1663   src/core/lib/http/httpcli_security_connector.cc
1664   src/core/lib/security/context/security_context.cc
1665   src/core/lib/security/credentials/alts/alts_credentials.cc
1666   src/core/lib/security/credentials/composite/composite_credentials.cc
1667   src/core/lib/security/credentials/credentials.cc
1668   src/core/lib/security/credentials/credentials_metadata.cc
1669   src/core/lib/security/credentials/fake/fake_credentials.cc
1670   src/core/lib/security/credentials/google_default/credentials_generic.cc
1671   src/core/lib/security/credentials/google_default/google_default_credentials.cc
1672   src/core/lib/security/credentials/iam/iam_credentials.cc
1673   src/core/lib/security/credentials/jwt/json_token.cc
1674   src/core/lib/security/credentials/jwt/jwt_credentials.cc
1675   src/core/lib/security/credentials/jwt/jwt_verifier.cc
1676   src/core/lib/security/credentials/local/local_credentials.cc
1677   src/core/lib/security/credentials/oauth2/oauth2_credentials.cc
1678   src/core/lib/security/credentials/plugin/plugin_credentials.cc
1679   src/core/lib/security/credentials/ssl/ssl_credentials.cc
1680   src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc
1681   src/core/lib/security/credentials/tls/spiffe_credentials.cc
1682   src/core/lib/security/security_connector/alts/alts_security_connector.cc
1683   src/core/lib/security/security_connector/fake/fake_security_connector.cc
1684   src/core/lib/security/security_connector/load_system_roots_fallback.cc
1685   src/core/lib/security/security_connector/load_system_roots_linux.cc
1686   src/core/lib/security/security_connector/local/local_security_connector.cc
1687   src/core/lib/security/security_connector/security_connector.cc
1688   src/core/lib/security/security_connector/ssl/ssl_security_connector.cc
1689   src/core/lib/security/security_connector/ssl_utils.cc
1690   src/core/lib/security/security_connector/tls/spiffe_security_connector.cc
1691   src/core/lib/security/transport/client_auth_filter.cc
1692   src/core/lib/security/transport/secure_endpoint.cc
1693   src/core/lib/security/transport/security_handshaker.cc
1694   src/core/lib/security/transport/server_auth_filter.cc
1695   src/core/lib/security/transport/target_authority_table.cc
1696   src/core/lib/security/transport/tsi_error.cc
1697   src/core/lib/security/util/json_util.cc
1698   src/core/lib/surface/init_secure.cc
1699   src/core/tsi/alts/crypt/aes_gcm.cc
1700   src/core/tsi/alts/crypt/gsec.cc
1701   src/core/tsi/alts/frame_protector/alts_counter.cc
1702   src/core/tsi/alts/frame_protector/alts_crypter.cc
1703   src/core/tsi/alts/frame_protector/alts_frame_protector.cc
1704   src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc
1705   src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc
1706   src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc
1707   src/core/tsi/alts/frame_protector/frame_handler.cc
1708   src/core/tsi/alts/handshaker/alts_handshaker_client.cc
1709   src/core/tsi/alts/handshaker/alts_shared_resource.cc
1710   src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc
1711   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc
1712   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc
1713   src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc
1714   src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc
1715   src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc
1716   src/core/lib/security/credentials/alts/check_gcp_environment.cc
1717   src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc
1718   src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc
1719   src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc
1720   src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc
1721   src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc
1722   src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc
1723   src/core/tsi/alts/handshaker/alts_handshaker_service_api.cc
1724   src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.cc
1725   src/core/tsi/alts/handshaker/alts_tsi_utils.cc
1726   src/core/tsi/alts/handshaker/transport_security_common_api.cc
1727   src/core/tsi/alts/handshaker/altscontext.pb.c
1728   src/core/tsi/alts/handshaker/handshaker.pb.c
1729   src/core/tsi/alts/handshaker/transport_security_common.pb.c
1730   src/core/tsi/transport_security.cc
1731   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
1732   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
1733   src/core/ext/transport/chttp2/client/authority.cc
1734   src/core/ext/transport/chttp2/client/chttp2_connector.cc
1735   src/core/tsi/fake_transport_security.cc
1736   src/core/tsi/local_transport_security.cc
1737   src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc
1738   src/core/tsi/ssl/session_cache/ssl_session_cache.cc
1739   src/core/tsi/ssl/session_cache/ssl_session_openssl.cc
1740   src/core/tsi/ssl_transport_security.cc
1741   src/core/tsi/transport_security_grpc.cc
1742 )
1743
1744 if(WIN32 AND MSVC)
1745   set_target_properties(grpc_cronet PROPERTIES COMPILE_PDB_NAME "grpc_cronet"
1746     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
1747   )
1748   if (gRPC_INSTALL)
1749     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_cronet.pdb
1750       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
1751     )
1752   endif()
1753 endif()
1754
1755
1756 target_include_directories(grpc_cronet
1757   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
1758   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1759   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
1760   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
1761   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
1762   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
1763   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
1764   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
1765   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
1766   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
1767 )
1768   # avoid dependency on libstdc++
1769   if (_gRPC_CORE_NOSTDCXX_FLAGS)
1770     set_target_properties(grpc_cronet PROPERTIES LINKER_LANGUAGE C)
1771     # only use the flags for C++ source files
1772     target_compile_options(grpc_cronet PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
1773   endif()
1774 target_link_libraries(grpc_cronet
1775   ${_gRPC_BASELIB_LIBRARIES}
1776   ${_gRPC_SSL_LIBRARIES}
1777   ${_gRPC_ZLIB_LIBRARIES}
1778   ${_gRPC_CARES_LIBRARIES}
1779   ${_gRPC_ADDRESS_SORTING_LIBRARIES}
1780   ${_gRPC_ALLTARGETS_LIBRARIES}
1781   gpr
1782 )
1783 if (_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
1784   target_link_libraries(grpc_cronet "-framework CoreFoundation")
1785 endif()
1786
1787 foreach(_hdr
1788   include/grpc/impl/codegen/byte_buffer.h
1789   include/grpc/impl/codegen/byte_buffer_reader.h
1790   include/grpc/impl/codegen/compression_types.h
1791   include/grpc/impl/codegen/connectivity_state.h
1792   include/grpc/impl/codegen/grpc_types.h
1793   include/grpc/impl/codegen/propagation_bits.h
1794   include/grpc/impl/codegen/slice.h
1795   include/grpc/impl/codegen/status.h
1796   include/grpc/impl/codegen/atm.h
1797   include/grpc/impl/codegen/atm_gcc_atomic.h
1798   include/grpc/impl/codegen/atm_gcc_sync.h
1799   include/grpc/impl/codegen/atm_windows.h
1800   include/grpc/impl/codegen/fork.h
1801   include/grpc/impl/codegen/gpr_slice.h
1802   include/grpc/impl/codegen/gpr_types.h
1803   include/grpc/impl/codegen/log.h
1804   include/grpc/impl/codegen/port_platform.h
1805   include/grpc/impl/codegen/sync.h
1806   include/grpc/impl/codegen/sync_custom.h
1807   include/grpc/impl/codegen/sync_generic.h
1808   include/grpc/impl/codegen/sync_posix.h
1809   include/grpc/impl/codegen/sync_windows.h
1810   include/grpc/grpc_cronet.h
1811   include/grpc/grpc_security.h
1812   include/grpc/grpc_security_constants.h
1813 )
1814   string(REPLACE "include/" "" _path ${_hdr})
1815   get_filename_component(_path ${_path} PATH)
1816   install(FILES ${_hdr}
1817     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
1818   )
1819 endforeach()
1820
1821
1822 if (gRPC_INSTALL)
1823   install(TARGETS grpc_cronet EXPORT gRPCTargets
1824     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
1825     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
1826     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
1827   )
1828 endif()
1829
1830 if (gRPC_BUILD_TESTS)
1831
1832 add_library(grpc_test_util
1833   test/core/end2end/data/client_certs.cc
1834   test/core/end2end/data/server1_cert.cc
1835   test/core/end2end/data/server1_key.cc
1836   test/core/end2end/data/test_root_cert.cc
1837   test/core/security/oauth2_utils.cc
1838   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
1839   test/core/end2end/cq_verifier.cc
1840   test/core/end2end/fixtures/http_proxy_fixture.cc
1841   test/core/end2end/fixtures/local_util.cc
1842   test/core/end2end/fixtures/proxy.cc
1843   test/core/iomgr/endpoint_tests.cc
1844   test/core/util/debugger_macros.cc
1845   test/core/util/fuzzer_util.cc
1846   test/core/util/grpc_profiler.cc
1847   test/core/util/histogram.cc
1848   test/core/util/memory_counters.cc
1849   test/core/util/mock_endpoint.cc
1850   test/core/util/parse_hexstring.cc
1851   test/core/util/passthru_endpoint.cc
1852   test/core/util/port.cc
1853   test/core/util/port_isolated_runtime_environment.cc
1854   test/core/util/port_server_client.cc
1855   test/core/util/slice_splitter.cc
1856   test/core/util/subprocess_posix.cc
1857   test/core/util/subprocess_windows.cc
1858   test/core/util/test_config.cc
1859   test/core/util/test_lb_policies.cc
1860   test/core/util/tracer_util.cc
1861   test/core/util/trickle_endpoint.cc
1862   test/core/util/cmdline.cc
1863   src/core/lib/avl/avl.cc
1864   src/core/lib/backoff/backoff.cc
1865   src/core/lib/channel/channel_args.cc
1866   src/core/lib/channel/channel_stack.cc
1867   src/core/lib/channel/channel_stack_builder.cc
1868   src/core/lib/channel/channel_trace.cc
1869   src/core/lib/channel/channelz.cc
1870   src/core/lib/channel/channelz_registry.cc
1871   src/core/lib/channel/connected_channel.cc
1872   src/core/lib/channel/handshaker.cc
1873   src/core/lib/channel/handshaker_registry.cc
1874   src/core/lib/channel/status_util.cc
1875   src/core/lib/compression/compression.cc
1876   src/core/lib/compression/compression_args.cc
1877   src/core/lib/compression/compression_internal.cc
1878   src/core/lib/compression/message_compress.cc
1879   src/core/lib/compression/stream_compression.cc
1880   src/core/lib/compression/stream_compression_gzip.cc
1881   src/core/lib/compression/stream_compression_identity.cc
1882   src/core/lib/debug/stats.cc
1883   src/core/lib/debug/stats_data.cc
1884   src/core/lib/http/format_request.cc
1885   src/core/lib/http/httpcli.cc
1886   src/core/lib/http/parser.cc
1887   src/core/lib/iomgr/buffer_list.cc
1888   src/core/lib/iomgr/call_combiner.cc
1889   src/core/lib/iomgr/cfstream_handle.cc
1890   src/core/lib/iomgr/combiner.cc
1891   src/core/lib/iomgr/endpoint.cc
1892   src/core/lib/iomgr/endpoint_cfstream.cc
1893   src/core/lib/iomgr/endpoint_pair_posix.cc
1894   src/core/lib/iomgr/endpoint_pair_uv.cc
1895   src/core/lib/iomgr/endpoint_pair_windows.cc
1896   src/core/lib/iomgr/error.cc
1897   src/core/lib/iomgr/error_cfstream.cc
1898   src/core/lib/iomgr/ev_epoll1_linux.cc
1899   src/core/lib/iomgr/ev_epollex_linux.cc
1900   src/core/lib/iomgr/ev_poll_posix.cc
1901   src/core/lib/iomgr/ev_posix.cc
1902   src/core/lib/iomgr/ev_windows.cc
1903   src/core/lib/iomgr/exec_ctx.cc
1904   src/core/lib/iomgr/executor.cc
1905   src/core/lib/iomgr/executor/mpmcqueue.cc
1906   src/core/lib/iomgr/executor/threadpool.cc
1907   src/core/lib/iomgr/fork_posix.cc
1908   src/core/lib/iomgr/fork_windows.cc
1909   src/core/lib/iomgr/gethostname_fallback.cc
1910   src/core/lib/iomgr/gethostname_host_name_max.cc
1911   src/core/lib/iomgr/gethostname_sysconf.cc
1912   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
1913   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
1914   src/core/lib/iomgr/internal_errqueue.cc
1915   src/core/lib/iomgr/iocp_windows.cc
1916   src/core/lib/iomgr/iomgr.cc
1917   src/core/lib/iomgr/iomgr_custom.cc
1918   src/core/lib/iomgr/iomgr_internal.cc
1919   src/core/lib/iomgr/iomgr_posix.cc
1920   src/core/lib/iomgr/iomgr_posix_cfstream.cc
1921   src/core/lib/iomgr/iomgr_uv.cc
1922   src/core/lib/iomgr/iomgr_windows.cc
1923   src/core/lib/iomgr/is_epollexclusive_available.cc
1924   src/core/lib/iomgr/load_file.cc
1925   src/core/lib/iomgr/lockfree_event.cc
1926   src/core/lib/iomgr/polling_entity.cc
1927   src/core/lib/iomgr/pollset.cc
1928   src/core/lib/iomgr/pollset_custom.cc
1929   src/core/lib/iomgr/pollset_set.cc
1930   src/core/lib/iomgr/pollset_set_custom.cc
1931   src/core/lib/iomgr/pollset_set_windows.cc
1932   src/core/lib/iomgr/pollset_uv.cc
1933   src/core/lib/iomgr/pollset_windows.cc
1934   src/core/lib/iomgr/resolve_address.cc
1935   src/core/lib/iomgr/resolve_address_custom.cc
1936   src/core/lib/iomgr/resolve_address_posix.cc
1937   src/core/lib/iomgr/resolve_address_windows.cc
1938   src/core/lib/iomgr/resource_quota.cc
1939   src/core/lib/iomgr/sockaddr_utils.cc
1940   src/core/lib/iomgr/socket_factory_posix.cc
1941   src/core/lib/iomgr/socket_mutator.cc
1942   src/core/lib/iomgr/socket_utils_common_posix.cc
1943   src/core/lib/iomgr/socket_utils_linux.cc
1944   src/core/lib/iomgr/socket_utils_posix.cc
1945   src/core/lib/iomgr/socket_utils_uv.cc
1946   src/core/lib/iomgr/socket_utils_windows.cc
1947   src/core/lib/iomgr/socket_windows.cc
1948   src/core/lib/iomgr/tcp_client.cc
1949   src/core/lib/iomgr/tcp_client_cfstream.cc
1950   src/core/lib/iomgr/tcp_client_custom.cc
1951   src/core/lib/iomgr/tcp_client_posix.cc
1952   src/core/lib/iomgr/tcp_client_windows.cc
1953   src/core/lib/iomgr/tcp_custom.cc
1954   src/core/lib/iomgr/tcp_posix.cc
1955   src/core/lib/iomgr/tcp_server.cc
1956   src/core/lib/iomgr/tcp_server_custom.cc
1957   src/core/lib/iomgr/tcp_server_posix.cc
1958   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
1959   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
1960   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
1961   src/core/lib/iomgr/tcp_server_windows.cc
1962   src/core/lib/iomgr/tcp_uv.cc
1963   src/core/lib/iomgr/tcp_windows.cc
1964   src/core/lib/iomgr/time_averaged_stats.cc
1965   src/core/lib/iomgr/timer.cc
1966   src/core/lib/iomgr/timer_custom.cc
1967   src/core/lib/iomgr/timer_generic.cc
1968   src/core/lib/iomgr/timer_heap.cc
1969   src/core/lib/iomgr/timer_manager.cc
1970   src/core/lib/iomgr/timer_uv.cc
1971   src/core/lib/iomgr/udp_server.cc
1972   src/core/lib/iomgr/unix_sockets_posix.cc
1973   src/core/lib/iomgr/unix_sockets_posix_noop.cc
1974   src/core/lib/iomgr/wakeup_fd_eventfd.cc
1975   src/core/lib/iomgr/wakeup_fd_nospecial.cc
1976   src/core/lib/iomgr/wakeup_fd_pipe.cc
1977   src/core/lib/iomgr/wakeup_fd_posix.cc
1978   src/core/lib/json/json.cc
1979   src/core/lib/json/json_reader.cc
1980   src/core/lib/json/json_string.cc
1981   src/core/lib/json/json_writer.cc
1982   src/core/lib/slice/b64.cc
1983   src/core/lib/slice/percent_encoding.cc
1984   src/core/lib/slice/slice.cc
1985   src/core/lib/slice/slice_buffer.cc
1986   src/core/lib/slice/slice_intern.cc
1987   src/core/lib/slice/slice_string_helpers.cc
1988   src/core/lib/surface/api_trace.cc
1989   src/core/lib/surface/byte_buffer.cc
1990   src/core/lib/surface/byte_buffer_reader.cc
1991   src/core/lib/surface/call.cc
1992   src/core/lib/surface/call_details.cc
1993   src/core/lib/surface/call_log_batch.cc
1994   src/core/lib/surface/channel.cc
1995   src/core/lib/surface/channel_init.cc
1996   src/core/lib/surface/channel_ping.cc
1997   src/core/lib/surface/channel_stack_type.cc
1998   src/core/lib/surface/completion_queue.cc
1999   src/core/lib/surface/completion_queue_factory.cc
2000   src/core/lib/surface/event_string.cc
2001   src/core/lib/surface/lame_client.cc
2002   src/core/lib/surface/metadata_array.cc
2003   src/core/lib/surface/server.cc
2004   src/core/lib/surface/validate_metadata.cc
2005   src/core/lib/surface/version.cc
2006   src/core/lib/transport/bdp_estimator.cc
2007   src/core/lib/transport/byte_stream.cc
2008   src/core/lib/transport/connectivity_state.cc
2009   src/core/lib/transport/error_utils.cc
2010   src/core/lib/transport/metadata.cc
2011   src/core/lib/transport/metadata_batch.cc
2012   src/core/lib/transport/pid_controller.cc
2013   src/core/lib/transport/static_metadata.cc
2014   src/core/lib/transport/status_conversion.cc
2015   src/core/lib/transport/status_metadata.cc
2016   src/core/lib/transport/timeout_encoding.cc
2017   src/core/lib/transport/transport.cc
2018   src/core/lib/transport/transport_op_string.cc
2019   src/core/lib/uri/uri_parser.cc
2020   src/core/lib/debug/trace.cc
2021   src/core/ext/filters/client_channel/backup_poller.cc
2022   src/core/ext/filters/client_channel/channel_connectivity.cc
2023   src/core/ext/filters/client_channel/client_channel.cc
2024   src/core/ext/filters/client_channel/client_channel_channelz.cc
2025   src/core/ext/filters/client_channel/client_channel_factory.cc
2026   src/core/ext/filters/client_channel/client_channel_plugin.cc
2027   src/core/ext/filters/client_channel/connector.cc
2028   src/core/ext/filters/client_channel/global_subchannel_pool.cc
2029   src/core/ext/filters/client_channel/health/health_check_client.cc
2030   src/core/ext/filters/client_channel/http_connect_handshaker.cc
2031   src/core/ext/filters/client_channel/http_proxy.cc
2032   src/core/ext/filters/client_channel/lb_policy.cc
2033   src/core/ext/filters/client_channel/lb_policy_registry.cc
2034   src/core/ext/filters/client_channel/local_subchannel_pool.cc
2035   src/core/ext/filters/client_channel/parse_address.cc
2036   src/core/ext/filters/client_channel/proxy_mapper.cc
2037   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
2038   src/core/ext/filters/client_channel/resolver.cc
2039   src/core/ext/filters/client_channel/resolver_registry.cc
2040   src/core/ext/filters/client_channel/resolver_result_parsing.cc
2041   src/core/ext/filters/client_channel/resolving_lb_policy.cc
2042   src/core/ext/filters/client_channel/retry_throttle.cc
2043   src/core/ext/filters/client_channel/server_address.cc
2044   src/core/ext/filters/client_channel/service_config.cc
2045   src/core/ext/filters/client_channel/subchannel.cc
2046   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
2047   src/core/ext/filters/deadline/deadline_filter.cc
2048   src/core/ext/filters/client_channel/health/health.pb.c
2049   third_party/nanopb/pb_common.c
2050   third_party/nanopb/pb_decode.c
2051   third_party/nanopb/pb_encode.c
2052   src/core/ext/transport/chttp2/transport/bin_decoder.cc
2053   src/core/ext/transport/chttp2/transport/bin_encoder.cc
2054   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
2055   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
2056   src/core/ext/transport/chttp2/transport/context_list.cc
2057   src/core/ext/transport/chttp2/transport/flow_control.cc
2058   src/core/ext/transport/chttp2/transport/frame_data.cc
2059   src/core/ext/transport/chttp2/transport/frame_goaway.cc
2060   src/core/ext/transport/chttp2/transport/frame_ping.cc
2061   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
2062   src/core/ext/transport/chttp2/transport/frame_settings.cc
2063   src/core/ext/transport/chttp2/transport/frame_window_update.cc
2064   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
2065   src/core/ext/transport/chttp2/transport/hpack_parser.cc
2066   src/core/ext/transport/chttp2/transport/hpack_table.cc
2067   src/core/ext/transport/chttp2/transport/http2_settings.cc
2068   src/core/ext/transport/chttp2/transport/huffsyms.cc
2069   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
2070   src/core/ext/transport/chttp2/transport/parsing.cc
2071   src/core/ext/transport/chttp2/transport/stream_lists.cc
2072   src/core/ext/transport/chttp2/transport/stream_map.cc
2073   src/core/ext/transport/chttp2/transport/varint.cc
2074   src/core/ext/transport/chttp2/transport/writing.cc
2075   src/core/ext/transport/chttp2/alpn/alpn.cc
2076   src/core/ext/filters/http/client/http_client_filter.cc
2077   src/core/ext/filters/http/http_filters_plugin.cc
2078   src/core/ext/filters/http/message_compress/message_compress_filter.cc
2079   src/core/ext/filters/http/server/http_server_filter.cc
2080 )
2081
2082 if(WIN32 AND MSVC)
2083   set_target_properties(grpc_test_util PROPERTIES COMPILE_PDB_NAME "grpc_test_util"
2084     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2085   )
2086   if (gRPC_INSTALL)
2087     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_test_util.pdb
2088       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2089     )
2090   endif()
2091 endif()
2092
2093
2094 target_include_directories(grpc_test_util
2095   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2096   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2097   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2098   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2099   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2100   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2101   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2102   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2103   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2104   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2105 )
2106   # avoid dependency on libstdc++
2107   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2108     set_target_properties(grpc_test_util PROPERTIES LINKER_LANGUAGE C)
2109     # only use the flags for C++ source files
2110     target_compile_options(grpc_test_util PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2111   endif()
2112 target_link_libraries(grpc_test_util
2113   ${_gRPC_ALLTARGETS_LIBRARIES}
2114   gpr
2115   grpc
2116 )
2117 if (_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
2118   target_link_libraries(grpc_test_util "-framework CoreFoundation")
2119 endif()
2120
2121 foreach(_hdr
2122   include/grpc/support/alloc.h
2123   include/grpc/support/atm.h
2124   include/grpc/support/atm_gcc_atomic.h
2125   include/grpc/support/atm_gcc_sync.h
2126   include/grpc/support/atm_windows.h
2127   include/grpc/support/cpu.h
2128   include/grpc/support/log.h
2129   include/grpc/support/log_windows.h
2130   include/grpc/support/port_platform.h
2131   include/grpc/support/string_util.h
2132   include/grpc/support/sync.h
2133   include/grpc/support/sync_custom.h
2134   include/grpc/support/sync_generic.h
2135   include/grpc/support/sync_posix.h
2136   include/grpc/support/sync_windows.h
2137   include/grpc/support/thd_id.h
2138   include/grpc/support/time.h
2139   include/grpc/impl/codegen/atm.h
2140   include/grpc/impl/codegen/atm_gcc_atomic.h
2141   include/grpc/impl/codegen/atm_gcc_sync.h
2142   include/grpc/impl/codegen/atm_windows.h
2143   include/grpc/impl/codegen/fork.h
2144   include/grpc/impl/codegen/gpr_slice.h
2145   include/grpc/impl/codegen/gpr_types.h
2146   include/grpc/impl/codegen/log.h
2147   include/grpc/impl/codegen/port_platform.h
2148   include/grpc/impl/codegen/sync.h
2149   include/grpc/impl/codegen/sync_custom.h
2150   include/grpc/impl/codegen/sync_generic.h
2151   include/grpc/impl/codegen/sync_posix.h
2152   include/grpc/impl/codegen/sync_windows.h
2153   include/grpc/impl/codegen/byte_buffer.h
2154   include/grpc/impl/codegen/byte_buffer_reader.h
2155   include/grpc/impl/codegen/compression_types.h
2156   include/grpc/impl/codegen/connectivity_state.h
2157   include/grpc/impl/codegen/grpc_types.h
2158   include/grpc/impl/codegen/propagation_bits.h
2159   include/grpc/impl/codegen/slice.h
2160   include/grpc/impl/codegen/status.h
2161 )
2162   string(REPLACE "include/" "" _path ${_hdr})
2163   get_filename_component(_path ${_path} PATH)
2164   install(FILES ${_hdr}
2165     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
2166   )
2167 endforeach()
2168
2169 endif (gRPC_BUILD_TESTS)
2170 if (gRPC_BUILD_TESTS)
2171
2172 add_library(grpc_test_util_unsecure
2173   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
2174   test/core/end2end/cq_verifier.cc
2175   test/core/end2end/fixtures/http_proxy_fixture.cc
2176   test/core/end2end/fixtures/local_util.cc
2177   test/core/end2end/fixtures/proxy.cc
2178   test/core/iomgr/endpoint_tests.cc
2179   test/core/util/debugger_macros.cc
2180   test/core/util/fuzzer_util.cc
2181   test/core/util/grpc_profiler.cc
2182   test/core/util/histogram.cc
2183   test/core/util/memory_counters.cc
2184   test/core/util/mock_endpoint.cc
2185   test/core/util/parse_hexstring.cc
2186   test/core/util/passthru_endpoint.cc
2187   test/core/util/port.cc
2188   test/core/util/port_isolated_runtime_environment.cc
2189   test/core/util/port_server_client.cc
2190   test/core/util/slice_splitter.cc
2191   test/core/util/subprocess_posix.cc
2192   test/core/util/subprocess_windows.cc
2193   test/core/util/test_config.cc
2194   test/core/util/test_lb_policies.cc
2195   test/core/util/tracer_util.cc
2196   test/core/util/trickle_endpoint.cc
2197   test/core/util/cmdline.cc
2198   src/core/lib/avl/avl.cc
2199   src/core/lib/backoff/backoff.cc
2200   src/core/lib/channel/channel_args.cc
2201   src/core/lib/channel/channel_stack.cc
2202   src/core/lib/channel/channel_stack_builder.cc
2203   src/core/lib/channel/channel_trace.cc
2204   src/core/lib/channel/channelz.cc
2205   src/core/lib/channel/channelz_registry.cc
2206   src/core/lib/channel/connected_channel.cc
2207   src/core/lib/channel/handshaker.cc
2208   src/core/lib/channel/handshaker_registry.cc
2209   src/core/lib/channel/status_util.cc
2210   src/core/lib/compression/compression.cc
2211   src/core/lib/compression/compression_args.cc
2212   src/core/lib/compression/compression_internal.cc
2213   src/core/lib/compression/message_compress.cc
2214   src/core/lib/compression/stream_compression.cc
2215   src/core/lib/compression/stream_compression_gzip.cc
2216   src/core/lib/compression/stream_compression_identity.cc
2217   src/core/lib/debug/stats.cc
2218   src/core/lib/debug/stats_data.cc
2219   src/core/lib/http/format_request.cc
2220   src/core/lib/http/httpcli.cc
2221   src/core/lib/http/parser.cc
2222   src/core/lib/iomgr/buffer_list.cc
2223   src/core/lib/iomgr/call_combiner.cc
2224   src/core/lib/iomgr/cfstream_handle.cc
2225   src/core/lib/iomgr/combiner.cc
2226   src/core/lib/iomgr/endpoint.cc
2227   src/core/lib/iomgr/endpoint_cfstream.cc
2228   src/core/lib/iomgr/endpoint_pair_posix.cc
2229   src/core/lib/iomgr/endpoint_pair_uv.cc
2230   src/core/lib/iomgr/endpoint_pair_windows.cc
2231   src/core/lib/iomgr/error.cc
2232   src/core/lib/iomgr/error_cfstream.cc
2233   src/core/lib/iomgr/ev_epoll1_linux.cc
2234   src/core/lib/iomgr/ev_epollex_linux.cc
2235   src/core/lib/iomgr/ev_poll_posix.cc
2236   src/core/lib/iomgr/ev_posix.cc
2237   src/core/lib/iomgr/ev_windows.cc
2238   src/core/lib/iomgr/exec_ctx.cc
2239   src/core/lib/iomgr/executor.cc
2240   src/core/lib/iomgr/executor/mpmcqueue.cc
2241   src/core/lib/iomgr/executor/threadpool.cc
2242   src/core/lib/iomgr/fork_posix.cc
2243   src/core/lib/iomgr/fork_windows.cc
2244   src/core/lib/iomgr/gethostname_fallback.cc
2245   src/core/lib/iomgr/gethostname_host_name_max.cc
2246   src/core/lib/iomgr/gethostname_sysconf.cc
2247   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
2248   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
2249   src/core/lib/iomgr/internal_errqueue.cc
2250   src/core/lib/iomgr/iocp_windows.cc
2251   src/core/lib/iomgr/iomgr.cc
2252   src/core/lib/iomgr/iomgr_custom.cc
2253   src/core/lib/iomgr/iomgr_internal.cc
2254   src/core/lib/iomgr/iomgr_posix.cc
2255   src/core/lib/iomgr/iomgr_posix_cfstream.cc
2256   src/core/lib/iomgr/iomgr_uv.cc
2257   src/core/lib/iomgr/iomgr_windows.cc
2258   src/core/lib/iomgr/is_epollexclusive_available.cc
2259   src/core/lib/iomgr/load_file.cc
2260   src/core/lib/iomgr/lockfree_event.cc
2261   src/core/lib/iomgr/polling_entity.cc
2262   src/core/lib/iomgr/pollset.cc
2263   src/core/lib/iomgr/pollset_custom.cc
2264   src/core/lib/iomgr/pollset_set.cc
2265   src/core/lib/iomgr/pollset_set_custom.cc
2266   src/core/lib/iomgr/pollset_set_windows.cc
2267   src/core/lib/iomgr/pollset_uv.cc
2268   src/core/lib/iomgr/pollset_windows.cc
2269   src/core/lib/iomgr/resolve_address.cc
2270   src/core/lib/iomgr/resolve_address_custom.cc
2271   src/core/lib/iomgr/resolve_address_posix.cc
2272   src/core/lib/iomgr/resolve_address_windows.cc
2273   src/core/lib/iomgr/resource_quota.cc
2274   src/core/lib/iomgr/sockaddr_utils.cc
2275   src/core/lib/iomgr/socket_factory_posix.cc
2276   src/core/lib/iomgr/socket_mutator.cc
2277   src/core/lib/iomgr/socket_utils_common_posix.cc
2278   src/core/lib/iomgr/socket_utils_linux.cc
2279   src/core/lib/iomgr/socket_utils_posix.cc
2280   src/core/lib/iomgr/socket_utils_uv.cc
2281   src/core/lib/iomgr/socket_utils_windows.cc
2282   src/core/lib/iomgr/socket_windows.cc
2283   src/core/lib/iomgr/tcp_client.cc
2284   src/core/lib/iomgr/tcp_client_cfstream.cc
2285   src/core/lib/iomgr/tcp_client_custom.cc
2286   src/core/lib/iomgr/tcp_client_posix.cc
2287   src/core/lib/iomgr/tcp_client_windows.cc
2288   src/core/lib/iomgr/tcp_custom.cc
2289   src/core/lib/iomgr/tcp_posix.cc
2290   src/core/lib/iomgr/tcp_server.cc
2291   src/core/lib/iomgr/tcp_server_custom.cc
2292   src/core/lib/iomgr/tcp_server_posix.cc
2293   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
2294   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
2295   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
2296   src/core/lib/iomgr/tcp_server_windows.cc
2297   src/core/lib/iomgr/tcp_uv.cc
2298   src/core/lib/iomgr/tcp_windows.cc
2299   src/core/lib/iomgr/time_averaged_stats.cc
2300   src/core/lib/iomgr/timer.cc
2301   src/core/lib/iomgr/timer_custom.cc
2302   src/core/lib/iomgr/timer_generic.cc
2303   src/core/lib/iomgr/timer_heap.cc
2304   src/core/lib/iomgr/timer_manager.cc
2305   src/core/lib/iomgr/timer_uv.cc
2306   src/core/lib/iomgr/udp_server.cc
2307   src/core/lib/iomgr/unix_sockets_posix.cc
2308   src/core/lib/iomgr/unix_sockets_posix_noop.cc
2309   src/core/lib/iomgr/wakeup_fd_eventfd.cc
2310   src/core/lib/iomgr/wakeup_fd_nospecial.cc
2311   src/core/lib/iomgr/wakeup_fd_pipe.cc
2312   src/core/lib/iomgr/wakeup_fd_posix.cc
2313   src/core/lib/json/json.cc
2314   src/core/lib/json/json_reader.cc
2315   src/core/lib/json/json_string.cc
2316   src/core/lib/json/json_writer.cc
2317   src/core/lib/slice/b64.cc
2318   src/core/lib/slice/percent_encoding.cc
2319   src/core/lib/slice/slice.cc
2320   src/core/lib/slice/slice_buffer.cc
2321   src/core/lib/slice/slice_intern.cc
2322   src/core/lib/slice/slice_string_helpers.cc
2323   src/core/lib/surface/api_trace.cc
2324   src/core/lib/surface/byte_buffer.cc
2325   src/core/lib/surface/byte_buffer_reader.cc
2326   src/core/lib/surface/call.cc
2327   src/core/lib/surface/call_details.cc
2328   src/core/lib/surface/call_log_batch.cc
2329   src/core/lib/surface/channel.cc
2330   src/core/lib/surface/channel_init.cc
2331   src/core/lib/surface/channel_ping.cc
2332   src/core/lib/surface/channel_stack_type.cc
2333   src/core/lib/surface/completion_queue.cc
2334   src/core/lib/surface/completion_queue_factory.cc
2335   src/core/lib/surface/event_string.cc
2336   src/core/lib/surface/lame_client.cc
2337   src/core/lib/surface/metadata_array.cc
2338   src/core/lib/surface/server.cc
2339   src/core/lib/surface/validate_metadata.cc
2340   src/core/lib/surface/version.cc
2341   src/core/lib/transport/bdp_estimator.cc
2342   src/core/lib/transport/byte_stream.cc
2343   src/core/lib/transport/connectivity_state.cc
2344   src/core/lib/transport/error_utils.cc
2345   src/core/lib/transport/metadata.cc
2346   src/core/lib/transport/metadata_batch.cc
2347   src/core/lib/transport/pid_controller.cc
2348   src/core/lib/transport/static_metadata.cc
2349   src/core/lib/transport/status_conversion.cc
2350   src/core/lib/transport/status_metadata.cc
2351   src/core/lib/transport/timeout_encoding.cc
2352   src/core/lib/transport/transport.cc
2353   src/core/lib/transport/transport_op_string.cc
2354   src/core/lib/uri/uri_parser.cc
2355   src/core/lib/debug/trace.cc
2356   src/core/ext/filters/client_channel/backup_poller.cc
2357   src/core/ext/filters/client_channel/channel_connectivity.cc
2358   src/core/ext/filters/client_channel/client_channel.cc
2359   src/core/ext/filters/client_channel/client_channel_channelz.cc
2360   src/core/ext/filters/client_channel/client_channel_factory.cc
2361   src/core/ext/filters/client_channel/client_channel_plugin.cc
2362   src/core/ext/filters/client_channel/connector.cc
2363   src/core/ext/filters/client_channel/global_subchannel_pool.cc
2364   src/core/ext/filters/client_channel/health/health_check_client.cc
2365   src/core/ext/filters/client_channel/http_connect_handshaker.cc
2366   src/core/ext/filters/client_channel/http_proxy.cc
2367   src/core/ext/filters/client_channel/lb_policy.cc
2368   src/core/ext/filters/client_channel/lb_policy_registry.cc
2369   src/core/ext/filters/client_channel/local_subchannel_pool.cc
2370   src/core/ext/filters/client_channel/parse_address.cc
2371   src/core/ext/filters/client_channel/proxy_mapper.cc
2372   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
2373   src/core/ext/filters/client_channel/resolver.cc
2374   src/core/ext/filters/client_channel/resolver_registry.cc
2375   src/core/ext/filters/client_channel/resolver_result_parsing.cc
2376   src/core/ext/filters/client_channel/resolving_lb_policy.cc
2377   src/core/ext/filters/client_channel/retry_throttle.cc
2378   src/core/ext/filters/client_channel/server_address.cc
2379   src/core/ext/filters/client_channel/service_config.cc
2380   src/core/ext/filters/client_channel/subchannel.cc
2381   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
2382   src/core/ext/filters/deadline/deadline_filter.cc
2383   src/core/ext/filters/client_channel/health/health.pb.c
2384   third_party/nanopb/pb_common.c
2385   third_party/nanopb/pb_decode.c
2386   third_party/nanopb/pb_encode.c
2387   src/core/ext/transport/chttp2/transport/bin_decoder.cc
2388   src/core/ext/transport/chttp2/transport/bin_encoder.cc
2389   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
2390   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
2391   src/core/ext/transport/chttp2/transport/context_list.cc
2392   src/core/ext/transport/chttp2/transport/flow_control.cc
2393   src/core/ext/transport/chttp2/transport/frame_data.cc
2394   src/core/ext/transport/chttp2/transport/frame_goaway.cc
2395   src/core/ext/transport/chttp2/transport/frame_ping.cc
2396   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
2397   src/core/ext/transport/chttp2/transport/frame_settings.cc
2398   src/core/ext/transport/chttp2/transport/frame_window_update.cc
2399   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
2400   src/core/ext/transport/chttp2/transport/hpack_parser.cc
2401   src/core/ext/transport/chttp2/transport/hpack_table.cc
2402   src/core/ext/transport/chttp2/transport/http2_settings.cc
2403   src/core/ext/transport/chttp2/transport/huffsyms.cc
2404   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
2405   src/core/ext/transport/chttp2/transport/parsing.cc
2406   src/core/ext/transport/chttp2/transport/stream_lists.cc
2407   src/core/ext/transport/chttp2/transport/stream_map.cc
2408   src/core/ext/transport/chttp2/transport/varint.cc
2409   src/core/ext/transport/chttp2/transport/writing.cc
2410   src/core/ext/transport/chttp2/alpn/alpn.cc
2411   src/core/ext/filters/http/client/http_client_filter.cc
2412   src/core/ext/filters/http/http_filters_plugin.cc
2413   src/core/ext/filters/http/message_compress/message_compress_filter.cc
2414   src/core/ext/filters/http/server/http_server_filter.cc
2415 )
2416
2417 if(WIN32 AND MSVC)
2418   set_target_properties(grpc_test_util_unsecure PROPERTIES COMPILE_PDB_NAME "grpc_test_util_unsecure"
2419     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2420   )
2421   if (gRPC_INSTALL)
2422     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_test_util_unsecure.pdb
2423       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2424     )
2425   endif()
2426 endif()
2427
2428
2429 target_include_directories(grpc_test_util_unsecure
2430   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2431   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2432   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2433   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2434   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2435   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2436   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2437   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2438   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2439   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2440 )
2441   # avoid dependency on libstdc++
2442   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2443     set_target_properties(grpc_test_util_unsecure PROPERTIES LINKER_LANGUAGE C)
2444     # only use the flags for C++ source files
2445     target_compile_options(grpc_test_util_unsecure PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2446   endif()
2447 target_link_libraries(grpc_test_util_unsecure
2448   ${_gRPC_ALLTARGETS_LIBRARIES}
2449   gpr
2450   grpc_unsecure
2451 )
2452 if (_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
2453   target_link_libraries(grpc_test_util_unsecure "-framework CoreFoundation")
2454 endif()
2455
2456 foreach(_hdr
2457   include/grpc/support/alloc.h
2458   include/grpc/support/atm.h
2459   include/grpc/support/atm_gcc_atomic.h
2460   include/grpc/support/atm_gcc_sync.h
2461   include/grpc/support/atm_windows.h
2462   include/grpc/support/cpu.h
2463   include/grpc/support/log.h
2464   include/grpc/support/log_windows.h
2465   include/grpc/support/port_platform.h
2466   include/grpc/support/string_util.h
2467   include/grpc/support/sync.h
2468   include/grpc/support/sync_custom.h
2469   include/grpc/support/sync_generic.h
2470   include/grpc/support/sync_posix.h
2471   include/grpc/support/sync_windows.h
2472   include/grpc/support/thd_id.h
2473   include/grpc/support/time.h
2474   include/grpc/impl/codegen/atm.h
2475   include/grpc/impl/codegen/atm_gcc_atomic.h
2476   include/grpc/impl/codegen/atm_gcc_sync.h
2477   include/grpc/impl/codegen/atm_windows.h
2478   include/grpc/impl/codegen/fork.h
2479   include/grpc/impl/codegen/gpr_slice.h
2480   include/grpc/impl/codegen/gpr_types.h
2481   include/grpc/impl/codegen/log.h
2482   include/grpc/impl/codegen/port_platform.h
2483   include/grpc/impl/codegen/sync.h
2484   include/grpc/impl/codegen/sync_custom.h
2485   include/grpc/impl/codegen/sync_generic.h
2486   include/grpc/impl/codegen/sync_posix.h
2487   include/grpc/impl/codegen/sync_windows.h
2488   include/grpc/impl/codegen/byte_buffer.h
2489   include/grpc/impl/codegen/byte_buffer_reader.h
2490   include/grpc/impl/codegen/compression_types.h
2491   include/grpc/impl/codegen/connectivity_state.h
2492   include/grpc/impl/codegen/grpc_types.h
2493   include/grpc/impl/codegen/propagation_bits.h
2494   include/grpc/impl/codegen/slice.h
2495   include/grpc/impl/codegen/status.h
2496 )
2497   string(REPLACE "include/" "" _path ${_hdr})
2498   get_filename_component(_path ${_path} PATH)
2499   install(FILES ${_hdr}
2500     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
2501   )
2502 endforeach()
2503
2504 endif (gRPC_BUILD_TESTS)
2505
2506 add_library(grpc_unsecure
2507   src/core/lib/surface/init.cc
2508   src/core/lib/surface/init_unsecure.cc
2509   src/core/lib/avl/avl.cc
2510   src/core/lib/backoff/backoff.cc
2511   src/core/lib/channel/channel_args.cc
2512   src/core/lib/channel/channel_stack.cc
2513   src/core/lib/channel/channel_stack_builder.cc
2514   src/core/lib/channel/channel_trace.cc
2515   src/core/lib/channel/channelz.cc
2516   src/core/lib/channel/channelz_registry.cc
2517   src/core/lib/channel/connected_channel.cc
2518   src/core/lib/channel/handshaker.cc
2519   src/core/lib/channel/handshaker_registry.cc
2520   src/core/lib/channel/status_util.cc
2521   src/core/lib/compression/compression.cc
2522   src/core/lib/compression/compression_args.cc
2523   src/core/lib/compression/compression_internal.cc
2524   src/core/lib/compression/message_compress.cc
2525   src/core/lib/compression/stream_compression.cc
2526   src/core/lib/compression/stream_compression_gzip.cc
2527   src/core/lib/compression/stream_compression_identity.cc
2528   src/core/lib/debug/stats.cc
2529   src/core/lib/debug/stats_data.cc
2530   src/core/lib/http/format_request.cc
2531   src/core/lib/http/httpcli.cc
2532   src/core/lib/http/parser.cc
2533   src/core/lib/iomgr/buffer_list.cc
2534   src/core/lib/iomgr/call_combiner.cc
2535   src/core/lib/iomgr/cfstream_handle.cc
2536   src/core/lib/iomgr/combiner.cc
2537   src/core/lib/iomgr/endpoint.cc
2538   src/core/lib/iomgr/endpoint_cfstream.cc
2539   src/core/lib/iomgr/endpoint_pair_posix.cc
2540   src/core/lib/iomgr/endpoint_pair_uv.cc
2541   src/core/lib/iomgr/endpoint_pair_windows.cc
2542   src/core/lib/iomgr/error.cc
2543   src/core/lib/iomgr/error_cfstream.cc
2544   src/core/lib/iomgr/ev_epoll1_linux.cc
2545   src/core/lib/iomgr/ev_epollex_linux.cc
2546   src/core/lib/iomgr/ev_poll_posix.cc
2547   src/core/lib/iomgr/ev_posix.cc
2548   src/core/lib/iomgr/ev_windows.cc
2549   src/core/lib/iomgr/exec_ctx.cc
2550   src/core/lib/iomgr/executor.cc
2551   src/core/lib/iomgr/executor/mpmcqueue.cc
2552   src/core/lib/iomgr/executor/threadpool.cc
2553   src/core/lib/iomgr/fork_posix.cc
2554   src/core/lib/iomgr/fork_windows.cc
2555   src/core/lib/iomgr/gethostname_fallback.cc
2556   src/core/lib/iomgr/gethostname_host_name_max.cc
2557   src/core/lib/iomgr/gethostname_sysconf.cc
2558   src/core/lib/iomgr/grpc_if_nametoindex_posix.cc
2559   src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc
2560   src/core/lib/iomgr/internal_errqueue.cc
2561   src/core/lib/iomgr/iocp_windows.cc
2562   src/core/lib/iomgr/iomgr.cc
2563   src/core/lib/iomgr/iomgr_custom.cc
2564   src/core/lib/iomgr/iomgr_internal.cc
2565   src/core/lib/iomgr/iomgr_posix.cc
2566   src/core/lib/iomgr/iomgr_posix_cfstream.cc
2567   src/core/lib/iomgr/iomgr_uv.cc
2568   src/core/lib/iomgr/iomgr_windows.cc
2569   src/core/lib/iomgr/is_epollexclusive_available.cc
2570   src/core/lib/iomgr/load_file.cc
2571   src/core/lib/iomgr/lockfree_event.cc
2572   src/core/lib/iomgr/polling_entity.cc
2573   src/core/lib/iomgr/pollset.cc
2574   src/core/lib/iomgr/pollset_custom.cc
2575   src/core/lib/iomgr/pollset_set.cc
2576   src/core/lib/iomgr/pollset_set_custom.cc
2577   src/core/lib/iomgr/pollset_set_windows.cc
2578   src/core/lib/iomgr/pollset_uv.cc
2579   src/core/lib/iomgr/pollset_windows.cc
2580   src/core/lib/iomgr/resolve_address.cc
2581   src/core/lib/iomgr/resolve_address_custom.cc
2582   src/core/lib/iomgr/resolve_address_posix.cc
2583   src/core/lib/iomgr/resolve_address_windows.cc
2584   src/core/lib/iomgr/resource_quota.cc
2585   src/core/lib/iomgr/sockaddr_utils.cc
2586   src/core/lib/iomgr/socket_factory_posix.cc
2587   src/core/lib/iomgr/socket_mutator.cc
2588   src/core/lib/iomgr/socket_utils_common_posix.cc
2589   src/core/lib/iomgr/socket_utils_linux.cc
2590   src/core/lib/iomgr/socket_utils_posix.cc
2591   src/core/lib/iomgr/socket_utils_uv.cc
2592   src/core/lib/iomgr/socket_utils_windows.cc
2593   src/core/lib/iomgr/socket_windows.cc
2594   src/core/lib/iomgr/tcp_client.cc
2595   src/core/lib/iomgr/tcp_client_cfstream.cc
2596   src/core/lib/iomgr/tcp_client_custom.cc
2597   src/core/lib/iomgr/tcp_client_posix.cc
2598   src/core/lib/iomgr/tcp_client_windows.cc
2599   src/core/lib/iomgr/tcp_custom.cc
2600   src/core/lib/iomgr/tcp_posix.cc
2601   src/core/lib/iomgr/tcp_server.cc
2602   src/core/lib/iomgr/tcp_server_custom.cc
2603   src/core/lib/iomgr/tcp_server_posix.cc
2604   src/core/lib/iomgr/tcp_server_utils_posix_common.cc
2605   src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc
2606   src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc
2607   src/core/lib/iomgr/tcp_server_windows.cc
2608   src/core/lib/iomgr/tcp_uv.cc
2609   src/core/lib/iomgr/tcp_windows.cc
2610   src/core/lib/iomgr/time_averaged_stats.cc
2611   src/core/lib/iomgr/timer.cc
2612   src/core/lib/iomgr/timer_custom.cc
2613   src/core/lib/iomgr/timer_generic.cc
2614   src/core/lib/iomgr/timer_heap.cc
2615   src/core/lib/iomgr/timer_manager.cc
2616   src/core/lib/iomgr/timer_uv.cc
2617   src/core/lib/iomgr/udp_server.cc
2618   src/core/lib/iomgr/unix_sockets_posix.cc
2619   src/core/lib/iomgr/unix_sockets_posix_noop.cc
2620   src/core/lib/iomgr/wakeup_fd_eventfd.cc
2621   src/core/lib/iomgr/wakeup_fd_nospecial.cc
2622   src/core/lib/iomgr/wakeup_fd_pipe.cc
2623   src/core/lib/iomgr/wakeup_fd_posix.cc
2624   src/core/lib/json/json.cc
2625   src/core/lib/json/json_reader.cc
2626   src/core/lib/json/json_string.cc
2627   src/core/lib/json/json_writer.cc
2628   src/core/lib/slice/b64.cc
2629   src/core/lib/slice/percent_encoding.cc
2630   src/core/lib/slice/slice.cc
2631   src/core/lib/slice/slice_buffer.cc
2632   src/core/lib/slice/slice_intern.cc
2633   src/core/lib/slice/slice_string_helpers.cc
2634   src/core/lib/surface/api_trace.cc
2635   src/core/lib/surface/byte_buffer.cc
2636   src/core/lib/surface/byte_buffer_reader.cc
2637   src/core/lib/surface/call.cc
2638   src/core/lib/surface/call_details.cc
2639   src/core/lib/surface/call_log_batch.cc
2640   src/core/lib/surface/channel.cc
2641   src/core/lib/surface/channel_init.cc
2642   src/core/lib/surface/channel_ping.cc
2643   src/core/lib/surface/channel_stack_type.cc
2644   src/core/lib/surface/completion_queue.cc
2645   src/core/lib/surface/completion_queue_factory.cc
2646   src/core/lib/surface/event_string.cc
2647   src/core/lib/surface/lame_client.cc
2648   src/core/lib/surface/metadata_array.cc
2649   src/core/lib/surface/server.cc
2650   src/core/lib/surface/validate_metadata.cc
2651   src/core/lib/surface/version.cc
2652   src/core/lib/transport/bdp_estimator.cc
2653   src/core/lib/transport/byte_stream.cc
2654   src/core/lib/transport/connectivity_state.cc
2655   src/core/lib/transport/error_utils.cc
2656   src/core/lib/transport/metadata.cc
2657   src/core/lib/transport/metadata_batch.cc
2658   src/core/lib/transport/pid_controller.cc
2659   src/core/lib/transport/static_metadata.cc
2660   src/core/lib/transport/status_conversion.cc
2661   src/core/lib/transport/status_metadata.cc
2662   src/core/lib/transport/timeout_encoding.cc
2663   src/core/lib/transport/transport.cc
2664   src/core/lib/transport/transport_op_string.cc
2665   src/core/lib/uri/uri_parser.cc
2666   src/core/lib/debug/trace.cc
2667   src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc
2668   src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc
2669   src/core/ext/transport/chttp2/transport/bin_decoder.cc
2670   src/core/ext/transport/chttp2/transport/bin_encoder.cc
2671   src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
2672   src/core/ext/transport/chttp2/transport/chttp2_transport.cc
2673   src/core/ext/transport/chttp2/transport/context_list.cc
2674   src/core/ext/transport/chttp2/transport/flow_control.cc
2675   src/core/ext/transport/chttp2/transport/frame_data.cc
2676   src/core/ext/transport/chttp2/transport/frame_goaway.cc
2677   src/core/ext/transport/chttp2/transport/frame_ping.cc
2678   src/core/ext/transport/chttp2/transport/frame_rst_stream.cc
2679   src/core/ext/transport/chttp2/transport/frame_settings.cc
2680   src/core/ext/transport/chttp2/transport/frame_window_update.cc
2681   src/core/ext/transport/chttp2/transport/hpack_encoder.cc
2682   src/core/ext/transport/chttp2/transport/hpack_parser.cc
2683   src/core/ext/transport/chttp2/transport/hpack_table.cc
2684   src/core/ext/transport/chttp2/transport/http2_settings.cc
2685   src/core/ext/transport/chttp2/transport/huffsyms.cc
2686   src/core/ext/transport/chttp2/transport/incoming_metadata.cc
2687   src/core/ext/transport/chttp2/transport/parsing.cc
2688   src/core/ext/transport/chttp2/transport/stream_lists.cc
2689   src/core/ext/transport/chttp2/transport/stream_map.cc
2690   src/core/ext/transport/chttp2/transport/varint.cc
2691   src/core/ext/transport/chttp2/transport/writing.cc
2692   src/core/ext/transport/chttp2/alpn/alpn.cc
2693   src/core/ext/filters/http/client/http_client_filter.cc
2694   src/core/ext/filters/http/http_filters_plugin.cc
2695   src/core/ext/filters/http/message_compress/message_compress_filter.cc
2696   src/core/ext/filters/http/server/http_server_filter.cc
2697   src/core/ext/transport/chttp2/server/chttp2_server.cc
2698   src/core/ext/transport/chttp2/client/insecure/channel_create.cc
2699   src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
2700   src/core/ext/transport/chttp2/client/authority.cc
2701   src/core/ext/transport/chttp2/client/chttp2_connector.cc
2702   src/core/ext/filters/client_channel/backup_poller.cc
2703   src/core/ext/filters/client_channel/channel_connectivity.cc
2704   src/core/ext/filters/client_channel/client_channel.cc
2705   src/core/ext/filters/client_channel/client_channel_channelz.cc
2706   src/core/ext/filters/client_channel/client_channel_factory.cc
2707   src/core/ext/filters/client_channel/client_channel_plugin.cc
2708   src/core/ext/filters/client_channel/connector.cc
2709   src/core/ext/filters/client_channel/global_subchannel_pool.cc
2710   src/core/ext/filters/client_channel/health/health_check_client.cc
2711   src/core/ext/filters/client_channel/http_connect_handshaker.cc
2712   src/core/ext/filters/client_channel/http_proxy.cc
2713   src/core/ext/filters/client_channel/lb_policy.cc
2714   src/core/ext/filters/client_channel/lb_policy_registry.cc
2715   src/core/ext/filters/client_channel/local_subchannel_pool.cc
2716   src/core/ext/filters/client_channel/parse_address.cc
2717   src/core/ext/filters/client_channel/proxy_mapper.cc
2718   src/core/ext/filters/client_channel/proxy_mapper_registry.cc
2719   src/core/ext/filters/client_channel/resolver.cc
2720   src/core/ext/filters/client_channel/resolver_registry.cc
2721   src/core/ext/filters/client_channel/resolver_result_parsing.cc
2722   src/core/ext/filters/client_channel/resolving_lb_policy.cc
2723   src/core/ext/filters/client_channel/retry_throttle.cc
2724   src/core/ext/filters/client_channel/server_address.cc
2725   src/core/ext/filters/client_channel/service_config.cc
2726   src/core/ext/filters/client_channel/subchannel.cc
2727   src/core/ext/filters/client_channel/subchannel_pool_interface.cc
2728   src/core/ext/filters/deadline/deadline_filter.cc
2729   src/core/ext/filters/client_channel/health/health.pb.c
2730   third_party/nanopb/pb_common.c
2731   third_party/nanopb/pb_decode.c
2732   third_party/nanopb/pb_encode.c
2733   src/core/ext/transport/inproc/inproc_plugin.cc
2734   src/core/ext/transport/inproc/inproc_transport.cc
2735   src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc
2736   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc
2737   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc
2738   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc
2739   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc
2740   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc
2741   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc
2742   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc
2743   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc
2744   src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc
2745   src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc
2746   src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc
2747   src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc
2748   src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
2749   src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc
2750   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc
2751   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.cc
2752   src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc
2753   src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc
2754   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.c
2755   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.c
2756   src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
2757   src/core/ext/filters/client_channel/lb_policy/xds/xds.cc
2758   src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc
2759   src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc
2760   src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc
2761   src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
2762   src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
2763   src/core/ext/filters/census/grpc_context.cc
2764   src/core/ext/filters/client_idle/client_idle_filter.cc
2765   src/core/ext/filters/max_age/max_age_filter.cc
2766   src/core/ext/filters/message_size/message_size_filter.cc
2767   src/core/ext/filters/http/client_authority_filter.cc
2768   src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc
2769   src/core/ext/filters/workarounds/workaround_utils.cc
2770   src/core/plugin_registry/grpc_unsecure_plugin_registry.cc
2771 )
2772
2773 if(WIN32 AND MSVC)
2774   set_target_properties(grpc_unsecure PROPERTIES COMPILE_PDB_NAME "grpc_unsecure"
2775     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2776   )
2777   if (gRPC_INSTALL)
2778     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_unsecure.pdb
2779       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2780     )
2781   endif()
2782 endif()
2783
2784
2785 target_include_directories(grpc_unsecure
2786   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2787   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2788   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2789   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2790   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2791   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2792   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2793   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2794   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2795   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2796 )
2797   # avoid dependency on libstdc++
2798   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2799     set_target_properties(grpc_unsecure PROPERTIES LINKER_LANGUAGE C)
2800     # only use the flags for C++ source files
2801     target_compile_options(grpc_unsecure PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2802   endif()
2803 target_link_libraries(grpc_unsecure
2804   ${_gRPC_BASELIB_LIBRARIES}
2805   ${_gRPC_ZLIB_LIBRARIES}
2806   ${_gRPC_CARES_LIBRARIES}
2807   ${_gRPC_ADDRESS_SORTING_LIBRARIES}
2808   ${_gRPC_ALLTARGETS_LIBRARIES}
2809   gpr
2810 )
2811 if (_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
2812   target_link_libraries(grpc_unsecure "-framework CoreFoundation")
2813 endif()
2814
2815 foreach(_hdr
2816   include/grpc/impl/codegen/byte_buffer.h
2817   include/grpc/impl/codegen/byte_buffer_reader.h
2818   include/grpc/impl/codegen/compression_types.h
2819   include/grpc/impl/codegen/connectivity_state.h
2820   include/grpc/impl/codegen/grpc_types.h
2821   include/grpc/impl/codegen/propagation_bits.h
2822   include/grpc/impl/codegen/slice.h
2823   include/grpc/impl/codegen/status.h
2824   include/grpc/impl/codegen/atm.h
2825   include/grpc/impl/codegen/atm_gcc_atomic.h
2826   include/grpc/impl/codegen/atm_gcc_sync.h
2827   include/grpc/impl/codegen/atm_windows.h
2828   include/grpc/impl/codegen/fork.h
2829   include/grpc/impl/codegen/gpr_slice.h
2830   include/grpc/impl/codegen/gpr_types.h
2831   include/grpc/impl/codegen/log.h
2832   include/grpc/impl/codegen/port_platform.h
2833   include/grpc/impl/codegen/sync.h
2834   include/grpc/impl/codegen/sync_custom.h
2835   include/grpc/impl/codegen/sync_generic.h
2836   include/grpc/impl/codegen/sync_posix.h
2837   include/grpc/impl/codegen/sync_windows.h
2838   include/grpc/byte_buffer.h
2839   include/grpc/byte_buffer_reader.h
2840   include/grpc/compression.h
2841   include/grpc/fork.h
2842   include/grpc/grpc.h
2843   include/grpc/grpc_posix.h
2844   include/grpc/grpc_security_constants.h
2845   include/grpc/load_reporting.h
2846   include/grpc/slice.h
2847   include/grpc/slice_buffer.h
2848   include/grpc/status.h
2849   include/grpc/support/workaround_list.h
2850   include/grpc/census.h
2851 )
2852   string(REPLACE "include/" "" _path ${_hdr})
2853   get_filename_component(_path ${_path} PATH)
2854   install(FILES ${_hdr}
2855     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
2856   )
2857 endforeach()
2858
2859
2860 if (gRPC_INSTALL)
2861   install(TARGETS grpc_unsecure EXPORT gRPCTargets
2862     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
2863     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
2864     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
2865   )
2866 endif()
2867
2868 if (gRPC_BUILD_TESTS)
2869
2870 add_library(reconnect_server
2871   test/core/util/reconnect_server.cc
2872 )
2873
2874 if(WIN32 AND MSVC)
2875   set_target_properties(reconnect_server PROPERTIES COMPILE_PDB_NAME "reconnect_server"
2876     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2877   )
2878   if (gRPC_INSTALL)
2879     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/reconnect_server.pdb
2880       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2881     )
2882   endif()
2883 endif()
2884
2885
2886 target_include_directories(reconnect_server
2887   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2888   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2889   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2890   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2891   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2892   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2893   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2894   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2895   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2896   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2897 )
2898   # avoid dependency on libstdc++
2899   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2900     set_target_properties(reconnect_server PROPERTIES LINKER_LANGUAGE C)
2901     # only use the flags for C++ source files
2902     target_compile_options(reconnect_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2903   endif()
2904 target_link_libraries(reconnect_server
2905   ${_gRPC_ALLTARGETS_LIBRARIES}
2906   test_tcp_server
2907   grpc_test_util
2908   grpc
2909   gpr
2910 )
2911
2912
2913 endif (gRPC_BUILD_TESTS)
2914 if (gRPC_BUILD_TESTS)
2915
2916 add_library(test_tcp_server
2917   test/core/util/test_tcp_server.cc
2918 )
2919
2920 if(WIN32 AND MSVC)
2921   set_target_properties(test_tcp_server PROPERTIES COMPILE_PDB_NAME "test_tcp_server"
2922     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2923   )
2924   if (gRPC_INSTALL)
2925     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/test_tcp_server.pdb
2926       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2927     )
2928   endif()
2929 endif()
2930
2931
2932 target_include_directories(test_tcp_server
2933   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2934   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2935   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2936   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2937   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2938   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2939   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2940   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2941   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2942   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2943 )
2944   # avoid dependency on libstdc++
2945   if (_gRPC_CORE_NOSTDCXX_FLAGS)
2946     set_target_properties(test_tcp_server PROPERTIES LINKER_LANGUAGE C)
2947     # only use the flags for C++ source files
2948     target_compile_options(test_tcp_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
2949   endif()
2950 target_link_libraries(test_tcp_server
2951   ${_gRPC_ALLTARGETS_LIBRARIES}
2952   grpc_test_util
2953   grpc
2954   gpr
2955 )
2956
2957
2958 endif (gRPC_BUILD_TESTS)
2959 if (gRPC_BUILD_TESTS)
2960
2961 if (gRPC_BUILD_CODEGEN)
2962 add_library(bm_callback_test_service_impl
2963   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
2964   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
2965   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
2966   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
2967   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_mock.grpc.pb.h
2968   test/cpp/microbenchmarks/callback_test_service.cc
2969 )
2970
2971 if(WIN32 AND MSVC)
2972   set_target_properties(bm_callback_test_service_impl PROPERTIES COMPILE_PDB_NAME "bm_callback_test_service_impl"
2973     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
2974   )
2975   if (gRPC_INSTALL)
2976     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bm_callback_test_service_impl.pdb
2977       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
2978     )
2979   endif()
2980 endif()
2981
2982 protobuf_generate_grpc_cpp(
2983   src/proto/grpc/testing/echo.proto
2984 )
2985
2986 target_include_directories(bm_callback_test_service_impl
2987   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
2988   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
2989   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
2990   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
2991   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
2992   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
2993   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
2994   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
2995   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
2996   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
2997   PRIVATE third_party/googletest/googletest/include
2998   PRIVATE third_party/googletest/googletest
2999   PRIVATE third_party/googletest/googlemock/include
3000   PRIVATE third_party/googletest/googlemock
3001   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3002 )
3003 target_link_libraries(bm_callback_test_service_impl
3004   ${_gRPC_PROTOBUF_LIBRARIES}
3005   ${_gRPC_ALLTARGETS_LIBRARIES}
3006   grpc_benchmark
3007   ${_gRPC_BENCHMARK_LIBRARIES}
3008   grpc++_test_util_unsecure
3009   grpc_test_util_unsecure
3010   grpc++_unsecure
3011   grpc_unsecure
3012   gpr
3013   grpc++_test_config
3014   ${_gRPC_GFLAGS_LIBRARIES}
3015 )
3016
3017 endif (gRPC_BUILD_CODEGEN)
3018
3019 endif (gRPC_BUILD_TESTS)
3020 if (gRPC_BUILD_TESTS)
3021
3022 add_library(dns_test_util
3023   test/cpp/naming/dns_test_util.cc
3024 )
3025
3026 if(WIN32 AND MSVC)
3027   set_target_properties(dns_test_util PROPERTIES COMPILE_PDB_NAME "dns_test_util"
3028     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3029   )
3030   if (gRPC_INSTALL)
3031     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dns_test_util.pdb
3032       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3033     )
3034   endif()
3035 endif()
3036
3037
3038 target_include_directories(dns_test_util
3039   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3040   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3041   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3042   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3043   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3044   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3045   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3046   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3047   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3048   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3049   PRIVATE third_party/googletest/googletest/include
3050   PRIVATE third_party/googletest/googletest
3051   PRIVATE third_party/googletest/googlemock/include
3052   PRIVATE third_party/googletest/googlemock
3053   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3054 )
3055 target_link_libraries(dns_test_util
3056   ${_gRPC_PROTOBUF_LIBRARIES}
3057   ${_gRPC_ALLTARGETS_LIBRARIES}
3058   ${_gRPC_GFLAGS_LIBRARIES}
3059 )
3060
3061
3062 endif (gRPC_BUILD_TESTS)
3063
3064 add_library(grpc++
3065   src/cpp/client/insecure_credentials.cc
3066   src/cpp/client/secure_credentials.cc
3067   src/cpp/common/auth_property_iterator.cc
3068   src/cpp/common/secure_auth_context.cc
3069   src/cpp/common/secure_channel_arguments.cc
3070   src/cpp/common/secure_create_auth_context.cc
3071   src/cpp/server/insecure_server_credentials.cc
3072   src/cpp/server/secure_server_credentials.cc
3073   src/cpp/client/channel_cc.cc
3074   src/cpp/client/client_context.cc
3075   src/cpp/client/client_interceptor.cc
3076   src/cpp/client/create_channel.cc
3077   src/cpp/client/create_channel_internal.cc
3078   src/cpp/client/create_channel_posix.cc
3079   src/cpp/client/credentials_cc.cc
3080   src/cpp/client/generic_stub.cc
3081   src/cpp/common/alarm.cc
3082   src/cpp/common/channel_arguments.cc
3083   src/cpp/common/channel_filter.cc
3084   src/cpp/common/completion_queue_cc.cc
3085   src/cpp/common/core_codegen.cc
3086   src/cpp/common/resource_quota_cc.cc
3087   src/cpp/common/rpc_method.cc
3088   src/cpp/common/validate_service_config.cc
3089   src/cpp/common/version_cc.cc
3090   src/cpp/server/async_generic_service.cc
3091   src/cpp/server/channel_argument_option.cc
3092   src/cpp/server/create_default_thread_pool.cc
3093   src/cpp/server/dynamic_thread_pool.cc
3094   src/cpp/server/external_connection_acceptor_impl.cc
3095   src/cpp/server/health/default_health_check_service.cc
3096   src/cpp/server/health/health_check_service.cc
3097   src/cpp/server/health/health_check_service_server_builder_option.cc
3098   src/cpp/server/server_builder.cc
3099   src/cpp/server/server_cc.cc
3100   src/cpp/server/server_context.cc
3101   src/cpp/server/server_credentials.cc
3102   src/cpp/server/server_posix.cc
3103   src/cpp/thread_manager/thread_manager.cc
3104   src/cpp/util/byte_buffer_cc.cc
3105   src/cpp/util/status.cc
3106   src/cpp/util/string_ref.cc
3107   src/cpp/util/time_cc.cc
3108   src/core/ext/filters/client_channel/health/health.pb.c
3109   third_party/nanopb/pb_common.c
3110   third_party/nanopb/pb_decode.c
3111   third_party/nanopb/pb_encode.c
3112   src/cpp/codegen/codegen_init.cc
3113 )
3114
3115 if(WIN32 AND MSVC)
3116   set_target_properties(grpc++ PROPERTIES COMPILE_PDB_NAME "grpc++"
3117     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3118   )
3119   if (gRPC_INSTALL)
3120     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++.pdb
3121       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3122     )
3123   endif()
3124 endif()
3125
3126
3127 target_include_directories(grpc++
3128   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3129   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3130   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3131   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3132   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3133   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3134   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3135   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3136   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3137   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3138   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3139 )
3140 target_link_libraries(grpc++
3141   ${_gRPC_BASELIB_LIBRARIES}
3142   ${_gRPC_SSL_LIBRARIES}
3143   ${_gRPC_PROTOBUF_LIBRARIES}
3144   ${_gRPC_ALLTARGETS_LIBRARIES}
3145   grpc
3146   gpr
3147 )
3148
3149 foreach(_hdr
3150   include/grpc++/alarm.h
3151   include/grpc++/channel.h
3152   include/grpc++/client_context.h
3153   include/grpc++/completion_queue.h
3154   include/grpc++/create_channel.h
3155   include/grpc++/create_channel_posix.h
3156   include/grpc++/ext/health_check_service_server_builder_option.h
3157   include/grpc++/generic/async_generic_service.h
3158   include/grpc++/generic/generic_stub.h
3159   include/grpc++/grpc++.h
3160   include/grpc++/health_check_service_interface.h
3161   include/grpc++/impl/call.h
3162   include/grpc++/impl/channel_argument_option.h
3163   include/grpc++/impl/client_unary_call.h
3164   include/grpc++/impl/codegen/core_codegen.h
3165   include/grpc++/impl/grpc_library.h
3166   include/grpc++/impl/method_handler_impl.h
3167   include/grpc++/impl/rpc_method.h
3168   include/grpc++/impl/rpc_service_method.h
3169   include/grpc++/impl/serialization_traits.h
3170   include/grpc++/impl/server_builder_option.h
3171   include/grpc++/impl/server_builder_plugin.h
3172   include/grpc++/impl/server_initializer.h
3173   include/grpc++/impl/service_type.h
3174   include/grpc++/resource_quota.h
3175   include/grpc++/security/auth_context.h
3176   include/grpc++/security/auth_metadata_processor.h
3177   include/grpc++/security/credentials.h
3178   include/grpc++/security/server_credentials.h
3179   include/grpc++/server.h
3180   include/grpc++/server_builder.h
3181   include/grpc++/server_context.h
3182   include/grpc++/server_posix.h
3183   include/grpc++/support/async_stream.h
3184   include/grpc++/support/async_unary_call.h
3185   include/grpc++/support/byte_buffer.h
3186   include/grpc++/support/channel_arguments.h
3187   include/grpc++/support/config.h
3188   include/grpc++/support/slice.h
3189   include/grpc++/support/status.h
3190   include/grpc++/support/status_code_enum.h
3191   include/grpc++/support/string_ref.h
3192   include/grpc++/support/stub_options.h
3193   include/grpc++/support/sync_stream.h
3194   include/grpc++/support/time.h
3195   include/grpcpp/alarm.h
3196   include/grpcpp/alarm_impl.h
3197   include/grpcpp/channel.h
3198   include/grpcpp/channel_impl.h
3199   include/grpcpp/client_context.h
3200   include/grpcpp/completion_queue.h
3201   include/grpcpp/completion_queue_impl.h
3202   include/grpcpp/create_channel.h
3203   include/grpcpp/create_channel_impl.h
3204   include/grpcpp/create_channel_posix.h
3205   include/grpcpp/create_channel_posix_impl.h
3206   include/grpcpp/ext/health_check_service_server_builder_option.h
3207   include/grpcpp/generic/async_generic_service.h
3208   include/grpcpp/generic/generic_stub.h
3209   include/grpcpp/generic/generic_stub_impl.h
3210   include/grpcpp/grpcpp.h
3211   include/grpcpp/health_check_service_interface.h
3212   include/grpcpp/health_check_service_interface_impl.h
3213   include/grpcpp/impl/call.h
3214   include/grpcpp/impl/channel_argument_option.h
3215   include/grpcpp/impl/client_unary_call.h
3216   include/grpcpp/impl/codegen/core_codegen.h
3217   include/grpcpp/impl/grpc_library.h
3218   include/grpcpp/impl/method_handler_impl.h
3219   include/grpcpp/impl/rpc_method.h
3220   include/grpcpp/impl/rpc_service_method.h
3221   include/grpcpp/impl/serialization_traits.h
3222   include/grpcpp/impl/server_builder_option.h
3223   include/grpcpp/impl/server_builder_option_impl.h
3224   include/grpcpp/impl/server_builder_plugin.h
3225   include/grpcpp/impl/server_initializer.h
3226   include/grpcpp/impl/server_initializer_impl.h
3227   include/grpcpp/impl/service_type.h
3228   include/grpcpp/resource_quota.h
3229   include/grpcpp/resource_quota_impl.h
3230   include/grpcpp/security/auth_context.h
3231   include/grpcpp/security/auth_metadata_processor.h
3232   include/grpcpp/security/auth_metadata_processor_impl.h
3233   include/grpcpp/security/credentials.h
3234   include/grpcpp/security/credentials_impl.h
3235   include/grpcpp/security/server_credentials.h
3236   include/grpcpp/security/server_credentials_impl.h
3237   include/grpcpp/server.h
3238   include/grpcpp/server_builder.h
3239   include/grpcpp/server_builder_impl.h
3240   include/grpcpp/server_context.h
3241   include/grpcpp/server_impl.h
3242   include/grpcpp/server_posix.h
3243   include/grpcpp/server_posix_impl.h
3244   include/grpcpp/support/async_stream.h
3245   include/grpcpp/support/async_stream_impl.h
3246   include/grpcpp/support/async_unary_call.h
3247   include/grpcpp/support/async_unary_call_impl.h
3248   include/grpcpp/support/byte_buffer.h
3249   include/grpcpp/support/channel_arguments.h
3250   include/grpcpp/support/channel_arguments_impl.h
3251   include/grpcpp/support/client_callback.h
3252   include/grpcpp/support/client_callback_impl.h
3253   include/grpcpp/support/client_interceptor.h
3254   include/grpcpp/support/config.h
3255   include/grpcpp/support/interceptor.h
3256   include/grpcpp/support/message_allocator.h
3257   include/grpcpp/support/proto_buffer_reader.h
3258   include/grpcpp/support/proto_buffer_writer.h
3259   include/grpcpp/support/server_callback.h
3260   include/grpcpp/support/server_callback_impl.h
3261   include/grpcpp/support/server_interceptor.h
3262   include/grpcpp/support/slice.h
3263   include/grpcpp/support/status.h
3264   include/grpcpp/support/status_code_enum.h
3265   include/grpcpp/support/string_ref.h
3266   include/grpcpp/support/stub_options.h
3267   include/grpcpp/support/sync_stream.h
3268   include/grpcpp/support/sync_stream_impl.h
3269   include/grpcpp/support/time.h
3270   include/grpcpp/support/validate_service_config.h
3271   include/grpc/support/alloc.h
3272   include/grpc/support/atm.h
3273   include/grpc/support/atm_gcc_atomic.h
3274   include/grpc/support/atm_gcc_sync.h
3275   include/grpc/support/atm_windows.h
3276   include/grpc/support/cpu.h
3277   include/grpc/support/log.h
3278   include/grpc/support/log_windows.h
3279   include/grpc/support/port_platform.h
3280   include/grpc/support/string_util.h
3281   include/grpc/support/sync.h
3282   include/grpc/support/sync_custom.h
3283   include/grpc/support/sync_generic.h
3284   include/grpc/support/sync_posix.h
3285   include/grpc/support/sync_windows.h
3286   include/grpc/support/thd_id.h
3287   include/grpc/support/time.h
3288   include/grpc/impl/codegen/atm.h
3289   include/grpc/impl/codegen/atm_gcc_atomic.h
3290   include/grpc/impl/codegen/atm_gcc_sync.h
3291   include/grpc/impl/codegen/atm_windows.h
3292   include/grpc/impl/codegen/fork.h
3293   include/grpc/impl/codegen/gpr_slice.h
3294   include/grpc/impl/codegen/gpr_types.h
3295   include/grpc/impl/codegen/log.h
3296   include/grpc/impl/codegen/port_platform.h
3297   include/grpc/impl/codegen/sync.h
3298   include/grpc/impl/codegen/sync_custom.h
3299   include/grpc/impl/codegen/sync_generic.h
3300   include/grpc/impl/codegen/sync_posix.h
3301   include/grpc/impl/codegen/sync_windows.h
3302   include/grpc/byte_buffer.h
3303   include/grpc/byte_buffer_reader.h
3304   include/grpc/compression.h
3305   include/grpc/fork.h
3306   include/grpc/grpc.h
3307   include/grpc/grpc_posix.h
3308   include/grpc/grpc_security_constants.h
3309   include/grpc/load_reporting.h
3310   include/grpc/slice.h
3311   include/grpc/slice_buffer.h
3312   include/grpc/status.h
3313   include/grpc/support/workaround_list.h
3314   include/grpc/impl/codegen/byte_buffer.h
3315   include/grpc/impl/codegen/byte_buffer_reader.h
3316   include/grpc/impl/codegen/compression_types.h
3317   include/grpc/impl/codegen/connectivity_state.h
3318   include/grpc/impl/codegen/grpc_types.h
3319   include/grpc/impl/codegen/propagation_bits.h
3320   include/grpc/impl/codegen/slice.h
3321   include/grpc/impl/codegen/status.h
3322   include/grpc++/impl/codegen/async_stream.h
3323   include/grpc++/impl/codegen/async_unary_call.h
3324   include/grpc++/impl/codegen/byte_buffer.h
3325   include/grpc++/impl/codegen/call.h
3326   include/grpc++/impl/codegen/call_hook.h
3327   include/grpc++/impl/codegen/channel_interface.h
3328   include/grpc++/impl/codegen/client_context.h
3329   include/grpc++/impl/codegen/client_unary_call.h
3330   include/grpc++/impl/codegen/completion_queue.h
3331   include/grpc++/impl/codegen/completion_queue_tag.h
3332   include/grpc++/impl/codegen/config.h
3333   include/grpc++/impl/codegen/core_codegen_interface.h
3334   include/grpc++/impl/codegen/create_auth_context.h
3335   include/grpc++/impl/codegen/grpc_library.h
3336   include/grpc++/impl/codegen/metadata_map.h
3337   include/grpc++/impl/codegen/method_handler_impl.h
3338   include/grpc++/impl/codegen/rpc_method.h
3339   include/grpc++/impl/codegen/rpc_service_method.h
3340   include/grpc++/impl/codegen/security/auth_context.h
3341   include/grpc++/impl/codegen/serialization_traits.h
3342   include/grpc++/impl/codegen/server_context.h
3343   include/grpc++/impl/codegen/server_interface.h
3344   include/grpc++/impl/codegen/service_type.h
3345   include/grpc++/impl/codegen/slice.h
3346   include/grpc++/impl/codegen/status.h
3347   include/grpc++/impl/codegen/status_code_enum.h
3348   include/grpc++/impl/codegen/string_ref.h
3349   include/grpc++/impl/codegen/stub_options.h
3350   include/grpc++/impl/codegen/sync_stream.h
3351   include/grpc++/impl/codegen/time.h
3352   include/grpcpp/impl/codegen/async_generic_service.h
3353   include/grpcpp/impl/codegen/async_stream.h
3354   include/grpcpp/impl/codegen/async_stream_impl.h
3355   include/grpcpp/impl/codegen/async_unary_call.h
3356   include/grpcpp/impl/codegen/async_unary_call_impl.h
3357   include/grpcpp/impl/codegen/byte_buffer.h
3358   include/grpcpp/impl/codegen/call.h
3359   include/grpcpp/impl/codegen/call_hook.h
3360   include/grpcpp/impl/codegen/call_op_set.h
3361   include/grpcpp/impl/codegen/call_op_set_interface.h
3362   include/grpcpp/impl/codegen/callback_common.h
3363   include/grpcpp/impl/codegen/channel_interface.h
3364   include/grpcpp/impl/codegen/client_callback.h
3365   include/grpcpp/impl/codegen/client_callback_impl.h
3366   include/grpcpp/impl/codegen/client_context.h
3367   include/grpcpp/impl/codegen/client_context_impl.h
3368   include/grpcpp/impl/codegen/client_interceptor.h
3369   include/grpcpp/impl/codegen/client_unary_call.h
3370   include/grpcpp/impl/codegen/completion_queue.h
3371   include/grpcpp/impl/codegen/completion_queue_impl.h
3372   include/grpcpp/impl/codegen/completion_queue_tag.h
3373   include/grpcpp/impl/codegen/config.h
3374   include/grpcpp/impl/codegen/core_codegen_interface.h
3375   include/grpcpp/impl/codegen/create_auth_context.h
3376   include/grpcpp/impl/codegen/grpc_library.h
3377   include/grpcpp/impl/codegen/intercepted_channel.h
3378   include/grpcpp/impl/codegen/interceptor.h
3379   include/grpcpp/impl/codegen/interceptor_common.h
3380   include/grpcpp/impl/codegen/message_allocator.h
3381   include/grpcpp/impl/codegen/metadata_map.h
3382   include/grpcpp/impl/codegen/method_handler_impl.h
3383   include/grpcpp/impl/codegen/rpc_method.h
3384   include/grpcpp/impl/codegen/rpc_service_method.h
3385   include/grpcpp/impl/codegen/security/auth_context.h
3386   include/grpcpp/impl/codegen/serialization_traits.h
3387   include/grpcpp/impl/codegen/server_callback.h
3388   include/grpcpp/impl/codegen/server_callback_impl.h
3389   include/grpcpp/impl/codegen/server_context.h
3390   include/grpcpp/impl/codegen/server_context_impl.h
3391   include/grpcpp/impl/codegen/server_interceptor.h
3392   include/grpcpp/impl/codegen/server_interface.h
3393   include/grpcpp/impl/codegen/service_type.h
3394   include/grpcpp/impl/codegen/slice.h
3395   include/grpcpp/impl/codegen/status.h
3396   include/grpcpp/impl/codegen/status_code_enum.h
3397   include/grpcpp/impl/codegen/string_ref.h
3398   include/grpcpp/impl/codegen/stub_options.h
3399   include/grpcpp/impl/codegen/sync_stream.h
3400   include/grpcpp/impl/codegen/sync_stream_impl.h
3401   include/grpcpp/impl/codegen/time.h
3402   include/grpcpp/impl/codegen/sync.h
3403   include/grpc++/impl/codegen/proto_utils.h
3404   include/grpcpp/impl/codegen/proto_buffer_reader.h
3405   include/grpcpp/impl/codegen/proto_buffer_writer.h
3406   include/grpcpp/impl/codegen/proto_utils.h
3407   include/grpc++/impl/codegen/config_protobuf.h
3408   include/grpcpp/impl/codegen/config_protobuf.h
3409 )
3410   string(REPLACE "include/" "" _path ${_hdr})
3411   get_filename_component(_path ${_path} PATH)
3412   install(FILES ${_hdr}
3413     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3414   )
3415 endforeach()
3416
3417
3418 if (gRPC_INSTALL)
3419   install(TARGETS grpc++ EXPORT gRPCTargets
3420     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
3421     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
3422     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
3423   )
3424 endif()
3425
3426 if (gRPC_BUILD_TESTS)
3427
3428 if (gRPC_BUILD_CODEGEN)
3429 add_library(grpc++_core_stats
3430   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.pb.cc
3431   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.grpc.pb.cc
3432   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.pb.h
3433   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/core/stats.grpc.pb.h
3434   src/cpp/util/core_stats.cc
3435 )
3436
3437 if(WIN32 AND MSVC)
3438   set_target_properties(grpc++_core_stats PROPERTIES COMPILE_PDB_NAME "grpc++_core_stats"
3439     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3440   )
3441   if (gRPC_INSTALL)
3442     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_core_stats.pdb
3443       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3444     )
3445   endif()
3446 endif()
3447
3448 protobuf_generate_grpc_cpp(
3449   src/proto/grpc/core/stats.proto
3450 )
3451
3452 target_include_directories(grpc++_core_stats
3453   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3454   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3455   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3456   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3457   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3458   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3459   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3460   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3461   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3462   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3463   PRIVATE third_party/googletest/googletest/include
3464   PRIVATE third_party/googletest/googletest
3465   PRIVATE third_party/googletest/googlemock/include
3466   PRIVATE third_party/googletest/googlemock
3467   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3468 )
3469 target_link_libraries(grpc++_core_stats
3470   ${_gRPC_PROTOBUF_LIBRARIES}
3471   ${_gRPC_ALLTARGETS_LIBRARIES}
3472   grpc++
3473   ${_gRPC_GFLAGS_LIBRARIES}
3474 )
3475
3476 endif (gRPC_BUILD_CODEGEN)
3477
3478 endif (gRPC_BUILD_TESTS)
3479
3480 if (gRPC_BUILD_CODEGEN)
3481 add_library(grpc++_error_details
3482   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.pb.cc
3483   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.grpc.pb.cc
3484   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.pb.h
3485   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.grpc.pb.h
3486   src/cpp/util/error_details.cc
3487 )
3488
3489 if(WIN32 AND MSVC)
3490   set_target_properties(grpc++_error_details PROPERTIES COMPILE_PDB_NAME "grpc++_error_details"
3491     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3492   )
3493   if (gRPC_INSTALL)
3494     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_error_details.pdb
3495       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3496     )
3497   endif()
3498 endif()
3499
3500 protobuf_generate_grpc_cpp(
3501   src/proto/grpc/status/status.proto
3502 )
3503
3504 target_include_directories(grpc++_error_details
3505   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3506   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3507   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3508   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3509   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3510   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3511   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3512   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3513   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3514   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3515   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3516 )
3517 target_link_libraries(grpc++_error_details
3518   ${_gRPC_BASELIB_LIBRARIES}
3519   ${_gRPC_PROTOBUF_LIBRARIES}
3520   ${_gRPC_ALLTARGETS_LIBRARIES}
3521   grpc++
3522 )
3523
3524 foreach(_hdr
3525   include/grpc++/support/error_details.h
3526   include/grpcpp/support/error_details.h
3527   include/grpcpp/support/error_details_impl.h
3528 )
3529   string(REPLACE "include/" "" _path ${_hdr})
3530   get_filename_component(_path ${_path} PATH)
3531   install(FILES ${_hdr}
3532     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3533   )
3534 endforeach()
3535 endif (gRPC_BUILD_CODEGEN)
3536
3537 if (gRPC_BUILD_CODEGEN)
3538
3539 if (gRPC_INSTALL)
3540   install(TARGETS grpc++_error_details EXPORT gRPCTargets
3541     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
3542     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
3543     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
3544   )
3545 endif()
3546
3547 endif (gRPC_BUILD_CODEGEN)
3548 if (gRPC_BUILD_TESTS)
3549
3550 if (gRPC_BUILD_CODEGEN)
3551 add_library(grpc++_proto_reflection_desc_db
3552   test/cpp/util/proto_reflection_descriptor_database.cc
3553   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
3554   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
3555   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
3556   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h
3557 )
3558
3559 if(WIN32 AND MSVC)
3560   set_target_properties(grpc++_proto_reflection_desc_db PROPERTIES COMPILE_PDB_NAME "grpc++_proto_reflection_desc_db"
3561     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3562   )
3563   if (gRPC_INSTALL)
3564     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_proto_reflection_desc_db.pdb
3565       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3566     )
3567   endif()
3568 endif()
3569
3570 protobuf_generate_grpc_cpp(
3571   src/proto/grpc/reflection/v1alpha/reflection.proto
3572 )
3573
3574 target_include_directories(grpc++_proto_reflection_desc_db
3575   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3576   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3577   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3578   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3579   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3580   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3581   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3582   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3583   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3584   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3585   PRIVATE third_party/googletest/googletest/include
3586   PRIVATE third_party/googletest/googletest
3587   PRIVATE third_party/googletest/googlemock/include
3588   PRIVATE third_party/googletest/googlemock
3589   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3590 )
3591 target_link_libraries(grpc++_proto_reflection_desc_db
3592   ${_gRPC_PROTOBUF_LIBRARIES}
3593   ${_gRPC_ALLTARGETS_LIBRARIES}
3594   grpc++
3595   grpc
3596   ${_gRPC_GFLAGS_LIBRARIES}
3597 )
3598
3599 foreach(_hdr
3600   include/grpc++/impl/codegen/config_protobuf.h
3601   include/grpcpp/impl/codegen/config_protobuf.h
3602 )
3603   string(REPLACE "include/" "" _path ${_hdr})
3604   get_filename_component(_path ${_path} PATH)
3605   install(FILES ${_hdr}
3606     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3607   )
3608 endforeach()
3609 endif (gRPC_BUILD_CODEGEN)
3610
3611 endif (gRPC_BUILD_TESTS)
3612
3613 if (gRPC_BUILD_CODEGEN)
3614 add_library(grpc++_reflection
3615   src/cpp/ext/proto_server_reflection.cc
3616   src/cpp/ext/proto_server_reflection_plugin.cc
3617   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
3618   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
3619   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
3620   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h
3621 )
3622
3623 if(WIN32 AND MSVC)
3624   set_target_properties(grpc++_reflection PROPERTIES COMPILE_PDB_NAME "grpc++_reflection"
3625     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3626   )
3627   if (gRPC_INSTALL)
3628     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_reflection.pdb
3629       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3630     )
3631   endif()
3632 endif()
3633
3634 protobuf_generate_grpc_cpp(
3635   src/proto/grpc/reflection/v1alpha/reflection.proto
3636 )
3637
3638 target_include_directories(grpc++_reflection
3639   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3640   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3641   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3642   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3643   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3644   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3645   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3646   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3647   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3648   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3649   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3650 )
3651 target_link_libraries(grpc++_reflection
3652   ${_gRPC_PROTOBUF_LIBRARIES}
3653   ${_gRPC_ALLTARGETS_LIBRARIES}
3654   grpc++
3655   grpc
3656 )
3657
3658 foreach(_hdr
3659   include/grpc++/ext/proto_server_reflection_plugin.h
3660   include/grpcpp/ext/proto_server_reflection_plugin.h
3661   include/grpcpp/ext/proto_server_reflection_plugin_impl.h
3662 )
3663   string(REPLACE "include/" "" _path ${_hdr})
3664   get_filename_component(_path ${_path} PATH)
3665   install(FILES ${_hdr}
3666     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3667   )
3668 endforeach()
3669 endif (gRPC_BUILD_CODEGEN)
3670
3671 if (gRPC_BUILD_CODEGEN)
3672
3673 if (gRPC_INSTALL)
3674   install(TARGETS grpc++_reflection EXPORT gRPCTargets
3675     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
3676     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
3677     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
3678   )
3679 endif()
3680
3681 endif (gRPC_BUILD_CODEGEN)
3682 if (gRPC_BUILD_TESTS)
3683
3684 add_library(grpc++_test_config
3685   test/cpp/util/test_config_cc.cc
3686 )
3687
3688 if(WIN32 AND MSVC)
3689   set_target_properties(grpc++_test_config PROPERTIES COMPILE_PDB_NAME "grpc++_test_config"
3690     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3691   )
3692   if (gRPC_INSTALL)
3693     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_test_config.pdb
3694       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3695     )
3696   endif()
3697 endif()
3698
3699
3700 target_include_directories(grpc++_test_config
3701   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3702   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3703   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3704   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3705   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3706   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3707   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3708   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3709   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3710   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3711   PRIVATE third_party/googletest/googletest/include
3712   PRIVATE third_party/googletest/googletest
3713   PRIVATE third_party/googletest/googlemock/include
3714   PRIVATE third_party/googletest/googlemock
3715   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3716 )
3717 target_link_libraries(grpc++_test_config
3718   ${_gRPC_PROTOBUF_LIBRARIES}
3719   ${_gRPC_ALLTARGETS_LIBRARIES}
3720   ${_gRPC_GFLAGS_LIBRARIES}
3721 )
3722
3723
3724 endif (gRPC_BUILD_TESTS)
3725 if (gRPC_BUILD_TESTS)
3726
3727 if (gRPC_BUILD_CODEGEN)
3728 add_library(grpc++_test_util
3729   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
3730   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
3731   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
3732   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
3733   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc
3734   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.cc
3735   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.h
3736   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.h
3737   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
3738   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
3739   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
3740   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
3741   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
3742   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
3743   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
3744   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
3745   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_mock.grpc.pb.h
3746   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc
3747   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc
3748   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.h
3749   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.h
3750   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc
3751   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc
3752   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h
3753   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h
3754   test/cpp/end2end/test_health_check_service_impl.cc
3755   test/cpp/end2end/test_service_impl.cc
3756   test/cpp/util/byte_buffer_proto_helper.cc
3757   test/cpp/util/channel_trace_proto_helper.cc
3758   test/cpp/util/create_test_channel.cc
3759   test/cpp/util/string_ref_helper.cc
3760   test/cpp/util/subprocess.cc
3761   test/cpp/util/test_credentials_provider.cc
3762   src/cpp/codegen/codegen_init.cc
3763 )
3764
3765 if(WIN32 AND MSVC)
3766   set_target_properties(grpc++_test_util PROPERTIES COMPILE_PDB_NAME "grpc++_test_util"
3767     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3768   )
3769   if (gRPC_INSTALL)
3770     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_test_util.pdb
3771       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3772     )
3773   endif()
3774 endif()
3775
3776 protobuf_generate_grpc_cpp(
3777   src/proto/grpc/channelz/channelz.proto
3778 )
3779 protobuf_generate_grpc_cpp(
3780   src/proto/grpc/health/v1/health.proto
3781 )
3782 protobuf_generate_grpc_cpp(
3783   src/proto/grpc/testing/echo_messages.proto
3784 )
3785 protobuf_generate_grpc_cpp(
3786   src/proto/grpc/testing/echo.proto
3787 )
3788 protobuf_generate_grpc_cpp(
3789   src/proto/grpc/testing/duplicate/echo_duplicate.proto
3790 )
3791 protobuf_generate_grpc_cpp(
3792   src/proto/grpc/testing/simple_messages.proto
3793 )
3794
3795 target_include_directories(grpc++_test_util
3796   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
3797   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
3798   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
3799   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
3800   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
3801   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
3802   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
3803   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
3804   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
3805   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
3806   PRIVATE third_party/googletest/googletest/include
3807   PRIVATE third_party/googletest/googletest
3808   PRIVATE third_party/googletest/googlemock/include
3809   PRIVATE third_party/googletest/googlemock
3810   PRIVATE ${_gRPC_PROTO_GENS_DIR}
3811 )
3812 target_link_libraries(grpc++_test_util
3813   ${_gRPC_PROTOBUF_LIBRARIES}
3814   ${_gRPC_ALLTARGETS_LIBRARIES}
3815   grpc++
3816   grpc_test_util
3817   grpc
3818   ${_gRPC_GFLAGS_LIBRARIES}
3819 )
3820
3821 foreach(_hdr
3822   include/grpc++/impl/codegen/async_stream.h
3823   include/grpc++/impl/codegen/async_unary_call.h
3824   include/grpc++/impl/codegen/byte_buffer.h
3825   include/grpc++/impl/codegen/call.h
3826   include/grpc++/impl/codegen/call_hook.h
3827   include/grpc++/impl/codegen/channel_interface.h
3828   include/grpc++/impl/codegen/client_context.h
3829   include/grpc++/impl/codegen/client_unary_call.h
3830   include/grpc++/impl/codegen/completion_queue.h
3831   include/grpc++/impl/codegen/completion_queue_tag.h
3832   include/grpc++/impl/codegen/config.h
3833   include/grpc++/impl/codegen/core_codegen_interface.h
3834   include/grpc++/impl/codegen/create_auth_context.h
3835   include/grpc++/impl/codegen/grpc_library.h
3836   include/grpc++/impl/codegen/metadata_map.h
3837   include/grpc++/impl/codegen/method_handler_impl.h
3838   include/grpc++/impl/codegen/rpc_method.h
3839   include/grpc++/impl/codegen/rpc_service_method.h
3840   include/grpc++/impl/codegen/security/auth_context.h
3841   include/grpc++/impl/codegen/serialization_traits.h
3842   include/grpc++/impl/codegen/server_context.h
3843   include/grpc++/impl/codegen/server_interface.h
3844   include/grpc++/impl/codegen/service_type.h
3845   include/grpc++/impl/codegen/slice.h
3846   include/grpc++/impl/codegen/status.h
3847   include/grpc++/impl/codegen/status_code_enum.h
3848   include/grpc++/impl/codegen/string_ref.h
3849   include/grpc++/impl/codegen/stub_options.h
3850   include/grpc++/impl/codegen/sync_stream.h
3851   include/grpc++/impl/codegen/time.h
3852   include/grpcpp/impl/codegen/async_generic_service.h
3853   include/grpcpp/impl/codegen/async_stream.h
3854   include/grpcpp/impl/codegen/async_stream_impl.h
3855   include/grpcpp/impl/codegen/async_unary_call.h
3856   include/grpcpp/impl/codegen/async_unary_call_impl.h
3857   include/grpcpp/impl/codegen/byte_buffer.h
3858   include/grpcpp/impl/codegen/call.h
3859   include/grpcpp/impl/codegen/call_hook.h
3860   include/grpcpp/impl/codegen/call_op_set.h
3861   include/grpcpp/impl/codegen/call_op_set_interface.h
3862   include/grpcpp/impl/codegen/callback_common.h
3863   include/grpcpp/impl/codegen/channel_interface.h
3864   include/grpcpp/impl/codegen/client_callback.h
3865   include/grpcpp/impl/codegen/client_callback_impl.h
3866   include/grpcpp/impl/codegen/client_context.h
3867   include/grpcpp/impl/codegen/client_context_impl.h
3868   include/grpcpp/impl/codegen/client_interceptor.h
3869   include/grpcpp/impl/codegen/client_unary_call.h
3870   include/grpcpp/impl/codegen/completion_queue.h
3871   include/grpcpp/impl/codegen/completion_queue_impl.h
3872   include/grpcpp/impl/codegen/completion_queue_tag.h
3873   include/grpcpp/impl/codegen/config.h
3874   include/grpcpp/impl/codegen/core_codegen_interface.h
3875   include/grpcpp/impl/codegen/create_auth_context.h
3876   include/grpcpp/impl/codegen/grpc_library.h
3877   include/grpcpp/impl/codegen/intercepted_channel.h
3878   include/grpcpp/impl/codegen/interceptor.h
3879   include/grpcpp/impl/codegen/interceptor_common.h
3880   include/grpcpp/impl/codegen/message_allocator.h
3881   include/grpcpp/impl/codegen/metadata_map.h
3882   include/grpcpp/impl/codegen/method_handler_impl.h
3883   include/grpcpp/impl/codegen/rpc_method.h
3884   include/grpcpp/impl/codegen/rpc_service_method.h
3885   include/grpcpp/impl/codegen/security/auth_context.h
3886   include/grpcpp/impl/codegen/serialization_traits.h
3887   include/grpcpp/impl/codegen/server_callback.h
3888   include/grpcpp/impl/codegen/server_callback_impl.h
3889   include/grpcpp/impl/codegen/server_context.h
3890   include/grpcpp/impl/codegen/server_context_impl.h
3891   include/grpcpp/impl/codegen/server_interceptor.h
3892   include/grpcpp/impl/codegen/server_interface.h
3893   include/grpcpp/impl/codegen/service_type.h
3894   include/grpcpp/impl/codegen/slice.h
3895   include/grpcpp/impl/codegen/status.h
3896   include/grpcpp/impl/codegen/status_code_enum.h
3897   include/grpcpp/impl/codegen/string_ref.h
3898   include/grpcpp/impl/codegen/stub_options.h
3899   include/grpcpp/impl/codegen/sync_stream.h
3900   include/grpcpp/impl/codegen/sync_stream_impl.h
3901   include/grpcpp/impl/codegen/time.h
3902   include/grpc/impl/codegen/byte_buffer.h
3903   include/grpc/impl/codegen/byte_buffer_reader.h
3904   include/grpc/impl/codegen/compression_types.h
3905   include/grpc/impl/codegen/connectivity_state.h
3906   include/grpc/impl/codegen/grpc_types.h
3907   include/grpc/impl/codegen/propagation_bits.h
3908   include/grpc/impl/codegen/slice.h
3909   include/grpc/impl/codegen/status.h
3910   include/grpc/impl/codegen/atm.h
3911   include/grpc/impl/codegen/atm_gcc_atomic.h
3912   include/grpc/impl/codegen/atm_gcc_sync.h
3913   include/grpc/impl/codegen/atm_windows.h
3914   include/grpc/impl/codegen/fork.h
3915   include/grpc/impl/codegen/gpr_slice.h
3916   include/grpc/impl/codegen/gpr_types.h
3917   include/grpc/impl/codegen/log.h
3918   include/grpc/impl/codegen/port_platform.h
3919   include/grpc/impl/codegen/sync.h
3920   include/grpc/impl/codegen/sync_custom.h
3921   include/grpc/impl/codegen/sync_generic.h
3922   include/grpc/impl/codegen/sync_posix.h
3923   include/grpc/impl/codegen/sync_windows.h
3924   include/grpcpp/impl/codegen/sync.h
3925   include/grpc++/impl/codegen/proto_utils.h
3926   include/grpcpp/impl/codegen/proto_buffer_reader.h
3927   include/grpcpp/impl/codegen/proto_buffer_writer.h
3928   include/grpcpp/impl/codegen/proto_utils.h
3929   include/grpc++/impl/codegen/config_protobuf.h
3930   include/grpcpp/impl/codegen/config_protobuf.h
3931 )
3932   string(REPLACE "include/" "" _path ${_hdr})
3933   get_filename_component(_path ${_path} PATH)
3934   install(FILES ${_hdr}
3935     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
3936   )
3937 endforeach()
3938 endif (gRPC_BUILD_CODEGEN)
3939
3940 endif (gRPC_BUILD_TESTS)
3941 if (gRPC_BUILD_TESTS)
3942
3943 if (gRPC_BUILD_CODEGEN)
3944 add_library(grpc++_test_util_unsecure
3945   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc
3946   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.cc
3947   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.h
3948   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.grpc.pb.h
3949   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
3950   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
3951   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
3952   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
3953   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
3954   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
3955   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
3956   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
3957   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_mock.grpc.pb.h
3958   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc
3959   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc
3960   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.h
3961   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.h
3962   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc
3963   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc
3964   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h
3965   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h
3966   test/cpp/end2end/test_health_check_service_impl.cc
3967   test/cpp/end2end/test_service_impl.cc
3968   test/cpp/util/byte_buffer_proto_helper.cc
3969   test/cpp/util/string_ref_helper.cc
3970   test/cpp/util/subprocess.cc
3971   src/cpp/codegen/codegen_init.cc
3972 )
3973
3974 if(WIN32 AND MSVC)
3975   set_target_properties(grpc++_test_util_unsecure PROPERTIES COMPILE_PDB_NAME "grpc++_test_util_unsecure"
3976     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
3977   )
3978   if (gRPC_INSTALL)
3979     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_test_util_unsecure.pdb
3980       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
3981     )
3982   endif()
3983 endif()
3984
3985 protobuf_generate_grpc_cpp(
3986   src/proto/grpc/health/v1/health.proto
3987 )
3988 protobuf_generate_grpc_cpp(
3989   src/proto/grpc/testing/echo_messages.proto
3990 )
3991 protobuf_generate_grpc_cpp(
3992   src/proto/grpc/testing/echo.proto
3993 )
3994 protobuf_generate_grpc_cpp(
3995   src/proto/grpc/testing/duplicate/echo_duplicate.proto
3996 )
3997 protobuf_generate_grpc_cpp(
3998   src/proto/grpc/testing/simple_messages.proto
3999 )
4000
4001 target_include_directories(grpc++_test_util_unsecure
4002   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4003   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4004   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4005   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4006   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4007   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4008   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4009   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4010   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4011   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4012   PRIVATE third_party/googletest/googletest/include
4013   PRIVATE third_party/googletest/googletest
4014   PRIVATE third_party/googletest/googlemock/include
4015   PRIVATE third_party/googletest/googlemock
4016   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4017 )
4018 target_link_libraries(grpc++_test_util_unsecure
4019   ${_gRPC_PROTOBUF_LIBRARIES}
4020   ${_gRPC_ALLTARGETS_LIBRARIES}
4021   grpc++_unsecure
4022   grpc_test_util_unsecure
4023   grpc_unsecure
4024   ${_gRPC_GFLAGS_LIBRARIES}
4025 )
4026
4027 foreach(_hdr
4028   include/grpc++/impl/codegen/async_stream.h
4029   include/grpc++/impl/codegen/async_unary_call.h
4030   include/grpc++/impl/codegen/byte_buffer.h
4031   include/grpc++/impl/codegen/call.h
4032   include/grpc++/impl/codegen/call_hook.h
4033   include/grpc++/impl/codegen/channel_interface.h
4034   include/grpc++/impl/codegen/client_context.h
4035   include/grpc++/impl/codegen/client_unary_call.h
4036   include/grpc++/impl/codegen/completion_queue.h
4037   include/grpc++/impl/codegen/completion_queue_tag.h
4038   include/grpc++/impl/codegen/config.h
4039   include/grpc++/impl/codegen/core_codegen_interface.h
4040   include/grpc++/impl/codegen/create_auth_context.h
4041   include/grpc++/impl/codegen/grpc_library.h
4042   include/grpc++/impl/codegen/metadata_map.h
4043   include/grpc++/impl/codegen/method_handler_impl.h
4044   include/grpc++/impl/codegen/rpc_method.h
4045   include/grpc++/impl/codegen/rpc_service_method.h
4046   include/grpc++/impl/codegen/security/auth_context.h
4047   include/grpc++/impl/codegen/serialization_traits.h
4048   include/grpc++/impl/codegen/server_context.h
4049   include/grpc++/impl/codegen/server_interface.h
4050   include/grpc++/impl/codegen/service_type.h
4051   include/grpc++/impl/codegen/slice.h
4052   include/grpc++/impl/codegen/status.h
4053   include/grpc++/impl/codegen/status_code_enum.h
4054   include/grpc++/impl/codegen/string_ref.h
4055   include/grpc++/impl/codegen/stub_options.h
4056   include/grpc++/impl/codegen/sync_stream.h
4057   include/grpc++/impl/codegen/time.h
4058   include/grpcpp/impl/codegen/async_generic_service.h
4059   include/grpcpp/impl/codegen/async_stream.h
4060   include/grpcpp/impl/codegen/async_stream_impl.h
4061   include/grpcpp/impl/codegen/async_unary_call.h
4062   include/grpcpp/impl/codegen/async_unary_call_impl.h
4063   include/grpcpp/impl/codegen/byte_buffer.h
4064   include/grpcpp/impl/codegen/call.h
4065   include/grpcpp/impl/codegen/call_hook.h
4066   include/grpcpp/impl/codegen/call_op_set.h
4067   include/grpcpp/impl/codegen/call_op_set_interface.h
4068   include/grpcpp/impl/codegen/callback_common.h
4069   include/grpcpp/impl/codegen/channel_interface.h
4070   include/grpcpp/impl/codegen/client_callback.h
4071   include/grpcpp/impl/codegen/client_callback_impl.h
4072   include/grpcpp/impl/codegen/client_context.h
4073   include/grpcpp/impl/codegen/client_context_impl.h
4074   include/grpcpp/impl/codegen/client_interceptor.h
4075   include/grpcpp/impl/codegen/client_unary_call.h
4076   include/grpcpp/impl/codegen/completion_queue.h
4077   include/grpcpp/impl/codegen/completion_queue_impl.h
4078   include/grpcpp/impl/codegen/completion_queue_tag.h
4079   include/grpcpp/impl/codegen/config.h
4080   include/grpcpp/impl/codegen/core_codegen_interface.h
4081   include/grpcpp/impl/codegen/create_auth_context.h
4082   include/grpcpp/impl/codegen/grpc_library.h
4083   include/grpcpp/impl/codegen/intercepted_channel.h
4084   include/grpcpp/impl/codegen/interceptor.h
4085   include/grpcpp/impl/codegen/interceptor_common.h
4086   include/grpcpp/impl/codegen/message_allocator.h
4087   include/grpcpp/impl/codegen/metadata_map.h
4088   include/grpcpp/impl/codegen/method_handler_impl.h
4089   include/grpcpp/impl/codegen/rpc_method.h
4090   include/grpcpp/impl/codegen/rpc_service_method.h
4091   include/grpcpp/impl/codegen/security/auth_context.h
4092   include/grpcpp/impl/codegen/serialization_traits.h
4093   include/grpcpp/impl/codegen/server_callback.h
4094   include/grpcpp/impl/codegen/server_callback_impl.h
4095   include/grpcpp/impl/codegen/server_context.h
4096   include/grpcpp/impl/codegen/server_context_impl.h
4097   include/grpcpp/impl/codegen/server_interceptor.h
4098   include/grpcpp/impl/codegen/server_interface.h
4099   include/grpcpp/impl/codegen/service_type.h
4100   include/grpcpp/impl/codegen/slice.h
4101   include/grpcpp/impl/codegen/status.h
4102   include/grpcpp/impl/codegen/status_code_enum.h
4103   include/grpcpp/impl/codegen/string_ref.h
4104   include/grpcpp/impl/codegen/stub_options.h
4105   include/grpcpp/impl/codegen/sync_stream.h
4106   include/grpcpp/impl/codegen/sync_stream_impl.h
4107   include/grpcpp/impl/codegen/time.h
4108   include/grpc/impl/codegen/byte_buffer.h
4109   include/grpc/impl/codegen/byte_buffer_reader.h
4110   include/grpc/impl/codegen/compression_types.h
4111   include/grpc/impl/codegen/connectivity_state.h
4112   include/grpc/impl/codegen/grpc_types.h
4113   include/grpc/impl/codegen/propagation_bits.h
4114   include/grpc/impl/codegen/slice.h
4115   include/grpc/impl/codegen/status.h
4116   include/grpc/impl/codegen/atm.h
4117   include/grpc/impl/codegen/atm_gcc_atomic.h
4118   include/grpc/impl/codegen/atm_gcc_sync.h
4119   include/grpc/impl/codegen/atm_windows.h
4120   include/grpc/impl/codegen/fork.h
4121   include/grpc/impl/codegen/gpr_slice.h
4122   include/grpc/impl/codegen/gpr_types.h
4123   include/grpc/impl/codegen/log.h
4124   include/grpc/impl/codegen/port_platform.h
4125   include/grpc/impl/codegen/sync.h
4126   include/grpc/impl/codegen/sync_custom.h
4127   include/grpc/impl/codegen/sync_generic.h
4128   include/grpc/impl/codegen/sync_posix.h
4129   include/grpc/impl/codegen/sync_windows.h
4130   include/grpcpp/impl/codegen/sync.h
4131   include/grpc++/impl/codegen/proto_utils.h
4132   include/grpcpp/impl/codegen/proto_buffer_reader.h
4133   include/grpcpp/impl/codegen/proto_buffer_writer.h
4134   include/grpcpp/impl/codegen/proto_utils.h
4135   include/grpc++/impl/codegen/config_protobuf.h
4136   include/grpcpp/impl/codegen/config_protobuf.h
4137 )
4138   string(REPLACE "include/" "" _path ${_hdr})
4139   get_filename_component(_path ${_path} PATH)
4140   install(FILES ${_hdr}
4141     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4142   )
4143 endforeach()
4144 endif (gRPC_BUILD_CODEGEN)
4145
4146 endif (gRPC_BUILD_TESTS)
4147
4148 add_library(grpc++_unsecure
4149   src/cpp/client/insecure_credentials.cc
4150   src/cpp/common/insecure_create_auth_context.cc
4151   src/cpp/server/insecure_server_credentials.cc
4152   src/cpp/client/channel_cc.cc
4153   src/cpp/client/client_context.cc
4154   src/cpp/client/client_interceptor.cc
4155   src/cpp/client/create_channel.cc
4156   src/cpp/client/create_channel_internal.cc
4157   src/cpp/client/create_channel_posix.cc
4158   src/cpp/client/credentials_cc.cc
4159   src/cpp/client/generic_stub.cc
4160   src/cpp/common/alarm.cc
4161   src/cpp/common/channel_arguments.cc
4162   src/cpp/common/channel_filter.cc
4163   src/cpp/common/completion_queue_cc.cc
4164   src/cpp/common/core_codegen.cc
4165   src/cpp/common/resource_quota_cc.cc
4166   src/cpp/common/rpc_method.cc
4167   src/cpp/common/validate_service_config.cc
4168   src/cpp/common/version_cc.cc
4169   src/cpp/server/async_generic_service.cc
4170   src/cpp/server/channel_argument_option.cc
4171   src/cpp/server/create_default_thread_pool.cc
4172   src/cpp/server/dynamic_thread_pool.cc
4173   src/cpp/server/external_connection_acceptor_impl.cc
4174   src/cpp/server/health/default_health_check_service.cc
4175   src/cpp/server/health/health_check_service.cc
4176   src/cpp/server/health/health_check_service_server_builder_option.cc
4177   src/cpp/server/server_builder.cc
4178   src/cpp/server/server_cc.cc
4179   src/cpp/server/server_context.cc
4180   src/cpp/server/server_credentials.cc
4181   src/cpp/server/server_posix.cc
4182   src/cpp/thread_manager/thread_manager.cc
4183   src/cpp/util/byte_buffer_cc.cc
4184   src/cpp/util/status.cc
4185   src/cpp/util/string_ref.cc
4186   src/cpp/util/time_cc.cc
4187   src/core/ext/filters/client_channel/health/health.pb.c
4188   third_party/nanopb/pb_common.c
4189   third_party/nanopb/pb_decode.c
4190   third_party/nanopb/pb_encode.c
4191   src/cpp/codegen/codegen_init.cc
4192 )
4193
4194 if(WIN32 AND MSVC)
4195   set_target_properties(grpc++_unsecure PROPERTIES COMPILE_PDB_NAME "grpc++_unsecure"
4196     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4197   )
4198   if (gRPC_INSTALL)
4199     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++_unsecure.pdb
4200       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4201     )
4202   endif()
4203 endif()
4204
4205
4206 target_include_directories(grpc++_unsecure
4207   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4208   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4209   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4210   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4211   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4212   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4213   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4214   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4215   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4216   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4217   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4218 )
4219 target_link_libraries(grpc++_unsecure
4220   ${_gRPC_BASELIB_LIBRARIES}
4221   ${_gRPC_PROTOBUF_LIBRARIES}
4222   ${_gRPC_ALLTARGETS_LIBRARIES}
4223   gpr
4224   grpc_unsecure
4225 )
4226
4227 foreach(_hdr
4228   include/grpc++/alarm.h
4229   include/grpc++/channel.h
4230   include/grpc++/client_context.h
4231   include/grpc++/completion_queue.h
4232   include/grpc++/create_channel.h
4233   include/grpc++/create_channel_posix.h
4234   include/grpc++/ext/health_check_service_server_builder_option.h
4235   include/grpc++/generic/async_generic_service.h
4236   include/grpc++/generic/generic_stub.h
4237   include/grpc++/grpc++.h
4238   include/grpc++/health_check_service_interface.h
4239   include/grpc++/impl/call.h
4240   include/grpc++/impl/channel_argument_option.h
4241   include/grpc++/impl/client_unary_call.h
4242   include/grpc++/impl/codegen/core_codegen.h
4243   include/grpc++/impl/grpc_library.h
4244   include/grpc++/impl/method_handler_impl.h
4245   include/grpc++/impl/rpc_method.h
4246   include/grpc++/impl/rpc_service_method.h
4247   include/grpc++/impl/serialization_traits.h
4248   include/grpc++/impl/server_builder_option.h
4249   include/grpc++/impl/server_builder_plugin.h
4250   include/grpc++/impl/server_initializer.h
4251   include/grpc++/impl/service_type.h
4252   include/grpc++/resource_quota.h
4253   include/grpc++/security/auth_context.h
4254   include/grpc++/security/auth_metadata_processor.h
4255   include/grpc++/security/credentials.h
4256   include/grpc++/security/server_credentials.h
4257   include/grpc++/server.h
4258   include/grpc++/server_builder.h
4259   include/grpc++/server_context.h
4260   include/grpc++/server_posix.h
4261   include/grpc++/support/async_stream.h
4262   include/grpc++/support/async_unary_call.h
4263   include/grpc++/support/byte_buffer.h
4264   include/grpc++/support/channel_arguments.h
4265   include/grpc++/support/config.h
4266   include/grpc++/support/slice.h
4267   include/grpc++/support/status.h
4268   include/grpc++/support/status_code_enum.h
4269   include/grpc++/support/string_ref.h
4270   include/grpc++/support/stub_options.h
4271   include/grpc++/support/sync_stream.h
4272   include/grpc++/support/time.h
4273   include/grpcpp/alarm.h
4274   include/grpcpp/alarm_impl.h
4275   include/grpcpp/channel.h
4276   include/grpcpp/channel_impl.h
4277   include/grpcpp/client_context.h
4278   include/grpcpp/completion_queue.h
4279   include/grpcpp/completion_queue_impl.h
4280   include/grpcpp/create_channel.h
4281   include/grpcpp/create_channel_impl.h
4282   include/grpcpp/create_channel_posix.h
4283   include/grpcpp/create_channel_posix_impl.h
4284   include/grpcpp/ext/health_check_service_server_builder_option.h
4285   include/grpcpp/generic/async_generic_service.h
4286   include/grpcpp/generic/generic_stub.h
4287   include/grpcpp/generic/generic_stub_impl.h
4288   include/grpcpp/grpcpp.h
4289   include/grpcpp/health_check_service_interface.h
4290   include/grpcpp/health_check_service_interface_impl.h
4291   include/grpcpp/impl/call.h
4292   include/grpcpp/impl/channel_argument_option.h
4293   include/grpcpp/impl/client_unary_call.h
4294   include/grpcpp/impl/codegen/core_codegen.h
4295   include/grpcpp/impl/grpc_library.h
4296   include/grpcpp/impl/method_handler_impl.h
4297   include/grpcpp/impl/rpc_method.h
4298   include/grpcpp/impl/rpc_service_method.h
4299   include/grpcpp/impl/serialization_traits.h
4300   include/grpcpp/impl/server_builder_option.h
4301   include/grpcpp/impl/server_builder_option_impl.h
4302   include/grpcpp/impl/server_builder_plugin.h
4303   include/grpcpp/impl/server_initializer.h
4304   include/grpcpp/impl/server_initializer_impl.h
4305   include/grpcpp/impl/service_type.h
4306   include/grpcpp/resource_quota.h
4307   include/grpcpp/resource_quota_impl.h
4308   include/grpcpp/security/auth_context.h
4309   include/grpcpp/security/auth_metadata_processor.h
4310   include/grpcpp/security/auth_metadata_processor_impl.h
4311   include/grpcpp/security/credentials.h
4312   include/grpcpp/security/credentials_impl.h
4313   include/grpcpp/security/server_credentials.h
4314   include/grpcpp/security/server_credentials_impl.h
4315   include/grpcpp/server.h
4316   include/grpcpp/server_builder.h
4317   include/grpcpp/server_builder_impl.h
4318   include/grpcpp/server_context.h
4319   include/grpcpp/server_impl.h
4320   include/grpcpp/server_posix.h
4321   include/grpcpp/server_posix_impl.h
4322   include/grpcpp/support/async_stream.h
4323   include/grpcpp/support/async_stream_impl.h
4324   include/grpcpp/support/async_unary_call.h
4325   include/grpcpp/support/async_unary_call_impl.h
4326   include/grpcpp/support/byte_buffer.h
4327   include/grpcpp/support/channel_arguments.h
4328   include/grpcpp/support/channel_arguments_impl.h
4329   include/grpcpp/support/client_callback.h
4330   include/grpcpp/support/client_callback_impl.h
4331   include/grpcpp/support/client_interceptor.h
4332   include/grpcpp/support/config.h
4333   include/grpcpp/support/interceptor.h
4334   include/grpcpp/support/message_allocator.h
4335   include/grpcpp/support/proto_buffer_reader.h
4336   include/grpcpp/support/proto_buffer_writer.h
4337   include/grpcpp/support/server_callback.h
4338   include/grpcpp/support/server_callback_impl.h
4339   include/grpcpp/support/server_interceptor.h
4340   include/grpcpp/support/slice.h
4341   include/grpcpp/support/status.h
4342   include/grpcpp/support/status_code_enum.h
4343   include/grpcpp/support/string_ref.h
4344   include/grpcpp/support/stub_options.h
4345   include/grpcpp/support/sync_stream.h
4346   include/grpcpp/support/sync_stream_impl.h
4347   include/grpcpp/support/time.h
4348   include/grpcpp/support/validate_service_config.h
4349   include/grpc/support/alloc.h
4350   include/grpc/support/atm.h
4351   include/grpc/support/atm_gcc_atomic.h
4352   include/grpc/support/atm_gcc_sync.h
4353   include/grpc/support/atm_windows.h
4354   include/grpc/support/cpu.h
4355   include/grpc/support/log.h
4356   include/grpc/support/log_windows.h
4357   include/grpc/support/port_platform.h
4358   include/grpc/support/string_util.h
4359   include/grpc/support/sync.h
4360   include/grpc/support/sync_custom.h
4361   include/grpc/support/sync_generic.h
4362   include/grpc/support/sync_posix.h
4363   include/grpc/support/sync_windows.h
4364   include/grpc/support/thd_id.h
4365   include/grpc/support/time.h
4366   include/grpc/impl/codegen/atm.h
4367   include/grpc/impl/codegen/atm_gcc_atomic.h
4368   include/grpc/impl/codegen/atm_gcc_sync.h
4369   include/grpc/impl/codegen/atm_windows.h
4370   include/grpc/impl/codegen/fork.h
4371   include/grpc/impl/codegen/gpr_slice.h
4372   include/grpc/impl/codegen/gpr_types.h
4373   include/grpc/impl/codegen/log.h
4374   include/grpc/impl/codegen/port_platform.h
4375   include/grpc/impl/codegen/sync.h
4376   include/grpc/impl/codegen/sync_custom.h
4377   include/grpc/impl/codegen/sync_generic.h
4378   include/grpc/impl/codegen/sync_posix.h
4379   include/grpc/impl/codegen/sync_windows.h
4380   include/grpc/byte_buffer.h
4381   include/grpc/byte_buffer_reader.h
4382   include/grpc/compression.h
4383   include/grpc/fork.h
4384   include/grpc/grpc.h
4385   include/grpc/grpc_posix.h
4386   include/grpc/grpc_security_constants.h
4387   include/grpc/load_reporting.h
4388   include/grpc/slice.h
4389   include/grpc/slice_buffer.h
4390   include/grpc/status.h
4391   include/grpc/support/workaround_list.h
4392   include/grpc/impl/codegen/byte_buffer.h
4393   include/grpc/impl/codegen/byte_buffer_reader.h
4394   include/grpc/impl/codegen/compression_types.h
4395   include/grpc/impl/codegen/connectivity_state.h
4396   include/grpc/impl/codegen/grpc_types.h
4397   include/grpc/impl/codegen/propagation_bits.h
4398   include/grpc/impl/codegen/slice.h
4399   include/grpc/impl/codegen/status.h
4400   include/grpc++/impl/codegen/async_stream.h
4401   include/grpc++/impl/codegen/async_unary_call.h
4402   include/grpc++/impl/codegen/byte_buffer.h
4403   include/grpc++/impl/codegen/call.h
4404   include/grpc++/impl/codegen/call_hook.h
4405   include/grpc++/impl/codegen/channel_interface.h
4406   include/grpc++/impl/codegen/client_context.h
4407   include/grpc++/impl/codegen/client_unary_call.h
4408   include/grpc++/impl/codegen/completion_queue.h
4409   include/grpc++/impl/codegen/completion_queue_tag.h
4410   include/grpc++/impl/codegen/config.h
4411   include/grpc++/impl/codegen/core_codegen_interface.h
4412   include/grpc++/impl/codegen/create_auth_context.h
4413   include/grpc++/impl/codegen/grpc_library.h
4414   include/grpc++/impl/codegen/metadata_map.h
4415   include/grpc++/impl/codegen/method_handler_impl.h
4416   include/grpc++/impl/codegen/rpc_method.h
4417   include/grpc++/impl/codegen/rpc_service_method.h
4418   include/grpc++/impl/codegen/security/auth_context.h
4419   include/grpc++/impl/codegen/serialization_traits.h
4420   include/grpc++/impl/codegen/server_context.h
4421   include/grpc++/impl/codegen/server_interface.h
4422   include/grpc++/impl/codegen/service_type.h
4423   include/grpc++/impl/codegen/slice.h
4424   include/grpc++/impl/codegen/status.h
4425   include/grpc++/impl/codegen/status_code_enum.h
4426   include/grpc++/impl/codegen/string_ref.h
4427   include/grpc++/impl/codegen/stub_options.h
4428   include/grpc++/impl/codegen/sync_stream.h
4429   include/grpc++/impl/codegen/time.h
4430   include/grpcpp/impl/codegen/async_generic_service.h
4431   include/grpcpp/impl/codegen/async_stream.h
4432   include/grpcpp/impl/codegen/async_stream_impl.h
4433   include/grpcpp/impl/codegen/async_unary_call.h
4434   include/grpcpp/impl/codegen/async_unary_call_impl.h
4435   include/grpcpp/impl/codegen/byte_buffer.h
4436   include/grpcpp/impl/codegen/call.h
4437   include/grpcpp/impl/codegen/call_hook.h
4438   include/grpcpp/impl/codegen/call_op_set.h
4439   include/grpcpp/impl/codegen/call_op_set_interface.h
4440   include/grpcpp/impl/codegen/callback_common.h
4441   include/grpcpp/impl/codegen/channel_interface.h
4442   include/grpcpp/impl/codegen/client_callback.h
4443   include/grpcpp/impl/codegen/client_callback_impl.h
4444   include/grpcpp/impl/codegen/client_context.h
4445   include/grpcpp/impl/codegen/client_context_impl.h
4446   include/grpcpp/impl/codegen/client_interceptor.h
4447   include/grpcpp/impl/codegen/client_unary_call.h
4448   include/grpcpp/impl/codegen/completion_queue.h
4449   include/grpcpp/impl/codegen/completion_queue_impl.h
4450   include/grpcpp/impl/codegen/completion_queue_tag.h
4451   include/grpcpp/impl/codegen/config.h
4452   include/grpcpp/impl/codegen/core_codegen_interface.h
4453   include/grpcpp/impl/codegen/create_auth_context.h
4454   include/grpcpp/impl/codegen/grpc_library.h
4455   include/grpcpp/impl/codegen/intercepted_channel.h
4456   include/grpcpp/impl/codegen/interceptor.h
4457   include/grpcpp/impl/codegen/interceptor_common.h
4458   include/grpcpp/impl/codegen/message_allocator.h
4459   include/grpcpp/impl/codegen/metadata_map.h
4460   include/grpcpp/impl/codegen/method_handler_impl.h
4461   include/grpcpp/impl/codegen/rpc_method.h
4462   include/grpcpp/impl/codegen/rpc_service_method.h
4463   include/grpcpp/impl/codegen/security/auth_context.h
4464   include/grpcpp/impl/codegen/serialization_traits.h
4465   include/grpcpp/impl/codegen/server_callback.h
4466   include/grpcpp/impl/codegen/server_callback_impl.h
4467   include/grpcpp/impl/codegen/server_context.h
4468   include/grpcpp/impl/codegen/server_context_impl.h
4469   include/grpcpp/impl/codegen/server_interceptor.h
4470   include/grpcpp/impl/codegen/server_interface.h
4471   include/grpcpp/impl/codegen/service_type.h
4472   include/grpcpp/impl/codegen/slice.h
4473   include/grpcpp/impl/codegen/status.h
4474   include/grpcpp/impl/codegen/status_code_enum.h
4475   include/grpcpp/impl/codegen/string_ref.h
4476   include/grpcpp/impl/codegen/stub_options.h
4477   include/grpcpp/impl/codegen/sync_stream.h
4478   include/grpcpp/impl/codegen/sync_stream_impl.h
4479   include/grpcpp/impl/codegen/time.h
4480   include/grpcpp/impl/codegen/sync.h
4481 )
4482   string(REPLACE "include/" "" _path ${_hdr})
4483   get_filename_component(_path ${_path} PATH)
4484   install(FILES ${_hdr}
4485     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4486   )
4487 endforeach()
4488
4489
4490 if (gRPC_INSTALL)
4491   install(TARGETS grpc++_unsecure EXPORT gRPCTargets
4492     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
4493     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
4494     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
4495   )
4496 endif()
4497
4498 if (gRPC_BUILD_TESTS)
4499
4500 add_library(grpc_benchmark
4501   test/cpp/microbenchmarks/helpers.cc
4502 )
4503
4504 if(WIN32 AND MSVC)
4505   set_target_properties(grpc_benchmark PROPERTIES COMPILE_PDB_NAME "grpc_benchmark"
4506     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4507   )
4508   if (gRPC_INSTALL)
4509     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_benchmark.pdb
4510       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4511     )
4512   endif()
4513 endif()
4514
4515
4516 target_include_directories(grpc_benchmark
4517   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4518   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4519   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4520   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4521   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4522   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4523   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4524   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4525   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4526   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4527   PRIVATE third_party/googletest/googletest/include
4528   PRIVATE third_party/googletest/googletest
4529   PRIVATE third_party/googletest/googlemock/include
4530   PRIVATE third_party/googletest/googlemock
4531   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4532 )
4533 target_link_libraries(grpc_benchmark
4534   ${_gRPC_PROTOBUF_LIBRARIES}
4535   ${_gRPC_ALLTARGETS_LIBRARIES}
4536   ${_gRPC_BENCHMARK_LIBRARIES}
4537   grpc++_unsecure
4538   grpc_test_util_unsecure
4539   grpc_unsecure
4540   ${_gRPC_GFLAGS_LIBRARIES}
4541 )
4542
4543
4544 endif (gRPC_BUILD_TESTS)
4545 if (gRPC_BUILD_TESTS)
4546
4547 if (gRPC_BUILD_CODEGEN)
4548 add_library(grpc_cli_libs
4549   test/cpp/util/cli_call.cc
4550   test/cpp/util/cli_credentials.cc
4551   test/cpp/util/grpc_tool.cc
4552   test/cpp/util/proto_file_parser.cc
4553   test/cpp/util/service_describer.cc
4554   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
4555   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
4556   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
4557   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h
4558 )
4559
4560 if(WIN32 AND MSVC)
4561   set_target_properties(grpc_cli_libs PROPERTIES COMPILE_PDB_NAME "grpc_cli_libs"
4562     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4563   )
4564   if (gRPC_INSTALL)
4565     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_cli_libs.pdb
4566       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4567     )
4568   endif()
4569 endif()
4570
4571 protobuf_generate_grpc_cpp(
4572   src/proto/grpc/reflection/v1alpha/reflection.proto
4573 )
4574
4575 target_include_directories(grpc_cli_libs
4576   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4577   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4578   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4579   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4580   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4581   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4582   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4583   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4584   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4585   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4586   PRIVATE third_party/googletest/googletest/include
4587   PRIVATE third_party/googletest/googletest
4588   PRIVATE third_party/googletest/googlemock/include
4589   PRIVATE third_party/googletest/googlemock
4590   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4591 )
4592 target_link_libraries(grpc_cli_libs
4593   ${_gRPC_PROTOBUF_LIBRARIES}
4594   ${_gRPC_ALLTARGETS_LIBRARIES}
4595   grpc++_proto_reflection_desc_db
4596   grpc++
4597   grpc
4598   ${_gRPC_GFLAGS_LIBRARIES}
4599 )
4600
4601 foreach(_hdr
4602   include/grpc++/impl/codegen/config_protobuf.h
4603   include/grpcpp/impl/codegen/config_protobuf.h
4604 )
4605   string(REPLACE "include/" "" _path ${_hdr})
4606   get_filename_component(_path ${_path} PATH)
4607   install(FILES ${_hdr}
4608     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4609   )
4610 endforeach()
4611 endif (gRPC_BUILD_CODEGEN)
4612
4613 endif (gRPC_BUILD_TESTS)
4614
4615 add_library(grpc_plugin_support
4616   src/compiler/cpp_generator.cc
4617   src/compiler/csharp_generator.cc
4618   src/compiler/node_generator.cc
4619   src/compiler/objective_c_generator.cc
4620   src/compiler/php_generator.cc
4621   src/compiler/python_generator.cc
4622   src/compiler/ruby_generator.cc
4623 )
4624
4625 if(WIN32 AND MSVC)
4626   set_target_properties(grpc_plugin_support PROPERTIES COMPILE_PDB_NAME "grpc_plugin_support"
4627     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4628   )
4629   if (gRPC_INSTALL)
4630     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_plugin_support.pdb
4631       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4632     )
4633   endif()
4634 endif()
4635
4636
4637 target_include_directories(grpc_plugin_support
4638   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4639   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4640   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4641   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4642   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4643   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4644   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4645   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4646   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4647   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4648   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4649 )
4650 target_link_libraries(grpc_plugin_support
4651   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
4652   ${_gRPC_PROTOBUF_LIBRARIES}
4653   ${_gRPC_ALLTARGETS_LIBRARIES}
4654 )
4655
4656 foreach(_hdr
4657   include/grpc++/impl/codegen/config_protobuf.h
4658   include/grpcpp/impl/codegen/config_protobuf.h
4659 )
4660   string(REPLACE "include/" "" _path ${_hdr})
4661   get_filename_component(_path ${_path} PATH)
4662   install(FILES ${_hdr}
4663     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4664   )
4665 endforeach()
4666
4667
4668 if (gRPC_INSTALL)
4669   install(TARGETS grpc_plugin_support EXPORT gRPCTargets
4670     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
4671     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
4672     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
4673   )
4674 endif()
4675
4676
4677 if (gRPC_BUILD_CODEGEN)
4678 add_library(grpcpp_channelz
4679   src/cpp/server/channelz/channelz_service.cc
4680   src/cpp/server/channelz/channelz_service_plugin.cc
4681   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
4682   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
4683   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
4684   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
4685 )
4686
4687 if(WIN32 AND MSVC)
4688   set_target_properties(grpcpp_channelz PROPERTIES COMPILE_PDB_NAME "grpcpp_channelz"
4689     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4690   )
4691   if (gRPC_INSTALL)
4692     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpcpp_channelz.pdb
4693       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4694     )
4695   endif()
4696 endif()
4697
4698 protobuf_generate_grpc_cpp(
4699   src/proto/grpc/channelz/channelz.proto
4700 )
4701
4702 target_include_directories(grpcpp_channelz
4703   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4704   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4705   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4706   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4707   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4708   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4709   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4710   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4711   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4712   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4713   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4714 )
4715 target_link_libraries(grpcpp_channelz
4716   ${_gRPC_PROTOBUF_LIBRARIES}
4717   ${_gRPC_ALLTARGETS_LIBRARIES}
4718   grpc++
4719   grpc
4720 )
4721
4722 foreach(_hdr
4723   include/grpcpp/ext/channelz_service_plugin.h
4724   include/grpcpp/ext/channelz_service_plugin_impl.h
4725 )
4726   string(REPLACE "include/" "" _path ${_hdr})
4727   get_filename_component(_path ${_path} PATH)
4728   install(FILES ${_hdr}
4729     DESTINATION "${gRPC_INSTALL_INCLUDEDIR}/${_path}"
4730   )
4731 endforeach()
4732 endif (gRPC_BUILD_CODEGEN)
4733
4734 if (gRPC_BUILD_CODEGEN)
4735
4736 if (gRPC_INSTALL)
4737   install(TARGETS grpcpp_channelz EXPORT gRPCTargets
4738     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
4739     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
4740     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
4741   )
4742 endif()
4743
4744 endif (gRPC_BUILD_CODEGEN)
4745 if (gRPC_BUILD_TESTS)
4746
4747 if (gRPC_BUILD_CODEGEN)
4748 add_library(http2_client_main
4749   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
4750   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
4751   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
4752   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
4753   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
4754   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
4755   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
4756   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
4757   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
4758   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
4759   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
4760   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
4761   test/cpp/interop/http2_client.cc
4762 )
4763
4764 if(WIN32 AND MSVC)
4765   set_target_properties(http2_client_main PROPERTIES COMPILE_PDB_NAME "http2_client_main"
4766     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4767   )
4768   if (gRPC_INSTALL)
4769     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/http2_client_main.pdb
4770       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4771     )
4772   endif()
4773 endif()
4774
4775 protobuf_generate_grpc_cpp(
4776   src/proto/grpc/testing/empty.proto
4777 )
4778 protobuf_generate_grpc_cpp(
4779   src/proto/grpc/testing/messages.proto
4780 )
4781 protobuf_generate_grpc_cpp(
4782   src/proto/grpc/testing/test.proto
4783 )
4784
4785 target_include_directories(http2_client_main
4786   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4787   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4788   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4789   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4790   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4791   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4792   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4793   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4794   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4795   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4796   PRIVATE third_party/googletest/googletest/include
4797   PRIVATE third_party/googletest/googletest
4798   PRIVATE third_party/googletest/googlemock/include
4799   PRIVATE third_party/googletest/googlemock
4800   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4801 )
4802 target_link_libraries(http2_client_main
4803   ${_gRPC_PROTOBUF_LIBRARIES}
4804   ${_gRPC_ALLTARGETS_LIBRARIES}
4805   grpc++_test_util
4806   grpc_test_util
4807   grpc++
4808   grpc
4809   grpc++_test_config
4810   ${_gRPC_GFLAGS_LIBRARIES}
4811 )
4812
4813 endif (gRPC_BUILD_CODEGEN)
4814
4815 endif (gRPC_BUILD_TESTS)
4816 if (gRPC_BUILD_TESTS)
4817
4818 if (gRPC_BUILD_CODEGEN)
4819 add_library(interop_client_helper
4820   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
4821   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
4822   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
4823   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
4824   test/cpp/interop/client_helper.cc
4825 )
4826
4827 if(WIN32 AND MSVC)
4828   set_target_properties(interop_client_helper PROPERTIES COMPILE_PDB_NAME "interop_client_helper"
4829     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4830   )
4831   if (gRPC_INSTALL)
4832     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_client_helper.pdb
4833       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4834     )
4835   endif()
4836 endif()
4837
4838 protobuf_generate_grpc_cpp(
4839   src/proto/grpc/testing/messages.proto
4840 )
4841
4842 target_include_directories(interop_client_helper
4843   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4844   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4845   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4846   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4847   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4848   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4849   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4850   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4851   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4852   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4853   PRIVATE third_party/googletest/googletest/include
4854   PRIVATE third_party/googletest/googletest
4855   PRIVATE third_party/googletest/googlemock/include
4856   PRIVATE third_party/googletest/googlemock
4857   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4858 )
4859 target_link_libraries(interop_client_helper
4860   ${_gRPC_PROTOBUF_LIBRARIES}
4861   ${_gRPC_ALLTARGETS_LIBRARIES}
4862   grpc++_test_util
4863   grpc_test_util
4864   grpc++
4865   grpc
4866   gpr
4867   ${_gRPC_GFLAGS_LIBRARIES}
4868 )
4869
4870 endif (gRPC_BUILD_CODEGEN)
4871
4872 endif (gRPC_BUILD_TESTS)
4873 if (gRPC_BUILD_TESTS)
4874
4875 if (gRPC_BUILD_CODEGEN)
4876 add_library(interop_client_main
4877   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
4878   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
4879   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
4880   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
4881   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
4882   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
4883   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
4884   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
4885   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
4886   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
4887   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
4888   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
4889   test/cpp/interop/client.cc
4890   test/cpp/interop/interop_client.cc
4891 )
4892
4893 if(WIN32 AND MSVC)
4894   set_target_properties(interop_client_main PROPERTIES COMPILE_PDB_NAME "interop_client_main"
4895     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4896   )
4897   if (gRPC_INSTALL)
4898     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_client_main.pdb
4899       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4900     )
4901   endif()
4902 endif()
4903
4904 protobuf_generate_grpc_cpp(
4905   src/proto/grpc/testing/empty.proto
4906 )
4907 protobuf_generate_grpc_cpp(
4908   src/proto/grpc/testing/messages.proto
4909 )
4910 protobuf_generate_grpc_cpp(
4911   src/proto/grpc/testing/test.proto
4912 )
4913
4914 target_include_directories(interop_client_main
4915   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4916   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4917   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4918   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4919   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4920   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4921   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4922   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4923   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4924   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4925   PRIVATE third_party/googletest/googletest/include
4926   PRIVATE third_party/googletest/googletest
4927   PRIVATE third_party/googletest/googlemock/include
4928   PRIVATE third_party/googletest/googlemock
4929   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4930 )
4931 target_link_libraries(interop_client_main
4932   ${_gRPC_PROTOBUF_LIBRARIES}
4933   ${_gRPC_ALLTARGETS_LIBRARIES}
4934   interop_client_helper
4935   grpc++_test_util
4936   grpc_test_util
4937   grpc++
4938   grpc
4939   gpr
4940   grpc++_test_config
4941   ${_gRPC_GFLAGS_LIBRARIES}
4942 )
4943
4944 endif (gRPC_BUILD_CODEGEN)
4945
4946 endif (gRPC_BUILD_TESTS)
4947 if (gRPC_BUILD_TESTS)
4948
4949 add_library(interop_server_helper
4950   test/cpp/interop/server_helper.cc
4951 )
4952
4953 if(WIN32 AND MSVC)
4954   set_target_properties(interop_server_helper PROPERTIES COMPILE_PDB_NAME "interop_server_helper"
4955     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
4956   )
4957   if (gRPC_INSTALL)
4958     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_server_helper.pdb
4959       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
4960     )
4961   endif()
4962 endif()
4963
4964
4965 target_include_directories(interop_server_helper
4966   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4967   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
4968   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
4969   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
4970   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
4971   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
4972   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
4973   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
4974   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
4975   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
4976   PRIVATE third_party/googletest/googletest/include
4977   PRIVATE third_party/googletest/googletest
4978   PRIVATE third_party/googletest/googlemock/include
4979   PRIVATE third_party/googletest/googlemock
4980   PRIVATE ${_gRPC_PROTO_GENS_DIR}
4981 )
4982 target_link_libraries(interop_server_helper
4983   ${_gRPC_PROTOBUF_LIBRARIES}
4984   ${_gRPC_ALLTARGETS_LIBRARIES}
4985   grpc++_test_util
4986   grpc_test_util
4987   grpc++
4988   grpc
4989   gpr
4990   ${_gRPC_GFLAGS_LIBRARIES}
4991 )
4992
4993
4994 endif (gRPC_BUILD_TESTS)
4995 if (gRPC_BUILD_TESTS)
4996
4997 if (gRPC_BUILD_CODEGEN)
4998 add_library(interop_server_lib
4999   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
5000   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
5001   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
5002   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
5003   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5004   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5005   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5006   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5007   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
5008   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
5009   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
5010   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
5011   test/cpp/interop/interop_server.cc
5012 )
5013
5014 if(WIN32 AND MSVC)
5015   set_target_properties(interop_server_lib PROPERTIES COMPILE_PDB_NAME "interop_server_lib"
5016     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5017   )
5018   if (gRPC_INSTALL)
5019     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_server_lib.pdb
5020       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5021     )
5022   endif()
5023 endif()
5024
5025 protobuf_generate_grpc_cpp(
5026   src/proto/grpc/testing/empty.proto
5027 )
5028 protobuf_generate_grpc_cpp(
5029   src/proto/grpc/testing/messages.proto
5030 )
5031 protobuf_generate_grpc_cpp(
5032   src/proto/grpc/testing/test.proto
5033 )
5034
5035 target_include_directories(interop_server_lib
5036   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5037   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5038   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5039   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5040   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5041   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5042   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5043   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5044   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5045   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5046   PRIVATE third_party/googletest/googletest/include
5047   PRIVATE third_party/googletest/googletest
5048   PRIVATE third_party/googletest/googlemock/include
5049   PRIVATE third_party/googletest/googlemock
5050   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5051 )
5052 target_link_libraries(interop_server_lib
5053   ${_gRPC_PROTOBUF_LIBRARIES}
5054   ${_gRPC_ALLTARGETS_LIBRARIES}
5055   interop_server_helper
5056   grpc++_test_util
5057   grpc_test_util
5058   grpc++
5059   grpc
5060   gpr
5061   grpc++_test_config
5062   ${_gRPC_GFLAGS_LIBRARIES}
5063 )
5064
5065 endif (gRPC_BUILD_CODEGEN)
5066
5067 endif (gRPC_BUILD_TESTS)
5068 if (gRPC_BUILD_TESTS)
5069
5070 add_library(interop_server_main
5071   test/cpp/interop/interop_server_bootstrap.cc
5072 )
5073
5074 if(WIN32 AND MSVC)
5075   set_target_properties(interop_server_main PROPERTIES COMPILE_PDB_NAME "interop_server_main"
5076     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5077   )
5078   if (gRPC_INSTALL)
5079     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/interop_server_main.pdb
5080       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5081     )
5082   endif()
5083 endif()
5084
5085
5086 target_include_directories(interop_server_main
5087   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5088   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5089   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5090   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5091   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5092   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5093   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5094   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5095   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5096   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5097   PRIVATE third_party/googletest/googletest/include
5098   PRIVATE third_party/googletest/googletest
5099   PRIVATE third_party/googletest/googlemock/include
5100   PRIVATE third_party/googletest/googlemock
5101   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5102 )
5103 target_link_libraries(interop_server_main
5104   ${_gRPC_PROTOBUF_LIBRARIES}
5105   ${_gRPC_ALLTARGETS_LIBRARIES}
5106   interop_server_lib
5107   ${_gRPC_GFLAGS_LIBRARIES}
5108 )
5109
5110
5111 endif (gRPC_BUILD_TESTS)
5112 if (gRPC_BUILD_TESTS)
5113
5114 if (gRPC_BUILD_CODEGEN)
5115 add_library(qps
5116   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
5117   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
5118   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
5119   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
5120   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.cc
5121   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.cc
5122   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.h
5123   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.h
5124   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.cc
5125   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.cc
5126   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.h
5127   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.h
5128   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.cc
5129   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.cc
5130   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.h
5131   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.h
5132   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.cc
5133   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.cc
5134   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.h
5135   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.h
5136   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.cc
5137   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.cc
5138   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.h
5139   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.h
5140   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.cc
5141   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.cc
5142   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.h
5143   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.h
5144   test/cpp/qps/benchmark_config.cc
5145   test/cpp/qps/client_async.cc
5146   test/cpp/qps/client_callback.cc
5147   test/cpp/qps/client_sync.cc
5148   test/cpp/qps/driver.cc
5149   test/cpp/qps/parse_json.cc
5150   test/cpp/qps/qps_server_builder.cc
5151   test/cpp/qps/qps_worker.cc
5152   test/cpp/qps/report.cc
5153   test/cpp/qps/server_async.cc
5154   test/cpp/qps/server_callback.cc
5155   test/cpp/qps/server_sync.cc
5156   test/cpp/qps/usage_timer.cc
5157 )
5158
5159 if(WIN32 AND MSVC)
5160   set_target_properties(qps PROPERTIES COMPILE_PDB_NAME "qps"
5161     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5162   )
5163   if (gRPC_INSTALL)
5164     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qps.pdb
5165       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5166     )
5167   endif()
5168 endif()
5169
5170 protobuf_generate_grpc_cpp(
5171   src/proto/grpc/testing/messages.proto
5172 )
5173 protobuf_generate_grpc_cpp(
5174   src/proto/grpc/testing/payloads.proto
5175 )
5176 protobuf_generate_grpc_cpp(
5177   src/proto/grpc/testing/stats.proto
5178 )
5179 protobuf_generate_grpc_cpp(
5180   src/proto/grpc/testing/control.proto
5181 )
5182 protobuf_generate_grpc_cpp(
5183   src/proto/grpc/testing/benchmark_service.proto
5184 )
5185 protobuf_generate_grpc_cpp(
5186   src/proto/grpc/testing/report_qps_scenario_service.proto
5187 )
5188 protobuf_generate_grpc_cpp(
5189   src/proto/grpc/testing/worker_service.proto
5190 )
5191
5192 target_include_directories(qps
5193   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5194   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5195   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5196   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5197   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5198   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5199   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5200   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5201   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5202   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5203   PRIVATE third_party/googletest/googletest/include
5204   PRIVATE third_party/googletest/googletest
5205   PRIVATE third_party/googletest/googlemock/include
5206   PRIVATE third_party/googletest/googlemock
5207   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5208 )
5209 target_link_libraries(qps
5210   ${_gRPC_PROTOBUF_LIBRARIES}
5211   ${_gRPC_ALLTARGETS_LIBRARIES}
5212   grpc_test_util
5213   grpc++_test_util
5214   grpc++_core_stats
5215   grpc++
5216   grpc
5217   ${_gRPC_GFLAGS_LIBRARIES}
5218 )
5219
5220 endif (gRPC_BUILD_CODEGEN)
5221
5222 endif (gRPC_BUILD_TESTS)
5223 if (gRPC_BUILD_CSHARP_EXT)
5224
5225 add_library(grpc_csharp_ext SHARED
5226   src/csharp/ext/grpc_csharp_ext.c
5227 )
5228
5229 if(WIN32 AND MSVC)
5230   set_target_properties(grpc_csharp_ext PROPERTIES COMPILE_PDB_NAME "grpc_csharp_ext"
5231     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5232   )
5233   if (gRPC_INSTALL)
5234     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_csharp_ext.pdb
5235       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5236     )
5237   endif()
5238 endif()
5239
5240
5241 target_include_directories(grpc_csharp_ext
5242   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5243   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5244   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5245   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5246   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5247   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5248   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5249   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5250   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5251   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5252 )
5253   # avoid dependency on libstdc++
5254   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5255     set_target_properties(grpc_csharp_ext PROPERTIES LINKER_LANGUAGE C)
5256     # only use the flags for C++ source files
5257     target_compile_options(grpc_csharp_ext PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5258   endif()
5259 target_link_libraries(grpc_csharp_ext
5260   ${_gRPC_ALLTARGETS_LIBRARIES}
5261   grpc
5262   gpr
5263 )
5264
5265
5266
5267 if (gRPC_INSTALL)
5268   install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
5269     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
5270     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
5271     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
5272   )
5273 endif()
5274
5275 endif (gRPC_BUILD_CSHARP_EXT)
5276 if (gRPC_BUILD_TESTS)
5277
5278 add_library(bad_client_test
5279   test/core/bad_client/bad_client.cc
5280 )
5281
5282 if(WIN32 AND MSVC)
5283   set_target_properties(bad_client_test PROPERTIES COMPILE_PDB_NAME "bad_client_test"
5284     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5285   )
5286   if (gRPC_INSTALL)
5287     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bad_client_test.pdb
5288       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5289     )
5290   endif()
5291 endif()
5292
5293
5294 target_include_directories(bad_client_test
5295   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5296   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5297   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5298   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5299   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5300   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5301   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5302   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5303   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5304   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5305   PRIVATE third_party/googletest/googletest/include
5306   PRIVATE third_party/googletest/googletest
5307   PRIVATE third_party/googletest/googlemock/include
5308   PRIVATE third_party/googletest/googlemock
5309   PRIVATE ${_gRPC_PROTO_GENS_DIR}
5310 )
5311 target_link_libraries(bad_client_test
5312   ${_gRPC_PROTOBUF_LIBRARIES}
5313   ${_gRPC_ALLTARGETS_LIBRARIES}
5314   grpc_test_util_unsecure
5315   grpc_unsecure
5316   gpr
5317   ${_gRPC_GFLAGS_LIBRARIES}
5318 )
5319
5320
5321 endif (gRPC_BUILD_TESTS)
5322 if (gRPC_BUILD_TESTS)
5323
5324 add_library(bad_ssl_test_server
5325   test/core/bad_ssl/server_common.cc
5326 )
5327
5328 if(WIN32 AND MSVC)
5329   set_target_properties(bad_ssl_test_server PROPERTIES COMPILE_PDB_NAME "bad_ssl_test_server"
5330     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5331   )
5332   if (gRPC_INSTALL)
5333     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bad_ssl_test_server.pdb
5334       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5335     )
5336   endif()
5337 endif()
5338
5339
5340 target_include_directories(bad_ssl_test_server
5341   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5342   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5343   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5344   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5345   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5346   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5347   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5348   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5349   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5350   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5351 )
5352   # avoid dependency on libstdc++
5353   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5354     set_target_properties(bad_ssl_test_server PROPERTIES LINKER_LANGUAGE C)
5355     # only use the flags for C++ source files
5356     target_compile_options(bad_ssl_test_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5357   endif()
5358 target_link_libraries(bad_ssl_test_server
5359   ${_gRPC_ALLTARGETS_LIBRARIES}
5360   grpc_test_util
5361   grpc
5362   gpr
5363 )
5364
5365
5366 endif (gRPC_BUILD_TESTS)
5367 if (gRPC_BUILD_TESTS)
5368
5369 add_library(end2end_tests
5370   test/core/end2end/end2end_tests.cc
5371   test/core/end2end/end2end_test_utils.cc
5372   test/core/end2end/tests/authority_not_supported.cc
5373   test/core/end2end/tests/bad_hostname.cc
5374   test/core/end2end/tests/bad_ping.cc
5375   test/core/end2end/tests/binary_metadata.cc
5376   test/core/end2end/tests/call_creds.cc
5377   test/core/end2end/tests/call_host_override.cc
5378   test/core/end2end/tests/cancel_after_accept.cc
5379   test/core/end2end/tests/cancel_after_client_done.cc
5380   test/core/end2end/tests/cancel_after_invoke.cc
5381   test/core/end2end/tests/cancel_after_round_trip.cc
5382   test/core/end2end/tests/cancel_before_invoke.cc
5383   test/core/end2end/tests/cancel_in_a_vacuum.cc
5384   test/core/end2end/tests/cancel_with_status.cc
5385   test/core/end2end/tests/channelz.cc
5386   test/core/end2end/tests/compressed_payload.cc
5387   test/core/end2end/tests/connectivity.cc
5388   test/core/end2end/tests/default_host.cc
5389   test/core/end2end/tests/disappearing_server.cc
5390   test/core/end2end/tests/empty_batch.cc
5391   test/core/end2end/tests/filter_call_init_fails.cc
5392   test/core/end2end/tests/filter_causes_close.cc
5393   test/core/end2end/tests/filter_context.cc
5394   test/core/end2end/tests/filter_latency.cc
5395   test/core/end2end/tests/filter_status_code.cc
5396   test/core/end2end/tests/graceful_server_shutdown.cc
5397   test/core/end2end/tests/high_initial_seqno.cc
5398   test/core/end2end/tests/hpack_size.cc
5399   test/core/end2end/tests/idempotent_request.cc
5400   test/core/end2end/tests/invoke_large_request.cc
5401   test/core/end2end/tests/keepalive_timeout.cc
5402   test/core/end2end/tests/large_metadata.cc
5403   test/core/end2end/tests/max_concurrent_streams.cc
5404   test/core/end2end/tests/max_connection_age.cc
5405   test/core/end2end/tests/max_connection_idle.cc
5406   test/core/end2end/tests/max_message_length.cc
5407   test/core/end2end/tests/negative_deadline.cc
5408   test/core/end2end/tests/no_error_on_hotpath.cc
5409   test/core/end2end/tests/no_logging.cc
5410   test/core/end2end/tests/no_op.cc
5411   test/core/end2end/tests/payload.cc
5412   test/core/end2end/tests/ping.cc
5413   test/core/end2end/tests/ping_pong_streaming.cc
5414   test/core/end2end/tests/proxy_auth.cc
5415   test/core/end2end/tests/registered_call.cc
5416   test/core/end2end/tests/request_with_flags.cc
5417   test/core/end2end/tests/request_with_payload.cc
5418   test/core/end2end/tests/resource_quota_server.cc
5419   test/core/end2end/tests/retry.cc
5420   test/core/end2end/tests/retry_cancellation.cc
5421   test/core/end2end/tests/retry_disabled.cc
5422   test/core/end2end/tests/retry_exceeds_buffer_size_in_initial_batch.cc
5423   test/core/end2end/tests/retry_exceeds_buffer_size_in_subsequent_batch.cc
5424   test/core/end2end/tests/retry_non_retriable_status.cc
5425   test/core/end2end/tests/retry_non_retriable_status_before_recv_trailing_metadata_started.cc
5426   test/core/end2end/tests/retry_recv_initial_metadata.cc
5427   test/core/end2end/tests/retry_recv_message.cc
5428   test/core/end2end/tests/retry_server_pushback_delay.cc
5429   test/core/end2end/tests/retry_server_pushback_disabled.cc
5430   test/core/end2end/tests/retry_streaming.cc
5431   test/core/end2end/tests/retry_streaming_after_commit.cc
5432   test/core/end2end/tests/retry_streaming_succeeds_before_replay_finished.cc
5433   test/core/end2end/tests/retry_throttled.cc
5434   test/core/end2end/tests/retry_too_many_attempts.cc
5435   test/core/end2end/tests/server_finishes_request.cc
5436   test/core/end2end/tests/shutdown_finishes_calls.cc
5437   test/core/end2end/tests/shutdown_finishes_tags.cc
5438   test/core/end2end/tests/simple_cacheable_request.cc
5439   test/core/end2end/tests/simple_delayed_request.cc
5440   test/core/end2end/tests/simple_metadata.cc
5441   test/core/end2end/tests/simple_request.cc
5442   test/core/end2end/tests/stream_compression_compressed_payload.cc
5443   test/core/end2end/tests/stream_compression_payload.cc
5444   test/core/end2end/tests/stream_compression_ping_pong_streaming.cc
5445   test/core/end2end/tests/streaming_error_response.cc
5446   test/core/end2end/tests/trailing_metadata.cc
5447   test/core/end2end/tests/workaround_cronet_compression.cc
5448   test/core/end2end/tests/write_buffering.cc
5449   test/core/end2end/tests/write_buffering_at_end.cc
5450 )
5451
5452 if(WIN32 AND MSVC)
5453   set_target_properties(end2end_tests PROPERTIES COMPILE_PDB_NAME "end2end_tests"
5454     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5455   )
5456   if (gRPC_INSTALL)
5457     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/end2end_tests.pdb
5458       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5459     )
5460   endif()
5461 endif()
5462
5463
5464 target_include_directories(end2end_tests
5465   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5466   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5467   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5468   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5469   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5470   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5471   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5472   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5473   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5474   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5475 )
5476   # avoid dependency on libstdc++
5477   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5478     set_target_properties(end2end_tests PROPERTIES LINKER_LANGUAGE C)
5479     # only use the flags for C++ source files
5480     target_compile_options(end2end_tests PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5481   endif()
5482 target_link_libraries(end2end_tests
5483   ${_gRPC_SSL_LIBRARIES}
5484   ${_gRPC_ALLTARGETS_LIBRARIES}
5485   grpc_test_util
5486   grpc
5487   gpr
5488 )
5489
5490
5491 endif (gRPC_BUILD_TESTS)
5492 if (gRPC_BUILD_TESTS)
5493
5494 add_library(end2end_nosec_tests
5495   test/core/end2end/end2end_nosec_tests.cc
5496   test/core/end2end/end2end_test_utils.cc
5497   test/core/end2end/tests/authority_not_supported.cc
5498   test/core/end2end/tests/bad_hostname.cc
5499   test/core/end2end/tests/bad_ping.cc
5500   test/core/end2end/tests/binary_metadata.cc
5501   test/core/end2end/tests/call_host_override.cc
5502   test/core/end2end/tests/cancel_after_accept.cc
5503   test/core/end2end/tests/cancel_after_client_done.cc
5504   test/core/end2end/tests/cancel_after_invoke.cc
5505   test/core/end2end/tests/cancel_after_round_trip.cc
5506   test/core/end2end/tests/cancel_before_invoke.cc
5507   test/core/end2end/tests/cancel_in_a_vacuum.cc
5508   test/core/end2end/tests/cancel_with_status.cc
5509   test/core/end2end/tests/channelz.cc
5510   test/core/end2end/tests/compressed_payload.cc
5511   test/core/end2end/tests/connectivity.cc
5512   test/core/end2end/tests/default_host.cc
5513   test/core/end2end/tests/disappearing_server.cc
5514   test/core/end2end/tests/empty_batch.cc
5515   test/core/end2end/tests/filter_call_init_fails.cc
5516   test/core/end2end/tests/filter_causes_close.cc
5517   test/core/end2end/tests/filter_context.cc
5518   test/core/end2end/tests/filter_latency.cc
5519   test/core/end2end/tests/filter_status_code.cc
5520   test/core/end2end/tests/graceful_server_shutdown.cc
5521   test/core/end2end/tests/high_initial_seqno.cc
5522   test/core/end2end/tests/hpack_size.cc
5523   test/core/end2end/tests/idempotent_request.cc
5524   test/core/end2end/tests/invoke_large_request.cc
5525   test/core/end2end/tests/keepalive_timeout.cc
5526   test/core/end2end/tests/large_metadata.cc
5527   test/core/end2end/tests/max_concurrent_streams.cc
5528   test/core/end2end/tests/max_connection_age.cc
5529   test/core/end2end/tests/max_connection_idle.cc
5530   test/core/end2end/tests/max_message_length.cc
5531   test/core/end2end/tests/negative_deadline.cc
5532   test/core/end2end/tests/no_error_on_hotpath.cc
5533   test/core/end2end/tests/no_logging.cc
5534   test/core/end2end/tests/no_op.cc
5535   test/core/end2end/tests/payload.cc
5536   test/core/end2end/tests/ping.cc
5537   test/core/end2end/tests/ping_pong_streaming.cc
5538   test/core/end2end/tests/proxy_auth.cc
5539   test/core/end2end/tests/registered_call.cc
5540   test/core/end2end/tests/request_with_flags.cc
5541   test/core/end2end/tests/request_with_payload.cc
5542   test/core/end2end/tests/resource_quota_server.cc
5543   test/core/end2end/tests/retry.cc
5544   test/core/end2end/tests/retry_cancellation.cc
5545   test/core/end2end/tests/retry_disabled.cc
5546   test/core/end2end/tests/retry_exceeds_buffer_size_in_initial_batch.cc
5547   test/core/end2end/tests/retry_exceeds_buffer_size_in_subsequent_batch.cc
5548   test/core/end2end/tests/retry_non_retriable_status.cc
5549   test/core/end2end/tests/retry_non_retriable_status_before_recv_trailing_metadata_started.cc
5550   test/core/end2end/tests/retry_recv_initial_metadata.cc
5551   test/core/end2end/tests/retry_recv_message.cc
5552   test/core/end2end/tests/retry_server_pushback_delay.cc
5553   test/core/end2end/tests/retry_server_pushback_disabled.cc
5554   test/core/end2end/tests/retry_streaming.cc
5555   test/core/end2end/tests/retry_streaming_after_commit.cc
5556   test/core/end2end/tests/retry_streaming_succeeds_before_replay_finished.cc
5557   test/core/end2end/tests/retry_throttled.cc
5558   test/core/end2end/tests/retry_too_many_attempts.cc
5559   test/core/end2end/tests/server_finishes_request.cc
5560   test/core/end2end/tests/shutdown_finishes_calls.cc
5561   test/core/end2end/tests/shutdown_finishes_tags.cc
5562   test/core/end2end/tests/simple_cacheable_request.cc
5563   test/core/end2end/tests/simple_delayed_request.cc
5564   test/core/end2end/tests/simple_metadata.cc
5565   test/core/end2end/tests/simple_request.cc
5566   test/core/end2end/tests/stream_compression_compressed_payload.cc
5567   test/core/end2end/tests/stream_compression_payload.cc
5568   test/core/end2end/tests/stream_compression_ping_pong_streaming.cc
5569   test/core/end2end/tests/streaming_error_response.cc
5570   test/core/end2end/tests/trailing_metadata.cc
5571   test/core/end2end/tests/workaround_cronet_compression.cc
5572   test/core/end2end/tests/write_buffering.cc
5573   test/core/end2end/tests/write_buffering_at_end.cc
5574 )
5575
5576 if(WIN32 AND MSVC)
5577   set_target_properties(end2end_nosec_tests PROPERTIES COMPILE_PDB_NAME "end2end_nosec_tests"
5578     COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
5579   )
5580   if (gRPC_INSTALL)
5581     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/end2end_nosec_tests.pdb
5582       DESTINATION ${gRPC_INSTALL_LIBDIR} OPTIONAL
5583     )
5584   endif()
5585 endif()
5586
5587
5588 target_include_directories(end2end_nosec_tests
5589   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
5590   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5591   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5592   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5593   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5594   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5595   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5596   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5597   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5598   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5599 )
5600   # avoid dependency on libstdc++
5601   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5602     set_target_properties(end2end_nosec_tests PROPERTIES LINKER_LANGUAGE C)
5603     # only use the flags for C++ source files
5604     target_compile_options(end2end_nosec_tests PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5605   endif()
5606 target_link_libraries(end2end_nosec_tests
5607   ${_gRPC_ALLTARGETS_LIBRARIES}
5608   grpc_test_util_unsecure
5609   grpc_unsecure
5610   gpr
5611 )
5612
5613
5614 endif (gRPC_BUILD_TESTS)
5615
5616 if (gRPC_BUILD_TESTS)
5617
5618 add_executable(algorithm_test
5619   test/core/compression/algorithm_test.cc
5620 )
5621
5622
5623 target_include_directories(algorithm_test
5624   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5625   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5626   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5627   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5628   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5629   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5630   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5631   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5632   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5633   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5634 )
5635
5636 target_link_libraries(algorithm_test
5637   ${_gRPC_ALLTARGETS_LIBRARIES}
5638   grpc_test_util
5639   grpc
5640   gpr
5641 )
5642
5643   # avoid dependency on libstdc++
5644   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5645     set_target_properties(algorithm_test PROPERTIES LINKER_LANGUAGE C)
5646     target_compile_options(algorithm_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5647   endif()
5648
5649 endif (gRPC_BUILD_TESTS)
5650 if (gRPC_BUILD_TESTS)
5651
5652 add_executable(alloc_test
5653   test/core/gpr/alloc_test.cc
5654 )
5655
5656
5657 target_include_directories(alloc_test
5658   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5659   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5660   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5661   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5662   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5663   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5664   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5665   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5666   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5667   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5668 )
5669
5670 target_link_libraries(alloc_test
5671   ${_gRPC_ALLTARGETS_LIBRARIES}
5672   gpr
5673   grpc_test_util_unsecure
5674   grpc_unsecure
5675 )
5676
5677   # avoid dependency on libstdc++
5678   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5679     set_target_properties(alloc_test PROPERTIES LINKER_LANGUAGE C)
5680     target_compile_options(alloc_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5681   endif()
5682
5683 endif (gRPC_BUILD_TESTS)
5684 if (gRPC_BUILD_TESTS)
5685
5686 add_executable(alpn_test
5687   test/core/transport/chttp2/alpn_test.cc
5688 )
5689
5690
5691 target_include_directories(alpn_test
5692   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5693   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5694   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5695   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5696   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5697   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5698   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5699   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5700   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5701   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5702 )
5703
5704 target_link_libraries(alpn_test
5705   ${_gRPC_ALLTARGETS_LIBRARIES}
5706   grpc_test_util
5707   grpc
5708   gpr
5709 )
5710
5711   # avoid dependency on libstdc++
5712   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5713     set_target_properties(alpn_test PROPERTIES LINKER_LANGUAGE C)
5714     target_compile_options(alpn_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5715   endif()
5716
5717 endif (gRPC_BUILD_TESTS)
5718 if (gRPC_BUILD_TESTS)
5719
5720 add_executable(arena_test
5721   test/core/gpr/arena_test.cc
5722 )
5723
5724
5725 target_include_directories(arena_test
5726   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5727   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5728   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5729   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5730   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5731   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5732   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5733   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5734   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5735   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5736 )
5737
5738 target_link_libraries(arena_test
5739   ${_gRPC_ALLTARGETS_LIBRARIES}
5740   gpr
5741   grpc_test_util_unsecure
5742   grpc_unsecure
5743 )
5744
5745   # avoid dependency on libstdc++
5746   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5747     set_target_properties(arena_test PROPERTIES LINKER_LANGUAGE C)
5748     target_compile_options(arena_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5749   endif()
5750
5751 endif (gRPC_BUILD_TESTS)
5752 if (gRPC_BUILD_TESTS)
5753
5754 add_executable(avl_test
5755   test/core/avl/avl_test.cc
5756 )
5757
5758
5759 target_include_directories(avl_test
5760   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5761   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5762   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5763   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5764   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5765   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5766   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5767   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5768   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5769   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5770 )
5771
5772 target_link_libraries(avl_test
5773   ${_gRPC_ALLTARGETS_LIBRARIES}
5774   gpr
5775   grpc_test_util
5776   grpc
5777 )
5778
5779   # avoid dependency on libstdc++
5780   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5781     set_target_properties(avl_test PROPERTIES LINKER_LANGUAGE C)
5782     target_compile_options(avl_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5783   endif()
5784
5785 endif (gRPC_BUILD_TESTS)
5786 if (gRPC_BUILD_TESTS)
5787
5788 add_executable(bad_server_response_test
5789   test/core/end2end/bad_server_response_test.cc
5790 )
5791
5792
5793 target_include_directories(bad_server_response_test
5794   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5795   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5796   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5797   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5798   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5799   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5800   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5801   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5802   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5803   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5804 )
5805
5806 target_link_libraries(bad_server_response_test
5807   ${_gRPC_ALLTARGETS_LIBRARIES}
5808   test_tcp_server
5809   grpc_test_util
5810   grpc
5811   gpr
5812 )
5813
5814   # avoid dependency on libstdc++
5815   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5816     set_target_properties(bad_server_response_test PROPERTIES LINKER_LANGUAGE C)
5817     target_compile_options(bad_server_response_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5818   endif()
5819
5820 endif (gRPC_BUILD_TESTS)
5821 if (gRPC_BUILD_TESTS)
5822
5823 add_executable(bin_decoder_test
5824   test/core/transport/chttp2/bin_decoder_test.cc
5825 )
5826
5827
5828 target_include_directories(bin_decoder_test
5829   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5830   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5831   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5832   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5833   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5834   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5835   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5836   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5837   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5838   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5839 )
5840
5841 target_link_libraries(bin_decoder_test
5842   ${_gRPC_ALLTARGETS_LIBRARIES}
5843   grpc_test_util
5844   grpc
5845 )
5846
5847   # avoid dependency on libstdc++
5848   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5849     set_target_properties(bin_decoder_test PROPERTIES LINKER_LANGUAGE C)
5850     target_compile_options(bin_decoder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5851   endif()
5852
5853 endif (gRPC_BUILD_TESTS)
5854 if (gRPC_BUILD_TESTS)
5855
5856 add_executable(bin_encoder_test
5857   test/core/transport/chttp2/bin_encoder_test.cc
5858 )
5859
5860
5861 target_include_directories(bin_encoder_test
5862   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5863   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5864   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5865   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5866   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5867   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5868   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5869   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5870   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5871   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5872 )
5873
5874 target_link_libraries(bin_encoder_test
5875   ${_gRPC_ALLTARGETS_LIBRARIES}
5876   grpc_test_util
5877   grpc
5878 )
5879
5880   # avoid dependency on libstdc++
5881   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5882     set_target_properties(bin_encoder_test PROPERTIES LINKER_LANGUAGE C)
5883     target_compile_options(bin_encoder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5884   endif()
5885
5886 endif (gRPC_BUILD_TESTS)
5887 if (gRPC_BUILD_TESTS)
5888 if(_gRPC_PLATFORM_LINUX)
5889
5890 add_executable(buffer_list_test
5891   test/core/iomgr/buffer_list_test.cc
5892 )
5893
5894
5895 target_include_directories(buffer_list_test
5896   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5897   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5898   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5899   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5900   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5901   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5902   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5903   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5904   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5905   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5906 )
5907
5908 target_link_libraries(buffer_list_test
5909   ${_gRPC_ALLTARGETS_LIBRARIES}
5910   grpc_test_util
5911   grpc
5912   gpr
5913 )
5914
5915   # avoid dependency on libstdc++
5916   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5917     set_target_properties(buffer_list_test PROPERTIES LINKER_LANGUAGE C)
5918     target_compile_options(buffer_list_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5919   endif()
5920
5921 endif()
5922 endif (gRPC_BUILD_TESTS)
5923 if (gRPC_BUILD_TESTS)
5924
5925 add_executable(channel_create_test
5926   test/core/surface/channel_create_test.cc
5927 )
5928
5929
5930 target_include_directories(channel_create_test
5931   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5932   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5933   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5934   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5935   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5936   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5937   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5938   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5939   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5940   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5941 )
5942
5943 target_link_libraries(channel_create_test
5944   ${_gRPC_ALLTARGETS_LIBRARIES}
5945   grpc_test_util
5946   grpc
5947   gpr
5948 )
5949
5950   # avoid dependency on libstdc++
5951   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5952     set_target_properties(channel_create_test PROPERTIES LINKER_LANGUAGE C)
5953     target_compile_options(channel_create_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5954   endif()
5955
5956 endif (gRPC_BUILD_TESTS)
5957
5958 add_executable(check_epollexclusive
5959   test/build/check_epollexclusive.c
5960 )
5961
5962
5963 target_include_directories(check_epollexclusive
5964   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5965   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5966   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5967   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
5968   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
5969   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
5970   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
5971   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
5972   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
5973   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
5974 )
5975
5976 target_link_libraries(check_epollexclusive
5977   ${_gRPC_ALLTARGETS_LIBRARIES}
5978   grpc
5979   gpr
5980 )
5981
5982   # avoid dependency on libstdc++
5983   if (_gRPC_CORE_NOSTDCXX_FLAGS)
5984     set_target_properties(check_epollexclusive PROPERTIES LINKER_LANGUAGE C)
5985     target_compile_options(check_epollexclusive PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
5986   endif()
5987
5988 if (gRPC_BUILD_TESTS)
5989
5990 add_executable(chttp2_hpack_encoder_test
5991   test/core/transport/chttp2/hpack_encoder_test.cc
5992 )
5993
5994
5995 target_include_directories(chttp2_hpack_encoder_test
5996   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
5997   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
5998   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
5999   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6000   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6001   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6002   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6003   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6004   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6005   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6006 )
6007
6008 target_link_libraries(chttp2_hpack_encoder_test
6009   ${_gRPC_ALLTARGETS_LIBRARIES}
6010   grpc_test_util
6011   grpc
6012   gpr
6013 )
6014
6015   # avoid dependency on libstdc++
6016   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6017     set_target_properties(chttp2_hpack_encoder_test PROPERTIES LINKER_LANGUAGE C)
6018     target_compile_options(chttp2_hpack_encoder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6019   endif()
6020
6021 endif (gRPC_BUILD_TESTS)
6022 if (gRPC_BUILD_TESTS)
6023
6024 add_executable(chttp2_stream_map_test
6025   test/core/transport/chttp2/stream_map_test.cc
6026 )
6027
6028
6029 target_include_directories(chttp2_stream_map_test
6030   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6031   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6032   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6033   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6034   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6035   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6036   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6037   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6038   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6039   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6040 )
6041
6042 target_link_libraries(chttp2_stream_map_test
6043   ${_gRPC_ALLTARGETS_LIBRARIES}
6044   grpc_test_util
6045   grpc
6046   gpr
6047 )
6048
6049   # avoid dependency on libstdc++
6050   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6051     set_target_properties(chttp2_stream_map_test PROPERTIES LINKER_LANGUAGE C)
6052     target_compile_options(chttp2_stream_map_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6053   endif()
6054
6055 endif (gRPC_BUILD_TESTS)
6056 if (gRPC_BUILD_TESTS)
6057
6058 add_executable(chttp2_varint_test
6059   test/core/transport/chttp2/varint_test.cc
6060 )
6061
6062
6063 target_include_directories(chttp2_varint_test
6064   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6065   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6066   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6067   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6068   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6069   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6070   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6071   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6072   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6073   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6074 )
6075
6076 target_link_libraries(chttp2_varint_test
6077   ${_gRPC_ALLTARGETS_LIBRARIES}
6078   grpc_test_util
6079   grpc
6080   gpr
6081 )
6082
6083   # avoid dependency on libstdc++
6084   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6085     set_target_properties(chttp2_varint_test PROPERTIES LINKER_LANGUAGE C)
6086     target_compile_options(chttp2_varint_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6087   endif()
6088
6089 endif (gRPC_BUILD_TESTS)
6090 if (gRPC_BUILD_TESTS)
6091 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6092
6093 add_executable(close_fd_test
6094   test/core/bad_connection/close_fd_test.cc
6095 )
6096
6097
6098 target_include_directories(close_fd_test
6099   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6100   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6101   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6102   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6103   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6104   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6105   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6106   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6107   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6108   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6109 )
6110
6111 target_link_libraries(close_fd_test
6112   ${_gRPC_ALLTARGETS_LIBRARIES}
6113   grpc_test_util
6114   grpc
6115   gpr
6116 )
6117
6118   # avoid dependency on libstdc++
6119   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6120     set_target_properties(close_fd_test PROPERTIES LINKER_LANGUAGE C)
6121     target_compile_options(close_fd_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6122   endif()
6123
6124 endif()
6125 endif (gRPC_BUILD_TESTS)
6126 if (gRPC_BUILD_TESTS)
6127
6128 add_executable(cmdline_test
6129   test/core/util/cmdline_test.cc
6130 )
6131
6132
6133 target_include_directories(cmdline_test
6134   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6135   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6136   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6137   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6138   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6139   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6140   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6141   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6142   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6143   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6144 )
6145
6146 target_link_libraries(cmdline_test
6147   ${_gRPC_ALLTARGETS_LIBRARIES}
6148   gpr
6149   grpc_test_util
6150   grpc
6151 )
6152
6153   # avoid dependency on libstdc++
6154   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6155     set_target_properties(cmdline_test PROPERTIES LINKER_LANGUAGE C)
6156     target_compile_options(cmdline_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6157   endif()
6158
6159 endif (gRPC_BUILD_TESTS)
6160 if (gRPC_BUILD_TESTS)
6161
6162 add_executable(combiner_test
6163   test/core/iomgr/combiner_test.cc
6164 )
6165
6166
6167 target_include_directories(combiner_test
6168   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6169   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6170   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6171   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6172   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6173   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6174   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6175   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6176   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6177   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6178 )
6179
6180 target_link_libraries(combiner_test
6181   ${_gRPC_ALLTARGETS_LIBRARIES}
6182   grpc_test_util
6183   grpc
6184   gpr
6185 )
6186
6187   # avoid dependency on libstdc++
6188   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6189     set_target_properties(combiner_test PROPERTIES LINKER_LANGUAGE C)
6190     target_compile_options(combiner_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6191   endif()
6192
6193 endif (gRPC_BUILD_TESTS)
6194 if (gRPC_BUILD_TESTS)
6195
6196 add_executable(compression_test
6197   test/core/compression/compression_test.cc
6198 )
6199
6200
6201 target_include_directories(compression_test
6202   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6203   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6204   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6205   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6206   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6207   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6208   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6209   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6210   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6211   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6212 )
6213
6214 target_link_libraries(compression_test
6215   ${_gRPC_ALLTARGETS_LIBRARIES}
6216   grpc_test_util
6217   grpc
6218   gpr
6219 )
6220
6221   # avoid dependency on libstdc++
6222   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6223     set_target_properties(compression_test PROPERTIES LINKER_LANGUAGE C)
6224     target_compile_options(compression_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6225   endif()
6226
6227 endif (gRPC_BUILD_TESTS)
6228 if (gRPC_BUILD_TESTS)
6229
6230 add_executable(concurrent_connectivity_test
6231   test/core/surface/concurrent_connectivity_test.cc
6232 )
6233
6234
6235 target_include_directories(concurrent_connectivity_test
6236   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6237   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6238   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6239   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6240   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6241   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6242   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6243   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6244   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6245   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6246 )
6247
6248 target_link_libraries(concurrent_connectivity_test
6249   ${_gRPC_ALLTARGETS_LIBRARIES}
6250   grpc_test_util
6251   grpc
6252   gpr
6253 )
6254
6255   # avoid dependency on libstdc++
6256   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6257     set_target_properties(concurrent_connectivity_test PROPERTIES LINKER_LANGUAGE C)
6258     target_compile_options(concurrent_connectivity_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6259   endif()
6260
6261 endif (gRPC_BUILD_TESTS)
6262 if (gRPC_BUILD_TESTS)
6263
6264 add_executable(connection_refused_test
6265   test/core/end2end/connection_refused_test.cc
6266 )
6267
6268
6269 target_include_directories(connection_refused_test
6270   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6271   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6272   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6273   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6274   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6275   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6276   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6277   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6278   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6279   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6280 )
6281
6282 target_link_libraries(connection_refused_test
6283   ${_gRPC_ALLTARGETS_LIBRARIES}
6284   grpc_test_util
6285   grpc
6286   gpr
6287 )
6288
6289   # avoid dependency on libstdc++
6290   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6291     set_target_properties(connection_refused_test PROPERTIES LINKER_LANGUAGE C)
6292     target_compile_options(connection_refused_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6293   endif()
6294
6295 endif (gRPC_BUILD_TESTS)
6296 if (gRPC_BUILD_TESTS)
6297
6298 add_executable(dns_resolver_connectivity_test
6299   test/core/client_channel/resolvers/dns_resolver_connectivity_test.cc
6300 )
6301
6302
6303 target_include_directories(dns_resolver_connectivity_test
6304   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6305   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6306   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6307   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6308   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6309   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6310   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6311   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6312   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6313   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6314 )
6315
6316 target_link_libraries(dns_resolver_connectivity_test
6317   ${_gRPC_ALLTARGETS_LIBRARIES}
6318   grpc_test_util
6319   grpc
6320   gpr
6321 )
6322
6323   # avoid dependency on libstdc++
6324   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6325     set_target_properties(dns_resolver_connectivity_test PROPERTIES LINKER_LANGUAGE C)
6326     target_compile_options(dns_resolver_connectivity_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6327   endif()
6328
6329 endif (gRPC_BUILD_TESTS)
6330 if (gRPC_BUILD_TESTS)
6331
6332 add_executable(dns_resolver_cooldown_using_ares_resolver_test
6333   test/core/client_channel/resolvers/dns_resolver_cooldown_test.cc
6334 )
6335
6336
6337 target_include_directories(dns_resolver_cooldown_using_ares_resolver_test
6338   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6339   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6340   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6341   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6342   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6343   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6344   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6345   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6346   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6347   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6348 )
6349
6350 target_link_libraries(dns_resolver_cooldown_using_ares_resolver_test
6351   ${_gRPC_ALLTARGETS_LIBRARIES}
6352   grpc_test_util
6353   grpc
6354   gpr
6355 )
6356
6357   # avoid dependency on libstdc++
6358   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6359     set_target_properties(dns_resolver_cooldown_using_ares_resolver_test PROPERTIES LINKER_LANGUAGE C)
6360     target_compile_options(dns_resolver_cooldown_using_ares_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6361   endif()
6362
6363 endif (gRPC_BUILD_TESTS)
6364 if (gRPC_BUILD_TESTS)
6365
6366 add_executable(dns_resolver_cooldown_using_native_resolver_test
6367   test/core/client_channel/resolvers/dns_resolver_cooldown_test.cc
6368 )
6369
6370
6371 target_include_directories(dns_resolver_cooldown_using_native_resolver_test
6372   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6373   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6374   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6375   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6376   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6377   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6378   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6379   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6380   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6381   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6382 )
6383
6384 target_link_libraries(dns_resolver_cooldown_using_native_resolver_test
6385   ${_gRPC_ALLTARGETS_LIBRARIES}
6386   grpc_test_util
6387   grpc
6388   gpr
6389 )
6390
6391   # avoid dependency on libstdc++
6392   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6393     set_target_properties(dns_resolver_cooldown_using_native_resolver_test PROPERTIES LINKER_LANGUAGE C)
6394     target_compile_options(dns_resolver_cooldown_using_native_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6395   endif()
6396
6397 endif (gRPC_BUILD_TESTS)
6398 if (gRPC_BUILD_TESTS)
6399
6400 add_executable(dns_resolver_test
6401   test/core/client_channel/resolvers/dns_resolver_test.cc
6402 )
6403
6404
6405 target_include_directories(dns_resolver_test
6406   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6407   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6408   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6409   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6410   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6411   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6412   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6413   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6414   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6415   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6416 )
6417
6418 target_link_libraries(dns_resolver_test
6419   ${_gRPC_ALLTARGETS_LIBRARIES}
6420   grpc_test_util
6421   grpc
6422   gpr
6423 )
6424
6425   # avoid dependency on libstdc++
6426   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6427     set_target_properties(dns_resolver_test PROPERTIES LINKER_LANGUAGE C)
6428     target_compile_options(dns_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6429   endif()
6430
6431 endif (gRPC_BUILD_TESTS)
6432 if (gRPC_BUILD_TESTS)
6433 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6434
6435 add_executable(dualstack_socket_test
6436   test/core/end2end/dualstack_socket_test.cc
6437 )
6438
6439
6440 target_include_directories(dualstack_socket_test
6441   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6442   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6443   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6444   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6445   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6446   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6447   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6448   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6449   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6450   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6451 )
6452
6453 target_link_libraries(dualstack_socket_test
6454   ${_gRPC_ALLTARGETS_LIBRARIES}
6455   grpc_test_util
6456   grpc
6457   gpr
6458 )
6459
6460   # avoid dependency on libstdc++
6461   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6462     set_target_properties(dualstack_socket_test PROPERTIES LINKER_LANGUAGE C)
6463     target_compile_options(dualstack_socket_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6464   endif()
6465
6466 endif()
6467 endif (gRPC_BUILD_TESTS)
6468 if (gRPC_BUILD_TESTS)
6469
6470 add_executable(endpoint_pair_test
6471   test/core/iomgr/endpoint_pair_test.cc
6472 )
6473
6474
6475 target_include_directories(endpoint_pair_test
6476   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6477   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6478   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6479   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6480   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6481   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6482   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6483   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6484   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6485   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6486 )
6487
6488 target_link_libraries(endpoint_pair_test
6489   ${_gRPC_ALLTARGETS_LIBRARIES}
6490   grpc_test_util
6491   grpc
6492   gpr
6493 )
6494
6495   # avoid dependency on libstdc++
6496   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6497     set_target_properties(endpoint_pair_test PROPERTIES LINKER_LANGUAGE C)
6498     target_compile_options(endpoint_pair_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6499   endif()
6500
6501 endif (gRPC_BUILD_TESTS)
6502 if (gRPC_BUILD_TESTS)
6503
6504 add_executable(error_test
6505   test/core/iomgr/error_test.cc
6506 )
6507
6508
6509 target_include_directories(error_test
6510   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6511   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6512   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6513   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6514   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6515   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6516   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6517   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6518   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6519   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6520 )
6521
6522 target_link_libraries(error_test
6523   ${_gRPC_ALLTARGETS_LIBRARIES}
6524   grpc_test_util
6525   grpc
6526   gpr
6527 )
6528
6529   # avoid dependency on libstdc++
6530   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6531     set_target_properties(error_test PROPERTIES LINKER_LANGUAGE C)
6532     target_compile_options(error_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6533   endif()
6534
6535 endif (gRPC_BUILD_TESTS)
6536 if (gRPC_BUILD_TESTS)
6537 if(_gRPC_PLATFORM_LINUX)
6538
6539 add_executable(ev_epollex_linux_test
6540   test/core/iomgr/ev_epollex_linux_test.cc
6541 )
6542
6543
6544 target_include_directories(ev_epollex_linux_test
6545   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6546   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6547   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6548   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6549   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6550   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6551   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6552   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6553   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6554   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6555 )
6556
6557 target_link_libraries(ev_epollex_linux_test
6558   ${_gRPC_ALLTARGETS_LIBRARIES}
6559   grpc_test_util
6560   grpc
6561   gpr
6562 )
6563
6564   # avoid dependency on libstdc++
6565   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6566     set_target_properties(ev_epollex_linux_test PROPERTIES LINKER_LANGUAGE C)
6567     target_compile_options(ev_epollex_linux_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6568   endif()
6569
6570 endif()
6571 endif (gRPC_BUILD_TESTS)
6572 if (gRPC_BUILD_TESTS)
6573
6574 add_executable(fake_resolver_test
6575   test/core/client_channel/resolvers/fake_resolver_test.cc
6576 )
6577
6578
6579 target_include_directories(fake_resolver_test
6580   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6581   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6582   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6583   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6584   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6585   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6586   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6587   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6588   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6589   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6590 )
6591
6592 target_link_libraries(fake_resolver_test
6593   ${_gRPC_ALLTARGETS_LIBRARIES}
6594   grpc_test_util
6595   grpc
6596   gpr
6597 )
6598
6599   # avoid dependency on libstdc++
6600   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6601     set_target_properties(fake_resolver_test PROPERTIES LINKER_LANGUAGE C)
6602     target_compile_options(fake_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6603   endif()
6604
6605 endif (gRPC_BUILD_TESTS)
6606 if (gRPC_BUILD_TESTS)
6607 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6608
6609 add_executable(fake_transport_security_test
6610   test/core/tsi/fake_transport_security_test.cc
6611   test/core/tsi/transport_security_test_lib.cc
6612 )
6613
6614
6615 target_include_directories(fake_transport_security_test
6616   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6617   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6618   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6619   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6620   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6621   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6622   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6623   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6624   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6625   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6626 )
6627
6628 target_link_libraries(fake_transport_security_test
6629   ${_gRPC_ALLTARGETS_LIBRARIES}
6630   gpr
6631   grpc_test_util
6632   grpc
6633 )
6634
6635   # avoid dependency on libstdc++
6636   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6637     set_target_properties(fake_transport_security_test PROPERTIES LINKER_LANGUAGE C)
6638     target_compile_options(fake_transport_security_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6639   endif()
6640
6641 endif()
6642 endif (gRPC_BUILD_TESTS)
6643 if (gRPC_BUILD_TESTS)
6644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6645
6646 add_executable(fd_conservation_posix_test
6647   test/core/iomgr/fd_conservation_posix_test.cc
6648 )
6649
6650
6651 target_include_directories(fd_conservation_posix_test
6652   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6653   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6654   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6655   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6656   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6657   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6658   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6659   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6660   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6661   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6662 )
6663
6664 target_link_libraries(fd_conservation_posix_test
6665   ${_gRPC_ALLTARGETS_LIBRARIES}
6666   grpc_test_util
6667   grpc
6668   gpr
6669 )
6670
6671   # avoid dependency on libstdc++
6672   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6673     set_target_properties(fd_conservation_posix_test PROPERTIES LINKER_LANGUAGE C)
6674     target_compile_options(fd_conservation_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6675   endif()
6676
6677 endif()
6678 endif (gRPC_BUILD_TESTS)
6679 if (gRPC_BUILD_TESTS)
6680 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6681
6682 add_executable(fd_posix_test
6683   test/core/iomgr/fd_posix_test.cc
6684 )
6685
6686
6687 target_include_directories(fd_posix_test
6688   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6689   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6690   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6691   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6692   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6693   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6694   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6695   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6696   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6697   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6698 )
6699
6700 target_link_libraries(fd_posix_test
6701   ${_gRPC_ALLTARGETS_LIBRARIES}
6702   grpc_test_util
6703   grpc
6704   gpr
6705 )
6706
6707   # avoid dependency on libstdc++
6708   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6709     set_target_properties(fd_posix_test PROPERTIES LINKER_LANGUAGE C)
6710     target_compile_options(fd_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6711   endif()
6712
6713 endif()
6714 endif (gRPC_BUILD_TESTS)
6715 if (gRPC_BUILD_TESTS)
6716
6717 add_executable(fling_client
6718   test/core/fling/client.cc
6719 )
6720
6721
6722 target_include_directories(fling_client
6723   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6724   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6725   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6726   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6727   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6728   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6729   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6730   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6731   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6732   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6733 )
6734
6735 target_link_libraries(fling_client
6736   ${_gRPC_ALLTARGETS_LIBRARIES}
6737   grpc_test_util
6738   grpc
6739   gpr
6740 )
6741
6742   # avoid dependency on libstdc++
6743   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6744     set_target_properties(fling_client PROPERTIES LINKER_LANGUAGE C)
6745     target_compile_options(fling_client PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6746   endif()
6747
6748 endif (gRPC_BUILD_TESTS)
6749 if (gRPC_BUILD_TESTS)
6750
6751 add_executable(fling_server
6752   test/core/fling/server.cc
6753 )
6754
6755
6756 target_include_directories(fling_server
6757   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6758   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6759   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6760   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6761   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6762   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6763   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6764   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6765   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6766   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6767 )
6768
6769 target_link_libraries(fling_server
6770   ${_gRPC_ALLTARGETS_LIBRARIES}
6771   grpc_test_util
6772   grpc
6773   gpr
6774 )
6775
6776   # avoid dependency on libstdc++
6777   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6778     set_target_properties(fling_server PROPERTIES LINKER_LANGUAGE C)
6779     target_compile_options(fling_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6780   endif()
6781
6782 endif (gRPC_BUILD_TESTS)
6783 if (gRPC_BUILD_TESTS)
6784 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6785
6786 add_executable(fling_stream_test
6787   test/core/fling/fling_stream_test.cc
6788 )
6789
6790
6791 target_include_directories(fling_stream_test
6792   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6793   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6794   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6795   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6796   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6797   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6798   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6799   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6800   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6801   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6802 )
6803
6804 target_link_libraries(fling_stream_test
6805   ${_gRPC_ALLTARGETS_LIBRARIES}
6806   grpc_test_util
6807   grpc
6808   gpr
6809 )
6810
6811   # avoid dependency on libstdc++
6812   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6813     set_target_properties(fling_stream_test PROPERTIES LINKER_LANGUAGE C)
6814     target_compile_options(fling_stream_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6815   endif()
6816
6817 endif()
6818 endif (gRPC_BUILD_TESTS)
6819 if (gRPC_BUILD_TESTS)
6820 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6821
6822 add_executable(fling_test
6823   test/core/fling/fling_test.cc
6824 )
6825
6826
6827 target_include_directories(fling_test
6828   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6829   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6830   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6831   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6832   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6833   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6834   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6835   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6836   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6837   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6838 )
6839
6840 target_link_libraries(fling_test
6841   ${_gRPC_ALLTARGETS_LIBRARIES}
6842   grpc_test_util
6843   grpc
6844   gpr
6845 )
6846
6847   # avoid dependency on libstdc++
6848   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6849     set_target_properties(fling_test PROPERTIES LINKER_LANGUAGE C)
6850     target_compile_options(fling_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6851   endif()
6852
6853 endif()
6854 endif (gRPC_BUILD_TESTS)
6855 if (gRPC_BUILD_TESTS)
6856 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC)
6857
6858 add_executable(fork_test
6859   test/core/gprpp/fork_test.cc
6860 )
6861
6862
6863 target_include_directories(fork_test
6864   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6865   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6866   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6867   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6868   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6869   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6870   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6871   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6872   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6873   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6874 )
6875
6876 target_link_libraries(fork_test
6877   ${_gRPC_ALLTARGETS_LIBRARIES}
6878   gpr
6879   grpc_test_util_unsecure
6880   grpc_unsecure
6881 )
6882
6883   # avoid dependency on libstdc++
6884   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6885     set_target_properties(fork_test PROPERTIES LINKER_LANGUAGE C)
6886     target_compile_options(fork_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6887   endif()
6888
6889 endif()
6890 endif (gRPC_BUILD_TESTS)
6891 if (gRPC_BUILD_TESTS)
6892 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
6893
6894 add_executable(goaway_server_test
6895   test/core/end2end/goaway_server_test.cc
6896 )
6897
6898
6899 target_include_directories(goaway_server_test
6900   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6901   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6902   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6903   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6904   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6905   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6906   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6907   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6908   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6909   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6910 )
6911
6912 target_link_libraries(goaway_server_test
6913   ${_gRPC_ALLTARGETS_LIBRARIES}
6914   grpc_test_util
6915   grpc
6916   gpr
6917 )
6918
6919   # avoid dependency on libstdc++
6920   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6921     set_target_properties(goaway_server_test PROPERTIES LINKER_LANGUAGE C)
6922     target_compile_options(goaway_server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6923   endif()
6924
6925 endif()
6926 endif (gRPC_BUILD_TESTS)
6927 if (gRPC_BUILD_TESTS)
6928
6929 add_executable(gpr_cpu_test
6930   test/core/gpr/cpu_test.cc
6931 )
6932
6933
6934 target_include_directories(gpr_cpu_test
6935   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6936   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6937   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6938   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6939   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6940   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6941   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6942   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6943   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6944   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6945 )
6946
6947 target_link_libraries(gpr_cpu_test
6948   ${_gRPC_ALLTARGETS_LIBRARIES}
6949   gpr
6950   grpc_test_util_unsecure
6951   grpc_unsecure
6952 )
6953
6954   # avoid dependency on libstdc++
6955   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6956     set_target_properties(gpr_cpu_test PROPERTIES LINKER_LANGUAGE C)
6957     target_compile_options(gpr_cpu_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6958   endif()
6959
6960 endif (gRPC_BUILD_TESTS)
6961 if (gRPC_BUILD_TESTS)
6962
6963 add_executable(gpr_env_test
6964   test/core/gpr/env_test.cc
6965 )
6966
6967
6968 target_include_directories(gpr_env_test
6969   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
6970   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
6971   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
6972   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
6973   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
6974   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
6975   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
6976   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
6977   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
6978   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
6979 )
6980
6981 target_link_libraries(gpr_env_test
6982   ${_gRPC_ALLTARGETS_LIBRARIES}
6983   gpr
6984   grpc_test_util_unsecure
6985   grpc_unsecure
6986 )
6987
6988   # avoid dependency on libstdc++
6989   if (_gRPC_CORE_NOSTDCXX_FLAGS)
6990     set_target_properties(gpr_env_test PROPERTIES LINKER_LANGUAGE C)
6991     target_compile_options(gpr_env_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
6992   endif()
6993
6994 endif (gRPC_BUILD_TESTS)
6995 if (gRPC_BUILD_TESTS)
6996
6997 add_executable(gpr_host_port_test
6998   test/core/gprpp/host_port_test.cc
6999 )
7000
7001
7002 target_include_directories(gpr_host_port_test
7003   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7004   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7005   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7006   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7007   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7008   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7009   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7010   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7011   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7012   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7013 )
7014
7015 target_link_libraries(gpr_host_port_test
7016   ${_gRPC_ALLTARGETS_LIBRARIES}
7017   gpr
7018   grpc_test_util_unsecure
7019   grpc_unsecure
7020 )
7021
7022   # avoid dependency on libstdc++
7023   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7024     set_target_properties(gpr_host_port_test PROPERTIES LINKER_LANGUAGE C)
7025     target_compile_options(gpr_host_port_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7026   endif()
7027
7028 endif (gRPC_BUILD_TESTS)
7029 if (gRPC_BUILD_TESTS)
7030
7031 add_executable(gpr_log_test
7032   test/core/gpr/log_test.cc
7033 )
7034
7035
7036 target_include_directories(gpr_log_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(gpr_log_test
7050   ${_gRPC_ALLTARGETS_LIBRARIES}
7051   gpr
7052   grpc_test_util_unsecure
7053   grpc_unsecure
7054 )
7055
7056   # avoid dependency on libstdc++
7057   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7058     set_target_properties(gpr_log_test PROPERTIES LINKER_LANGUAGE C)
7059     target_compile_options(gpr_log_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7060   endif()
7061
7062 endif (gRPC_BUILD_TESTS)
7063 if (gRPC_BUILD_TESTS)
7064
7065 add_executable(gpr_manual_constructor_test
7066   test/core/gprpp/manual_constructor_test.cc
7067 )
7068
7069
7070 target_include_directories(gpr_manual_constructor_test
7071   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7072   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7073   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7074   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7075   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7076   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7077   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7078   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7079   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7080   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7081 )
7082
7083 target_link_libraries(gpr_manual_constructor_test
7084   ${_gRPC_ALLTARGETS_LIBRARIES}
7085   gpr
7086   grpc_test_util_unsecure
7087   grpc_unsecure
7088 )
7089
7090   # avoid dependency on libstdc++
7091   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7092     set_target_properties(gpr_manual_constructor_test PROPERTIES LINKER_LANGUAGE C)
7093     target_compile_options(gpr_manual_constructor_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7094   endif()
7095
7096 endif (gRPC_BUILD_TESTS)
7097 if (gRPC_BUILD_TESTS)
7098
7099 add_executable(gpr_mpscq_test
7100   test/core/gpr/mpscq_test.cc
7101 )
7102
7103
7104 target_include_directories(gpr_mpscq_test
7105   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7106   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7107   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7108   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7109   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7110   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7111   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7112   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7113   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7114   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7115 )
7116
7117 target_link_libraries(gpr_mpscq_test
7118   ${_gRPC_ALLTARGETS_LIBRARIES}
7119   gpr
7120   grpc_test_util_unsecure
7121   grpc_unsecure
7122 )
7123
7124   # avoid dependency on libstdc++
7125   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7126     set_target_properties(gpr_mpscq_test PROPERTIES LINKER_LANGUAGE C)
7127     target_compile_options(gpr_mpscq_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7128   endif()
7129
7130 endif (gRPC_BUILD_TESTS)
7131 if (gRPC_BUILD_TESTS)
7132
7133 add_executable(gpr_spinlock_test
7134   test/core/gpr/spinlock_test.cc
7135 )
7136
7137
7138 target_include_directories(gpr_spinlock_test
7139   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7140   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7141   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7142   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7143   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7144   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7145   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7146   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7147   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7148   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7149 )
7150
7151 target_link_libraries(gpr_spinlock_test
7152   ${_gRPC_ALLTARGETS_LIBRARIES}
7153   gpr
7154   grpc_test_util_unsecure
7155   grpc_unsecure
7156 )
7157
7158   # avoid dependency on libstdc++
7159   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7160     set_target_properties(gpr_spinlock_test PROPERTIES LINKER_LANGUAGE C)
7161     target_compile_options(gpr_spinlock_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7162   endif()
7163
7164 endif (gRPC_BUILD_TESTS)
7165 if (gRPC_BUILD_TESTS)
7166
7167 add_executable(gpr_string_test
7168   test/core/gpr/string_test.cc
7169 )
7170
7171
7172 target_include_directories(gpr_string_test
7173   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7174   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7175   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7176   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7177   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7178   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7179   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7180   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7181   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7182   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7183 )
7184
7185 target_link_libraries(gpr_string_test
7186   ${_gRPC_ALLTARGETS_LIBRARIES}
7187   gpr
7188   grpc_test_util_unsecure
7189   grpc_unsecure
7190 )
7191
7192   # avoid dependency on libstdc++
7193   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7194     set_target_properties(gpr_string_test PROPERTIES LINKER_LANGUAGE C)
7195     target_compile_options(gpr_string_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7196   endif()
7197
7198 endif (gRPC_BUILD_TESTS)
7199 if (gRPC_BUILD_TESTS)
7200
7201 add_executable(gpr_sync_test
7202   test/core/gpr/sync_test.cc
7203 )
7204
7205
7206 target_include_directories(gpr_sync_test
7207   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7208   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7209   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7210   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7211   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7212   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7213   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7214   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7215   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7216   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7217 )
7218
7219 target_link_libraries(gpr_sync_test
7220   ${_gRPC_ALLTARGETS_LIBRARIES}
7221   gpr
7222   grpc_test_util_unsecure
7223   grpc_unsecure
7224 )
7225
7226   # avoid dependency on libstdc++
7227   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7228     set_target_properties(gpr_sync_test PROPERTIES LINKER_LANGUAGE C)
7229     target_compile_options(gpr_sync_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7230   endif()
7231
7232 endif (gRPC_BUILD_TESTS)
7233 if (gRPC_BUILD_TESTS)
7234
7235 add_executable(gpr_thd_test
7236   test/core/gprpp/thd_test.cc
7237 )
7238
7239
7240 target_include_directories(gpr_thd_test
7241   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7242   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7243   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7244   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7245   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7246   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7247   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7248   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7249   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7250   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7251 )
7252
7253 target_link_libraries(gpr_thd_test
7254   ${_gRPC_ALLTARGETS_LIBRARIES}
7255   gpr
7256   grpc_test_util_unsecure
7257   grpc_unsecure
7258 )
7259
7260   # avoid dependency on libstdc++
7261   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7262     set_target_properties(gpr_thd_test PROPERTIES LINKER_LANGUAGE C)
7263     target_compile_options(gpr_thd_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7264   endif()
7265
7266 endif (gRPC_BUILD_TESTS)
7267 if (gRPC_BUILD_TESTS)
7268
7269 add_executable(gpr_time_test
7270   test/core/gpr/time_test.cc
7271 )
7272
7273
7274 target_include_directories(gpr_time_test
7275   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7276   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7277   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7278   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7279   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7280   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7281   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7282   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7283   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7284   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7285 )
7286
7287 target_link_libraries(gpr_time_test
7288   ${_gRPC_ALLTARGETS_LIBRARIES}
7289   gpr
7290   grpc_test_util_unsecure
7291   grpc_unsecure
7292 )
7293
7294   # avoid dependency on libstdc++
7295   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7296     set_target_properties(gpr_time_test PROPERTIES LINKER_LANGUAGE C)
7297     target_compile_options(gpr_time_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7298   endif()
7299
7300 endif (gRPC_BUILD_TESTS)
7301 if (gRPC_BUILD_TESTS)
7302
7303 add_executable(gpr_tls_test
7304   test/core/gpr/tls_test.cc
7305 )
7306
7307
7308 target_include_directories(gpr_tls_test
7309   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7310   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7311   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7312   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7313   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7314   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7315   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7316   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7317   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7318   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7319 )
7320
7321 target_link_libraries(gpr_tls_test
7322   ${_gRPC_ALLTARGETS_LIBRARIES}
7323   gpr
7324   grpc_test_util_unsecure
7325   grpc_unsecure
7326 )
7327
7328   # avoid dependency on libstdc++
7329   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7330     set_target_properties(gpr_tls_test PROPERTIES LINKER_LANGUAGE C)
7331     target_compile_options(gpr_tls_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7332   endif()
7333
7334 endif (gRPC_BUILD_TESTS)
7335 if (gRPC_BUILD_TESTS)
7336
7337 add_executable(gpr_useful_test
7338   test/core/gpr/useful_test.cc
7339 )
7340
7341
7342 target_include_directories(gpr_useful_test
7343   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7344   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7345   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7346   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7347   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7348   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7349   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7350   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7351   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7352   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7353 )
7354
7355 target_link_libraries(gpr_useful_test
7356   ${_gRPC_ALLTARGETS_LIBRARIES}
7357   gpr
7358   grpc_test_util_unsecure
7359   grpc_unsecure
7360 )
7361
7362   # avoid dependency on libstdc++
7363   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7364     set_target_properties(gpr_useful_test PROPERTIES LINKER_LANGUAGE C)
7365     target_compile_options(gpr_useful_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7366   endif()
7367
7368 endif (gRPC_BUILD_TESTS)
7369 if (gRPC_BUILD_TESTS)
7370
7371 add_executable(grpc_auth_context_test
7372   test/core/security/auth_context_test.cc
7373 )
7374
7375
7376 target_include_directories(grpc_auth_context_test
7377   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7378   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7379   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7380   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7381   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7382   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7383   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7384   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7385   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7386   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7387 )
7388
7389 target_link_libraries(grpc_auth_context_test
7390   ${_gRPC_ALLTARGETS_LIBRARIES}
7391   grpc_test_util
7392   grpc
7393   gpr
7394 )
7395
7396   # avoid dependency on libstdc++
7397   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7398     set_target_properties(grpc_auth_context_test PROPERTIES LINKER_LANGUAGE C)
7399     target_compile_options(grpc_auth_context_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7400   endif()
7401
7402 endif (gRPC_BUILD_TESTS)
7403 if (gRPC_BUILD_TESTS)
7404
7405 add_executable(grpc_b64_test
7406   test/core/slice/b64_test.cc
7407 )
7408
7409
7410 target_include_directories(grpc_b64_test
7411   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7412   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7413   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7414   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7415   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7416   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7417   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7418   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7419   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7420   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7421 )
7422
7423 target_link_libraries(grpc_b64_test
7424   ${_gRPC_ALLTARGETS_LIBRARIES}
7425   grpc_test_util
7426   grpc
7427   gpr
7428 )
7429
7430   # avoid dependency on libstdc++
7431   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7432     set_target_properties(grpc_b64_test PROPERTIES LINKER_LANGUAGE C)
7433     target_compile_options(grpc_b64_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7434   endif()
7435
7436 endif (gRPC_BUILD_TESTS)
7437 if (gRPC_BUILD_TESTS)
7438
7439 add_executable(grpc_byte_buffer_reader_test
7440   test/core/surface/byte_buffer_reader_test.cc
7441 )
7442
7443
7444 target_include_directories(grpc_byte_buffer_reader_test
7445   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7446   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7447   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7448   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7449   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7450   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7451   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7452   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7453   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7454   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7455 )
7456
7457 target_link_libraries(grpc_byte_buffer_reader_test
7458   ${_gRPC_ALLTARGETS_LIBRARIES}
7459   grpc_test_util
7460   grpc
7461   gpr
7462 )
7463
7464   # avoid dependency on libstdc++
7465   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7466     set_target_properties(grpc_byte_buffer_reader_test PROPERTIES LINKER_LANGUAGE C)
7467     target_compile_options(grpc_byte_buffer_reader_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7468   endif()
7469
7470 endif (gRPC_BUILD_TESTS)
7471 if (gRPC_BUILD_TESTS)
7472
7473 add_executable(grpc_channel_args_test
7474   test/core/channel/channel_args_test.cc
7475 )
7476
7477
7478 target_include_directories(grpc_channel_args_test
7479   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7480   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7481   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7482   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7483   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7484   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7485   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7486   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7487   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7488   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7489 )
7490
7491 target_link_libraries(grpc_channel_args_test
7492   ${_gRPC_ALLTARGETS_LIBRARIES}
7493   grpc_test_util
7494   grpc
7495   gpr
7496 )
7497
7498   # avoid dependency on libstdc++
7499   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7500     set_target_properties(grpc_channel_args_test PROPERTIES LINKER_LANGUAGE C)
7501     target_compile_options(grpc_channel_args_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7502   endif()
7503
7504 endif (gRPC_BUILD_TESTS)
7505 if (gRPC_BUILD_TESTS)
7506
7507 add_executable(grpc_channel_stack_builder_test
7508   test/core/channel/channel_stack_builder_test.cc
7509 )
7510
7511
7512 target_include_directories(grpc_channel_stack_builder_test
7513   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7514   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7515   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7516   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7517   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7518   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7519   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7520   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7521   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7522   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7523 )
7524
7525 target_link_libraries(grpc_channel_stack_builder_test
7526   ${_gRPC_ALLTARGETS_LIBRARIES}
7527   grpc_test_util
7528   grpc
7529   gpr
7530 )
7531
7532   # avoid dependency on libstdc++
7533   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7534     set_target_properties(grpc_channel_stack_builder_test PROPERTIES LINKER_LANGUAGE C)
7535     target_compile_options(grpc_channel_stack_builder_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7536   endif()
7537
7538 endif (gRPC_BUILD_TESTS)
7539 if (gRPC_BUILD_TESTS)
7540
7541 add_executable(grpc_channel_stack_test
7542   test/core/channel/channel_stack_test.cc
7543 )
7544
7545
7546 target_include_directories(grpc_channel_stack_test
7547   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7548   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7549   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7550   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7551   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7552   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7553   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7554   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7555   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7556   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7557 )
7558
7559 target_link_libraries(grpc_channel_stack_test
7560   ${_gRPC_ALLTARGETS_LIBRARIES}
7561   grpc_test_util
7562   grpc
7563   gpr
7564 )
7565
7566   # avoid dependency on libstdc++
7567   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7568     set_target_properties(grpc_channel_stack_test PROPERTIES LINKER_LANGUAGE C)
7569     target_compile_options(grpc_channel_stack_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7570   endif()
7571
7572 endif (gRPC_BUILD_TESTS)
7573 if (gRPC_BUILD_TESTS)
7574
7575 add_executable(grpc_completion_queue_test
7576   test/core/surface/completion_queue_test.cc
7577 )
7578
7579
7580 target_include_directories(grpc_completion_queue_test
7581   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7582   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7583   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7584   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7585   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7586   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7587   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7588   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7589   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7590   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7591 )
7592
7593 target_link_libraries(grpc_completion_queue_test
7594   ${_gRPC_ALLTARGETS_LIBRARIES}
7595   grpc_test_util
7596   grpc
7597   gpr
7598 )
7599
7600   # avoid dependency on libstdc++
7601   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7602     set_target_properties(grpc_completion_queue_test PROPERTIES LINKER_LANGUAGE C)
7603     target_compile_options(grpc_completion_queue_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7604   endif()
7605
7606 endif (gRPC_BUILD_TESTS)
7607 if (gRPC_BUILD_TESTS)
7608
7609 add_executable(grpc_completion_queue_threading_test
7610   test/core/surface/completion_queue_threading_test.cc
7611 )
7612
7613
7614 target_include_directories(grpc_completion_queue_threading_test
7615   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7616   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7617   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7618   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7619   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7620   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7621   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7622   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7623   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7624   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7625 )
7626
7627 target_link_libraries(grpc_completion_queue_threading_test
7628   ${_gRPC_ALLTARGETS_LIBRARIES}
7629   grpc_test_util
7630   grpc
7631   gpr
7632 )
7633
7634   # avoid dependency on libstdc++
7635   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7636     set_target_properties(grpc_completion_queue_threading_test PROPERTIES LINKER_LANGUAGE C)
7637     target_compile_options(grpc_completion_queue_threading_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7638   endif()
7639
7640 endif (gRPC_BUILD_TESTS)
7641 if (gRPC_BUILD_TESTS)
7642
7643 add_executable(grpc_control_plane_credentials_test
7644   test/core/security/control_plane_credentials_test.cc
7645 )
7646
7647
7648 target_include_directories(grpc_control_plane_credentials_test
7649   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7650   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7651   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7652   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7653   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7654   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7655   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7656   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7657   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7658   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7659 )
7660
7661 target_link_libraries(grpc_control_plane_credentials_test
7662   ${_gRPC_ALLTARGETS_LIBRARIES}
7663   grpc_test_util
7664   grpc
7665   gpr
7666 )
7667
7668   # avoid dependency on libstdc++
7669   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7670     set_target_properties(grpc_control_plane_credentials_test PROPERTIES LINKER_LANGUAGE C)
7671     target_compile_options(grpc_control_plane_credentials_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7672   endif()
7673
7674 endif (gRPC_BUILD_TESTS)
7675
7676 add_executable(grpc_create_jwt
7677   test/core/security/create_jwt.cc
7678   test/core/util/cmdline.cc
7679 )
7680
7681
7682 target_include_directories(grpc_create_jwt
7683   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7684   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7685   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7686   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7687   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7688   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7689   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7690   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7691   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7692   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7693 )
7694
7695 target_link_libraries(grpc_create_jwt
7696   ${_gRPC_SSL_LIBRARIES}
7697   ${_gRPC_ALLTARGETS_LIBRARIES}
7698   grpc
7699   gpr
7700 )
7701
7702   # avoid dependency on libstdc++
7703   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7704     set_target_properties(grpc_create_jwt PROPERTIES LINKER_LANGUAGE C)
7705     target_compile_options(grpc_create_jwt PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7706   endif()
7707
7708 if (gRPC_BUILD_TESTS)
7709
7710 add_executable(grpc_credentials_test
7711   test/core/security/credentials_test.cc
7712 )
7713
7714
7715 target_include_directories(grpc_credentials_test
7716   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7717   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7718   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7719   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7720   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7721   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7722   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7723   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7724   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7725   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7726 )
7727
7728 target_link_libraries(grpc_credentials_test
7729   ${_gRPC_ALLTARGETS_LIBRARIES}
7730   grpc_test_util
7731   grpc
7732   gpr
7733 )
7734
7735   # avoid dependency on libstdc++
7736   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7737     set_target_properties(grpc_credentials_test PROPERTIES LINKER_LANGUAGE C)
7738     target_compile_options(grpc_credentials_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7739   endif()
7740
7741 endif (gRPC_BUILD_TESTS)
7742 if (gRPC_BUILD_TESTS)
7743
7744 add_executable(grpc_ipv6_loopback_available_test
7745   test/core/iomgr/grpc_ipv6_loopback_available_test.cc
7746 )
7747
7748
7749 target_include_directories(grpc_ipv6_loopback_available_test
7750   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7751   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7752   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7753   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7754   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7755   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7756   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7757   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7758   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7759   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7760 )
7761
7762 target_link_libraries(grpc_ipv6_loopback_available_test
7763   ${_gRPC_ALLTARGETS_LIBRARIES}
7764   grpc_test_util
7765   grpc
7766   gpr
7767 )
7768
7769   # avoid dependency on libstdc++
7770   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7771     set_target_properties(grpc_ipv6_loopback_available_test PROPERTIES LINKER_LANGUAGE C)
7772     target_compile_options(grpc_ipv6_loopback_available_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7773   endif()
7774
7775 endif (gRPC_BUILD_TESTS)
7776 if (gRPC_BUILD_TESTS)
7777 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
7778
7779 add_executable(grpc_json_token_test
7780   test/core/security/json_token_test.cc
7781 )
7782
7783
7784 target_include_directories(grpc_json_token_test
7785   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7786   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7787   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7788   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7789   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7790   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7791   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7792   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7793   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7794   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7795 )
7796
7797 target_link_libraries(grpc_json_token_test
7798   ${_gRPC_ALLTARGETS_LIBRARIES}
7799   grpc_test_util
7800   grpc
7801   gpr
7802 )
7803
7804   # avoid dependency on libstdc++
7805   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7806     set_target_properties(grpc_json_token_test PROPERTIES LINKER_LANGUAGE C)
7807     target_compile_options(grpc_json_token_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7808   endif()
7809
7810 endif()
7811 endif (gRPC_BUILD_TESTS)
7812 if (gRPC_BUILD_TESTS)
7813
7814 add_executable(grpc_jwt_verifier_test
7815   test/core/security/jwt_verifier_test.cc
7816 )
7817
7818
7819 target_include_directories(grpc_jwt_verifier_test
7820   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7821   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7822   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7823   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7824   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7825   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7826   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7827   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7828   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7829   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7830 )
7831
7832 target_link_libraries(grpc_jwt_verifier_test
7833   ${_gRPC_ALLTARGETS_LIBRARIES}
7834   grpc_test_util
7835   grpc
7836   gpr
7837 )
7838
7839   # avoid dependency on libstdc++
7840   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7841     set_target_properties(grpc_jwt_verifier_test PROPERTIES LINKER_LANGUAGE C)
7842     target_compile_options(grpc_jwt_verifier_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7843   endif()
7844
7845 endif (gRPC_BUILD_TESTS)
7846
7847 add_executable(grpc_print_google_default_creds_token
7848   test/core/security/print_google_default_creds_token.cc
7849   test/core/util/cmdline.cc
7850 )
7851
7852
7853 target_include_directories(grpc_print_google_default_creds_token
7854   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7855   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7856   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7857   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7858   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7859   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7860   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7861   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7862   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7863   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7864 )
7865
7866 target_link_libraries(grpc_print_google_default_creds_token
7867   ${_gRPC_ALLTARGETS_LIBRARIES}
7868   grpc
7869   gpr
7870 )
7871
7872   # avoid dependency on libstdc++
7873   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7874     set_target_properties(grpc_print_google_default_creds_token PROPERTIES LINKER_LANGUAGE C)
7875     target_compile_options(grpc_print_google_default_creds_token PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7876   endif()
7877
7878 if (gRPC_BUILD_TESTS)
7879
7880 add_executable(grpc_security_connector_test
7881   test/core/security/security_connector_test.cc
7882 )
7883
7884
7885 target_include_directories(grpc_security_connector_test
7886   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7887   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7888   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7889   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7890   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7891   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7892   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7893   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7894   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7895   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7896 )
7897
7898 target_link_libraries(grpc_security_connector_test
7899   ${_gRPC_ALLTARGETS_LIBRARIES}
7900   grpc_test_util
7901   grpc
7902   gpr
7903 )
7904
7905   # avoid dependency on libstdc++
7906   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7907     set_target_properties(grpc_security_connector_test PROPERTIES LINKER_LANGUAGE C)
7908     target_compile_options(grpc_security_connector_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7909   endif()
7910
7911 endif (gRPC_BUILD_TESTS)
7912 if (gRPC_BUILD_TESTS)
7913
7914 add_executable(grpc_ssl_credentials_test
7915   test/core/security/ssl_credentials_test.cc
7916 )
7917
7918
7919 target_include_directories(grpc_ssl_credentials_test
7920   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7921   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7922   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7923   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7924   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7925   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7926   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7927   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7928   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7929   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7930 )
7931
7932 target_link_libraries(grpc_ssl_credentials_test
7933   ${_gRPC_ALLTARGETS_LIBRARIES}
7934   grpc_test_util
7935   grpc
7936   gpr
7937 )
7938
7939   # avoid dependency on libstdc++
7940   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7941     set_target_properties(grpc_ssl_credentials_test PROPERTIES LINKER_LANGUAGE C)
7942     target_compile_options(grpc_ssl_credentials_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7943   endif()
7944
7945 endif (gRPC_BUILD_TESTS)
7946
7947 add_executable(grpc_verify_jwt
7948   test/core/security/verify_jwt.cc
7949   test/core/util/cmdline.cc
7950 )
7951
7952
7953 target_include_directories(grpc_verify_jwt
7954   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7955   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7956   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7957   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7958   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7959   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7960   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7961   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7962   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7963   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7964 )
7965
7966 target_link_libraries(grpc_verify_jwt
7967   ${_gRPC_ALLTARGETS_LIBRARIES}
7968   grpc
7969   gpr
7970 )
7971
7972   # avoid dependency on libstdc++
7973   if (_gRPC_CORE_NOSTDCXX_FLAGS)
7974     set_target_properties(grpc_verify_jwt PROPERTIES LINKER_LANGUAGE C)
7975     target_compile_options(grpc_verify_jwt PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
7976   endif()
7977
7978 if (gRPC_BUILD_TESTS)
7979 if(_gRPC_PLATFORM_LINUX)
7980
7981 add_executable(handshake_client_ssl
7982   test/core/handshake/client_ssl.cc
7983 )
7984
7985
7986 target_include_directories(handshake_client_ssl
7987   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7988   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7989   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
7990   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
7991   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
7992   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
7993   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
7994   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
7995   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
7996   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
7997 )
7998
7999 target_link_libraries(handshake_client_ssl
8000   ${_gRPC_SSL_LIBRARIES}
8001   ${_gRPC_ALLTARGETS_LIBRARIES}
8002   grpc_test_util
8003   grpc
8004   gpr
8005 )
8006
8007   # avoid dependency on libstdc++
8008   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8009     set_target_properties(handshake_client_ssl PROPERTIES LINKER_LANGUAGE C)
8010     target_compile_options(handshake_client_ssl PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8011   endif()
8012
8013 endif()
8014 endif (gRPC_BUILD_TESTS)
8015 if (gRPC_BUILD_TESTS)
8016 if(_gRPC_PLATFORM_LINUX)
8017
8018 add_executable(handshake_server_ssl
8019   test/core/handshake/server_ssl.cc
8020   test/core/handshake/server_ssl_common.cc
8021 )
8022
8023
8024 target_include_directories(handshake_server_ssl
8025   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8026   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8027   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8028   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8029   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8030   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8031   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8032   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8033   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8034   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8035 )
8036
8037 target_link_libraries(handshake_server_ssl
8038   ${_gRPC_SSL_LIBRARIES}
8039   ${_gRPC_ALLTARGETS_LIBRARIES}
8040   grpc_test_util
8041   grpc
8042   gpr
8043 )
8044
8045   # avoid dependency on libstdc++
8046   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8047     set_target_properties(handshake_server_ssl PROPERTIES LINKER_LANGUAGE C)
8048     target_compile_options(handshake_server_ssl PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8049   endif()
8050
8051 endif()
8052 endif (gRPC_BUILD_TESTS)
8053 if (gRPC_BUILD_TESTS)
8054 if(_gRPC_PLATFORM_LINUX)
8055
8056 add_executable(handshake_server_with_readahead_handshaker
8057   test/core/handshake/readahead_handshaker_server_ssl.cc
8058   test/core/handshake/server_ssl_common.cc
8059 )
8060
8061
8062 target_include_directories(handshake_server_with_readahead_handshaker
8063   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8064   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8065   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8066   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8067   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8068   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8069   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8070   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8071   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8072   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8073 )
8074
8075 target_link_libraries(handshake_server_with_readahead_handshaker
8076   ${_gRPC_SSL_LIBRARIES}
8077   ${_gRPC_ALLTARGETS_LIBRARIES}
8078   grpc_test_util
8079   grpc
8080   gpr
8081 )
8082
8083   # avoid dependency on libstdc++
8084   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8085     set_target_properties(handshake_server_with_readahead_handshaker PROPERTIES LINKER_LANGUAGE C)
8086     target_compile_options(handshake_server_with_readahead_handshaker PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8087   endif()
8088
8089 endif()
8090 endif (gRPC_BUILD_TESTS)
8091 if (gRPC_BUILD_TESTS)
8092 if(_gRPC_PLATFORM_LINUX)
8093
8094 add_executable(handshake_verify_peer_options
8095   test/core/handshake/verify_peer_options.cc
8096 )
8097
8098
8099 target_include_directories(handshake_verify_peer_options
8100   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8101   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8102   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8103   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8104   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8105   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8106   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8107   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8108   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8109   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8110 )
8111
8112 target_link_libraries(handshake_verify_peer_options
8113   ${_gRPC_SSL_LIBRARIES}
8114   ${_gRPC_ALLTARGETS_LIBRARIES}
8115   grpc_test_util
8116   grpc
8117   gpr
8118 )
8119
8120   # avoid dependency on libstdc++
8121   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8122     set_target_properties(handshake_verify_peer_options PROPERTIES LINKER_LANGUAGE C)
8123     target_compile_options(handshake_verify_peer_options PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8124   endif()
8125
8126 endif()
8127 endif (gRPC_BUILD_TESTS)
8128 if (gRPC_BUILD_TESTS)
8129
8130 add_executable(histogram_test
8131   test/core/util/histogram_test.cc
8132 )
8133
8134
8135 target_include_directories(histogram_test
8136   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8137   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8138   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8139   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8140   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8141   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8142   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8143   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8144   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8145   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8146 )
8147
8148 target_link_libraries(histogram_test
8149   ${_gRPC_ALLTARGETS_LIBRARIES}
8150   grpc_test_util
8151   gpr
8152 )
8153
8154   # avoid dependency on libstdc++
8155   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8156     set_target_properties(histogram_test PROPERTIES LINKER_LANGUAGE C)
8157     target_compile_options(histogram_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8158   endif()
8159
8160 endif (gRPC_BUILD_TESTS)
8161 if (gRPC_BUILD_TESTS)
8162
8163 add_executable(hpack_parser_test
8164   test/core/transport/chttp2/hpack_parser_test.cc
8165 )
8166
8167
8168 target_include_directories(hpack_parser_test
8169   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8170   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8171   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8172   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8173   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8174   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8175   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8176   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8177   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8178   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8179 )
8180
8181 target_link_libraries(hpack_parser_test
8182   ${_gRPC_ALLTARGETS_LIBRARIES}
8183   grpc_test_util
8184   grpc
8185   gpr
8186 )
8187
8188   # avoid dependency on libstdc++
8189   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8190     set_target_properties(hpack_parser_test PROPERTIES LINKER_LANGUAGE C)
8191     target_compile_options(hpack_parser_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8192   endif()
8193
8194 endif (gRPC_BUILD_TESTS)
8195 if (gRPC_BUILD_TESTS)
8196
8197 add_executable(hpack_table_test
8198   test/core/transport/chttp2/hpack_table_test.cc
8199 )
8200
8201
8202 target_include_directories(hpack_table_test
8203   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8204   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8205   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8206   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8207   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8208   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8209   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8210   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8211   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8212   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8213 )
8214
8215 target_link_libraries(hpack_table_test
8216   ${_gRPC_ALLTARGETS_LIBRARIES}
8217   grpc_test_util
8218   grpc
8219   gpr
8220 )
8221
8222   # avoid dependency on libstdc++
8223   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8224     set_target_properties(hpack_table_test PROPERTIES LINKER_LANGUAGE C)
8225     target_compile_options(hpack_table_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8226   endif()
8227
8228 endif (gRPC_BUILD_TESTS)
8229 if (gRPC_BUILD_TESTS)
8230
8231 add_executable(http_parser_test
8232   test/core/http/parser_test.cc
8233 )
8234
8235
8236 target_include_directories(http_parser_test
8237   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8238   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8239   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8240   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8241   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8242   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8243   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8244   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8245   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8246   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8247 )
8248
8249 target_link_libraries(http_parser_test
8250   ${_gRPC_ALLTARGETS_LIBRARIES}
8251   grpc_test_util
8252   grpc
8253   gpr
8254 )
8255
8256   # avoid dependency on libstdc++
8257   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8258     set_target_properties(http_parser_test PROPERTIES LINKER_LANGUAGE C)
8259     target_compile_options(http_parser_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8260   endif()
8261
8262 endif (gRPC_BUILD_TESTS)
8263 if (gRPC_BUILD_TESTS)
8264
8265 add_executable(httpcli_format_request_test
8266   test/core/http/format_request_test.cc
8267 )
8268
8269
8270 target_include_directories(httpcli_format_request_test
8271   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8272   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8273   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8274   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8275   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8276   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8277   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8278   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8279   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8280   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8281 )
8282
8283 target_link_libraries(httpcli_format_request_test
8284   ${_gRPC_ALLTARGETS_LIBRARIES}
8285   grpc_test_util
8286   grpc
8287   gpr
8288 )
8289
8290   # avoid dependency on libstdc++
8291   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8292     set_target_properties(httpcli_format_request_test PROPERTIES LINKER_LANGUAGE C)
8293     target_compile_options(httpcli_format_request_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8294   endif()
8295
8296 endif (gRPC_BUILD_TESTS)
8297 if (gRPC_BUILD_TESTS)
8298 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
8299
8300 add_executable(httpcli_test
8301   test/core/http/httpcli_test.cc
8302 )
8303
8304
8305 target_include_directories(httpcli_test
8306   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8307   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8308   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8309   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8310   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8311   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8312   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8313   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8314   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8315   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8316 )
8317
8318 target_link_libraries(httpcli_test
8319   ${_gRPC_ALLTARGETS_LIBRARIES}
8320   grpc_test_util
8321   grpc
8322   gpr
8323 )
8324
8325   # avoid dependency on libstdc++
8326   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8327     set_target_properties(httpcli_test PROPERTIES LINKER_LANGUAGE C)
8328     target_compile_options(httpcli_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8329   endif()
8330
8331 endif()
8332 endif (gRPC_BUILD_TESTS)
8333 if (gRPC_BUILD_TESTS)
8334 if(_gRPC_PLATFORM_LINUX)
8335
8336 add_executable(httpscli_test
8337   test/core/http/httpscli_test.cc
8338 )
8339
8340
8341 target_include_directories(httpscli_test
8342   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8343   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8344   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8345   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8346   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8347   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8348   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8349   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8350   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8351   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8352 )
8353
8354 target_link_libraries(httpscli_test
8355   ${_gRPC_ALLTARGETS_LIBRARIES}
8356   grpc_test_util
8357   grpc
8358   gpr
8359 )
8360
8361   # avoid dependency on libstdc++
8362   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8363     set_target_properties(httpscli_test PROPERTIES LINKER_LANGUAGE C)
8364     target_compile_options(httpscli_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8365   endif()
8366
8367 endif()
8368 endif (gRPC_BUILD_TESTS)
8369 if (gRPC_BUILD_TESTS)
8370
8371 add_executable(init_test
8372   test/core/surface/init_test.cc
8373 )
8374
8375
8376 target_include_directories(init_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(init_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(init_test PROPERTIES LINKER_LANGUAGE C)
8399     target_compile_options(init_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8400   endif()
8401
8402 endif (gRPC_BUILD_TESTS)
8403 if (gRPC_BUILD_TESTS)
8404
8405 add_executable(inproc_callback_test
8406   test/core/end2end/inproc_callback_test.cc
8407 )
8408
8409
8410 target_include_directories(inproc_callback_test
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(inproc_callback_test
8424   ${_gRPC_ALLTARGETS_LIBRARIES}
8425   grpc_test_util
8426   grpc
8427   gpr
8428 )
8429
8430   # avoid dependency on libstdc++
8431   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8432     set_target_properties(inproc_callback_test PROPERTIES LINKER_LANGUAGE C)
8433     target_compile_options(inproc_callback_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8434   endif()
8435
8436 endif (gRPC_BUILD_TESTS)
8437 if (gRPC_BUILD_TESTS)
8438
8439 add_executable(invalid_call_argument_test
8440   test/core/end2end/invalid_call_argument_test.cc
8441 )
8442
8443
8444 target_include_directories(invalid_call_argument_test
8445   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8446   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8447   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8448   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8449   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8450   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8451   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8452   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8453   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8454   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8455 )
8456
8457 target_link_libraries(invalid_call_argument_test
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(invalid_call_argument_test PROPERTIES LINKER_LANGUAGE C)
8467     target_compile_options(invalid_call_argument_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8468   endif()
8469
8470 endif (gRPC_BUILD_TESTS)
8471 if (gRPC_BUILD_TESTS)
8472
8473 add_executable(json_rewrite
8474   test/core/json/json_rewrite.cc
8475 )
8476
8477
8478 target_include_directories(json_rewrite
8479   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8480   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8481   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8482   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8483   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8484   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8485   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8486   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8487   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8488   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8489 )
8490
8491 target_link_libraries(json_rewrite
8492   ${_gRPC_ALLTARGETS_LIBRARIES}
8493   grpc_test_util
8494   grpc
8495   gpr
8496 )
8497
8498   # avoid dependency on libstdc++
8499   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8500     set_target_properties(json_rewrite PROPERTIES LINKER_LANGUAGE C)
8501     target_compile_options(json_rewrite PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8502   endif()
8503
8504 endif (gRPC_BUILD_TESTS)
8505 if (gRPC_BUILD_TESTS)
8506
8507 add_executable(json_rewrite_test
8508   test/core/json/json_rewrite_test.cc
8509 )
8510
8511
8512 target_include_directories(json_rewrite_test
8513   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8514   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8515   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8516   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8517   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8518   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8519   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8520   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8521   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8522   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8523 )
8524
8525 target_link_libraries(json_rewrite_test
8526   ${_gRPC_ALLTARGETS_LIBRARIES}
8527   grpc_test_util
8528   grpc
8529   gpr
8530 )
8531
8532   # avoid dependency on libstdc++
8533   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8534     set_target_properties(json_rewrite_test PROPERTIES LINKER_LANGUAGE C)
8535     target_compile_options(json_rewrite_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8536   endif()
8537
8538 endif (gRPC_BUILD_TESTS)
8539 if (gRPC_BUILD_TESTS)
8540
8541 add_executable(json_stream_error_test
8542   test/core/json/json_stream_error_test.cc
8543 )
8544
8545
8546 target_include_directories(json_stream_error_test
8547   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8548   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8549   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8550   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8551   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8552   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8553   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8554   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8555   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8556   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8557 )
8558
8559 target_link_libraries(json_stream_error_test
8560   ${_gRPC_ALLTARGETS_LIBRARIES}
8561   grpc_test_util
8562   grpc
8563   gpr
8564 )
8565
8566   # avoid dependency on libstdc++
8567   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8568     set_target_properties(json_stream_error_test PROPERTIES LINKER_LANGUAGE C)
8569     target_compile_options(json_stream_error_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8570   endif()
8571
8572 endif (gRPC_BUILD_TESTS)
8573 if (gRPC_BUILD_TESTS)
8574
8575 add_executable(json_test
8576   test/core/json/json_test.cc
8577 )
8578
8579
8580 target_include_directories(json_test
8581   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8582   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8583   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8584   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8585   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8586   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8587   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8588   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8589   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8590   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8591 )
8592
8593 target_link_libraries(json_test
8594   ${_gRPC_ALLTARGETS_LIBRARIES}
8595   grpc_test_util
8596   grpc
8597   gpr
8598 )
8599
8600   # avoid dependency on libstdc++
8601   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8602     set_target_properties(json_test PROPERTIES LINKER_LANGUAGE C)
8603     target_compile_options(json_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8604   endif()
8605
8606 endif (gRPC_BUILD_TESTS)
8607 if (gRPC_BUILD_TESTS)
8608
8609 add_executable(lame_client_test
8610   test/core/surface/lame_client_test.cc
8611 )
8612
8613
8614 target_include_directories(lame_client_test
8615   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8616   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8617   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8618   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8619   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8620   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8621   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8622   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8623   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8624   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8625 )
8626
8627 target_link_libraries(lame_client_test
8628   ${_gRPC_ALLTARGETS_LIBRARIES}
8629   grpc_test_util
8630   grpc
8631   gpr
8632 )
8633
8634   # avoid dependency on libstdc++
8635   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8636     set_target_properties(lame_client_test PROPERTIES LINKER_LANGUAGE C)
8637     target_compile_options(lame_client_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8638   endif()
8639
8640 endif (gRPC_BUILD_TESTS)
8641 if (gRPC_BUILD_TESTS)
8642
8643 add_executable(load_file_test
8644   test/core/iomgr/load_file_test.cc
8645 )
8646
8647
8648 target_include_directories(load_file_test
8649   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8650   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8651   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8652   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8653   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8654   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8655   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8656   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8657   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8658   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8659 )
8660
8661 target_link_libraries(load_file_test
8662   ${_gRPC_ALLTARGETS_LIBRARIES}
8663   grpc_test_util
8664   grpc
8665   gpr
8666 )
8667
8668   # avoid dependency on libstdc++
8669   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8670     set_target_properties(load_file_test PROPERTIES LINKER_LANGUAGE C)
8671     target_compile_options(load_file_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8672   endif()
8673
8674 endif (gRPC_BUILD_TESTS)
8675 if (gRPC_BUILD_TESTS)
8676
8677 add_executable(memory_usage_client
8678   test/core/memory_usage/client.cc
8679 )
8680
8681
8682 target_include_directories(memory_usage_client
8683   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8684   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8685   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8686   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8687   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8688   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8689   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8690   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8691   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8692   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8693 )
8694
8695 target_link_libraries(memory_usage_client
8696   ${_gRPC_ALLTARGETS_LIBRARIES}
8697   grpc_test_util
8698   grpc
8699   gpr
8700 )
8701
8702   # avoid dependency on libstdc++
8703   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8704     set_target_properties(memory_usage_client PROPERTIES LINKER_LANGUAGE C)
8705     target_compile_options(memory_usage_client PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8706   endif()
8707
8708 endif (gRPC_BUILD_TESTS)
8709 if (gRPC_BUILD_TESTS)
8710
8711 add_executable(memory_usage_server
8712   test/core/memory_usage/server.cc
8713 )
8714
8715
8716 target_include_directories(memory_usage_server
8717   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8718   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8719   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8720   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8721   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8722   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8723   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8724   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8725   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8726   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8727 )
8728
8729 target_link_libraries(memory_usage_server
8730   ${_gRPC_ALLTARGETS_LIBRARIES}
8731   grpc_test_util
8732   grpc
8733   gpr
8734 )
8735
8736   # avoid dependency on libstdc++
8737   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8738     set_target_properties(memory_usage_server PROPERTIES LINKER_LANGUAGE C)
8739     target_compile_options(memory_usage_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8740   endif()
8741
8742 endif (gRPC_BUILD_TESTS)
8743 if (gRPC_BUILD_TESTS)
8744 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
8745
8746 add_executable(memory_usage_test
8747   test/core/memory_usage/memory_usage_test.cc
8748 )
8749
8750
8751 target_include_directories(memory_usage_test
8752   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8753   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8754   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8755   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8756   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8757   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8758   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8759   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8760   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8761   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8762 )
8763
8764 target_link_libraries(memory_usage_test
8765   ${_gRPC_ALLTARGETS_LIBRARIES}
8766   grpc_test_util
8767   grpc
8768   gpr
8769 )
8770
8771   # avoid dependency on libstdc++
8772   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8773     set_target_properties(memory_usage_test PROPERTIES LINKER_LANGUAGE C)
8774     target_compile_options(memory_usage_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8775   endif()
8776
8777 endif()
8778 endif (gRPC_BUILD_TESTS)
8779 if (gRPC_BUILD_TESTS)
8780
8781 add_executable(message_compress_test
8782   test/core/compression/message_compress_test.cc
8783 )
8784
8785
8786 target_include_directories(message_compress_test
8787   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8788   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8789   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8790   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8791   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8792   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8793   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8794   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8795   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8796   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8797 )
8798
8799 target_link_libraries(message_compress_test
8800   ${_gRPC_ALLTARGETS_LIBRARIES}
8801   grpc_test_util
8802   grpc
8803   gpr
8804 )
8805
8806   # avoid dependency on libstdc++
8807   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8808     set_target_properties(message_compress_test PROPERTIES LINKER_LANGUAGE C)
8809     target_compile_options(message_compress_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8810   endif()
8811
8812 endif (gRPC_BUILD_TESTS)
8813 if (gRPC_BUILD_TESTS)
8814
8815 add_executable(minimal_stack_is_minimal_test
8816   test/core/channel/minimal_stack_is_minimal_test.cc
8817 )
8818
8819
8820 target_include_directories(minimal_stack_is_minimal_test
8821   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8822   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8823   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8824   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8825   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8826   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8827   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8828   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8829   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8830   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8831 )
8832
8833 target_link_libraries(minimal_stack_is_minimal_test
8834   ${_gRPC_ALLTARGETS_LIBRARIES}
8835   grpc_test_util
8836   grpc
8837   gpr
8838 )
8839
8840   # avoid dependency on libstdc++
8841   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8842     set_target_properties(minimal_stack_is_minimal_test PROPERTIES LINKER_LANGUAGE C)
8843     target_compile_options(minimal_stack_is_minimal_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8844   endif()
8845
8846 endif (gRPC_BUILD_TESTS)
8847 if (gRPC_BUILD_TESTS)
8848
8849 add_executable(mpmcqueue_test
8850   test/core/iomgr/mpmcqueue_test.cc
8851 )
8852
8853
8854 target_include_directories(mpmcqueue_test
8855   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8856   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8857   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8858   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8859   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8860   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8861   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8862   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8863   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8864   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8865 )
8866
8867 target_link_libraries(mpmcqueue_test
8868   ${_gRPC_ALLTARGETS_LIBRARIES}
8869   grpc_test_util
8870   grpc
8871   gpr
8872 )
8873
8874   # avoid dependency on libstdc++
8875   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8876     set_target_properties(mpmcqueue_test PROPERTIES LINKER_LANGUAGE C)
8877     target_compile_options(mpmcqueue_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8878   endif()
8879
8880 endif (gRPC_BUILD_TESTS)
8881 if (gRPC_BUILD_TESTS)
8882
8883 add_executable(multiple_server_queues_test
8884   test/core/end2end/multiple_server_queues_test.cc
8885 )
8886
8887
8888 target_include_directories(multiple_server_queues_test
8889   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8890   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8891   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8892   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8893   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8894   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8895   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8896   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8897   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8898   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8899 )
8900
8901 target_link_libraries(multiple_server_queues_test
8902   ${_gRPC_ALLTARGETS_LIBRARIES}
8903   grpc_test_util
8904   grpc
8905   gpr
8906 )
8907
8908   # avoid dependency on libstdc++
8909   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8910     set_target_properties(multiple_server_queues_test PROPERTIES LINKER_LANGUAGE C)
8911     target_compile_options(multiple_server_queues_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8912   endif()
8913
8914 endif (gRPC_BUILD_TESTS)
8915 if (gRPC_BUILD_TESTS)
8916
8917 add_executable(murmur_hash_test
8918   test/core/gpr/murmur_hash_test.cc
8919 )
8920
8921
8922 target_include_directories(murmur_hash_test
8923   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8924   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8925   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8926   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8927   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8928   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8929   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8930   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8931   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8932   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8933 )
8934
8935 target_link_libraries(murmur_hash_test
8936   ${_gRPC_ALLTARGETS_LIBRARIES}
8937   gpr
8938   grpc_test_util_unsecure
8939   grpc_unsecure
8940 )
8941
8942   # avoid dependency on libstdc++
8943   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8944     set_target_properties(murmur_hash_test PROPERTIES LINKER_LANGUAGE C)
8945     target_compile_options(murmur_hash_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8946   endif()
8947
8948 endif (gRPC_BUILD_TESTS)
8949 if (gRPC_BUILD_TESTS)
8950
8951 add_executable(no_server_test
8952   test/core/end2end/no_server_test.cc
8953 )
8954
8955
8956 target_include_directories(no_server_test
8957   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8958   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8959   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8960   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8961   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8962   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8963   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8964   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8965   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
8966   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
8967 )
8968
8969 target_link_libraries(no_server_test
8970   ${_gRPC_ALLTARGETS_LIBRARIES}
8971   grpc_test_util
8972   grpc
8973   gpr
8974 )
8975
8976   # avoid dependency on libstdc++
8977   if (_gRPC_CORE_NOSTDCXX_FLAGS)
8978     set_target_properties(no_server_test PROPERTIES LINKER_LANGUAGE C)
8979     target_compile_options(no_server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
8980   endif()
8981
8982 endif (gRPC_BUILD_TESTS)
8983 if (gRPC_BUILD_TESTS)
8984
8985 add_executable(num_external_connectivity_watchers_test
8986   test/core/surface/num_external_connectivity_watchers_test.cc
8987 )
8988
8989
8990 target_include_directories(num_external_connectivity_watchers_test
8991   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
8992   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
8993   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
8994   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
8995   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
8996   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
8997   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
8998   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
8999   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9000   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9001 )
9002
9003 target_link_libraries(num_external_connectivity_watchers_test
9004   ${_gRPC_ALLTARGETS_LIBRARIES}
9005   grpc_test_util
9006   grpc
9007   gpr
9008 )
9009
9010   # avoid dependency on libstdc++
9011   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9012     set_target_properties(num_external_connectivity_watchers_test PROPERTIES LINKER_LANGUAGE C)
9013     target_compile_options(num_external_connectivity_watchers_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9014   endif()
9015
9016 endif (gRPC_BUILD_TESTS)
9017 if (gRPC_BUILD_TESTS)
9018
9019 add_executable(parse_address_test
9020   test/core/client_channel/parse_address_test.cc
9021 )
9022
9023
9024 target_include_directories(parse_address_test
9025   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9026   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9027   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9028   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9029   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9030   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9031   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9032   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9033   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9034   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9035 )
9036
9037 target_link_libraries(parse_address_test
9038   ${_gRPC_ALLTARGETS_LIBRARIES}
9039   grpc_test_util
9040   grpc
9041   gpr
9042 )
9043
9044   # avoid dependency on libstdc++
9045   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9046     set_target_properties(parse_address_test PROPERTIES LINKER_LANGUAGE C)
9047     target_compile_options(parse_address_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9048   endif()
9049
9050 endif (gRPC_BUILD_TESTS)
9051 if (gRPC_BUILD_TESTS)
9052 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9053
9054 add_executable(parse_address_with_named_scope_id_test
9055   test/core/client_channel/parse_address_with_named_scope_id_test.cc
9056 )
9057
9058
9059 target_include_directories(parse_address_with_named_scope_id_test
9060   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9061   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9062   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9063   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9064   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9065   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9066   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9067   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9068   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9069   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9070 )
9071
9072 target_link_libraries(parse_address_with_named_scope_id_test
9073   ${_gRPC_ALLTARGETS_LIBRARIES}
9074   grpc_test_util
9075   grpc
9076   gpr
9077 )
9078
9079   # avoid dependency on libstdc++
9080   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9081     set_target_properties(parse_address_with_named_scope_id_test PROPERTIES LINKER_LANGUAGE C)
9082     target_compile_options(parse_address_with_named_scope_id_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9083   endif()
9084
9085 endif()
9086 endif (gRPC_BUILD_TESTS)
9087 if (gRPC_BUILD_TESTS)
9088
9089 add_executable(percent_encoding_test
9090   test/core/slice/percent_encoding_test.cc
9091 )
9092
9093
9094 target_include_directories(percent_encoding_test
9095   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9096   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9097   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9098   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9099   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9100   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9101   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9102   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9103   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9104   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9105 )
9106
9107 target_link_libraries(percent_encoding_test
9108   ${_gRPC_ALLTARGETS_LIBRARIES}
9109   grpc_test_util
9110   grpc
9111   gpr
9112 )
9113
9114   # avoid dependency on libstdc++
9115   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9116     set_target_properties(percent_encoding_test PROPERTIES LINKER_LANGUAGE C)
9117     target_compile_options(percent_encoding_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9118   endif()
9119
9120 endif (gRPC_BUILD_TESTS)
9121 if (gRPC_BUILD_TESTS)
9122 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9123
9124 add_executable(resolve_address_using_ares_resolver_posix_test
9125   test/core/iomgr/resolve_address_posix_test.cc
9126 )
9127
9128
9129 target_include_directories(resolve_address_using_ares_resolver_posix_test
9130   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9131   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9132   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9133   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9134   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9135   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9136   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9137   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9138   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9139   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9140 )
9141
9142 target_link_libraries(resolve_address_using_ares_resolver_posix_test
9143   ${_gRPC_ALLTARGETS_LIBRARIES}
9144   grpc_test_util
9145   grpc
9146   gpr
9147 )
9148
9149   # avoid dependency on libstdc++
9150   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9151     set_target_properties(resolve_address_using_ares_resolver_posix_test PROPERTIES LINKER_LANGUAGE C)
9152     target_compile_options(resolve_address_using_ares_resolver_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9153   endif()
9154
9155 endif()
9156 endif (gRPC_BUILD_TESTS)
9157 if (gRPC_BUILD_TESTS)
9158
9159 add_executable(resolve_address_using_ares_resolver_test
9160   test/core/iomgr/resolve_address_test.cc
9161 )
9162
9163
9164 target_include_directories(resolve_address_using_ares_resolver_test
9165   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9166   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9167   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9168   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9169   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9170   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9171   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9172   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9173   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9174   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9175 )
9176
9177 target_link_libraries(resolve_address_using_ares_resolver_test
9178   ${_gRPC_ALLTARGETS_LIBRARIES}
9179   grpc_test_util
9180   grpc
9181   gpr
9182 )
9183
9184   # avoid dependency on libstdc++
9185   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9186     set_target_properties(resolve_address_using_ares_resolver_test PROPERTIES LINKER_LANGUAGE C)
9187     target_compile_options(resolve_address_using_ares_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9188   endif()
9189
9190 endif (gRPC_BUILD_TESTS)
9191 if (gRPC_BUILD_TESTS)
9192 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9193
9194 add_executable(resolve_address_using_native_resolver_posix_test
9195   test/core/iomgr/resolve_address_posix_test.cc
9196 )
9197
9198
9199 target_include_directories(resolve_address_using_native_resolver_posix_test
9200   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9201   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9202   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9203   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9204   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9205   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9206   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9207   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9208   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9209   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9210 )
9211
9212 target_link_libraries(resolve_address_using_native_resolver_posix_test
9213   ${_gRPC_ALLTARGETS_LIBRARIES}
9214   grpc_test_util
9215   grpc
9216   gpr
9217 )
9218
9219   # avoid dependency on libstdc++
9220   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9221     set_target_properties(resolve_address_using_native_resolver_posix_test PROPERTIES LINKER_LANGUAGE C)
9222     target_compile_options(resolve_address_using_native_resolver_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9223   endif()
9224
9225 endif()
9226 endif (gRPC_BUILD_TESTS)
9227 if (gRPC_BUILD_TESTS)
9228
9229 add_executable(resolve_address_using_native_resolver_test
9230   test/core/iomgr/resolve_address_test.cc
9231 )
9232
9233
9234 target_include_directories(resolve_address_using_native_resolver_test
9235   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9236   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9237   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9238   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9239   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9240   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9241   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9242   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9243   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9244   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9245 )
9246
9247 target_link_libraries(resolve_address_using_native_resolver_test
9248   ${_gRPC_ALLTARGETS_LIBRARIES}
9249   grpc_test_util
9250   grpc
9251   gpr
9252 )
9253
9254   # avoid dependency on libstdc++
9255   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9256     set_target_properties(resolve_address_using_native_resolver_test PROPERTIES LINKER_LANGUAGE C)
9257     target_compile_options(resolve_address_using_native_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9258   endif()
9259
9260 endif (gRPC_BUILD_TESTS)
9261 if (gRPC_BUILD_TESTS)
9262
9263 add_executable(resource_quota_test
9264   test/core/iomgr/resource_quota_test.cc
9265 )
9266
9267
9268 target_include_directories(resource_quota_test
9269   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9270   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9271   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9272   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9273   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9274   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9275   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9276   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9277   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9278   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9279 )
9280
9281 target_link_libraries(resource_quota_test
9282   ${_gRPC_ALLTARGETS_LIBRARIES}
9283   grpc_test_util
9284   grpc
9285   gpr
9286 )
9287
9288   # avoid dependency on libstdc++
9289   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9290     set_target_properties(resource_quota_test PROPERTIES LINKER_LANGUAGE C)
9291     target_compile_options(resource_quota_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9292   endif()
9293
9294 endif (gRPC_BUILD_TESTS)
9295 if (gRPC_BUILD_TESTS)
9296
9297 add_executable(secure_channel_create_test
9298   test/core/surface/secure_channel_create_test.cc
9299 )
9300
9301
9302 target_include_directories(secure_channel_create_test
9303   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9304   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9305   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9306   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9307   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9308   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9309   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9310   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9311   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9312   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9313 )
9314
9315 target_link_libraries(secure_channel_create_test
9316   ${_gRPC_ALLTARGETS_LIBRARIES}
9317   grpc_test_util
9318   grpc
9319   gpr
9320 )
9321
9322   # avoid dependency on libstdc++
9323   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9324     set_target_properties(secure_channel_create_test PROPERTIES LINKER_LANGUAGE C)
9325     target_compile_options(secure_channel_create_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9326   endif()
9327
9328 endif (gRPC_BUILD_TESTS)
9329 if (gRPC_BUILD_TESTS)
9330
9331 add_executable(secure_endpoint_test
9332   test/core/security/secure_endpoint_test.cc
9333 )
9334
9335
9336 target_include_directories(secure_endpoint_test
9337   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9338   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9339   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9340   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9341   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9342   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9343   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9344   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9345   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9346   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9347 )
9348
9349 target_link_libraries(secure_endpoint_test
9350   ${_gRPC_ALLTARGETS_LIBRARIES}
9351   grpc_test_util
9352   grpc
9353   gpr
9354 )
9355
9356   # avoid dependency on libstdc++
9357   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9358     set_target_properties(secure_endpoint_test PROPERTIES LINKER_LANGUAGE C)
9359     target_compile_options(secure_endpoint_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9360   endif()
9361
9362 endif (gRPC_BUILD_TESTS)
9363 if (gRPC_BUILD_TESTS)
9364
9365 add_executable(sequential_connectivity_test
9366   test/core/surface/sequential_connectivity_test.cc
9367 )
9368
9369
9370 target_include_directories(sequential_connectivity_test
9371   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9372   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9373   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9374   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9375   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9376   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9377   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9378   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9379   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9380   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9381 )
9382
9383 target_link_libraries(sequential_connectivity_test
9384   ${_gRPC_ALLTARGETS_LIBRARIES}
9385   grpc_test_util
9386   grpc
9387   gpr
9388 )
9389
9390   # avoid dependency on libstdc++
9391   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9392     set_target_properties(sequential_connectivity_test PROPERTIES LINKER_LANGUAGE C)
9393     target_compile_options(sequential_connectivity_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9394   endif()
9395
9396 endif (gRPC_BUILD_TESTS)
9397 if (gRPC_BUILD_TESTS)
9398
9399 add_executable(server_chttp2_test
9400   test/core/surface/server_chttp2_test.cc
9401 )
9402
9403
9404 target_include_directories(server_chttp2_test
9405   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9406   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9407   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9408   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9409   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9410   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9411   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9412   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9413   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9414   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9415 )
9416
9417 target_link_libraries(server_chttp2_test
9418   ${_gRPC_ALLTARGETS_LIBRARIES}
9419   grpc_test_util
9420   grpc
9421   gpr
9422 )
9423
9424   # avoid dependency on libstdc++
9425   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9426     set_target_properties(server_chttp2_test PROPERTIES LINKER_LANGUAGE C)
9427     target_compile_options(server_chttp2_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9428   endif()
9429
9430 endif (gRPC_BUILD_TESTS)
9431 if (gRPC_BUILD_TESTS)
9432
9433 add_executable(server_test
9434   test/core/surface/server_test.cc
9435 )
9436
9437
9438 target_include_directories(server_test
9439   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9440   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9441   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9442   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9443   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9444   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9445   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9446   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9447   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9448   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9449 )
9450
9451 target_link_libraries(server_test
9452   ${_gRPC_ALLTARGETS_LIBRARIES}
9453   grpc_test_util
9454   grpc
9455   gpr
9456 )
9457
9458   # avoid dependency on libstdc++
9459   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9460     set_target_properties(server_test PROPERTIES LINKER_LANGUAGE C)
9461     target_compile_options(server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9462   endif()
9463
9464 endif (gRPC_BUILD_TESTS)
9465 if (gRPC_BUILD_TESTS)
9466
9467 add_executable(slice_buffer_test
9468   test/core/slice/slice_buffer_test.cc
9469 )
9470
9471
9472 target_include_directories(slice_buffer_test
9473   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9474   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9475   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9476   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9477   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9478   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9479   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9480   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9481   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9482   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9483 )
9484
9485 target_link_libraries(slice_buffer_test
9486   ${_gRPC_ALLTARGETS_LIBRARIES}
9487   grpc_test_util
9488   grpc
9489   gpr
9490 )
9491
9492   # avoid dependency on libstdc++
9493   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9494     set_target_properties(slice_buffer_test PROPERTIES LINKER_LANGUAGE C)
9495     target_compile_options(slice_buffer_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9496   endif()
9497
9498 endif (gRPC_BUILD_TESTS)
9499 if (gRPC_BUILD_TESTS)
9500
9501 add_executable(slice_string_helpers_test
9502   test/core/slice/slice_string_helpers_test.cc
9503 )
9504
9505
9506 target_include_directories(slice_string_helpers_test
9507   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9508   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9509   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9510   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9511   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9512   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9513   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9514   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9515   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9516   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9517 )
9518
9519 target_link_libraries(slice_string_helpers_test
9520   ${_gRPC_ALLTARGETS_LIBRARIES}
9521   grpc_test_util
9522   grpc
9523   gpr
9524 )
9525
9526   # avoid dependency on libstdc++
9527   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9528     set_target_properties(slice_string_helpers_test PROPERTIES LINKER_LANGUAGE C)
9529     target_compile_options(slice_string_helpers_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9530   endif()
9531
9532 endif (gRPC_BUILD_TESTS)
9533 if (gRPC_BUILD_TESTS)
9534
9535 add_executable(slice_test
9536   test/core/slice/slice_test.cc
9537 )
9538
9539
9540 target_include_directories(slice_test
9541   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9542   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9543   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9544   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9545   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9546   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9547   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9548   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9549   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9550   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9551 )
9552
9553 target_link_libraries(slice_test
9554   ${_gRPC_ALLTARGETS_LIBRARIES}
9555   grpc_test_util
9556   grpc
9557   gpr
9558 )
9559
9560   # avoid dependency on libstdc++
9561   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9562     set_target_properties(slice_test PROPERTIES LINKER_LANGUAGE C)
9563     target_compile_options(slice_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9564   endif()
9565
9566 endif (gRPC_BUILD_TESTS)
9567 if (gRPC_BUILD_TESTS)
9568
9569 add_executable(sockaddr_resolver_test
9570   test/core/client_channel/resolvers/sockaddr_resolver_test.cc
9571 )
9572
9573
9574 target_include_directories(sockaddr_resolver_test
9575   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9576   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9577   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9578   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9579   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9580   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9581   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9582   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9583   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9584   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9585 )
9586
9587 target_link_libraries(sockaddr_resolver_test
9588   ${_gRPC_ALLTARGETS_LIBRARIES}
9589   grpc_test_util
9590   grpc
9591   gpr
9592 )
9593
9594   # avoid dependency on libstdc++
9595   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9596     set_target_properties(sockaddr_resolver_test PROPERTIES LINKER_LANGUAGE C)
9597     target_compile_options(sockaddr_resolver_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9598   endif()
9599
9600 endif (gRPC_BUILD_TESTS)
9601 if (gRPC_BUILD_TESTS)
9602
9603 add_executable(sockaddr_utils_test
9604   test/core/iomgr/sockaddr_utils_test.cc
9605 )
9606
9607
9608 target_include_directories(sockaddr_utils_test
9609   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9610   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9611   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9612   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9613   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9614   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9615   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9616   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9617   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9618   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9619 )
9620
9621 target_link_libraries(sockaddr_utils_test
9622   ${_gRPC_ALLTARGETS_LIBRARIES}
9623   grpc_test_util
9624   grpc
9625   gpr
9626 )
9627
9628   # avoid dependency on libstdc++
9629   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9630     set_target_properties(sockaddr_utils_test PROPERTIES LINKER_LANGUAGE C)
9631     target_compile_options(sockaddr_utils_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9632   endif()
9633
9634 endif (gRPC_BUILD_TESTS)
9635 if (gRPC_BUILD_TESTS)
9636 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9637
9638 add_executable(socket_utils_test
9639   test/core/iomgr/socket_utils_test.cc
9640 )
9641
9642
9643 target_include_directories(socket_utils_test
9644   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9645   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9646   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9647   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9648   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9649   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9650   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9651   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9652   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9653   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9654 )
9655
9656 target_link_libraries(socket_utils_test
9657   ${_gRPC_ALLTARGETS_LIBRARIES}
9658   grpc_test_util
9659   grpc
9660   gpr
9661 )
9662
9663   # avoid dependency on libstdc++
9664   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9665     set_target_properties(socket_utils_test PROPERTIES LINKER_LANGUAGE C)
9666     target_compile_options(socket_utils_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9667   endif()
9668
9669 endif()
9670 endif (gRPC_BUILD_TESTS)
9671 if (gRPC_BUILD_TESTS)
9672 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9673
9674 add_executable(ssl_transport_security_test
9675   test/core/tsi/ssl_transport_security_test.cc
9676   test/core/tsi/transport_security_test_lib.cc
9677 )
9678
9679
9680 target_include_directories(ssl_transport_security_test
9681   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9682   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9683   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9684   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9685   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9686   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9687   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9688   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9689   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9690   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9691 )
9692
9693 target_link_libraries(ssl_transport_security_test
9694   ${_gRPC_ALLTARGETS_LIBRARIES}
9695   gpr
9696   grpc_test_util
9697   grpc
9698 )
9699
9700   # avoid dependency on libstdc++
9701   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9702     set_target_properties(ssl_transport_security_test PROPERTIES LINKER_LANGUAGE C)
9703     target_compile_options(ssl_transport_security_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9704   endif()
9705
9706 endif()
9707 endif (gRPC_BUILD_TESTS)
9708 if (gRPC_BUILD_TESTS)
9709
9710 add_executable(status_conversion_test
9711   test/core/transport/status_conversion_test.cc
9712 )
9713
9714
9715 target_include_directories(status_conversion_test
9716   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9717   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9718   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9719   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9720   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9721   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9722   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9723   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9724   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9725   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9726 )
9727
9728 target_link_libraries(status_conversion_test
9729   ${_gRPC_ALLTARGETS_LIBRARIES}
9730   grpc_test_util
9731   grpc
9732   gpr
9733 )
9734
9735   # avoid dependency on libstdc++
9736   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9737     set_target_properties(status_conversion_test PROPERTIES LINKER_LANGUAGE C)
9738     target_compile_options(status_conversion_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9739   endif()
9740
9741 endif (gRPC_BUILD_TESTS)
9742 if (gRPC_BUILD_TESTS)
9743
9744 add_executable(stream_compression_test
9745   test/core/compression/stream_compression_test.cc
9746 )
9747
9748
9749 target_include_directories(stream_compression_test
9750   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9751   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9752   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9753   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9754   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9755   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9756   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9757   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9758   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9759   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9760 )
9761
9762 target_link_libraries(stream_compression_test
9763   ${_gRPC_ALLTARGETS_LIBRARIES}
9764   grpc_test_util
9765   grpc
9766   gpr
9767 )
9768
9769   # avoid dependency on libstdc++
9770   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9771     set_target_properties(stream_compression_test PROPERTIES LINKER_LANGUAGE C)
9772     target_compile_options(stream_compression_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9773   endif()
9774
9775 endif (gRPC_BUILD_TESTS)
9776 if (gRPC_BUILD_TESTS)
9777
9778 add_executable(stream_owned_slice_test
9779   test/core/transport/stream_owned_slice_test.cc
9780 )
9781
9782
9783 target_include_directories(stream_owned_slice_test
9784   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9785   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9786   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9787   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9788   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9789   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9790   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9791   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9792   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9793   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9794 )
9795
9796 target_link_libraries(stream_owned_slice_test
9797   ${_gRPC_ALLTARGETS_LIBRARIES}
9798   grpc_test_util
9799   grpc
9800   gpr
9801 )
9802
9803   # avoid dependency on libstdc++
9804   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9805     set_target_properties(stream_owned_slice_test PROPERTIES LINKER_LANGUAGE C)
9806     target_compile_options(stream_owned_slice_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9807   endif()
9808
9809 endif (gRPC_BUILD_TESTS)
9810 if (gRPC_BUILD_TESTS)
9811 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9812
9813 add_executable(tcp_client_posix_test
9814   test/core/iomgr/tcp_client_posix_test.cc
9815 )
9816
9817
9818 target_include_directories(tcp_client_posix_test
9819   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9820   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9821   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9822   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9823   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9824   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9825   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9826   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9827   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9828   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9829 )
9830
9831 target_link_libraries(tcp_client_posix_test
9832   ${_gRPC_ALLTARGETS_LIBRARIES}
9833   grpc_test_util
9834   grpc
9835   gpr
9836 )
9837
9838   # avoid dependency on libstdc++
9839   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9840     set_target_properties(tcp_client_posix_test PROPERTIES LINKER_LANGUAGE C)
9841     target_compile_options(tcp_client_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9842   endif()
9843
9844 endif()
9845 endif (gRPC_BUILD_TESTS)
9846 if (gRPC_BUILD_TESTS)
9847
9848 add_executable(tcp_client_uv_test
9849   test/core/iomgr/tcp_client_uv_test.cc
9850 )
9851
9852
9853 target_include_directories(tcp_client_uv_test
9854   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9855   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9856   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9857   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9858   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9859   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9860   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9861   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9862   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9863   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9864 )
9865
9866 target_link_libraries(tcp_client_uv_test
9867   ${_gRPC_ALLTARGETS_LIBRARIES}
9868   grpc_test_util
9869   grpc
9870   gpr
9871 )
9872
9873   # avoid dependency on libstdc++
9874   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9875     set_target_properties(tcp_client_uv_test PROPERTIES LINKER_LANGUAGE C)
9876     target_compile_options(tcp_client_uv_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9877   endif()
9878
9879 endif (gRPC_BUILD_TESTS)
9880 if (gRPC_BUILD_TESTS)
9881 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9882
9883 add_executable(tcp_posix_test
9884   test/core/iomgr/tcp_posix_test.cc
9885 )
9886
9887
9888 target_include_directories(tcp_posix_test
9889   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9890   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9891   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9892   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9893   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9894   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9895   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9896   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9897   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9898   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9899 )
9900
9901 target_link_libraries(tcp_posix_test
9902   ${_gRPC_ALLTARGETS_LIBRARIES}
9903   grpc_test_util
9904   grpc
9905   gpr
9906 )
9907
9908   # avoid dependency on libstdc++
9909   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9910     set_target_properties(tcp_posix_test PROPERTIES LINKER_LANGUAGE C)
9911     target_compile_options(tcp_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9912   endif()
9913
9914 endif()
9915 endif (gRPC_BUILD_TESTS)
9916 if (gRPC_BUILD_TESTS)
9917 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
9918
9919 add_executable(tcp_server_posix_test
9920   test/core/iomgr/tcp_server_posix_test.cc
9921 )
9922
9923
9924 target_include_directories(tcp_server_posix_test
9925   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9926   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9927   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9928   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9929   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9930   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9931   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9932   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9933   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9934   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9935 )
9936
9937 target_link_libraries(tcp_server_posix_test
9938   ${_gRPC_ALLTARGETS_LIBRARIES}
9939   grpc_test_util
9940   grpc
9941   gpr
9942 )
9943
9944   # avoid dependency on libstdc++
9945   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9946     set_target_properties(tcp_server_posix_test PROPERTIES LINKER_LANGUAGE C)
9947     target_compile_options(tcp_server_posix_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9948   endif()
9949
9950 endif()
9951 endif (gRPC_BUILD_TESTS)
9952 if (gRPC_BUILD_TESTS)
9953
9954 add_executable(tcp_server_uv_test
9955   test/core/iomgr/tcp_server_uv_test.cc
9956 )
9957
9958
9959 target_include_directories(tcp_server_uv_test
9960   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9961   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9962   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9963   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9964   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9965   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
9966   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
9967   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
9968   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
9969   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
9970 )
9971
9972 target_link_libraries(tcp_server_uv_test
9973   ${_gRPC_ALLTARGETS_LIBRARIES}
9974   grpc_test_util
9975   grpc
9976   gpr
9977 )
9978
9979   # avoid dependency on libstdc++
9980   if (_gRPC_CORE_NOSTDCXX_FLAGS)
9981     set_target_properties(tcp_server_uv_test PROPERTIES LINKER_LANGUAGE C)
9982     target_compile_options(tcp_server_uv_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
9983   endif()
9984
9985 endif (gRPC_BUILD_TESTS)
9986 if (gRPC_BUILD_TESTS)
9987
9988 add_executable(threadpool_test
9989   test/core/iomgr/threadpool_test.cc
9990 )
9991
9992
9993 target_include_directories(threadpool_test
9994   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
9995   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
9996   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
9997   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
9998   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
9999   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10000   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10001   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10002   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10003   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10004 )
10005
10006 target_link_libraries(threadpool_test
10007   ${_gRPC_ALLTARGETS_LIBRARIES}
10008   grpc_test_util
10009   grpc
10010   gpr
10011 )
10012
10013   # avoid dependency on libstdc++
10014   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10015     set_target_properties(threadpool_test PROPERTIES LINKER_LANGUAGE C)
10016     target_compile_options(threadpool_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10017   endif()
10018
10019 endif (gRPC_BUILD_TESTS)
10020 if (gRPC_BUILD_TESTS)
10021
10022 add_executable(time_averaged_stats_test
10023   test/core/iomgr/time_averaged_stats_test.cc
10024 )
10025
10026
10027 target_include_directories(time_averaged_stats_test
10028   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10029   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10030   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10031   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10032   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10033   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10034   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10035   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10036   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10037   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10038 )
10039
10040 target_link_libraries(time_averaged_stats_test
10041   ${_gRPC_ALLTARGETS_LIBRARIES}
10042   grpc_test_util
10043   grpc
10044   gpr
10045 )
10046
10047   # avoid dependency on libstdc++
10048   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10049     set_target_properties(time_averaged_stats_test PROPERTIES LINKER_LANGUAGE C)
10050     target_compile_options(time_averaged_stats_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10051   endif()
10052
10053 endif (gRPC_BUILD_TESTS)
10054 if (gRPC_BUILD_TESTS)
10055
10056 add_executable(timeout_encoding_test
10057   test/core/transport/timeout_encoding_test.cc
10058 )
10059
10060
10061 target_include_directories(timeout_encoding_test
10062   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10063   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10064   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10065   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10066   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10067   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10068   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10069   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10070   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10071   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10072 )
10073
10074 target_link_libraries(timeout_encoding_test
10075   ${_gRPC_ALLTARGETS_LIBRARIES}
10076   grpc_test_util
10077   grpc
10078   gpr
10079 )
10080
10081   # avoid dependency on libstdc++
10082   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10083     set_target_properties(timeout_encoding_test PROPERTIES LINKER_LANGUAGE C)
10084     target_compile_options(timeout_encoding_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10085   endif()
10086
10087 endif (gRPC_BUILD_TESTS)
10088 if (gRPC_BUILD_TESTS)
10089
10090 add_executable(timer_heap_test
10091   test/core/iomgr/timer_heap_test.cc
10092 )
10093
10094
10095 target_include_directories(timer_heap_test
10096   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10097   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10098   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10099   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10100   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10101   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10102   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10103   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10104   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10105   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10106 )
10107
10108 target_link_libraries(timer_heap_test
10109   ${_gRPC_ALLTARGETS_LIBRARIES}
10110   grpc_test_util
10111   grpc
10112   gpr
10113 )
10114
10115   # avoid dependency on libstdc++
10116   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10117     set_target_properties(timer_heap_test PROPERTIES LINKER_LANGUAGE C)
10118     target_compile_options(timer_heap_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10119   endif()
10120
10121 endif (gRPC_BUILD_TESTS)
10122 if (gRPC_BUILD_TESTS)
10123
10124 add_executable(timer_list_test
10125   test/core/iomgr/timer_list_test.cc
10126 )
10127
10128
10129 target_include_directories(timer_list_test
10130   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10131   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10132   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10133   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10134   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10135   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10136   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10137   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10138   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10139   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10140 )
10141
10142 target_link_libraries(timer_list_test
10143   ${_gRPC_ALLTARGETS_LIBRARIES}
10144   grpc_test_util
10145   grpc
10146   gpr
10147 )
10148
10149   # avoid dependency on libstdc++
10150   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10151     set_target_properties(timer_list_test PROPERTIES LINKER_LANGUAGE C)
10152     target_compile_options(timer_list_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10153   endif()
10154
10155 endif (gRPC_BUILD_TESTS)
10156 if (gRPC_BUILD_TESTS)
10157
10158 add_executable(transport_connectivity_state_test
10159   test/core/transport/connectivity_state_test.cc
10160 )
10161
10162
10163 target_include_directories(transport_connectivity_state_test
10164   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10165   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10166   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10167   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10168   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10169   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10170   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10171   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10172   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10173   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10174 )
10175
10176 target_link_libraries(transport_connectivity_state_test
10177   ${_gRPC_ALLTARGETS_LIBRARIES}
10178   grpc_test_util
10179   grpc
10180   gpr
10181 )
10182
10183   # avoid dependency on libstdc++
10184   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10185     set_target_properties(transport_connectivity_state_test PROPERTIES LINKER_LANGUAGE C)
10186     target_compile_options(transport_connectivity_state_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10187   endif()
10188
10189 endif (gRPC_BUILD_TESTS)
10190 if (gRPC_BUILD_TESTS)
10191
10192 add_executable(transport_metadata_test
10193   test/core/transport/metadata_test.cc
10194 )
10195
10196
10197 target_include_directories(transport_metadata_test
10198   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10199   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10200   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10201   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10202   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10203   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10204   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10205   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10206   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10207   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10208 )
10209
10210 target_link_libraries(transport_metadata_test
10211   ${_gRPC_ALLTARGETS_LIBRARIES}
10212   grpc_test_util
10213   grpc
10214   gpr
10215 )
10216
10217   # avoid dependency on libstdc++
10218   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10219     set_target_properties(transport_metadata_test PROPERTIES LINKER_LANGUAGE C)
10220     target_compile_options(transport_metadata_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10221   endif()
10222
10223 endif (gRPC_BUILD_TESTS)
10224 if (gRPC_BUILD_TESTS)
10225 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10226
10227 add_executable(transport_security_test
10228   test/core/tsi/transport_security_test.cc
10229 )
10230
10231
10232 target_include_directories(transport_security_test
10233   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10234   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10235   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10236   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10237   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10238   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10239   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10240   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10241   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10242   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10243 )
10244
10245 target_link_libraries(transport_security_test
10246   ${_gRPC_ALLTARGETS_LIBRARIES}
10247   grpc_test_util
10248   grpc
10249   gpr
10250 )
10251
10252   # avoid dependency on libstdc++
10253   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10254     set_target_properties(transport_security_test PROPERTIES LINKER_LANGUAGE C)
10255     target_compile_options(transport_security_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10256   endif()
10257
10258 endif()
10259 endif (gRPC_BUILD_TESTS)
10260 if (gRPC_BUILD_TESTS)
10261 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
10262
10263 add_executable(udp_server_test
10264   test/core/iomgr/udp_server_test.cc
10265 )
10266
10267
10268 target_include_directories(udp_server_test
10269   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10270   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10271   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10272   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10273   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10274   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10275   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10276   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10277   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10278   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10279 )
10280
10281 target_link_libraries(udp_server_test
10282   ${_gRPC_ALLTARGETS_LIBRARIES}
10283   grpc_test_util
10284   grpc
10285   gpr
10286 )
10287
10288   # avoid dependency on libstdc++
10289   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10290     set_target_properties(udp_server_test PROPERTIES LINKER_LANGUAGE C)
10291     target_compile_options(udp_server_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10292   endif()
10293
10294 endif()
10295 endif (gRPC_BUILD_TESTS)
10296 if (gRPC_BUILD_TESTS)
10297
10298 add_executable(uri_parser_test
10299   test/core/client_channel/uri_parser_test.cc
10300 )
10301
10302
10303 target_include_directories(uri_parser_test
10304   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10305   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10306   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10307   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10308   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10309   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10310   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10311   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10312   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10313   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10314 )
10315
10316 target_link_libraries(uri_parser_test
10317   ${_gRPC_ALLTARGETS_LIBRARIES}
10318   grpc_test_util
10319   grpc
10320   gpr
10321 )
10322
10323   # avoid dependency on libstdc++
10324   if (_gRPC_CORE_NOSTDCXX_FLAGS)
10325     set_target_properties(uri_parser_test PROPERTIES LINKER_LANGUAGE C)
10326     target_compile_options(uri_parser_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
10327   endif()
10328
10329 endif (gRPC_BUILD_TESTS)
10330 if (gRPC_BUILD_TESTS)
10331
10332 add_executable(alarm_test
10333   test/cpp/common/alarm_test.cc
10334   third_party/googletest/googletest/src/gtest-all.cc
10335   third_party/googletest/googlemock/src/gmock-all.cc
10336 )
10337
10338
10339 target_include_directories(alarm_test
10340   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10341   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10342   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10343   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10344   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10345   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10346   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10347   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10348   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10349   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10350   PRIVATE third_party/googletest/googletest/include
10351   PRIVATE third_party/googletest/googletest
10352   PRIVATE third_party/googletest/googlemock/include
10353   PRIVATE third_party/googletest/googlemock
10354   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10355 )
10356
10357 target_link_libraries(alarm_test
10358   ${_gRPC_PROTOBUF_LIBRARIES}
10359   ${_gRPC_ALLTARGETS_LIBRARIES}
10360   grpc++_test_util_unsecure
10361   grpc_test_util_unsecure
10362   grpc++_unsecure
10363   grpc_unsecure
10364   gpr
10365   ${_gRPC_GFLAGS_LIBRARIES}
10366 )
10367
10368
10369 endif (gRPC_BUILD_TESTS)
10370 if (gRPC_BUILD_TESTS)
10371
10372 add_executable(alts_counter_test
10373   test/core/tsi/alts/frame_protector/alts_counter_test.cc
10374   third_party/googletest/googletest/src/gtest-all.cc
10375   third_party/googletest/googlemock/src/gmock-all.cc
10376 )
10377
10378
10379 target_include_directories(alts_counter_test
10380   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10381   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10382   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10383   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10384   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10385   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10386   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10387   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10388   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10389   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10390   PRIVATE third_party/googletest/googletest/include
10391   PRIVATE third_party/googletest/googletest
10392   PRIVATE third_party/googletest/googlemock/include
10393   PRIVATE third_party/googletest/googlemock
10394   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10395 )
10396
10397 target_link_libraries(alts_counter_test
10398   ${_gRPC_PROTOBUF_LIBRARIES}
10399   ${_gRPC_ALLTARGETS_LIBRARIES}
10400   alts_test_util
10401   gpr
10402   grpc
10403   ${_gRPC_GFLAGS_LIBRARIES}
10404 )
10405
10406
10407 endif (gRPC_BUILD_TESTS)
10408 if (gRPC_BUILD_TESTS)
10409
10410 add_executable(alts_crypt_test
10411   test/core/tsi/alts/crypt/aes_gcm_test.cc
10412   third_party/googletest/googletest/src/gtest-all.cc
10413   third_party/googletest/googlemock/src/gmock-all.cc
10414 )
10415
10416
10417 target_include_directories(alts_crypt_test
10418   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10419   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10420   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10421   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10422   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10423   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10424   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10425   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10426   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10427   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10428   PRIVATE third_party/googletest/googletest/include
10429   PRIVATE third_party/googletest/googletest
10430   PRIVATE third_party/googletest/googlemock/include
10431   PRIVATE third_party/googletest/googlemock
10432   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10433 )
10434
10435 target_link_libraries(alts_crypt_test
10436   ${_gRPC_PROTOBUF_LIBRARIES}
10437   ${_gRPC_ALLTARGETS_LIBRARIES}
10438   alts_test_util
10439   gpr
10440   grpc_test_util
10441   grpc
10442   ${_gRPC_GFLAGS_LIBRARIES}
10443 )
10444
10445
10446 endif (gRPC_BUILD_TESTS)
10447 if (gRPC_BUILD_TESTS)
10448
10449 add_executable(alts_crypter_test
10450   test/core/tsi/alts/frame_protector/alts_crypter_test.cc
10451   third_party/googletest/googletest/src/gtest-all.cc
10452   third_party/googletest/googlemock/src/gmock-all.cc
10453 )
10454
10455
10456 target_include_directories(alts_crypter_test
10457   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10458   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10459   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10460   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10461   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10462   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10463   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10464   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10465   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10466   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10467   PRIVATE third_party/googletest/googletest/include
10468   PRIVATE third_party/googletest/googletest
10469   PRIVATE third_party/googletest/googlemock/include
10470   PRIVATE third_party/googletest/googlemock
10471   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10472 )
10473
10474 target_link_libraries(alts_crypter_test
10475   ${_gRPC_PROTOBUF_LIBRARIES}
10476   ${_gRPC_ALLTARGETS_LIBRARIES}
10477   alts_test_util
10478   gpr
10479   grpc
10480   ${_gRPC_GFLAGS_LIBRARIES}
10481 )
10482
10483
10484 endif (gRPC_BUILD_TESTS)
10485 if (gRPC_BUILD_TESTS)
10486
10487 add_executable(alts_frame_handler_test
10488   test/core/tsi/alts/frame_protector/frame_handler_test.cc
10489   third_party/googletest/googletest/src/gtest-all.cc
10490   third_party/googletest/googlemock/src/gmock-all.cc
10491 )
10492
10493
10494 target_include_directories(alts_frame_handler_test
10495   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10496   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10497   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10498   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10499   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10500   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10501   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10502   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10503   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10504   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10505   PRIVATE third_party/googletest/googletest/include
10506   PRIVATE third_party/googletest/googletest
10507   PRIVATE third_party/googletest/googlemock/include
10508   PRIVATE third_party/googletest/googlemock
10509   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10510 )
10511
10512 target_link_libraries(alts_frame_handler_test
10513   ${_gRPC_PROTOBUF_LIBRARIES}
10514   ${_gRPC_ALLTARGETS_LIBRARIES}
10515   alts_test_util
10516   gpr
10517   grpc
10518   ${_gRPC_GFLAGS_LIBRARIES}
10519 )
10520
10521
10522 endif (gRPC_BUILD_TESTS)
10523 if (gRPC_BUILD_TESTS)
10524
10525 add_executable(alts_frame_protector_test
10526   test/core/tsi/alts/frame_protector/alts_frame_protector_test.cc
10527   test/core/tsi/transport_security_test_lib.cc
10528   third_party/googletest/googletest/src/gtest-all.cc
10529   third_party/googletest/googlemock/src/gmock-all.cc
10530 )
10531
10532
10533 target_include_directories(alts_frame_protector_test
10534   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10535   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10536   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10537   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10538   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10539   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10540   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10541   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10542   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10543   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10544   PRIVATE third_party/googletest/googletest/include
10545   PRIVATE third_party/googletest/googletest
10546   PRIVATE third_party/googletest/googlemock/include
10547   PRIVATE third_party/googletest/googlemock
10548   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10549 )
10550
10551 target_link_libraries(alts_frame_protector_test
10552   ${_gRPC_PROTOBUF_LIBRARIES}
10553   ${_gRPC_ALLTARGETS_LIBRARIES}
10554   alts_test_util
10555   gpr
10556   grpc
10557   ${_gRPC_GFLAGS_LIBRARIES}
10558 )
10559
10560
10561 endif (gRPC_BUILD_TESTS)
10562 if (gRPC_BUILD_TESTS)
10563
10564 add_executable(alts_grpc_record_protocol_test
10565   test/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_test.cc
10566   third_party/googletest/googletest/src/gtest-all.cc
10567   third_party/googletest/googlemock/src/gmock-all.cc
10568 )
10569
10570
10571 target_include_directories(alts_grpc_record_protocol_test
10572   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10573   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10574   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10575   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10576   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10577   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10578   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10579   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10580   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10581   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10582   PRIVATE third_party/googletest/googletest/include
10583   PRIVATE third_party/googletest/googletest
10584   PRIVATE third_party/googletest/googlemock/include
10585   PRIVATE third_party/googletest/googlemock
10586   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10587 )
10588
10589 target_link_libraries(alts_grpc_record_protocol_test
10590   ${_gRPC_PROTOBUF_LIBRARIES}
10591   ${_gRPC_ALLTARGETS_LIBRARIES}
10592   alts_test_util
10593   gpr
10594   grpc
10595   ${_gRPC_GFLAGS_LIBRARIES}
10596 )
10597
10598
10599 endif (gRPC_BUILD_TESTS)
10600 if (gRPC_BUILD_TESTS)
10601
10602 add_executable(alts_handshaker_client_test
10603   test/core/tsi/alts/handshaker/alts_handshaker_client_test.cc
10604   third_party/googletest/googletest/src/gtest-all.cc
10605   third_party/googletest/googlemock/src/gmock-all.cc
10606 )
10607
10608
10609 target_include_directories(alts_handshaker_client_test
10610   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10611   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10612   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10613   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10614   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10615   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10616   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10617   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10618   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10619   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10620   PRIVATE third_party/googletest/googletest/include
10621   PRIVATE third_party/googletest/googletest
10622   PRIVATE third_party/googletest/googlemock/include
10623   PRIVATE third_party/googletest/googlemock
10624   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10625 )
10626
10627 target_link_libraries(alts_handshaker_client_test
10628   ${_gRPC_PROTOBUF_LIBRARIES}
10629   ${_gRPC_ALLTARGETS_LIBRARIES}
10630   alts_test_util
10631   gpr
10632   grpc
10633   ${_gRPC_GFLAGS_LIBRARIES}
10634 )
10635
10636
10637 endif (gRPC_BUILD_TESTS)
10638 if (gRPC_BUILD_TESTS)
10639
10640 add_executable(alts_handshaker_service_api_test
10641   test/core/tsi/alts/handshaker/alts_handshaker_service_api_test.cc
10642   third_party/googletest/googletest/src/gtest-all.cc
10643   third_party/googletest/googlemock/src/gmock-all.cc
10644 )
10645
10646
10647 target_include_directories(alts_handshaker_service_api_test
10648   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10649   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10650   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10651   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10652   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10653   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10654   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10655   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10656   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10657   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10658   PRIVATE third_party/googletest/googletest/include
10659   PRIVATE third_party/googletest/googletest
10660   PRIVATE third_party/googletest/googlemock/include
10661   PRIVATE third_party/googletest/googlemock
10662   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10663 )
10664
10665 target_link_libraries(alts_handshaker_service_api_test
10666   ${_gRPC_PROTOBUF_LIBRARIES}
10667   ${_gRPC_ALLTARGETS_LIBRARIES}
10668   alts_test_util
10669   gpr
10670   grpc
10671   ${_gRPC_GFLAGS_LIBRARIES}
10672 )
10673
10674
10675 endif (gRPC_BUILD_TESTS)
10676 if (gRPC_BUILD_TESTS)
10677
10678 add_executable(alts_iovec_record_protocol_test
10679   test/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol_test.cc
10680   third_party/googletest/googletest/src/gtest-all.cc
10681   third_party/googletest/googlemock/src/gmock-all.cc
10682 )
10683
10684
10685 target_include_directories(alts_iovec_record_protocol_test
10686   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10687   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10688   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10689   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10690   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10691   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10692   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10693   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10694   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10695   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10696   PRIVATE third_party/googletest/googletest/include
10697   PRIVATE third_party/googletest/googletest
10698   PRIVATE third_party/googletest/googlemock/include
10699   PRIVATE third_party/googletest/googlemock
10700   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10701 )
10702
10703 target_link_libraries(alts_iovec_record_protocol_test
10704   ${_gRPC_PROTOBUF_LIBRARIES}
10705   ${_gRPC_ALLTARGETS_LIBRARIES}
10706   alts_test_util
10707   gpr
10708   grpc
10709   ${_gRPC_GFLAGS_LIBRARIES}
10710 )
10711
10712
10713 endif (gRPC_BUILD_TESTS)
10714 if (gRPC_BUILD_TESTS)
10715
10716 add_executable(alts_security_connector_test
10717   test/core/security/alts_security_connector_test.cc
10718   third_party/googletest/googletest/src/gtest-all.cc
10719   third_party/googletest/googlemock/src/gmock-all.cc
10720 )
10721
10722
10723 target_include_directories(alts_security_connector_test
10724   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10725   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10726   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10727   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10728   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10729   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10730   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10731   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10732   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10733   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10734   PRIVATE third_party/googletest/googletest/include
10735   PRIVATE third_party/googletest/googletest
10736   PRIVATE third_party/googletest/googlemock/include
10737   PRIVATE third_party/googletest/googlemock
10738   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10739 )
10740
10741 target_link_libraries(alts_security_connector_test
10742   ${_gRPC_PROTOBUF_LIBRARIES}
10743   ${_gRPC_ALLTARGETS_LIBRARIES}
10744   gpr
10745   grpc
10746   ${_gRPC_GFLAGS_LIBRARIES}
10747 )
10748
10749
10750 endif (gRPC_BUILD_TESTS)
10751 if (gRPC_BUILD_TESTS)
10752
10753 add_executable(alts_tsi_handshaker_test
10754   test/core/tsi/alts/handshaker/alts_tsi_handshaker_test.cc
10755   third_party/googletest/googletest/src/gtest-all.cc
10756   third_party/googletest/googlemock/src/gmock-all.cc
10757 )
10758
10759
10760 target_include_directories(alts_tsi_handshaker_test
10761   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10762   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10763   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10764   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10765   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10766   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10767   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10768   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10769   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10770   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10771   PRIVATE third_party/googletest/googletest/include
10772   PRIVATE third_party/googletest/googletest
10773   PRIVATE third_party/googletest/googlemock/include
10774   PRIVATE third_party/googletest/googlemock
10775   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10776 )
10777
10778 target_link_libraries(alts_tsi_handshaker_test
10779   ${_gRPC_PROTOBUF_LIBRARIES}
10780   ${_gRPC_ALLTARGETS_LIBRARIES}
10781   alts_test_util
10782   gpr
10783   grpc
10784   ${_gRPC_GFLAGS_LIBRARIES}
10785 )
10786
10787
10788 endif (gRPC_BUILD_TESTS)
10789 if (gRPC_BUILD_TESTS)
10790
10791 add_executable(alts_tsi_utils_test
10792   test/core/tsi/alts/handshaker/alts_tsi_utils_test.cc
10793   third_party/googletest/googletest/src/gtest-all.cc
10794   third_party/googletest/googlemock/src/gmock-all.cc
10795 )
10796
10797
10798 target_include_directories(alts_tsi_utils_test
10799   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10800   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10801   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10802   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10803   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10804   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10805   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10806   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10807   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10808   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10809   PRIVATE third_party/googletest/googletest/include
10810   PRIVATE third_party/googletest/googletest
10811   PRIVATE third_party/googletest/googlemock/include
10812   PRIVATE third_party/googletest/googlemock
10813   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10814 )
10815
10816 target_link_libraries(alts_tsi_utils_test
10817   ${_gRPC_PROTOBUF_LIBRARIES}
10818   ${_gRPC_ALLTARGETS_LIBRARIES}
10819   alts_test_util
10820   gpr
10821   grpc
10822   ${_gRPC_GFLAGS_LIBRARIES}
10823 )
10824
10825
10826 endif (gRPC_BUILD_TESTS)
10827 if (gRPC_BUILD_TESTS)
10828
10829 add_executable(alts_zero_copy_grpc_protector_test
10830   test/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector_test.cc
10831   third_party/googletest/googletest/src/gtest-all.cc
10832   third_party/googletest/googlemock/src/gmock-all.cc
10833 )
10834
10835
10836 target_include_directories(alts_zero_copy_grpc_protector_test
10837   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10838   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10839   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10840   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10841   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10842   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10843   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10844   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10845   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10846   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10847   PRIVATE third_party/googletest/googletest/include
10848   PRIVATE third_party/googletest/googletest
10849   PRIVATE third_party/googletest/googlemock/include
10850   PRIVATE third_party/googletest/googlemock
10851   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10852 )
10853
10854 target_link_libraries(alts_zero_copy_grpc_protector_test
10855   ${_gRPC_PROTOBUF_LIBRARIES}
10856   ${_gRPC_ALLTARGETS_LIBRARIES}
10857   alts_test_util
10858   gpr
10859   grpc
10860   ${_gRPC_GFLAGS_LIBRARIES}
10861 )
10862
10863
10864 endif (gRPC_BUILD_TESTS)
10865 if (gRPC_BUILD_TESTS)
10866
10867 add_executable(async_end2end_test
10868   test/cpp/end2end/async_end2end_test.cc
10869   third_party/googletest/googletest/src/gtest-all.cc
10870   third_party/googletest/googlemock/src/gmock-all.cc
10871 )
10872
10873
10874 target_include_directories(async_end2end_test
10875   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10876   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10877   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10878   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10879   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10880   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10881   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10882   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10883   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10884   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10885   PRIVATE third_party/googletest/googletest/include
10886   PRIVATE third_party/googletest/googletest
10887   PRIVATE third_party/googletest/googlemock/include
10888   PRIVATE third_party/googletest/googlemock
10889   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10890 )
10891
10892 target_link_libraries(async_end2end_test
10893   ${_gRPC_PROTOBUF_LIBRARIES}
10894   ${_gRPC_ALLTARGETS_LIBRARIES}
10895   grpc++_test_util
10896   grpc_test_util
10897   grpc++
10898   grpc
10899   gpr
10900   ${_gRPC_GFLAGS_LIBRARIES}
10901 )
10902
10903
10904 endif (gRPC_BUILD_TESTS)
10905 if (gRPC_BUILD_TESTS)
10906
10907 add_executable(auth_property_iterator_test
10908   test/cpp/common/auth_property_iterator_test.cc
10909   third_party/googletest/googletest/src/gtest-all.cc
10910   third_party/googletest/googlemock/src/gmock-all.cc
10911 )
10912
10913
10914 target_include_directories(auth_property_iterator_test
10915   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10916   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10917   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10918   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10919   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10920   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10921   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10922   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10923   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10924   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10925   PRIVATE third_party/googletest/googletest/include
10926   PRIVATE third_party/googletest/googletest
10927   PRIVATE third_party/googletest/googlemock/include
10928   PRIVATE third_party/googletest/googlemock
10929   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10930 )
10931
10932 target_link_libraries(auth_property_iterator_test
10933   ${_gRPC_PROTOBUF_LIBRARIES}
10934   ${_gRPC_ALLTARGETS_LIBRARIES}
10935   grpc++_test_util
10936   grpc_test_util
10937   grpc++
10938   grpc
10939   gpr
10940   ${_gRPC_GFLAGS_LIBRARIES}
10941 )
10942
10943
10944 endif (gRPC_BUILD_TESTS)
10945 if (gRPC_BUILD_TESTS)
10946
10947 add_executable(backoff_test
10948   test/core/backoff/backoff_test.cc
10949   third_party/googletest/googletest/src/gtest-all.cc
10950   third_party/googletest/googlemock/src/gmock-all.cc
10951 )
10952
10953
10954 target_include_directories(backoff_test
10955   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10956   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10957   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10958   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10959   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10960   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10961   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
10962   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
10963   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
10964   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
10965   PRIVATE third_party/googletest/googletest/include
10966   PRIVATE third_party/googletest/googletest
10967   PRIVATE third_party/googletest/googlemock/include
10968   PRIVATE third_party/googletest/googlemock
10969   PRIVATE ${_gRPC_PROTO_GENS_DIR}
10970 )
10971
10972 target_link_libraries(backoff_test
10973   ${_gRPC_PROTOBUF_LIBRARIES}
10974   ${_gRPC_ALLTARGETS_LIBRARIES}
10975   grpc_test_util
10976   grpc
10977   gpr
10978   ${_gRPC_GFLAGS_LIBRARIES}
10979 )
10980
10981
10982 endif (gRPC_BUILD_TESTS)
10983 if (gRPC_BUILD_TESTS)
10984
10985 add_executable(bdp_estimator_test
10986   test/core/transport/bdp_estimator_test.cc
10987   third_party/googletest/googletest/src/gtest-all.cc
10988   third_party/googletest/googlemock/src/gmock-all.cc
10989 )
10990
10991
10992 target_include_directories(bdp_estimator_test
10993   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
10994   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
10995   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
10996   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
10997   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
10998   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
10999   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11000   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11001   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11002   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11003   PRIVATE third_party/googletest/googletest/include
11004   PRIVATE third_party/googletest/googletest
11005   PRIVATE third_party/googletest/googlemock/include
11006   PRIVATE third_party/googletest/googlemock
11007   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11008 )
11009
11010 target_link_libraries(bdp_estimator_test
11011   ${_gRPC_PROTOBUF_LIBRARIES}
11012   ${_gRPC_ALLTARGETS_LIBRARIES}
11013   grpc++_test_util
11014   grpc++
11015   grpc_test_util
11016   grpc
11017   gpr
11018   ${_gRPC_GFLAGS_LIBRARIES}
11019 )
11020
11021
11022 endif (gRPC_BUILD_TESTS)
11023 if (gRPC_BUILD_TESTS)
11024 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11025
11026 add_executable(bm_alarm
11027   test/cpp/microbenchmarks/bm_alarm.cc
11028   third_party/googletest/googletest/src/gtest-all.cc
11029   third_party/googletest/googlemock/src/gmock-all.cc
11030 )
11031
11032
11033 target_include_directories(bm_alarm
11034   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11035   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11036   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11037   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11038   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11039   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11040   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11041   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11042   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11043   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11044   PRIVATE third_party/googletest/googletest/include
11045   PRIVATE third_party/googletest/googletest
11046   PRIVATE third_party/googletest/googlemock/include
11047   PRIVATE third_party/googletest/googlemock
11048   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11049 )
11050
11051 target_link_libraries(bm_alarm
11052   ${_gRPC_PROTOBUF_LIBRARIES}
11053   ${_gRPC_ALLTARGETS_LIBRARIES}
11054   grpc_benchmark
11055   ${_gRPC_BENCHMARK_LIBRARIES}
11056   grpc++_test_util_unsecure
11057   grpc_test_util_unsecure
11058   grpc++_unsecure
11059   grpc_unsecure
11060   gpr
11061   grpc++_test_config
11062   ${_gRPC_GFLAGS_LIBRARIES}
11063 )
11064
11065
11066 endif()
11067 endif (gRPC_BUILD_TESTS)
11068 if (gRPC_BUILD_TESTS)
11069 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11070
11071 add_executable(bm_arena
11072   test/cpp/microbenchmarks/bm_arena.cc
11073   third_party/googletest/googletest/src/gtest-all.cc
11074   third_party/googletest/googlemock/src/gmock-all.cc
11075 )
11076
11077
11078 target_include_directories(bm_arena
11079   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11080   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11081   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11082   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11083   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11084   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11085   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11086   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11087   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11088   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11089   PRIVATE third_party/googletest/googletest/include
11090   PRIVATE third_party/googletest/googletest
11091   PRIVATE third_party/googletest/googlemock/include
11092   PRIVATE third_party/googletest/googlemock
11093   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11094 )
11095
11096 target_link_libraries(bm_arena
11097   ${_gRPC_PROTOBUF_LIBRARIES}
11098   ${_gRPC_ALLTARGETS_LIBRARIES}
11099   grpc_benchmark
11100   ${_gRPC_BENCHMARK_LIBRARIES}
11101   grpc++_test_util_unsecure
11102   grpc_test_util_unsecure
11103   grpc++_unsecure
11104   grpc_unsecure
11105   gpr
11106   grpc++_test_config
11107   ${_gRPC_GFLAGS_LIBRARIES}
11108 )
11109
11110
11111 endif()
11112 endif (gRPC_BUILD_TESTS)
11113 if (gRPC_BUILD_TESTS)
11114 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11115
11116 add_executable(bm_byte_buffer
11117   test/cpp/microbenchmarks/bm_byte_buffer.cc
11118   third_party/googletest/googletest/src/gtest-all.cc
11119   third_party/googletest/googlemock/src/gmock-all.cc
11120 )
11121
11122
11123 target_include_directories(bm_byte_buffer
11124   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11125   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11126   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11127   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11128   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11129   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11130   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11131   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11132   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11133   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11134   PRIVATE third_party/googletest/googletest/include
11135   PRIVATE third_party/googletest/googletest
11136   PRIVATE third_party/googletest/googlemock/include
11137   PRIVATE third_party/googletest/googlemock
11138   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11139 )
11140
11141 target_link_libraries(bm_byte_buffer
11142   ${_gRPC_PROTOBUF_LIBRARIES}
11143   ${_gRPC_ALLTARGETS_LIBRARIES}
11144   grpc_benchmark
11145   ${_gRPC_BENCHMARK_LIBRARIES}
11146   grpc++_test_util_unsecure
11147   grpc_test_util_unsecure
11148   grpc++_unsecure
11149   grpc_unsecure
11150   gpr
11151   grpc++_test_config
11152   ${_gRPC_GFLAGS_LIBRARIES}
11153 )
11154
11155
11156 endif()
11157 endif (gRPC_BUILD_TESTS)
11158 if (gRPC_BUILD_TESTS)
11159 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11160
11161 add_executable(bm_call_create
11162   test/cpp/microbenchmarks/bm_call_create.cc
11163   third_party/googletest/googletest/src/gtest-all.cc
11164   third_party/googletest/googlemock/src/gmock-all.cc
11165 )
11166
11167
11168 target_include_directories(bm_call_create
11169   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11170   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11171   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11172   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11173   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11174   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11175   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11176   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11177   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11178   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11179   PRIVATE third_party/googletest/googletest/include
11180   PRIVATE third_party/googletest/googletest
11181   PRIVATE third_party/googletest/googlemock/include
11182   PRIVATE third_party/googletest/googlemock
11183   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11184 )
11185
11186 target_link_libraries(bm_call_create
11187   ${_gRPC_PROTOBUF_LIBRARIES}
11188   ${_gRPC_ALLTARGETS_LIBRARIES}
11189   grpc_benchmark
11190   ${_gRPC_BENCHMARK_LIBRARIES}
11191   grpc++_test_util_unsecure
11192   grpc_test_util_unsecure
11193   grpc++_unsecure
11194   grpc_unsecure
11195   gpr
11196   grpc++_test_config
11197   ${_gRPC_GFLAGS_LIBRARIES}
11198 )
11199
11200
11201 endif()
11202 endif (gRPC_BUILD_TESTS)
11203 if (gRPC_BUILD_TESTS)
11204 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11205
11206 add_executable(bm_callback_streaming_ping_pong
11207   test/cpp/microbenchmarks/bm_callback_streaming_ping_pong.cc
11208   third_party/googletest/googletest/src/gtest-all.cc
11209   third_party/googletest/googlemock/src/gmock-all.cc
11210 )
11211
11212
11213 target_include_directories(bm_callback_streaming_ping_pong
11214   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11215   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11216   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11217   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11218   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11219   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11220   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11221   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11222   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11223   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11224   PRIVATE third_party/googletest/googletest/include
11225   PRIVATE third_party/googletest/googletest
11226   PRIVATE third_party/googletest/googlemock/include
11227   PRIVATE third_party/googletest/googlemock
11228   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11229 )
11230
11231 target_link_libraries(bm_callback_streaming_ping_pong
11232   ${_gRPC_PROTOBUF_LIBRARIES}
11233   ${_gRPC_ALLTARGETS_LIBRARIES}
11234   grpc_benchmark
11235   ${_gRPC_BENCHMARK_LIBRARIES}
11236   grpc++_test_util_unsecure
11237   grpc_test_util_unsecure
11238   grpc++_unsecure
11239   grpc_unsecure
11240   gpr
11241   grpc++_test_config
11242   bm_callback_test_service_impl
11243   ${_gRPC_GFLAGS_LIBRARIES}
11244 )
11245
11246
11247 endif()
11248 endif (gRPC_BUILD_TESTS)
11249 if (gRPC_BUILD_TESTS)
11250 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11251
11252 add_executable(bm_callback_unary_ping_pong
11253   test/cpp/microbenchmarks/bm_callback_unary_ping_pong.cc
11254   third_party/googletest/googletest/src/gtest-all.cc
11255   third_party/googletest/googlemock/src/gmock-all.cc
11256 )
11257
11258
11259 target_include_directories(bm_callback_unary_ping_pong
11260   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11261   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11262   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11263   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11264   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11265   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11266   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11267   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11268   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11269   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11270   PRIVATE third_party/googletest/googletest/include
11271   PRIVATE third_party/googletest/googletest
11272   PRIVATE third_party/googletest/googlemock/include
11273   PRIVATE third_party/googletest/googlemock
11274   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11275 )
11276
11277 target_link_libraries(bm_callback_unary_ping_pong
11278   ${_gRPC_PROTOBUF_LIBRARIES}
11279   ${_gRPC_ALLTARGETS_LIBRARIES}
11280   grpc_benchmark
11281   ${_gRPC_BENCHMARK_LIBRARIES}
11282   grpc++_test_util_unsecure
11283   grpc_test_util_unsecure
11284   grpc++_unsecure
11285   grpc_unsecure
11286   gpr
11287   grpc++_test_config
11288   bm_callback_test_service_impl
11289   ${_gRPC_GFLAGS_LIBRARIES}
11290 )
11291
11292
11293 endif()
11294 endif (gRPC_BUILD_TESTS)
11295 if (gRPC_BUILD_TESTS)
11296 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11297
11298 add_executable(bm_channel
11299   test/cpp/microbenchmarks/bm_channel.cc
11300   third_party/googletest/googletest/src/gtest-all.cc
11301   third_party/googletest/googlemock/src/gmock-all.cc
11302 )
11303
11304
11305 target_include_directories(bm_channel
11306   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11307   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11308   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11309   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11310   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11311   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11312   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11313   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11314   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11315   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11316   PRIVATE third_party/googletest/googletest/include
11317   PRIVATE third_party/googletest/googletest
11318   PRIVATE third_party/googletest/googlemock/include
11319   PRIVATE third_party/googletest/googlemock
11320   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11321 )
11322
11323 target_link_libraries(bm_channel
11324   ${_gRPC_PROTOBUF_LIBRARIES}
11325   ${_gRPC_ALLTARGETS_LIBRARIES}
11326   grpc_benchmark
11327   ${_gRPC_BENCHMARK_LIBRARIES}
11328   grpc++_test_util_unsecure
11329   grpc_test_util_unsecure
11330   grpc++_unsecure
11331   grpc_unsecure
11332   gpr
11333   grpc++_test_config
11334   ${_gRPC_GFLAGS_LIBRARIES}
11335 )
11336
11337
11338 endif()
11339 endif (gRPC_BUILD_TESTS)
11340 if (gRPC_BUILD_TESTS)
11341 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11342
11343 add_executable(bm_chttp2_hpack
11344   test/cpp/microbenchmarks/bm_chttp2_hpack.cc
11345   third_party/googletest/googletest/src/gtest-all.cc
11346   third_party/googletest/googlemock/src/gmock-all.cc
11347 )
11348
11349
11350 target_include_directories(bm_chttp2_hpack
11351   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11352   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11353   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11354   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11355   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11356   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11357   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11358   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11359   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11360   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11361   PRIVATE third_party/googletest/googletest/include
11362   PRIVATE third_party/googletest/googletest
11363   PRIVATE third_party/googletest/googlemock/include
11364   PRIVATE third_party/googletest/googlemock
11365   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11366 )
11367
11368 target_link_libraries(bm_chttp2_hpack
11369   ${_gRPC_PROTOBUF_LIBRARIES}
11370   ${_gRPC_ALLTARGETS_LIBRARIES}
11371   grpc_benchmark
11372   ${_gRPC_BENCHMARK_LIBRARIES}
11373   grpc++_test_util_unsecure
11374   grpc_test_util_unsecure
11375   grpc++_unsecure
11376   grpc_unsecure
11377   gpr
11378   grpc++_test_config
11379   ${_gRPC_GFLAGS_LIBRARIES}
11380 )
11381
11382
11383 endif()
11384 endif (gRPC_BUILD_TESTS)
11385 if (gRPC_BUILD_TESTS)
11386 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11387
11388 add_executable(bm_chttp2_transport
11389   test/cpp/microbenchmarks/bm_chttp2_transport.cc
11390   third_party/googletest/googletest/src/gtest-all.cc
11391   third_party/googletest/googlemock/src/gmock-all.cc
11392 )
11393
11394
11395 target_include_directories(bm_chttp2_transport
11396   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11397   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11398   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11399   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11400   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11401   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11402   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11403   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11404   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11405   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11406   PRIVATE third_party/googletest/googletest/include
11407   PRIVATE third_party/googletest/googletest
11408   PRIVATE third_party/googletest/googlemock/include
11409   PRIVATE third_party/googletest/googlemock
11410   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11411 )
11412
11413 target_link_libraries(bm_chttp2_transport
11414   ${_gRPC_PROTOBUF_LIBRARIES}
11415   ${_gRPC_ALLTARGETS_LIBRARIES}
11416   grpc_benchmark
11417   ${_gRPC_BENCHMARK_LIBRARIES}
11418   grpc++_test_util_unsecure
11419   grpc_test_util_unsecure
11420   grpc++_unsecure
11421   grpc_unsecure
11422   gpr
11423   grpc++_test_config
11424   ${_gRPC_GFLAGS_LIBRARIES}
11425 )
11426
11427
11428 endif()
11429 endif (gRPC_BUILD_TESTS)
11430 if (gRPC_BUILD_TESTS)
11431 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11432
11433 add_executable(bm_closure
11434   test/cpp/microbenchmarks/bm_closure.cc
11435   third_party/googletest/googletest/src/gtest-all.cc
11436   third_party/googletest/googlemock/src/gmock-all.cc
11437 )
11438
11439
11440 target_include_directories(bm_closure
11441   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11442   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11443   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11444   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11445   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11446   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11447   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11448   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11449   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11450   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11451   PRIVATE third_party/googletest/googletest/include
11452   PRIVATE third_party/googletest/googletest
11453   PRIVATE third_party/googletest/googlemock/include
11454   PRIVATE third_party/googletest/googlemock
11455   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11456 )
11457
11458 target_link_libraries(bm_closure
11459   ${_gRPC_PROTOBUF_LIBRARIES}
11460   ${_gRPC_ALLTARGETS_LIBRARIES}
11461   grpc_benchmark
11462   ${_gRPC_BENCHMARK_LIBRARIES}
11463   grpc++_test_util_unsecure
11464   grpc_test_util_unsecure
11465   grpc++_unsecure
11466   grpc_unsecure
11467   gpr
11468   grpc++_test_config
11469   ${_gRPC_GFLAGS_LIBRARIES}
11470 )
11471
11472
11473 endif()
11474 endif (gRPC_BUILD_TESTS)
11475 if (gRPC_BUILD_TESTS)
11476 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11477
11478 add_executable(bm_cq
11479   test/cpp/microbenchmarks/bm_cq.cc
11480   third_party/googletest/googletest/src/gtest-all.cc
11481   third_party/googletest/googlemock/src/gmock-all.cc
11482 )
11483
11484
11485 target_include_directories(bm_cq
11486   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11487   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11488   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11489   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11490   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11491   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11492   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11493   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11494   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11495   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11496   PRIVATE third_party/googletest/googletest/include
11497   PRIVATE third_party/googletest/googletest
11498   PRIVATE third_party/googletest/googlemock/include
11499   PRIVATE third_party/googletest/googlemock
11500   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11501 )
11502
11503 target_link_libraries(bm_cq
11504   ${_gRPC_PROTOBUF_LIBRARIES}
11505   ${_gRPC_ALLTARGETS_LIBRARIES}
11506   grpc_benchmark
11507   ${_gRPC_BENCHMARK_LIBRARIES}
11508   grpc++_test_util_unsecure
11509   grpc_test_util_unsecure
11510   grpc++_unsecure
11511   grpc_unsecure
11512   gpr
11513   grpc++_test_config
11514   ${_gRPC_GFLAGS_LIBRARIES}
11515 )
11516
11517
11518 endif()
11519 endif (gRPC_BUILD_TESTS)
11520 if (gRPC_BUILD_TESTS)
11521 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11522
11523 add_executable(bm_cq_multiple_threads
11524   test/cpp/microbenchmarks/bm_cq_multiple_threads.cc
11525   third_party/googletest/googletest/src/gtest-all.cc
11526   third_party/googletest/googlemock/src/gmock-all.cc
11527 )
11528
11529
11530 target_include_directories(bm_cq_multiple_threads
11531   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11532   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11533   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11534   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11535   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11536   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11537   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11538   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11539   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11540   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11541   PRIVATE third_party/googletest/googletest/include
11542   PRIVATE third_party/googletest/googletest
11543   PRIVATE third_party/googletest/googlemock/include
11544   PRIVATE third_party/googletest/googlemock
11545   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11546 )
11547
11548 target_link_libraries(bm_cq_multiple_threads
11549   ${_gRPC_PROTOBUF_LIBRARIES}
11550   ${_gRPC_ALLTARGETS_LIBRARIES}
11551   grpc_benchmark
11552   ${_gRPC_BENCHMARK_LIBRARIES}
11553   grpc++_test_util_unsecure
11554   grpc_test_util_unsecure
11555   grpc++_unsecure
11556   grpc_unsecure
11557   gpr
11558   grpc++_test_config
11559   ${_gRPC_GFLAGS_LIBRARIES}
11560 )
11561
11562
11563 endif()
11564 endif (gRPC_BUILD_TESTS)
11565 if (gRPC_BUILD_TESTS)
11566 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11567
11568 add_executable(bm_error
11569   test/cpp/microbenchmarks/bm_error.cc
11570   third_party/googletest/googletest/src/gtest-all.cc
11571   third_party/googletest/googlemock/src/gmock-all.cc
11572 )
11573
11574
11575 target_include_directories(bm_error
11576   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11577   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11578   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11579   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11580   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11581   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11582   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11583   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11584   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11585   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11586   PRIVATE third_party/googletest/googletest/include
11587   PRIVATE third_party/googletest/googletest
11588   PRIVATE third_party/googletest/googlemock/include
11589   PRIVATE third_party/googletest/googlemock
11590   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11591 )
11592
11593 target_link_libraries(bm_error
11594   ${_gRPC_PROTOBUF_LIBRARIES}
11595   ${_gRPC_ALLTARGETS_LIBRARIES}
11596   grpc_benchmark
11597   ${_gRPC_BENCHMARK_LIBRARIES}
11598   grpc++_test_util_unsecure
11599   grpc_test_util_unsecure
11600   grpc++_unsecure
11601   grpc_unsecure
11602   gpr
11603   grpc++_test_config
11604   ${_gRPC_GFLAGS_LIBRARIES}
11605 )
11606
11607
11608 endif()
11609 endif (gRPC_BUILD_TESTS)
11610 if (gRPC_BUILD_TESTS)
11611 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11612
11613 add_executable(bm_fullstack_streaming_ping_pong
11614   test/cpp/microbenchmarks/bm_fullstack_streaming_ping_pong.cc
11615   third_party/googletest/googletest/src/gtest-all.cc
11616   third_party/googletest/googlemock/src/gmock-all.cc
11617 )
11618
11619
11620 target_include_directories(bm_fullstack_streaming_ping_pong
11621   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11622   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11623   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11624   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11625   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11626   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11627   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11628   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11629   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11630   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11631   PRIVATE third_party/googletest/googletest/include
11632   PRIVATE third_party/googletest/googletest
11633   PRIVATE third_party/googletest/googlemock/include
11634   PRIVATE third_party/googletest/googlemock
11635   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11636 )
11637
11638 target_link_libraries(bm_fullstack_streaming_ping_pong
11639   ${_gRPC_PROTOBUF_LIBRARIES}
11640   ${_gRPC_ALLTARGETS_LIBRARIES}
11641   grpc_benchmark
11642   ${_gRPC_BENCHMARK_LIBRARIES}
11643   grpc++_test_util_unsecure
11644   grpc_test_util_unsecure
11645   grpc++_unsecure
11646   grpc_unsecure
11647   gpr
11648   grpc++_test_config
11649   ${_gRPC_GFLAGS_LIBRARIES}
11650 )
11651
11652
11653 endif()
11654 endif (gRPC_BUILD_TESTS)
11655 if (gRPC_BUILD_TESTS)
11656 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11657
11658 add_executable(bm_fullstack_streaming_pump
11659   test/cpp/microbenchmarks/bm_fullstack_streaming_pump.cc
11660   third_party/googletest/googletest/src/gtest-all.cc
11661   third_party/googletest/googlemock/src/gmock-all.cc
11662 )
11663
11664
11665 target_include_directories(bm_fullstack_streaming_pump
11666   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11667   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11668   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11669   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11670   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11671   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11672   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11673   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11674   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11675   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11676   PRIVATE third_party/googletest/googletest/include
11677   PRIVATE third_party/googletest/googletest
11678   PRIVATE third_party/googletest/googlemock/include
11679   PRIVATE third_party/googletest/googlemock
11680   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11681 )
11682
11683 target_link_libraries(bm_fullstack_streaming_pump
11684   ${_gRPC_PROTOBUF_LIBRARIES}
11685   ${_gRPC_ALLTARGETS_LIBRARIES}
11686   grpc_benchmark
11687   ${_gRPC_BENCHMARK_LIBRARIES}
11688   grpc++_test_util_unsecure
11689   grpc_test_util_unsecure
11690   grpc++_unsecure
11691   grpc_unsecure
11692   gpr
11693   grpc++_test_config
11694   ${_gRPC_GFLAGS_LIBRARIES}
11695 )
11696
11697
11698 endif()
11699 endif (gRPC_BUILD_TESTS)
11700 if (gRPC_BUILD_TESTS)
11701 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11702
11703 add_executable(bm_fullstack_trickle
11704   test/cpp/microbenchmarks/bm_fullstack_trickle.cc
11705   third_party/googletest/googletest/src/gtest-all.cc
11706   third_party/googletest/googlemock/src/gmock-all.cc
11707 )
11708
11709
11710 target_include_directories(bm_fullstack_trickle
11711   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11712   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11713   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11714   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11715   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11716   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11717   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11718   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11719   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11720   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11721   PRIVATE third_party/googletest/googletest/include
11722   PRIVATE third_party/googletest/googletest
11723   PRIVATE third_party/googletest/googlemock/include
11724   PRIVATE third_party/googletest/googlemock
11725   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11726 )
11727
11728 target_link_libraries(bm_fullstack_trickle
11729   ${_gRPC_PROTOBUF_LIBRARIES}
11730   ${_gRPC_ALLTARGETS_LIBRARIES}
11731   grpc_benchmark
11732   ${_gRPC_BENCHMARK_LIBRARIES}
11733   grpc++_test_util_unsecure
11734   grpc_test_util_unsecure
11735   grpc++_unsecure
11736   grpc_unsecure
11737   gpr
11738   grpc++_test_config
11739   ${_gRPC_GFLAGS_LIBRARIES}
11740 )
11741
11742
11743 endif()
11744 endif (gRPC_BUILD_TESTS)
11745 if (gRPC_BUILD_TESTS)
11746 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11747
11748 add_executable(bm_fullstack_unary_ping_pong
11749   test/cpp/microbenchmarks/bm_fullstack_unary_ping_pong.cc
11750   third_party/googletest/googletest/src/gtest-all.cc
11751   third_party/googletest/googlemock/src/gmock-all.cc
11752 )
11753
11754
11755 target_include_directories(bm_fullstack_unary_ping_pong
11756   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11757   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11758   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11759   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11760   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11761   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11762   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11763   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11764   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11765   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11766   PRIVATE third_party/googletest/googletest/include
11767   PRIVATE third_party/googletest/googletest
11768   PRIVATE third_party/googletest/googlemock/include
11769   PRIVATE third_party/googletest/googlemock
11770   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11771 )
11772
11773 target_link_libraries(bm_fullstack_unary_ping_pong
11774   ${_gRPC_PROTOBUF_LIBRARIES}
11775   ${_gRPC_ALLTARGETS_LIBRARIES}
11776   grpc_benchmark
11777   ${_gRPC_BENCHMARK_LIBRARIES}
11778   grpc++_test_util_unsecure
11779   grpc_test_util_unsecure
11780   grpc++_unsecure
11781   grpc_unsecure
11782   gpr
11783   grpc++_test_config
11784   ${_gRPC_GFLAGS_LIBRARIES}
11785 )
11786
11787
11788 endif()
11789 endif (gRPC_BUILD_TESTS)
11790 if (gRPC_BUILD_TESTS)
11791 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11792
11793 add_executable(bm_metadata
11794   test/cpp/microbenchmarks/bm_metadata.cc
11795   third_party/googletest/googletest/src/gtest-all.cc
11796   third_party/googletest/googlemock/src/gmock-all.cc
11797 )
11798
11799
11800 target_include_directories(bm_metadata
11801   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11802   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11803   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11804   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11805   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11806   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11807   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11808   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11809   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11810   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11811   PRIVATE third_party/googletest/googletest/include
11812   PRIVATE third_party/googletest/googletest
11813   PRIVATE third_party/googletest/googlemock/include
11814   PRIVATE third_party/googletest/googlemock
11815   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11816 )
11817
11818 target_link_libraries(bm_metadata
11819   ${_gRPC_PROTOBUF_LIBRARIES}
11820   ${_gRPC_ALLTARGETS_LIBRARIES}
11821   grpc_benchmark
11822   ${_gRPC_BENCHMARK_LIBRARIES}
11823   grpc++_test_util_unsecure
11824   grpc_test_util_unsecure
11825   grpc++_unsecure
11826   grpc_unsecure
11827   gpr
11828   grpc++_test_config
11829   ${_gRPC_GFLAGS_LIBRARIES}
11830 )
11831
11832
11833 endif()
11834 endif (gRPC_BUILD_TESTS)
11835 if (gRPC_BUILD_TESTS)
11836 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11837
11838 add_executable(bm_pollset
11839   test/cpp/microbenchmarks/bm_pollset.cc
11840   third_party/googletest/googletest/src/gtest-all.cc
11841   third_party/googletest/googlemock/src/gmock-all.cc
11842 )
11843
11844
11845 target_include_directories(bm_pollset
11846   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11847   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11848   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11849   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11850   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11851   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11852   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11853   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11854   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11855   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11856   PRIVATE third_party/googletest/googletest/include
11857   PRIVATE third_party/googletest/googletest
11858   PRIVATE third_party/googletest/googlemock/include
11859   PRIVATE third_party/googletest/googlemock
11860   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11861 )
11862
11863 target_link_libraries(bm_pollset
11864   ${_gRPC_PROTOBUF_LIBRARIES}
11865   ${_gRPC_ALLTARGETS_LIBRARIES}
11866   grpc_benchmark
11867   ${_gRPC_BENCHMARK_LIBRARIES}
11868   grpc++_test_util_unsecure
11869   grpc_test_util_unsecure
11870   grpc++_unsecure
11871   grpc_unsecure
11872   gpr
11873   grpc++_test_config
11874   ${_gRPC_GFLAGS_LIBRARIES}
11875 )
11876
11877
11878 endif()
11879 endif (gRPC_BUILD_TESTS)
11880 if (gRPC_BUILD_TESTS)
11881 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11882
11883 add_executable(bm_threadpool
11884   test/cpp/microbenchmarks/bm_threadpool.cc
11885   third_party/googletest/googletest/src/gtest-all.cc
11886   third_party/googletest/googlemock/src/gmock-all.cc
11887 )
11888
11889
11890 target_include_directories(bm_threadpool
11891   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11892   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11893   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11894   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11895   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11896   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11897   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11898   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11899   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11900   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11901   PRIVATE third_party/googletest/googletest/include
11902   PRIVATE third_party/googletest/googletest
11903   PRIVATE third_party/googletest/googlemock/include
11904   PRIVATE third_party/googletest/googlemock
11905   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11906 )
11907
11908 target_link_libraries(bm_threadpool
11909   ${_gRPC_PROTOBUF_LIBRARIES}
11910   ${_gRPC_ALLTARGETS_LIBRARIES}
11911   grpc_benchmark
11912   ${_gRPC_BENCHMARK_LIBRARIES}
11913   grpc++_test_util_unsecure
11914   grpc_test_util_unsecure
11915   grpc++_unsecure
11916   grpc_unsecure
11917   gpr
11918   grpc++_test_config
11919   ${_gRPC_GFLAGS_LIBRARIES}
11920 )
11921
11922
11923 endif()
11924 endif (gRPC_BUILD_TESTS)
11925 if (gRPC_BUILD_TESTS)
11926 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
11927
11928 add_executable(bm_timer
11929   test/cpp/microbenchmarks/bm_timer.cc
11930   third_party/googletest/googletest/src/gtest-all.cc
11931   third_party/googletest/googlemock/src/gmock-all.cc
11932 )
11933
11934
11935 target_include_directories(bm_timer
11936   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11937   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11938   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11939   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11940   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11941   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11942   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11943   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11944   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11945   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11946   PRIVATE third_party/googletest/googletest/include
11947   PRIVATE third_party/googletest/googletest
11948   PRIVATE third_party/googletest/googlemock/include
11949   PRIVATE third_party/googletest/googlemock
11950   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11951 )
11952
11953 target_link_libraries(bm_timer
11954   ${_gRPC_PROTOBUF_LIBRARIES}
11955   ${_gRPC_ALLTARGETS_LIBRARIES}
11956   grpc_benchmark
11957   ${_gRPC_BENCHMARK_LIBRARIES}
11958   grpc++_test_util_unsecure
11959   grpc_test_util_unsecure
11960   grpc++_unsecure
11961   grpc_unsecure
11962   gpr
11963   grpc++_test_config
11964   ${_gRPC_GFLAGS_LIBRARIES}
11965 )
11966
11967
11968 endif()
11969 endif (gRPC_BUILD_TESTS)
11970 if (gRPC_BUILD_TESTS)
11971
11972 add_executable(byte_stream_test
11973   test/core/transport/byte_stream_test.cc
11974   third_party/googletest/googletest/src/gtest-all.cc
11975   third_party/googletest/googlemock/src/gmock-all.cc
11976 )
11977
11978
11979 target_include_directories(byte_stream_test
11980   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
11981   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
11982   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
11983   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
11984   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
11985   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
11986   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
11987   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
11988   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
11989   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
11990   PRIVATE third_party/googletest/googletest/include
11991   PRIVATE third_party/googletest/googletest
11992   PRIVATE third_party/googletest/googlemock/include
11993   PRIVATE third_party/googletest/googlemock
11994   PRIVATE ${_gRPC_PROTO_GENS_DIR}
11995 )
11996
11997 target_link_libraries(byte_stream_test
11998   ${_gRPC_PROTOBUF_LIBRARIES}
11999   ${_gRPC_ALLTARGETS_LIBRARIES}
12000   grpc_test_util
12001   grpc
12002   gpr
12003   ${_gRPC_GFLAGS_LIBRARIES}
12004 )
12005
12006
12007 endif (gRPC_BUILD_TESTS)
12008 if (gRPC_BUILD_TESTS)
12009
12010 add_executable(channel_arguments_test
12011   test/cpp/common/channel_arguments_test.cc
12012   third_party/googletest/googletest/src/gtest-all.cc
12013   third_party/googletest/googlemock/src/gmock-all.cc
12014 )
12015
12016
12017 target_include_directories(channel_arguments_test
12018   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12019   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12020   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12021   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12022   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12023   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12024   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12025   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12026   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12027   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12028   PRIVATE third_party/googletest/googletest/include
12029   PRIVATE third_party/googletest/googletest
12030   PRIVATE third_party/googletest/googlemock/include
12031   PRIVATE third_party/googletest/googlemock
12032   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12033 )
12034
12035 target_link_libraries(channel_arguments_test
12036   ${_gRPC_PROTOBUF_LIBRARIES}
12037   ${_gRPC_ALLTARGETS_LIBRARIES}
12038   grpc++
12039   grpc
12040   gpr
12041   ${_gRPC_GFLAGS_LIBRARIES}
12042 )
12043
12044
12045 endif (gRPC_BUILD_TESTS)
12046 if (gRPC_BUILD_TESTS)
12047
12048 add_executable(channel_filter_test
12049   test/cpp/common/channel_filter_test.cc
12050   third_party/googletest/googletest/src/gtest-all.cc
12051   third_party/googletest/googlemock/src/gmock-all.cc
12052 )
12053
12054
12055 target_include_directories(channel_filter_test
12056   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12057   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12058   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12059   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12060   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12061   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12062   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12063   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12064   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12065   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12066   PRIVATE third_party/googletest/googletest/include
12067   PRIVATE third_party/googletest/googletest
12068   PRIVATE third_party/googletest/googlemock/include
12069   PRIVATE third_party/googletest/googlemock
12070   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12071 )
12072
12073 target_link_libraries(channel_filter_test
12074   ${_gRPC_PROTOBUF_LIBRARIES}
12075   ${_gRPC_ALLTARGETS_LIBRARIES}
12076   grpc++
12077   grpc
12078   gpr
12079   ${_gRPC_GFLAGS_LIBRARIES}
12080 )
12081
12082
12083 endif (gRPC_BUILD_TESTS)
12084 if (gRPC_BUILD_TESTS)
12085
12086 add_executable(channel_trace_test
12087   test/core/channel/channel_trace_test.cc
12088   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
12089   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
12090   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
12091   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
12092   third_party/googletest/googletest/src/gtest-all.cc
12093   third_party/googletest/googlemock/src/gmock-all.cc
12094 )
12095
12096 protobuf_generate_grpc_cpp(
12097   src/proto/grpc/channelz/channelz.proto
12098 )
12099
12100 target_include_directories(channel_trace_test
12101   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12102   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12103   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12104   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12105   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12106   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12107   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12108   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12109   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12110   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12111   PRIVATE third_party/googletest/googletest/include
12112   PRIVATE third_party/googletest/googletest
12113   PRIVATE third_party/googletest/googlemock/include
12114   PRIVATE third_party/googletest/googlemock
12115   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12116 )
12117
12118 target_link_libraries(channel_trace_test
12119   ${_gRPC_PROTOBUF_LIBRARIES}
12120   ${_gRPC_ALLTARGETS_LIBRARIES}
12121   grpc_test_util
12122   grpc++_test_util
12123   grpc++
12124   grpc
12125   gpr
12126   ${_gRPC_GFLAGS_LIBRARIES}
12127 )
12128
12129
12130 endif (gRPC_BUILD_TESTS)
12131 if (gRPC_BUILD_TESTS)
12132
12133 add_executable(channelz_registry_test
12134   test/core/channel/channelz_registry_test.cc
12135   third_party/googletest/googletest/src/gtest-all.cc
12136   third_party/googletest/googlemock/src/gmock-all.cc
12137 )
12138
12139
12140 target_include_directories(channelz_registry_test
12141   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12142   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12143   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12144   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12145   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12146   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12147   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12148   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12149   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12150   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12151   PRIVATE third_party/googletest/googletest/include
12152   PRIVATE third_party/googletest/googletest
12153   PRIVATE third_party/googletest/googlemock/include
12154   PRIVATE third_party/googletest/googlemock
12155   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12156 )
12157
12158 target_link_libraries(channelz_registry_test
12159   ${_gRPC_PROTOBUF_LIBRARIES}
12160   ${_gRPC_ALLTARGETS_LIBRARIES}
12161   grpc_test_util
12162   grpc++_test_util
12163   grpc++
12164   grpc
12165   gpr
12166   ${_gRPC_GFLAGS_LIBRARIES}
12167 )
12168
12169
12170 endif (gRPC_BUILD_TESTS)
12171 if (gRPC_BUILD_TESTS)
12172
12173 add_executable(channelz_service_test
12174   test/cpp/end2end/channelz_service_test.cc
12175   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
12176   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
12177   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
12178   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
12179   third_party/googletest/googletest/src/gtest-all.cc
12180   third_party/googletest/googlemock/src/gmock-all.cc
12181 )
12182
12183 protobuf_generate_grpc_cpp(
12184   src/proto/grpc/channelz/channelz.proto
12185 )
12186
12187 target_include_directories(channelz_service_test
12188   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12189   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12190   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12191   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12192   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12193   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12194   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12195   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12196   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12197   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12198   PRIVATE third_party/googletest/googletest/include
12199   PRIVATE third_party/googletest/googletest
12200   PRIVATE third_party/googletest/googlemock/include
12201   PRIVATE third_party/googletest/googlemock
12202   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12203 )
12204
12205 target_link_libraries(channelz_service_test
12206   ${_gRPC_PROTOBUF_LIBRARIES}
12207   ${_gRPC_ALLTARGETS_LIBRARIES}
12208   grpcpp_channelz
12209   grpc++_test_util
12210   grpc_test_util
12211   grpc++
12212   grpc
12213   gpr
12214   ${_gRPC_GFLAGS_LIBRARIES}
12215 )
12216
12217
12218 endif (gRPC_BUILD_TESTS)
12219 if (gRPC_BUILD_TESTS)
12220
12221 add_executable(channelz_test
12222   test/core/channel/channelz_test.cc
12223   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.cc
12224   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.cc
12225   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.pb.h
12226   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/channelz/channelz.grpc.pb.h
12227   third_party/googletest/googletest/src/gtest-all.cc
12228   third_party/googletest/googlemock/src/gmock-all.cc
12229 )
12230
12231 protobuf_generate_grpc_cpp(
12232   src/proto/grpc/channelz/channelz.proto
12233 )
12234
12235 target_include_directories(channelz_test
12236   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12237   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12238   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12239   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12240   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12241   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12242   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12243   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12244   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12245   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12246   PRIVATE third_party/googletest/googletest/include
12247   PRIVATE third_party/googletest/googletest
12248   PRIVATE third_party/googletest/googlemock/include
12249   PRIVATE third_party/googletest/googlemock
12250   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12251 )
12252
12253 target_link_libraries(channelz_test
12254   ${_gRPC_PROTOBUF_LIBRARIES}
12255   ${_gRPC_ALLTARGETS_LIBRARIES}
12256   grpc_test_util
12257   grpc++_test_util
12258   grpc++
12259   grpc
12260   gpr
12261   ${_gRPC_GFLAGS_LIBRARIES}
12262 )
12263
12264
12265 endif (gRPC_BUILD_TESTS)
12266 if (gRPC_BUILD_TESTS)
12267
12268 add_executable(check_gcp_environment_linux_test
12269   test/core/security/check_gcp_environment_linux_test.cc
12270   third_party/googletest/googletest/src/gtest-all.cc
12271   third_party/googletest/googlemock/src/gmock-all.cc
12272 )
12273
12274
12275 target_include_directories(check_gcp_environment_linux_test
12276   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12277   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12278   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12279   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12280   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12281   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12282   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12283   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12284   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12285   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12286   PRIVATE third_party/googletest/googletest/include
12287   PRIVATE third_party/googletest/googletest
12288   PRIVATE third_party/googletest/googlemock/include
12289   PRIVATE third_party/googletest/googlemock
12290   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12291 )
12292
12293 target_link_libraries(check_gcp_environment_linux_test
12294   ${_gRPC_PROTOBUF_LIBRARIES}
12295   ${_gRPC_ALLTARGETS_LIBRARIES}
12296   grpc
12297   gpr
12298   ${_gRPC_GFLAGS_LIBRARIES}
12299 )
12300
12301
12302 endif (gRPC_BUILD_TESTS)
12303 if (gRPC_BUILD_TESTS)
12304
12305 add_executable(check_gcp_environment_windows_test
12306   test/core/security/check_gcp_environment_windows_test.cc
12307   third_party/googletest/googletest/src/gtest-all.cc
12308   third_party/googletest/googlemock/src/gmock-all.cc
12309 )
12310
12311
12312 target_include_directories(check_gcp_environment_windows_test
12313   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12314   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12315   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12316   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12317   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12318   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12319   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12320   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12321   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12322   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12323   PRIVATE third_party/googletest/googletest/include
12324   PRIVATE third_party/googletest/googletest
12325   PRIVATE third_party/googletest/googlemock/include
12326   PRIVATE third_party/googletest/googlemock
12327   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12328 )
12329
12330 target_link_libraries(check_gcp_environment_windows_test
12331   ${_gRPC_PROTOBUF_LIBRARIES}
12332   ${_gRPC_ALLTARGETS_LIBRARIES}
12333   grpc
12334   gpr
12335   ${_gRPC_GFLAGS_LIBRARIES}
12336 )
12337
12338
12339 endif (gRPC_BUILD_TESTS)
12340 if (gRPC_BUILD_TESTS)
12341
12342 add_executable(chttp2_settings_timeout_test
12343   test/core/transport/chttp2/settings_timeout_test.cc
12344   third_party/googletest/googletest/src/gtest-all.cc
12345   third_party/googletest/googlemock/src/gmock-all.cc
12346 )
12347
12348
12349 target_include_directories(chttp2_settings_timeout_test
12350   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12351   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12352   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12353   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12354   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12355   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12356   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12357   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12358   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12359   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12360   PRIVATE third_party/googletest/googletest/include
12361   PRIVATE third_party/googletest/googletest
12362   PRIVATE third_party/googletest/googlemock/include
12363   PRIVATE third_party/googletest/googlemock
12364   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12365 )
12366
12367 target_link_libraries(chttp2_settings_timeout_test
12368   ${_gRPC_PROTOBUF_LIBRARIES}
12369   ${_gRPC_ALLTARGETS_LIBRARIES}
12370   grpc_test_util
12371   grpc
12372   gpr
12373   ${_gRPC_GFLAGS_LIBRARIES}
12374 )
12375
12376
12377 endif (gRPC_BUILD_TESTS)
12378 if (gRPC_BUILD_TESTS)
12379
12380 add_executable(cli_call_test
12381   test/cpp/util/cli_call_test.cc
12382   third_party/googletest/googletest/src/gtest-all.cc
12383   third_party/googletest/googlemock/src/gmock-all.cc
12384 )
12385
12386
12387 target_include_directories(cli_call_test
12388   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12389   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12390   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12391   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12392   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12393   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12394   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12395   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12396   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12397   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12398   PRIVATE third_party/googletest/googletest/include
12399   PRIVATE third_party/googletest/googletest
12400   PRIVATE third_party/googletest/googlemock/include
12401   PRIVATE third_party/googletest/googlemock
12402   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12403 )
12404
12405 target_link_libraries(cli_call_test
12406   ${_gRPC_PROTOBUF_LIBRARIES}
12407   ${_gRPC_ALLTARGETS_LIBRARIES}
12408   grpc_cli_libs
12409   grpc++_test_util
12410   grpc_test_util
12411   grpc++
12412   grpc
12413   gpr
12414   ${_gRPC_GFLAGS_LIBRARIES}
12415 )
12416
12417
12418 endif (gRPC_BUILD_TESTS)
12419 if (gRPC_BUILD_TESTS)
12420
12421 add_executable(client_callback_end2end_test
12422   test/cpp/end2end/client_callback_end2end_test.cc
12423   test/cpp/end2end/interceptors_util.cc
12424   third_party/googletest/googletest/src/gtest-all.cc
12425   third_party/googletest/googlemock/src/gmock-all.cc
12426 )
12427
12428
12429 target_include_directories(client_callback_end2end_test
12430   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12431   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12432   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12433   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12434   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12435   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12436   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12437   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12438   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12439   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12440   PRIVATE third_party/googletest/googletest/include
12441   PRIVATE third_party/googletest/googletest
12442   PRIVATE third_party/googletest/googlemock/include
12443   PRIVATE third_party/googletest/googlemock
12444   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12445 )
12446
12447 target_link_libraries(client_callback_end2end_test
12448   ${_gRPC_PROTOBUF_LIBRARIES}
12449   ${_gRPC_ALLTARGETS_LIBRARIES}
12450   grpc++_test_util
12451   grpc_test_util
12452   grpc++
12453   grpc
12454   gpr
12455   ${_gRPC_GFLAGS_LIBRARIES}
12456 )
12457
12458
12459 endif (gRPC_BUILD_TESTS)
12460 if (gRPC_BUILD_TESTS)
12461
12462 add_executable(client_channel_stress_test
12463   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
12464   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
12465   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
12466   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
12467   test/cpp/client/client_channel_stress_test.cc
12468   third_party/googletest/googletest/src/gtest-all.cc
12469   third_party/googletest/googlemock/src/gmock-all.cc
12470 )
12471
12472 protobuf_generate_grpc_cpp(
12473   src/proto/grpc/lb/v1/load_balancer.proto
12474 )
12475
12476 target_include_directories(client_channel_stress_test
12477   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12478   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12479   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12480   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12481   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12482   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12483   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12484   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12485   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12486   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12487   PRIVATE third_party/googletest/googletest/include
12488   PRIVATE third_party/googletest/googletest
12489   PRIVATE third_party/googletest/googlemock/include
12490   PRIVATE third_party/googletest/googlemock
12491   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12492 )
12493
12494 target_link_libraries(client_channel_stress_test
12495   ${_gRPC_PROTOBUF_LIBRARIES}
12496   ${_gRPC_ALLTARGETS_LIBRARIES}
12497   grpc++_test_util
12498   grpc_test_util
12499   grpc++
12500   grpc
12501   gpr
12502   ${_gRPC_GFLAGS_LIBRARIES}
12503 )
12504
12505
12506 endif (gRPC_BUILD_TESTS)
12507 if (gRPC_BUILD_TESTS)
12508 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
12509
12510 add_executable(client_crash_test
12511   test/cpp/end2end/client_crash_test.cc
12512   third_party/googletest/googletest/src/gtest-all.cc
12513   third_party/googletest/googlemock/src/gmock-all.cc
12514 )
12515
12516
12517 target_include_directories(client_crash_test
12518   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12519   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12520   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12521   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12522   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12523   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12524   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12525   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12526   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12527   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12528   PRIVATE third_party/googletest/googletest/include
12529   PRIVATE third_party/googletest/googletest
12530   PRIVATE third_party/googletest/googlemock/include
12531   PRIVATE third_party/googletest/googlemock
12532   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12533 )
12534
12535 target_link_libraries(client_crash_test
12536   ${_gRPC_PROTOBUF_LIBRARIES}
12537   ${_gRPC_ALLTARGETS_LIBRARIES}
12538   grpc++_test_util
12539   grpc_test_util
12540   grpc++
12541   grpc
12542   gpr
12543   ${_gRPC_GFLAGS_LIBRARIES}
12544 )
12545
12546
12547 endif()
12548 endif (gRPC_BUILD_TESTS)
12549 if (gRPC_BUILD_TESTS)
12550
12551 add_executable(client_crash_test_server
12552   test/cpp/end2end/client_crash_test_server.cc
12553   third_party/googletest/googletest/src/gtest-all.cc
12554   third_party/googletest/googlemock/src/gmock-all.cc
12555 )
12556
12557
12558 target_include_directories(client_crash_test_server
12559   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12560   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12561   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12562   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12563   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12564   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12565   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12566   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12567   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12568   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12569   PRIVATE third_party/googletest/googletest/include
12570   PRIVATE third_party/googletest/googletest
12571   PRIVATE third_party/googletest/googlemock/include
12572   PRIVATE third_party/googletest/googlemock
12573   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12574 )
12575
12576 target_link_libraries(client_crash_test_server
12577   ${_gRPC_PROTOBUF_LIBRARIES}
12578   ${_gRPC_ALLTARGETS_LIBRARIES}
12579   grpc++_test_config
12580   grpc++_test_util
12581   grpc_test_util
12582   grpc++
12583   grpc
12584   gpr
12585   ${_gRPC_GFLAGS_LIBRARIES}
12586 )
12587
12588
12589 endif (gRPC_BUILD_TESTS)
12590 if (gRPC_BUILD_TESTS)
12591
12592 add_executable(client_interceptors_end2end_test
12593   test/cpp/end2end/client_interceptors_end2end_test.cc
12594   test/cpp/end2end/interceptors_util.cc
12595   third_party/googletest/googletest/src/gtest-all.cc
12596   third_party/googletest/googlemock/src/gmock-all.cc
12597 )
12598
12599
12600 target_include_directories(client_interceptors_end2end_test
12601   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12602   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12603   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12604   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12605   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12606   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12607   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12608   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12609   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12610   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12611   PRIVATE third_party/googletest/googletest/include
12612   PRIVATE third_party/googletest/googletest
12613   PRIVATE third_party/googletest/googlemock/include
12614   PRIVATE third_party/googletest/googlemock
12615   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12616 )
12617
12618 target_link_libraries(client_interceptors_end2end_test
12619   ${_gRPC_PROTOBUF_LIBRARIES}
12620   ${_gRPC_ALLTARGETS_LIBRARIES}
12621   grpc++_test_util
12622   grpc_test_util
12623   grpc++
12624   grpc
12625   gpr
12626   ${_gRPC_GFLAGS_LIBRARIES}
12627 )
12628
12629
12630 endif (gRPC_BUILD_TESTS)
12631 if (gRPC_BUILD_TESTS)
12632
12633 add_executable(client_lb_end2end_test
12634   test/cpp/end2end/client_lb_end2end_test.cc
12635   third_party/googletest/googletest/src/gtest-all.cc
12636   third_party/googletest/googlemock/src/gmock-all.cc
12637 )
12638
12639
12640 target_include_directories(client_lb_end2end_test
12641   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12642   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12643   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12644   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12645   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12646   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12647   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12648   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12649   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12650   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12651   PRIVATE third_party/googletest/googletest/include
12652   PRIVATE third_party/googletest/googletest
12653   PRIVATE third_party/googletest/googlemock/include
12654   PRIVATE third_party/googletest/googlemock
12655   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12656 )
12657
12658 target_link_libraries(client_lb_end2end_test
12659   ${_gRPC_PROTOBUF_LIBRARIES}
12660   ${_gRPC_ALLTARGETS_LIBRARIES}
12661   grpc++_test_util
12662   grpc_test_util
12663   grpc++
12664   grpc
12665   gpr
12666   ${_gRPC_GFLAGS_LIBRARIES}
12667 )
12668
12669
12670 endif (gRPC_BUILD_TESTS)
12671 if (gRPC_BUILD_TESTS)
12672
12673 add_executable(codegen_test_full
12674   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.cc
12675   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.cc
12676   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.h
12677   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.h
12678   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
12679   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
12680   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
12681   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
12682   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.cc
12683   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.cc
12684   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.h
12685   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.h
12686   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.cc
12687   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.cc
12688   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.h
12689   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.h
12690   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.cc
12691   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.cc
12692   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.h
12693   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.h
12694   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.cc
12695   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.cc
12696   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.h
12697   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.h
12698   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.cc
12699   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.cc
12700   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.h
12701   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.h
12702   test/cpp/codegen/codegen_test_full.cc
12703   third_party/googletest/googletest/src/gtest-all.cc
12704   third_party/googletest/googlemock/src/gmock-all.cc
12705 )
12706
12707 protobuf_generate_grpc_cpp(
12708   src/proto/grpc/testing/control.proto
12709 )
12710 protobuf_generate_grpc_cpp(
12711   src/proto/grpc/testing/messages.proto
12712 )
12713 protobuf_generate_grpc_cpp(
12714   src/proto/grpc/testing/payloads.proto
12715 )
12716 protobuf_generate_grpc_cpp(
12717   src/proto/grpc/testing/benchmark_service.proto
12718 )
12719 protobuf_generate_grpc_cpp(
12720   src/proto/grpc/testing/report_qps_scenario_service.proto
12721 )
12722 protobuf_generate_grpc_cpp(
12723   src/proto/grpc/testing/worker_service.proto
12724 )
12725 protobuf_generate_grpc_cpp(
12726   src/proto/grpc/testing/stats.proto
12727 )
12728
12729 target_include_directories(codegen_test_full
12730   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12731   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12732   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12733   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12734   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12735   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12736   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12737   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12738   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12739   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12740   PRIVATE third_party/googletest/googletest/include
12741   PRIVATE third_party/googletest/googletest
12742   PRIVATE third_party/googletest/googlemock/include
12743   PRIVATE third_party/googletest/googlemock
12744   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12745 )
12746
12747 target_link_libraries(codegen_test_full
12748   ${_gRPC_PROTOBUF_LIBRARIES}
12749   ${_gRPC_ALLTARGETS_LIBRARIES}
12750   grpc++_core_stats
12751   grpc++
12752   grpc
12753   gpr
12754   ${_gRPC_GFLAGS_LIBRARIES}
12755 )
12756
12757
12758 endif (gRPC_BUILD_TESTS)
12759 if (gRPC_BUILD_TESTS)
12760
12761 add_executable(codegen_test_minimal
12762   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.cc
12763   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.cc
12764   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.pb.h
12765   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/control.grpc.pb.h
12766   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
12767   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
12768   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
12769   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
12770   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.cc
12771   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.cc
12772   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.pb.h
12773   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/payloads.grpc.pb.h
12774   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.cc
12775   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.cc
12776   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.pb.h
12777   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/benchmark_service.grpc.pb.h
12778   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.cc
12779   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.cc
12780   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.pb.h
12781   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/report_qps_scenario_service.grpc.pb.h
12782   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.cc
12783   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.cc
12784   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.pb.h
12785   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/worker_service.grpc.pb.h
12786   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.cc
12787   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.cc
12788   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.pb.h
12789   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/stats.grpc.pb.h
12790   test/cpp/codegen/codegen_test_minimal.cc
12791   src/cpp/codegen/codegen_init.cc
12792   third_party/googletest/googletest/src/gtest-all.cc
12793   third_party/googletest/googlemock/src/gmock-all.cc
12794 )
12795
12796 protobuf_generate_grpc_cpp(
12797   src/proto/grpc/testing/control.proto
12798 )
12799 protobuf_generate_grpc_cpp(
12800   src/proto/grpc/testing/messages.proto
12801 )
12802 protobuf_generate_grpc_cpp(
12803   src/proto/grpc/testing/payloads.proto
12804 )
12805 protobuf_generate_grpc_cpp(
12806   src/proto/grpc/testing/benchmark_service.proto
12807 )
12808 protobuf_generate_grpc_cpp(
12809   src/proto/grpc/testing/report_qps_scenario_service.proto
12810 )
12811 protobuf_generate_grpc_cpp(
12812   src/proto/grpc/testing/worker_service.proto
12813 )
12814 protobuf_generate_grpc_cpp(
12815   src/proto/grpc/testing/stats.proto
12816 )
12817
12818 target_include_directories(codegen_test_minimal
12819   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12820   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12821   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12822   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12823   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12824   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12825   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12826   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12827   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12828   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12829   PRIVATE third_party/googletest/googletest/include
12830   PRIVATE third_party/googletest/googletest
12831   PRIVATE third_party/googletest/googlemock/include
12832   PRIVATE third_party/googletest/googlemock
12833   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12834 )
12835
12836 target_link_libraries(codegen_test_minimal
12837   ${_gRPC_PROTOBUF_LIBRARIES}
12838   ${_gRPC_ALLTARGETS_LIBRARIES}
12839   grpc++_core_stats
12840   grpc
12841   gpr
12842   ${_gRPC_GFLAGS_LIBRARIES}
12843 )
12844
12845
12846 endif (gRPC_BUILD_TESTS)
12847 if (gRPC_BUILD_TESTS)
12848
12849 add_executable(context_list_test
12850   test/core/transport/chttp2/context_list_test.cc
12851   third_party/googletest/googletest/src/gtest-all.cc
12852   third_party/googletest/googlemock/src/gmock-all.cc
12853 )
12854
12855
12856 target_include_directories(context_list_test
12857   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12858   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12859   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12860   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12861   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12862   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12863   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12864   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12865   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12866   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12867   PRIVATE third_party/googletest/googletest/include
12868   PRIVATE third_party/googletest/googletest
12869   PRIVATE third_party/googletest/googlemock/include
12870   PRIVATE third_party/googletest/googlemock
12871   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12872 )
12873
12874 target_link_libraries(context_list_test
12875   ${_gRPC_PROTOBUF_LIBRARIES}
12876   ${_gRPC_ALLTARGETS_LIBRARIES}
12877   grpc_test_util
12878   grpc
12879   gpr
12880   ${_gRPC_GFLAGS_LIBRARIES}
12881 )
12882
12883
12884 endif (gRPC_BUILD_TESTS)
12885 if (gRPC_BUILD_TESTS)
12886
12887 add_executable(credentials_test
12888   test/cpp/client/credentials_test.cc
12889   third_party/googletest/googletest/src/gtest-all.cc
12890   third_party/googletest/googlemock/src/gmock-all.cc
12891 )
12892
12893
12894 target_include_directories(credentials_test
12895   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12896   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12897   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12898   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12899   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12900   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12901   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12902   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12903   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12904   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12905   PRIVATE third_party/googletest/googletest/include
12906   PRIVATE third_party/googletest/googletest
12907   PRIVATE third_party/googletest/googlemock/include
12908   PRIVATE third_party/googletest/googlemock
12909   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12910 )
12911
12912 target_link_libraries(credentials_test
12913   ${_gRPC_PROTOBUF_LIBRARIES}
12914   ${_gRPC_ALLTARGETS_LIBRARIES}
12915   grpc++
12916   grpc
12917   gpr
12918   ${_gRPC_GFLAGS_LIBRARIES}
12919 )
12920
12921
12922 endif (gRPC_BUILD_TESTS)
12923 if (gRPC_BUILD_TESTS)
12924
12925 add_executable(cxx_byte_buffer_test
12926   test/cpp/util/byte_buffer_test.cc
12927   third_party/googletest/googletest/src/gtest-all.cc
12928   third_party/googletest/googlemock/src/gmock-all.cc
12929 )
12930
12931
12932 target_include_directories(cxx_byte_buffer_test
12933   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12934   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12935   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12936   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12937   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12938   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12939   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12940   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12941   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12942   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12943   PRIVATE third_party/googletest/googletest/include
12944   PRIVATE third_party/googletest/googletest
12945   PRIVATE third_party/googletest/googlemock/include
12946   PRIVATE third_party/googletest/googlemock
12947   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12948 )
12949
12950 target_link_libraries(cxx_byte_buffer_test
12951   ${_gRPC_PROTOBUF_LIBRARIES}
12952   ${_gRPC_ALLTARGETS_LIBRARIES}
12953   grpc_test_util
12954   grpc++
12955   grpc
12956   gpr
12957   ${_gRPC_GFLAGS_LIBRARIES}
12958 )
12959
12960
12961 endif (gRPC_BUILD_TESTS)
12962 if (gRPC_BUILD_TESTS)
12963
12964 add_executable(cxx_slice_test
12965   test/cpp/util/slice_test.cc
12966   third_party/googletest/googletest/src/gtest-all.cc
12967   third_party/googletest/googlemock/src/gmock-all.cc
12968 )
12969
12970
12971 target_include_directories(cxx_slice_test
12972   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
12973   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
12974   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
12975   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
12976   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
12977   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
12978   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
12979   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
12980   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
12981   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
12982   PRIVATE third_party/googletest/googletest/include
12983   PRIVATE third_party/googletest/googletest
12984   PRIVATE third_party/googletest/googlemock/include
12985   PRIVATE third_party/googletest/googlemock
12986   PRIVATE ${_gRPC_PROTO_GENS_DIR}
12987 )
12988
12989 target_link_libraries(cxx_slice_test
12990   ${_gRPC_PROTOBUF_LIBRARIES}
12991   ${_gRPC_ALLTARGETS_LIBRARIES}
12992   grpc_test_util
12993   grpc++
12994   grpc
12995   gpr
12996   ${_gRPC_GFLAGS_LIBRARIES}
12997 )
12998
12999
13000 endif (gRPC_BUILD_TESTS)
13001 if (gRPC_BUILD_TESTS)
13002
13003 add_executable(cxx_string_ref_test
13004   test/cpp/util/string_ref_test.cc
13005   third_party/googletest/googletest/src/gtest-all.cc
13006   third_party/googletest/googlemock/src/gmock-all.cc
13007 )
13008
13009
13010 target_include_directories(cxx_string_ref_test
13011   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13012   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13013   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13014   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13015   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13016   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13017   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13018   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13019   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13020   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13021   PRIVATE third_party/googletest/googletest/include
13022   PRIVATE third_party/googletest/googletest
13023   PRIVATE third_party/googletest/googlemock/include
13024   PRIVATE third_party/googletest/googlemock
13025   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13026 )
13027
13028 target_link_libraries(cxx_string_ref_test
13029   ${_gRPC_PROTOBUF_LIBRARIES}
13030   ${_gRPC_ALLTARGETS_LIBRARIES}
13031   grpc++
13032   grpc
13033   ${_gRPC_GFLAGS_LIBRARIES}
13034 )
13035
13036
13037 endif (gRPC_BUILD_TESTS)
13038 if (gRPC_BUILD_TESTS)
13039
13040 add_executable(cxx_time_test
13041   test/cpp/util/time_test.cc
13042   third_party/googletest/googletest/src/gtest-all.cc
13043   third_party/googletest/googlemock/src/gmock-all.cc
13044 )
13045
13046
13047 target_include_directories(cxx_time_test
13048   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13049   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13050   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13051   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13052   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13053   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13054   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13055   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13056   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13057   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13058   PRIVATE third_party/googletest/googletest/include
13059   PRIVATE third_party/googletest/googletest
13060   PRIVATE third_party/googletest/googlemock/include
13061   PRIVATE third_party/googletest/googlemock
13062   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13063 )
13064
13065 target_link_libraries(cxx_time_test
13066   ${_gRPC_PROTOBUF_LIBRARIES}
13067   ${_gRPC_ALLTARGETS_LIBRARIES}
13068   grpc_test_util
13069   grpc++
13070   grpc
13071   gpr
13072   ${_gRPC_GFLAGS_LIBRARIES}
13073 )
13074
13075
13076 endif (gRPC_BUILD_TESTS)
13077 if (gRPC_BUILD_TESTS)
13078
13079 add_executable(end2end_test
13080   test/cpp/end2end/end2end_test.cc
13081   test/cpp/end2end/interceptors_util.cc
13082   third_party/googletest/googletest/src/gtest-all.cc
13083   third_party/googletest/googlemock/src/gmock-all.cc
13084 )
13085
13086
13087 target_include_directories(end2end_test
13088   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13089   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13090   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13091   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13092   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13093   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13094   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13095   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13096   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13097   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13098   PRIVATE third_party/googletest/googletest/include
13099   PRIVATE third_party/googletest/googletest
13100   PRIVATE third_party/googletest/googlemock/include
13101   PRIVATE third_party/googletest/googlemock
13102   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13103 )
13104
13105 target_link_libraries(end2end_test
13106   ${_gRPC_PROTOBUF_LIBRARIES}
13107   ${_gRPC_ALLTARGETS_LIBRARIES}
13108   grpc++_test_util
13109   grpc_test_util
13110   grpc++
13111   grpc
13112   gpr
13113   ${_gRPC_GFLAGS_LIBRARIES}
13114 )
13115
13116
13117 endif (gRPC_BUILD_TESTS)
13118 if (gRPC_BUILD_TESTS)
13119
13120 add_executable(error_details_test
13121   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
13122   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
13123   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
13124   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
13125   test/cpp/util/error_details_test.cc
13126   third_party/googletest/googletest/src/gtest-all.cc
13127   third_party/googletest/googlemock/src/gmock-all.cc
13128 )
13129
13130 protobuf_generate_grpc_cpp(
13131   src/proto/grpc/testing/echo_messages.proto
13132 )
13133
13134 target_include_directories(error_details_test
13135   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13136   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13137   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13138   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13139   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13140   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13141   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13142   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13143   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13144   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13145   PRIVATE third_party/googletest/googletest/include
13146   PRIVATE third_party/googletest/googletest
13147   PRIVATE third_party/googletest/googlemock/include
13148   PRIVATE third_party/googletest/googlemock
13149   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13150 )
13151
13152 target_link_libraries(error_details_test
13153   ${_gRPC_PROTOBUF_LIBRARIES}
13154   ${_gRPC_ALLTARGETS_LIBRARIES}
13155   grpc++_error_details
13156   grpc++
13157   ${_gRPC_GFLAGS_LIBRARIES}
13158 )
13159
13160
13161 endif (gRPC_BUILD_TESTS)
13162 if (gRPC_BUILD_TESTS)
13163
13164 add_executable(exception_test
13165   test/cpp/end2end/exception_test.cc
13166   third_party/googletest/googletest/src/gtest-all.cc
13167   third_party/googletest/googlemock/src/gmock-all.cc
13168 )
13169
13170
13171 target_include_directories(exception_test
13172   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13173   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13174   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13175   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13176   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13177   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13178   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13179   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13180   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13181   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13182   PRIVATE third_party/googletest/googletest/include
13183   PRIVATE third_party/googletest/googletest
13184   PRIVATE third_party/googletest/googlemock/include
13185   PRIVATE third_party/googletest/googlemock
13186   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13187 )
13188
13189 target_link_libraries(exception_test
13190   ${_gRPC_PROTOBUF_LIBRARIES}
13191   ${_gRPC_ALLTARGETS_LIBRARIES}
13192   grpc++_test_util
13193   grpc_test_util
13194   grpc++
13195   grpc
13196   gpr
13197   ${_gRPC_GFLAGS_LIBRARIES}
13198 )
13199
13200
13201 endif (gRPC_BUILD_TESTS)
13202 if (gRPC_BUILD_TESTS)
13203
13204 add_executable(filter_end2end_test
13205   test/cpp/end2end/filter_end2end_test.cc
13206   third_party/googletest/googletest/src/gtest-all.cc
13207   third_party/googletest/googlemock/src/gmock-all.cc
13208 )
13209
13210
13211 target_include_directories(filter_end2end_test
13212   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13213   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13214   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13215   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13216   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13217   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13218   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13219   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13220   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13221   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13222   PRIVATE third_party/googletest/googletest/include
13223   PRIVATE third_party/googletest/googletest
13224   PRIVATE third_party/googletest/googlemock/include
13225   PRIVATE third_party/googletest/googlemock
13226   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13227 )
13228
13229 target_link_libraries(filter_end2end_test
13230   ${_gRPC_PROTOBUF_LIBRARIES}
13231   ${_gRPC_ALLTARGETS_LIBRARIES}
13232   grpc++_test_util
13233   grpc_test_util
13234   grpc++
13235   grpc
13236   gpr
13237   ${_gRPC_GFLAGS_LIBRARIES}
13238 )
13239
13240
13241 endif (gRPC_BUILD_TESTS)
13242 if (gRPC_BUILD_TESTS)
13243
13244 add_executable(generic_end2end_test
13245   test/cpp/end2end/generic_end2end_test.cc
13246   third_party/googletest/googletest/src/gtest-all.cc
13247   third_party/googletest/googlemock/src/gmock-all.cc
13248 )
13249
13250
13251 target_include_directories(generic_end2end_test
13252   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13253   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13254   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13255   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13256   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13257   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13258   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13259   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13260   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13261   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13262   PRIVATE third_party/googletest/googletest/include
13263   PRIVATE third_party/googletest/googletest
13264   PRIVATE third_party/googletest/googlemock/include
13265   PRIVATE third_party/googletest/googlemock
13266   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13267 )
13268
13269 target_link_libraries(generic_end2end_test
13270   ${_gRPC_PROTOBUF_LIBRARIES}
13271   ${_gRPC_ALLTARGETS_LIBRARIES}
13272   grpc++_test_util
13273   grpc_test_util
13274   grpc++
13275   grpc
13276   gpr
13277   ${_gRPC_GFLAGS_LIBRARIES}
13278 )
13279
13280
13281 endif (gRPC_BUILD_TESTS)
13282 if (gRPC_BUILD_TESTS)
13283
13284 add_executable(global_config_env_test
13285   test/core/gprpp/global_config_env_test.cc
13286   third_party/googletest/googletest/src/gtest-all.cc
13287   third_party/googletest/googlemock/src/gmock-all.cc
13288 )
13289
13290
13291 target_include_directories(global_config_env_test
13292   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13293   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13294   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13295   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13296   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13297   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13298   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13299   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13300   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13301   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13302   PRIVATE third_party/googletest/googletest/include
13303   PRIVATE third_party/googletest/googletest
13304   PRIVATE third_party/googletest/googlemock/include
13305   PRIVATE third_party/googletest/googlemock
13306   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13307 )
13308
13309 target_link_libraries(global_config_env_test
13310   ${_gRPC_PROTOBUF_LIBRARIES}
13311   ${_gRPC_ALLTARGETS_LIBRARIES}
13312   gpr
13313   grpc_test_util_unsecure
13314   ${_gRPC_GFLAGS_LIBRARIES}
13315 )
13316
13317
13318 endif (gRPC_BUILD_TESTS)
13319 if (gRPC_BUILD_TESTS)
13320
13321 add_executable(global_config_test
13322   test/core/gprpp/global_config_test.cc
13323   third_party/googletest/googletest/src/gtest-all.cc
13324   third_party/googletest/googlemock/src/gmock-all.cc
13325 )
13326
13327
13328 target_include_directories(global_config_test
13329   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13330   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13331   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13332   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13333   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13334   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13335   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13336   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13337   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13338   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13339   PRIVATE third_party/googletest/googletest/include
13340   PRIVATE third_party/googletest/googletest
13341   PRIVATE third_party/googletest/googlemock/include
13342   PRIVATE third_party/googletest/googlemock
13343   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13344 )
13345
13346 target_link_libraries(global_config_test
13347   ${_gRPC_PROTOBUF_LIBRARIES}
13348   ${_gRPC_ALLTARGETS_LIBRARIES}
13349   gpr
13350   grpc_test_util_unsecure
13351   ${_gRPC_GFLAGS_LIBRARIES}
13352 )
13353
13354
13355 endif (gRPC_BUILD_TESTS)
13356 if (gRPC_BUILD_TESTS)
13357
13358 add_executable(golden_file_test
13359   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.pb.cc
13360   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.grpc.pb.cc
13361   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.pb.h
13362   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/compiler_test.grpc.pb.h
13363   test/cpp/codegen/golden_file_test.cc
13364   third_party/googletest/googletest/src/gtest-all.cc
13365   third_party/googletest/googlemock/src/gmock-all.cc
13366 )
13367
13368 protobuf_generate_grpc_cpp(
13369   src/proto/grpc/testing/compiler_test.proto
13370 )
13371
13372 target_include_directories(golden_file_test
13373   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13374   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13375   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13376   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13377   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13378   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13379   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13380   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13381   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13382   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13383   PRIVATE third_party/googletest/googletest/include
13384   PRIVATE third_party/googletest/googletest
13385   PRIVATE third_party/googletest/googlemock/include
13386   PRIVATE third_party/googletest/googlemock
13387   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13388 )
13389
13390 target_link_libraries(golden_file_test
13391   ${_gRPC_PROTOBUF_LIBRARIES}
13392   ${_gRPC_ALLTARGETS_LIBRARIES}
13393   grpc++_test_config
13394   grpc++
13395   grpc
13396   gpr
13397   ${_gRPC_GFLAGS_LIBRARIES}
13398 )
13399
13400
13401 endif (gRPC_BUILD_TESTS)
13402 if (gRPC_BUILD_TESTS)
13403
13404 add_executable(grpc_alts_credentials_options_test
13405   test/core/security/grpc_alts_credentials_options_test.cc
13406   third_party/googletest/googletest/src/gtest-all.cc
13407   third_party/googletest/googlemock/src/gmock-all.cc
13408 )
13409
13410
13411 target_include_directories(grpc_alts_credentials_options_test
13412   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13413   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13414   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13415   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13416   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13417   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13418   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13419   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13420   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13421   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13422   PRIVATE third_party/googletest/googletest/include
13423   PRIVATE third_party/googletest/googletest
13424   PRIVATE third_party/googletest/googlemock/include
13425   PRIVATE third_party/googletest/googlemock
13426   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13427 )
13428
13429 target_link_libraries(grpc_alts_credentials_options_test
13430   ${_gRPC_PROTOBUF_LIBRARIES}
13431   ${_gRPC_ALLTARGETS_LIBRARIES}
13432   grpc
13433   gpr
13434   ${_gRPC_GFLAGS_LIBRARIES}
13435 )
13436
13437
13438 endif (gRPC_BUILD_TESTS)
13439 if (gRPC_BUILD_TESTS)
13440
13441 add_executable(grpc_cli
13442   test/cpp/util/grpc_cli.cc
13443   third_party/googletest/googletest/src/gtest-all.cc
13444   third_party/googletest/googlemock/src/gmock-all.cc
13445 )
13446
13447
13448 target_include_directories(grpc_cli
13449   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13450   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13451   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13452   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13453   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13454   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13455   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13456   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13457   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13458   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13459   PRIVATE third_party/googletest/googletest/include
13460   PRIVATE third_party/googletest/googletest
13461   PRIVATE third_party/googletest/googlemock/include
13462   PRIVATE third_party/googletest/googlemock
13463   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13464 )
13465
13466 target_link_libraries(grpc_cli
13467   ${_gRPC_PROTOBUF_LIBRARIES}
13468   ${_gRPC_ALLTARGETS_LIBRARIES}
13469   grpc_cli_libs
13470   grpc++_proto_reflection_desc_db
13471   grpc++
13472   grpc
13473   gpr
13474   grpc++_test_config
13475   ${_gRPC_GFLAGS_LIBRARIES}
13476 )
13477
13478
13479 endif (gRPC_BUILD_TESTS)
13480 if (gRPC_BUILD_TESTS)
13481
13482 add_executable(grpc_core_map_test
13483   test/core/gprpp/map_test.cc
13484   third_party/googletest/googletest/src/gtest-all.cc
13485   third_party/googletest/googlemock/src/gmock-all.cc
13486 )
13487
13488
13489 target_include_directories(grpc_core_map_test
13490   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13491   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13492   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13493   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13494   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13495   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13496   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13497   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13498   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13499   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13500   PRIVATE third_party/googletest/googletest/include
13501   PRIVATE third_party/googletest/googletest
13502   PRIVATE third_party/googletest/googlemock/include
13503   PRIVATE third_party/googletest/googlemock
13504   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13505 )
13506
13507 target_link_libraries(grpc_core_map_test
13508   ${_gRPC_PROTOBUF_LIBRARIES}
13509   ${_gRPC_ALLTARGETS_LIBRARIES}
13510   grpc_test_util
13511   grpc++
13512   grpc
13513   gpr
13514   ${_gRPC_GFLAGS_LIBRARIES}
13515 )
13516
13517
13518 endif (gRPC_BUILD_TESTS)
13519 if (gRPC_BUILD_CODEGEN)
13520
13521 add_executable(grpc_cpp_plugin
13522   src/compiler/cpp_plugin.cc
13523 )
13524
13525
13526 target_include_directories(grpc_cpp_plugin
13527   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13528   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13529   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13530   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13531   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13532   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13533   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13534   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13535   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13536   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13537   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13538 )
13539
13540 target_link_libraries(grpc_cpp_plugin
13541   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13542   ${_gRPC_PROTOBUF_LIBRARIES}
13543   ${_gRPC_ALLTARGETS_LIBRARIES}
13544   grpc_plugin_support
13545 )
13546
13547
13548
13549 if (gRPC_INSTALL)
13550   install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
13551     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13552     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13553     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13554   )
13555 endif()
13556
13557 endif (gRPC_BUILD_CODEGEN)
13558 if (gRPC_BUILD_CODEGEN)
13559
13560 add_executable(grpc_csharp_plugin
13561   src/compiler/csharp_plugin.cc
13562 )
13563
13564
13565 target_include_directories(grpc_csharp_plugin
13566   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13567   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13568   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13569   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13570   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13571   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13572   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13573   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13574   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13575   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13576   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13577 )
13578
13579 target_link_libraries(grpc_csharp_plugin
13580   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13581   ${_gRPC_PROTOBUF_LIBRARIES}
13582   ${_gRPC_ALLTARGETS_LIBRARIES}
13583   grpc_plugin_support
13584 )
13585
13586
13587
13588 if (gRPC_INSTALL)
13589   install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
13590     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13591     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13592     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13593   )
13594 endif()
13595
13596 endif (gRPC_BUILD_CODEGEN)
13597 if (gRPC_BUILD_TESTS)
13598
13599 add_executable(grpc_fetch_oauth2
13600   test/core/security/fetch_oauth2.cc
13601   third_party/googletest/googletest/src/gtest-all.cc
13602   third_party/googletest/googlemock/src/gmock-all.cc
13603 )
13604
13605
13606 target_include_directories(grpc_fetch_oauth2
13607   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13608   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13609   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13610   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13611   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13612   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13613   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13614   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13615   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13616   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13617   PRIVATE third_party/googletest/googletest/include
13618   PRIVATE third_party/googletest/googletest
13619   PRIVATE third_party/googletest/googlemock/include
13620   PRIVATE third_party/googletest/googlemock
13621   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13622 )
13623
13624 target_link_libraries(grpc_fetch_oauth2
13625   ${_gRPC_PROTOBUF_LIBRARIES}
13626   ${_gRPC_ALLTARGETS_LIBRARIES}
13627   grpc_test_util
13628   grpc++
13629   grpc
13630   gpr
13631   ${_gRPC_GFLAGS_LIBRARIES}
13632 )
13633
13634
13635 endif (gRPC_BUILD_TESTS)
13636 if (gRPC_BUILD_TESTS)
13637
13638 add_executable(grpc_linux_system_roots_test
13639   test/core/security/linux_system_roots_test.cc
13640   third_party/googletest/googletest/src/gtest-all.cc
13641   third_party/googletest/googlemock/src/gmock-all.cc
13642 )
13643
13644
13645 target_include_directories(grpc_linux_system_roots_test
13646   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13647   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13648   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13649   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13650   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13651   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13652   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13653   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13654   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13655   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13656   PRIVATE third_party/googletest/googletest/include
13657   PRIVATE third_party/googletest/googletest
13658   PRIVATE third_party/googletest/googlemock/include
13659   PRIVATE third_party/googletest/googlemock
13660   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13661 )
13662
13663 target_link_libraries(grpc_linux_system_roots_test
13664   ${_gRPC_PROTOBUF_LIBRARIES}
13665   ${_gRPC_ALLTARGETS_LIBRARIES}
13666   grpc_test_util
13667   grpc
13668   gpr
13669   ${_gRPC_GFLAGS_LIBRARIES}
13670 )
13671
13672
13673 endif (gRPC_BUILD_TESTS)
13674 if (gRPC_BUILD_CODEGEN)
13675
13676 add_executable(grpc_node_plugin
13677   src/compiler/node_plugin.cc
13678 )
13679
13680
13681 target_include_directories(grpc_node_plugin
13682   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13683   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13684   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13685   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13686   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13687   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13688   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13689   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13690   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13691   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13692   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13693 )
13694
13695 target_link_libraries(grpc_node_plugin
13696   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13697   ${_gRPC_PROTOBUF_LIBRARIES}
13698   ${_gRPC_ALLTARGETS_LIBRARIES}
13699   grpc_plugin_support
13700 )
13701
13702
13703
13704 if (gRPC_INSTALL)
13705   install(TARGETS grpc_node_plugin EXPORT gRPCTargets
13706     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13707     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13708     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13709   )
13710 endif()
13711
13712 endif (gRPC_BUILD_CODEGEN)
13713 if (gRPC_BUILD_CODEGEN)
13714
13715 add_executable(grpc_objective_c_plugin
13716   src/compiler/objective_c_plugin.cc
13717 )
13718
13719
13720 target_include_directories(grpc_objective_c_plugin
13721   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13722   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13723   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13724   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13725   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13726   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13727   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13728   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13729   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13730   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13731   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13732 )
13733
13734 target_link_libraries(grpc_objective_c_plugin
13735   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13736   ${_gRPC_PROTOBUF_LIBRARIES}
13737   ${_gRPC_ALLTARGETS_LIBRARIES}
13738   grpc_plugin_support
13739 )
13740
13741
13742
13743 if (gRPC_INSTALL)
13744   install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
13745     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13746     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13747     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13748   )
13749 endif()
13750
13751 endif (gRPC_BUILD_CODEGEN)
13752 if (gRPC_BUILD_CODEGEN)
13753
13754 add_executable(grpc_php_plugin
13755   src/compiler/php_plugin.cc
13756 )
13757
13758
13759 target_include_directories(grpc_php_plugin
13760   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13761   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13762   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13763   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13764   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13765   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13766   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13767   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13768   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13769   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13770   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13771 )
13772
13773 target_link_libraries(grpc_php_plugin
13774   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13775   ${_gRPC_PROTOBUF_LIBRARIES}
13776   ${_gRPC_ALLTARGETS_LIBRARIES}
13777   grpc_plugin_support
13778 )
13779
13780
13781
13782 if (gRPC_INSTALL)
13783   install(TARGETS grpc_php_plugin EXPORT gRPCTargets
13784     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13785     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13786     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13787   )
13788 endif()
13789
13790 endif (gRPC_BUILD_CODEGEN)
13791 if (gRPC_BUILD_CODEGEN)
13792
13793 add_executable(grpc_python_plugin
13794   src/compiler/python_plugin.cc
13795 )
13796
13797
13798 target_include_directories(grpc_python_plugin
13799   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13800   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13801   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13802   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13803   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13804   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13805   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13806   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13807   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13808   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13809   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13810 )
13811
13812 target_link_libraries(grpc_python_plugin
13813   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13814   ${_gRPC_PROTOBUF_LIBRARIES}
13815   ${_gRPC_ALLTARGETS_LIBRARIES}
13816   grpc_plugin_support
13817 )
13818
13819
13820
13821 if (gRPC_INSTALL)
13822   install(TARGETS grpc_python_plugin EXPORT gRPCTargets
13823     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13824     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13825     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13826   )
13827 endif()
13828
13829 endif (gRPC_BUILD_CODEGEN)
13830 if (gRPC_BUILD_CODEGEN)
13831
13832 add_executable(grpc_ruby_plugin
13833   src/compiler/ruby_plugin.cc
13834 )
13835
13836
13837 target_include_directories(grpc_ruby_plugin
13838   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13839   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13840   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13841   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13842   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13843   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13844   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13845   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13846   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13847   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13848   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13849 )
13850
13851 target_link_libraries(grpc_ruby_plugin
13852   ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
13853   ${_gRPC_PROTOBUF_LIBRARIES}
13854   ${_gRPC_ALLTARGETS_LIBRARIES}
13855   grpc_plugin_support
13856 )
13857
13858
13859
13860 if (gRPC_INSTALL)
13861   install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
13862     RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
13863     LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
13864     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
13865   )
13866 endif()
13867
13868 endif (gRPC_BUILD_CODEGEN)
13869 if (gRPC_BUILD_TESTS)
13870
13871 add_executable(grpc_tool_test
13872   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
13873   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
13874   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
13875   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
13876   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
13877   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
13878   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
13879   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
13880   test/cpp/util/grpc_tool_test.cc
13881   third_party/googletest/googletest/src/gtest-all.cc
13882   third_party/googletest/googlemock/src/gmock-all.cc
13883 )
13884
13885 protobuf_generate_grpc_cpp(
13886   src/proto/grpc/testing/echo.proto
13887 )
13888 protobuf_generate_grpc_cpp(
13889   src/proto/grpc/testing/echo_messages.proto
13890 )
13891
13892 target_include_directories(grpc_tool_test
13893   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13894   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13895   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13896   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13897   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13898   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13899   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13900   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13901   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13902   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13903   PRIVATE third_party/googletest/googletest/include
13904   PRIVATE third_party/googletest/googletest
13905   PRIVATE third_party/googletest/googlemock/include
13906   PRIVATE third_party/googletest/googlemock
13907   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13908 )
13909
13910 target_link_libraries(grpc_tool_test
13911   ${_gRPC_PROTOBUF_LIBRARIES}
13912   ${_gRPC_ALLTARGETS_LIBRARIES}
13913   grpc_cli_libs
13914   grpc++_proto_reflection_desc_db
13915   grpc++_reflection
13916   grpc++_test_util
13917   grpc_test_util
13918   grpc++
13919   grpc
13920   gpr
13921   ${_gRPC_GFLAGS_LIBRARIES}
13922 )
13923
13924
13925 endif (gRPC_BUILD_TESTS)
13926 if (gRPC_BUILD_TESTS)
13927
13928 add_executable(grpclb_api_test
13929   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
13930   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
13931   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
13932   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
13933   test/cpp/grpclb/grpclb_api_test.cc
13934   third_party/googletest/googletest/src/gtest-all.cc
13935   third_party/googletest/googlemock/src/gmock-all.cc
13936 )
13937
13938 protobuf_generate_grpc_cpp(
13939   src/proto/grpc/lb/v1/load_balancer.proto
13940 )
13941
13942 target_include_directories(grpclb_api_test
13943   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13944   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13945   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13946   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13947   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13948   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13949   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13950   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13951   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13952   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13953   PRIVATE third_party/googletest/googletest/include
13954   PRIVATE third_party/googletest/googletest
13955   PRIVATE third_party/googletest/googlemock/include
13956   PRIVATE third_party/googletest/googlemock
13957   PRIVATE ${_gRPC_PROTO_GENS_DIR}
13958 )
13959
13960 target_link_libraries(grpclb_api_test
13961   ${_gRPC_PROTOBUF_LIBRARIES}
13962   ${_gRPC_ALLTARGETS_LIBRARIES}
13963   grpc++_test_util
13964   grpc_test_util
13965   grpc++
13966   grpc
13967   ${_gRPC_GFLAGS_LIBRARIES}
13968 )
13969
13970
13971 endif (gRPC_BUILD_TESTS)
13972 if (gRPC_BUILD_TESTS)
13973
13974 add_executable(grpclb_end2end_test
13975   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
13976   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
13977   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
13978   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
13979   test/cpp/end2end/grpclb_end2end_test.cc
13980   third_party/googletest/googletest/src/gtest-all.cc
13981   third_party/googletest/googlemock/src/gmock-all.cc
13982 )
13983
13984 protobuf_generate_grpc_cpp(
13985   src/proto/grpc/lb/v1/load_balancer.proto
13986 )
13987
13988 target_include_directories(grpclb_end2end_test
13989   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
13990   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
13991   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
13992   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
13993   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
13994   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
13995   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
13996   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
13997   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
13998   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
13999   PRIVATE third_party/googletest/googletest/include
14000   PRIVATE third_party/googletest/googletest
14001   PRIVATE third_party/googletest/googlemock/include
14002   PRIVATE third_party/googletest/googlemock
14003   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14004 )
14005
14006 target_link_libraries(grpclb_end2end_test
14007   ${_gRPC_PROTOBUF_LIBRARIES}
14008   ${_gRPC_ALLTARGETS_LIBRARIES}
14009   grpc++_test_util
14010   grpc_test_util
14011   grpc++
14012   grpc
14013   gpr
14014   ${_gRPC_GFLAGS_LIBRARIES}
14015 )
14016
14017
14018 endif (gRPC_BUILD_TESTS)
14019 if (gRPC_BUILD_TESTS)
14020 if(_gRPC_PLATFORM_LINUX)
14021
14022 add_executable(grpclb_fallback_test
14023   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
14024   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
14025   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
14026   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
14027   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
14028   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
14029   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
14030   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
14031   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
14032   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
14033   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
14034   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
14035   test/cpp/interop/grpclb_fallback_test.cc
14036   third_party/googletest/googletest/src/gtest-all.cc
14037   third_party/googletest/googlemock/src/gmock-all.cc
14038 )
14039
14040 protobuf_generate_grpc_cpp(
14041   src/proto/grpc/testing/empty.proto
14042 )
14043 protobuf_generate_grpc_cpp(
14044   src/proto/grpc/testing/messages.proto
14045 )
14046 protobuf_generate_grpc_cpp(
14047   src/proto/grpc/testing/test.proto
14048 )
14049
14050 target_include_directories(grpclb_fallback_test
14051   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14052   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14053   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14054   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14055   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14056   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14057   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14058   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14059   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14060   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14061   PRIVATE third_party/googletest/googletest/include
14062   PRIVATE third_party/googletest/googletest
14063   PRIVATE third_party/googletest/googlemock/include
14064   PRIVATE third_party/googletest/googlemock
14065   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14066 )
14067
14068 target_link_libraries(grpclb_fallback_test
14069   ${_gRPC_PROTOBUF_LIBRARIES}
14070   ${_gRPC_ALLTARGETS_LIBRARIES}
14071   grpc++_test_util
14072   grpc_test_util
14073   grpc++
14074   grpc
14075   gpr
14076   grpc++_test_config
14077   ${_gRPC_GFLAGS_LIBRARIES}
14078 )
14079
14080
14081 endif()
14082 endif (gRPC_BUILD_TESTS)
14083 if (gRPC_BUILD_TESTS)
14084
14085 add_executable(h2_ssl_cert_test
14086   test/core/end2end/h2_ssl_cert_test.cc
14087   third_party/googletest/googletest/src/gtest-all.cc
14088   third_party/googletest/googlemock/src/gmock-all.cc
14089 )
14090
14091
14092 target_include_directories(h2_ssl_cert_test
14093   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14094   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14095   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14096   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14097   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14098   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14099   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14100   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14101   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14102   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14103   PRIVATE third_party/googletest/googletest/include
14104   PRIVATE third_party/googletest/googletest
14105   PRIVATE third_party/googletest/googlemock/include
14106   PRIVATE third_party/googletest/googlemock
14107   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14108 )
14109
14110 target_link_libraries(h2_ssl_cert_test
14111   ${_gRPC_PROTOBUF_LIBRARIES}
14112   ${_gRPC_ALLTARGETS_LIBRARIES}
14113   grpc_test_util
14114   grpc++
14115   grpc
14116   gpr
14117   ${_gRPC_GFLAGS_LIBRARIES}
14118 )
14119
14120
14121 endif (gRPC_BUILD_TESTS)
14122 if (gRPC_BUILD_TESTS)
14123
14124 add_executable(h2_ssl_session_reuse_test
14125   test/core/end2end/h2_ssl_session_reuse_test.cc
14126   third_party/googletest/googletest/src/gtest-all.cc
14127   third_party/googletest/googlemock/src/gmock-all.cc
14128 )
14129
14130
14131 target_include_directories(h2_ssl_session_reuse_test
14132   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14133   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14134   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14135   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14136   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14137   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14138   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14139   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14140   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14141   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14142   PRIVATE third_party/googletest/googletest/include
14143   PRIVATE third_party/googletest/googletest
14144   PRIVATE third_party/googletest/googlemock/include
14145   PRIVATE third_party/googletest/googlemock
14146   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14147 )
14148
14149 target_link_libraries(h2_ssl_session_reuse_test
14150   ${_gRPC_PROTOBUF_LIBRARIES}
14151   ${_gRPC_ALLTARGETS_LIBRARIES}
14152   grpc_test_util
14153   grpc++
14154   grpc
14155   gpr
14156   ${_gRPC_GFLAGS_LIBRARIES}
14157 )
14158
14159
14160 endif (gRPC_BUILD_TESTS)
14161 if (gRPC_BUILD_TESTS)
14162
14163 add_executable(health_service_end2end_test
14164   test/cpp/end2end/health_service_end2end_test.cc
14165   third_party/googletest/googletest/src/gtest-all.cc
14166   third_party/googletest/googlemock/src/gmock-all.cc
14167 )
14168
14169
14170 target_include_directories(health_service_end2end_test
14171   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14172   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14173   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14174   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14175   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14176   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14177   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14178   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14179   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14180   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14181   PRIVATE third_party/googletest/googletest/include
14182   PRIVATE third_party/googletest/googletest
14183   PRIVATE third_party/googletest/googlemock/include
14184   PRIVATE third_party/googletest/googlemock
14185   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14186 )
14187
14188 target_link_libraries(health_service_end2end_test
14189   ${_gRPC_PROTOBUF_LIBRARIES}
14190   ${_gRPC_ALLTARGETS_LIBRARIES}
14191   grpc++_test_util
14192   grpc_test_util
14193   grpc++
14194   grpc
14195   gpr
14196   ${_gRPC_GFLAGS_LIBRARIES}
14197 )
14198
14199
14200 endif (gRPC_BUILD_TESTS)
14201 if (gRPC_BUILD_TESTS)
14202 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14203
14204 add_executable(http2_client
14205   third_party/googletest/googletest/src/gtest-all.cc
14206   third_party/googletest/googlemock/src/gmock-all.cc
14207 )
14208
14209
14210 target_include_directories(http2_client
14211   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14212   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14213   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14214   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14215   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14216   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14217   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14218   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14219   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14220   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14221   PRIVATE third_party/googletest/googletest/include
14222   PRIVATE third_party/googletest/googletest
14223   PRIVATE third_party/googletest/googlemock/include
14224   PRIVATE third_party/googletest/googlemock
14225   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14226 )
14227
14228 target_link_libraries(http2_client
14229   ${_gRPC_PROTOBUF_LIBRARIES}
14230   ${_gRPC_ALLTARGETS_LIBRARIES}
14231   http2_client_main
14232   grpc++_test_util
14233   grpc_test_util
14234   grpc++
14235   grpc
14236   grpc++_test_config
14237   ${_gRPC_GFLAGS_LIBRARIES}
14238 )
14239
14240
14241 endif()
14242 endif (gRPC_BUILD_TESTS)
14243 if (gRPC_BUILD_TESTS)
14244
14245 add_executable(hybrid_end2end_test
14246   test/cpp/end2end/hybrid_end2end_test.cc
14247   third_party/googletest/googletest/src/gtest-all.cc
14248   third_party/googletest/googlemock/src/gmock-all.cc
14249 )
14250
14251
14252 target_include_directories(hybrid_end2end_test
14253   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14254   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14255   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14256   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14257   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14258   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14259   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14260   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14261   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14262   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14263   PRIVATE third_party/googletest/googletest/include
14264   PRIVATE third_party/googletest/googletest
14265   PRIVATE third_party/googletest/googlemock/include
14266   PRIVATE third_party/googletest/googlemock
14267   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14268 )
14269
14270 target_link_libraries(hybrid_end2end_test
14271   ${_gRPC_PROTOBUF_LIBRARIES}
14272   ${_gRPC_ALLTARGETS_LIBRARIES}
14273   grpc++_test_util
14274   grpc_test_util
14275   grpc++
14276   grpc
14277   gpr
14278   ${_gRPC_GFLAGS_LIBRARIES}
14279 )
14280
14281
14282 endif (gRPC_BUILD_TESTS)
14283 if (gRPC_BUILD_TESTS)
14284
14285 add_executable(inlined_vector_test
14286   test/core/gprpp/inlined_vector_test.cc
14287   third_party/googletest/googletest/src/gtest-all.cc
14288   third_party/googletest/googlemock/src/gmock-all.cc
14289 )
14290
14291
14292 target_include_directories(inlined_vector_test
14293   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14294   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14295   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14296   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14297   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14298   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14299   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14300   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14301   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14302   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14303   PRIVATE third_party/googletest/googletest/include
14304   PRIVATE third_party/googletest/googletest
14305   PRIVATE third_party/googletest/googlemock/include
14306   PRIVATE third_party/googletest/googlemock
14307   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14308 )
14309
14310 target_link_libraries(inlined_vector_test
14311   ${_gRPC_PROTOBUF_LIBRARIES}
14312   ${_gRPC_ALLTARGETS_LIBRARIES}
14313   grpc_test_util
14314   grpc++
14315   grpc
14316   gpr
14317   ${_gRPC_GFLAGS_LIBRARIES}
14318 )
14319
14320
14321 endif (gRPC_BUILD_TESTS)
14322 if (gRPC_BUILD_TESTS)
14323 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14324
14325 add_executable(inproc_sync_unary_ping_pong_test
14326   test/cpp/qps/inproc_sync_unary_ping_pong_test.cc
14327   third_party/googletest/googletest/src/gtest-all.cc
14328   third_party/googletest/googlemock/src/gmock-all.cc
14329 )
14330
14331
14332 target_include_directories(inproc_sync_unary_ping_pong_test
14333   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14334   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14335   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14336   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14337   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14338   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14339   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14340   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14341   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14342   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14343   PRIVATE third_party/googletest/googletest/include
14344   PRIVATE third_party/googletest/googletest
14345   PRIVATE third_party/googletest/googlemock/include
14346   PRIVATE third_party/googletest/googlemock
14347   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14348 )
14349
14350 target_link_libraries(inproc_sync_unary_ping_pong_test
14351   ${_gRPC_PROTOBUF_LIBRARIES}
14352   ${_gRPC_ALLTARGETS_LIBRARIES}
14353   qps
14354   grpc++_core_stats
14355   grpc++_test_util
14356   grpc_test_util
14357   grpc++
14358   grpc
14359   gpr
14360   grpc++_test_config
14361   ${_gRPC_GFLAGS_LIBRARIES}
14362 )
14363
14364
14365 endif()
14366 endif (gRPC_BUILD_TESTS)
14367 if (gRPC_BUILD_TESTS)
14368 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14369
14370 add_executable(interop_client
14371   third_party/googletest/googletest/src/gtest-all.cc
14372   third_party/googletest/googlemock/src/gmock-all.cc
14373 )
14374
14375
14376 target_include_directories(interop_client
14377   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14378   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14379   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14380   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14381   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14382   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14383   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14384   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14385   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14386   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14387   PRIVATE third_party/googletest/googletest/include
14388   PRIVATE third_party/googletest/googletest
14389   PRIVATE third_party/googletest/googlemock/include
14390   PRIVATE third_party/googletest/googlemock
14391   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14392 )
14393
14394 target_link_libraries(interop_client
14395   ${_gRPC_PROTOBUF_LIBRARIES}
14396   ${_gRPC_ALLTARGETS_LIBRARIES}
14397   interop_client_main
14398   interop_client_helper
14399   grpc++_test_util
14400   grpc_test_util
14401   grpc++
14402   grpc
14403   gpr
14404   grpc++_test_config
14405   ${_gRPC_GFLAGS_LIBRARIES}
14406 )
14407
14408
14409 endif()
14410 endif (gRPC_BUILD_TESTS)
14411 if (gRPC_BUILD_TESTS)
14412 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14413
14414 add_executable(interop_server
14415   third_party/googletest/googletest/src/gtest-all.cc
14416   third_party/googletest/googlemock/src/gmock-all.cc
14417 )
14418
14419
14420 target_include_directories(interop_server
14421   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14422   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14423   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14424   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14425   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14426   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14427   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14428   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14429   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14430   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14431   PRIVATE third_party/googletest/googletest/include
14432   PRIVATE third_party/googletest/googletest
14433   PRIVATE third_party/googletest/googlemock/include
14434   PRIVATE third_party/googletest/googlemock
14435   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14436 )
14437
14438 target_link_libraries(interop_server
14439   ${_gRPC_PROTOBUF_LIBRARIES}
14440   ${_gRPC_ALLTARGETS_LIBRARIES}
14441   interop_server_main
14442   interop_server_helper
14443   interop_server_lib
14444   grpc++_test_util
14445   grpc_test_util
14446   grpc++
14447   grpc
14448   gpr
14449   grpc++_test_config
14450   ${_gRPC_GFLAGS_LIBRARIES}
14451 )
14452
14453
14454 endif()
14455 endif (gRPC_BUILD_TESTS)
14456 if (gRPC_BUILD_TESTS)
14457 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14458
14459 add_executable(interop_test
14460   test/cpp/interop/interop_test.cc
14461   third_party/googletest/googletest/src/gtest-all.cc
14462   third_party/googletest/googlemock/src/gmock-all.cc
14463 )
14464
14465
14466 target_include_directories(interop_test
14467   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14468   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14469   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14470   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14471   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14472   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14473   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14474   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14475   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14476   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14477   PRIVATE third_party/googletest/googletest/include
14478   PRIVATE third_party/googletest/googletest
14479   PRIVATE third_party/googletest/googlemock/include
14480   PRIVATE third_party/googletest/googlemock
14481   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14482 )
14483
14484 target_link_libraries(interop_test
14485   ${_gRPC_PROTOBUF_LIBRARIES}
14486   ${_gRPC_ALLTARGETS_LIBRARIES}
14487   grpc_test_util
14488   grpc
14489   gpr
14490   grpc++_test_config
14491   ${_gRPC_GFLAGS_LIBRARIES}
14492 )
14493
14494
14495 endif()
14496 endif (gRPC_BUILD_TESTS)
14497 if (gRPC_BUILD_TESTS)
14498 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14499
14500 add_executable(json_run_localhost
14501   test/cpp/qps/json_run_localhost.cc
14502   third_party/googletest/googletest/src/gtest-all.cc
14503   third_party/googletest/googlemock/src/gmock-all.cc
14504 )
14505
14506
14507 target_include_directories(json_run_localhost
14508   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14509   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14510   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14511   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14512   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14513   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14514   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14515   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14516   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14517   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14518   PRIVATE third_party/googletest/googletest/include
14519   PRIVATE third_party/googletest/googletest
14520   PRIVATE third_party/googletest/googlemock/include
14521   PRIVATE third_party/googletest/googlemock
14522   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14523 )
14524
14525 target_link_libraries(json_run_localhost
14526   ${_gRPC_PROTOBUF_LIBRARIES}
14527   ${_gRPC_ALLTARGETS_LIBRARIES}
14528   grpc++_test_util
14529   grpc_test_util
14530   grpc++
14531   grpc
14532   gpr
14533   grpc++_test_config
14534   ${_gRPC_GFLAGS_LIBRARIES}
14535 )
14536
14537
14538 endif()
14539 endif (gRPC_BUILD_TESTS)
14540 if (gRPC_BUILD_TESTS)
14541
14542 add_executable(memory_test
14543   test/core/gprpp/memory_test.cc
14544   third_party/googletest/googletest/src/gtest-all.cc
14545   third_party/googletest/googlemock/src/gmock-all.cc
14546 )
14547
14548
14549 target_include_directories(memory_test
14550   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14551   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14552   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14553   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14554   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14555   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14556   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14557   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14558   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14559   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14560   PRIVATE third_party/googletest/googletest/include
14561   PRIVATE third_party/googletest/googletest
14562   PRIVATE third_party/googletest/googlemock/include
14563   PRIVATE third_party/googletest/googlemock
14564   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14565 )
14566
14567 target_link_libraries(memory_test
14568   ${_gRPC_PROTOBUF_LIBRARIES}
14569   ${_gRPC_ALLTARGETS_LIBRARIES}
14570   grpc_test_util
14571   grpc++
14572   grpc
14573   gpr
14574   ${_gRPC_GFLAGS_LIBRARIES}
14575 )
14576
14577
14578 endif (gRPC_BUILD_TESTS)
14579 if (gRPC_BUILD_TESTS)
14580
14581 add_executable(message_allocator_end2end_test
14582   test/cpp/end2end/message_allocator_end2end_test.cc
14583   third_party/googletest/googletest/src/gtest-all.cc
14584   third_party/googletest/googlemock/src/gmock-all.cc
14585 )
14586
14587
14588 target_include_directories(message_allocator_end2end_test
14589   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14590   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14591   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14592   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14593   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14594   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14595   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14596   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14597   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14598   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14599   PRIVATE third_party/googletest/googletest/include
14600   PRIVATE third_party/googletest/googletest
14601   PRIVATE third_party/googletest/googlemock/include
14602   PRIVATE third_party/googletest/googlemock
14603   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14604 )
14605
14606 target_link_libraries(message_allocator_end2end_test
14607   ${_gRPC_PROTOBUF_LIBRARIES}
14608   ${_gRPC_ALLTARGETS_LIBRARIES}
14609   grpc++_test_util
14610   grpc_test_util
14611   grpc++
14612   grpc
14613   gpr
14614   ${_gRPC_GFLAGS_LIBRARIES}
14615 )
14616
14617
14618 endif (gRPC_BUILD_TESTS)
14619 if (gRPC_BUILD_TESTS)
14620
14621 add_executable(metrics_client
14622   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.cc
14623   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.cc
14624   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.h
14625   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.h
14626   test/cpp/interop/metrics_client.cc
14627   third_party/googletest/googletest/src/gtest-all.cc
14628   third_party/googletest/googlemock/src/gmock-all.cc
14629 )
14630
14631 protobuf_generate_grpc_cpp(
14632   src/proto/grpc/testing/metrics.proto
14633 )
14634
14635 target_include_directories(metrics_client
14636   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14637   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14638   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14639   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14640   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14641   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14642   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14643   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14644   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14645   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14646   PRIVATE third_party/googletest/googletest/include
14647   PRIVATE third_party/googletest/googletest
14648   PRIVATE third_party/googletest/googlemock/include
14649   PRIVATE third_party/googletest/googlemock
14650   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14651 )
14652
14653 target_link_libraries(metrics_client
14654   ${_gRPC_PROTOBUF_LIBRARIES}
14655   ${_gRPC_ALLTARGETS_LIBRARIES}
14656   grpc++
14657   grpc
14658   gpr
14659   grpc++_test_config
14660   ${_gRPC_GFLAGS_LIBRARIES}
14661 )
14662
14663
14664 endif (gRPC_BUILD_TESTS)
14665 if (gRPC_BUILD_TESTS)
14666
14667 add_executable(mock_test
14668   test/cpp/end2end/mock_test.cc
14669   third_party/googletest/googletest/src/gtest-all.cc
14670   third_party/googletest/googlemock/src/gmock-all.cc
14671 )
14672
14673
14674 target_include_directories(mock_test
14675   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14676   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14677   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14678   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14679   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14680   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14681   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14682   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14683   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14684   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14685   PRIVATE third_party/googletest/googletest/include
14686   PRIVATE third_party/googletest/googletest
14687   PRIVATE third_party/googletest/googlemock/include
14688   PRIVATE third_party/googletest/googlemock
14689   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14690 )
14691
14692 target_link_libraries(mock_test
14693   ${_gRPC_PROTOBUF_LIBRARIES}
14694   ${_gRPC_ALLTARGETS_LIBRARIES}
14695   grpc++_test_util
14696   grpc_test_util
14697   grpc++
14698   grpc
14699   gpr
14700   ${_gRPC_GFLAGS_LIBRARIES}
14701 )
14702
14703
14704 endif (gRPC_BUILD_TESTS)
14705 if (gRPC_BUILD_TESTS)
14706
14707 add_executable(nonblocking_test
14708   test/cpp/end2end/nonblocking_test.cc
14709   third_party/googletest/googletest/src/gtest-all.cc
14710   third_party/googletest/googlemock/src/gmock-all.cc
14711 )
14712
14713
14714 target_include_directories(nonblocking_test
14715   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14716   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14717   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14718   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14719   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14720   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14721   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14722   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14723   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14724   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14725   PRIVATE third_party/googletest/googletest/include
14726   PRIVATE third_party/googletest/googletest
14727   PRIVATE third_party/googletest/googlemock/include
14728   PRIVATE third_party/googletest/googlemock
14729   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14730 )
14731
14732 target_link_libraries(nonblocking_test
14733   ${_gRPC_PROTOBUF_LIBRARIES}
14734   ${_gRPC_ALLTARGETS_LIBRARIES}
14735   grpc++_test_util
14736   grpc_test_util
14737   grpc++
14738   grpc
14739   gpr
14740   ${_gRPC_GFLAGS_LIBRARIES}
14741 )
14742
14743
14744 endif (gRPC_BUILD_TESTS)
14745 if (gRPC_BUILD_TESTS)
14746
14747 add_executable(noop-benchmark
14748   test/cpp/microbenchmarks/noop-benchmark.cc
14749   third_party/googletest/googletest/src/gtest-all.cc
14750   third_party/googletest/googlemock/src/gmock-all.cc
14751 )
14752
14753
14754 target_include_directories(noop-benchmark
14755   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14756   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14757   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14758   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14759   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14760   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14761   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14762   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14763   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14764   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14765   PRIVATE third_party/googletest/googletest/include
14766   PRIVATE third_party/googletest/googletest
14767   PRIVATE third_party/googletest/googlemock/include
14768   PRIVATE third_party/googletest/googlemock
14769   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14770 )
14771
14772 target_link_libraries(noop-benchmark
14773   ${_gRPC_PROTOBUF_LIBRARIES}
14774   ${_gRPC_ALLTARGETS_LIBRARIES}
14775   ${_gRPC_BENCHMARK_LIBRARIES}
14776   ${_gRPC_GFLAGS_LIBRARIES}
14777 )
14778
14779
14780 endif (gRPC_BUILD_TESTS)
14781 if (gRPC_BUILD_TESTS)
14782
14783 add_executable(optional_test
14784   test/core/gprpp/optional_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(optional_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(optional_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(orphanable_test
14823   test/core/gprpp/orphanable_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(orphanable_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(orphanable_test
14848   ${_gRPC_PROTOBUF_LIBRARIES}
14849   ${_gRPC_ALLTARGETS_LIBRARIES}
14850   grpc_test_util
14851   grpc++
14852   grpc
14853   gpr
14854   ${_gRPC_GFLAGS_LIBRARIES}
14855 )
14856
14857
14858 endif (gRPC_BUILD_TESTS)
14859 if (gRPC_BUILD_TESTS)
14860
14861 add_executable(port_sharing_end2end_test
14862   test/cpp/end2end/port_sharing_end2end_test.cc
14863   third_party/googletest/googletest/src/gtest-all.cc
14864   third_party/googletest/googlemock/src/gmock-all.cc
14865 )
14866
14867
14868 target_include_directories(port_sharing_end2end_test
14869   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14870   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14871   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14872   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14873   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14874   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14875   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14876   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14877   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14878   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14879   PRIVATE third_party/googletest/googletest/include
14880   PRIVATE third_party/googletest/googletest
14881   PRIVATE third_party/googletest/googlemock/include
14882   PRIVATE third_party/googletest/googlemock
14883   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14884 )
14885
14886 target_link_libraries(port_sharing_end2end_test
14887   ${_gRPC_PROTOBUF_LIBRARIES}
14888   ${_gRPC_ALLTARGETS_LIBRARIES}
14889   test_tcp_server
14890   grpc++_test_util
14891   grpc_test_util
14892   grpc++
14893   grpc
14894   gpr
14895   ${_gRPC_GFLAGS_LIBRARIES}
14896 )
14897
14898
14899 endif (gRPC_BUILD_TESTS)
14900 if (gRPC_BUILD_TESTS)
14901
14902 add_executable(proto_server_reflection_test
14903   test/cpp/end2end/proto_server_reflection_test.cc
14904   third_party/googletest/googletest/src/gtest-all.cc
14905   third_party/googletest/googlemock/src/gmock-all.cc
14906 )
14907
14908
14909 target_include_directories(proto_server_reflection_test
14910   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14911   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14912   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14913   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14914   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14915   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14916   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14917   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14918   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14919   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14920   PRIVATE third_party/googletest/googletest/include
14921   PRIVATE third_party/googletest/googletest
14922   PRIVATE third_party/googletest/googlemock/include
14923   PRIVATE third_party/googletest/googlemock
14924   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14925 )
14926
14927 target_link_libraries(proto_server_reflection_test
14928   ${_gRPC_PROTOBUF_LIBRARIES}
14929   ${_gRPC_ALLTARGETS_LIBRARIES}
14930   grpc++_proto_reflection_desc_db
14931   grpc++_reflection
14932   grpc++_test_util
14933   grpc_test_util
14934   grpc++
14935   grpc
14936   gpr
14937   ${_gRPC_GFLAGS_LIBRARIES}
14938 )
14939
14940
14941 endif (gRPC_BUILD_TESTS)
14942 if (gRPC_BUILD_TESTS)
14943
14944 add_executable(proto_utils_test
14945   test/cpp/codegen/proto_utils_test.cc
14946   third_party/googletest/googletest/src/gtest-all.cc
14947   third_party/googletest/googlemock/src/gmock-all.cc
14948 )
14949
14950
14951 target_include_directories(proto_utils_test
14952   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14953   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14954   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14955   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14956   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14957   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14958   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14959   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14960   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14961   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
14962   PRIVATE third_party/googletest/googletest/include
14963   PRIVATE third_party/googletest/googletest
14964   PRIVATE third_party/googletest/googlemock/include
14965   PRIVATE third_party/googletest/googlemock
14966   PRIVATE ${_gRPC_PROTO_GENS_DIR}
14967 )
14968
14969 target_link_libraries(proto_utils_test
14970   ${_gRPC_PROTOBUF_LIBRARIES}
14971   ${_gRPC_ALLTARGETS_LIBRARIES}
14972   grpc++
14973   grpc
14974   ${_gRPC_GFLAGS_LIBRARIES}
14975 )
14976
14977
14978 endif (gRPC_BUILD_TESTS)
14979 if (gRPC_BUILD_TESTS)
14980 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
14981
14982 add_executable(qps_interarrival_test
14983   test/cpp/qps/qps_interarrival_test.cc
14984   third_party/googletest/googletest/src/gtest-all.cc
14985   third_party/googletest/googlemock/src/gmock-all.cc
14986 )
14987
14988
14989 target_include_directories(qps_interarrival_test
14990   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
14991   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
14992   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
14993   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
14994   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
14995   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
14996   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
14997   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
14998   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
14999   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15000   PRIVATE third_party/googletest/googletest/include
15001   PRIVATE third_party/googletest/googletest
15002   PRIVATE third_party/googletest/googlemock/include
15003   PRIVATE third_party/googletest/googlemock
15004   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15005 )
15006
15007 target_link_libraries(qps_interarrival_test
15008   ${_gRPC_PROTOBUF_LIBRARIES}
15009   ${_gRPC_ALLTARGETS_LIBRARIES}
15010   qps
15011   grpc++_test_util
15012   grpc_test_util
15013   grpc++
15014   grpc
15015   gpr
15016   grpc++_test_config
15017   ${_gRPC_GFLAGS_LIBRARIES}
15018 )
15019
15020
15021 endif()
15022 endif (gRPC_BUILD_TESTS)
15023 if (gRPC_BUILD_TESTS)
15024
15025 add_executable(qps_json_driver
15026   test/cpp/qps/qps_json_driver.cc
15027   third_party/googletest/googletest/src/gtest-all.cc
15028   third_party/googletest/googlemock/src/gmock-all.cc
15029 )
15030
15031
15032 target_include_directories(qps_json_driver
15033   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15034   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15035   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15036   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15037   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15038   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15039   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15040   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15041   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15042   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15043   PRIVATE third_party/googletest/googletest/include
15044   PRIVATE third_party/googletest/googletest
15045   PRIVATE third_party/googletest/googlemock/include
15046   PRIVATE third_party/googletest/googlemock
15047   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15048 )
15049
15050 target_link_libraries(qps_json_driver
15051   ${_gRPC_PROTOBUF_LIBRARIES}
15052   ${_gRPC_ALLTARGETS_LIBRARIES}
15053   qps
15054   grpc++_core_stats
15055   grpc++_test_util
15056   grpc_test_util
15057   grpc++
15058   grpc
15059   gpr
15060   grpc++_test_config
15061   ${_gRPC_GFLAGS_LIBRARIES}
15062 )
15063
15064
15065 endif (gRPC_BUILD_TESTS)
15066 if (gRPC_BUILD_TESTS)
15067 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15068
15069 add_executable(qps_openloop_test
15070   test/cpp/qps/qps_openloop_test.cc
15071   third_party/googletest/googletest/src/gtest-all.cc
15072   third_party/googletest/googlemock/src/gmock-all.cc
15073 )
15074
15075
15076 target_include_directories(qps_openloop_test
15077   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15078   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15079   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15080   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15081   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15082   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15083   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15084   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15085   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15086   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15087   PRIVATE third_party/googletest/googletest/include
15088   PRIVATE third_party/googletest/googletest
15089   PRIVATE third_party/googletest/googlemock/include
15090   PRIVATE third_party/googletest/googlemock
15091   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15092 )
15093
15094 target_link_libraries(qps_openloop_test
15095   ${_gRPC_PROTOBUF_LIBRARIES}
15096   ${_gRPC_ALLTARGETS_LIBRARIES}
15097   qps
15098   grpc++_core_stats
15099   grpc++_test_util
15100   grpc_test_util
15101   grpc++
15102   grpc
15103   gpr
15104   grpc++_test_config
15105   ${_gRPC_GFLAGS_LIBRARIES}
15106 )
15107
15108
15109 endif()
15110 endif (gRPC_BUILD_TESTS)
15111 if (gRPC_BUILD_TESTS)
15112
15113 add_executable(qps_worker
15114   test/cpp/qps/worker.cc
15115   third_party/googletest/googletest/src/gtest-all.cc
15116   third_party/googletest/googlemock/src/gmock-all.cc
15117 )
15118
15119
15120 target_include_directories(qps_worker
15121   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15122   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15123   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15124   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15125   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15126   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15127   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15128   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15129   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15130   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15131   PRIVATE third_party/googletest/googletest/include
15132   PRIVATE third_party/googletest/googletest
15133   PRIVATE third_party/googletest/googlemock/include
15134   PRIVATE third_party/googletest/googlemock
15135   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15136 )
15137
15138 target_link_libraries(qps_worker
15139   ${_gRPC_PROTOBUF_LIBRARIES}
15140   ${_gRPC_ALLTARGETS_LIBRARIES}
15141   qps
15142   grpc++_core_stats
15143   grpc++_test_util
15144   grpc_test_util
15145   grpc++
15146   grpc
15147   gpr
15148   grpc++_test_config
15149   ${_gRPC_GFLAGS_LIBRARIES}
15150 )
15151
15152
15153 endif (gRPC_BUILD_TESTS)
15154 if (gRPC_BUILD_TESTS)
15155
15156 add_executable(raw_end2end_test
15157   test/cpp/end2end/raw_end2end_test.cc
15158   third_party/googletest/googletest/src/gtest-all.cc
15159   third_party/googletest/googlemock/src/gmock-all.cc
15160 )
15161
15162
15163 target_include_directories(raw_end2end_test
15164   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15165   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15166   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15167   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15168   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15169   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15170   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15171   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15172   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15173   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15174   PRIVATE third_party/googletest/googletest/include
15175   PRIVATE third_party/googletest/googletest
15176   PRIVATE third_party/googletest/googlemock/include
15177   PRIVATE third_party/googletest/googlemock
15178   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15179 )
15180
15181 target_link_libraries(raw_end2end_test
15182   ${_gRPC_PROTOBUF_LIBRARIES}
15183   ${_gRPC_ALLTARGETS_LIBRARIES}
15184   grpc++_test_util
15185   grpc_test_util
15186   grpc++
15187   grpc
15188   gpr
15189   ${_gRPC_GFLAGS_LIBRARIES}
15190 )
15191
15192
15193 endif (gRPC_BUILD_TESTS)
15194 if (gRPC_BUILD_TESTS)
15195
15196 add_executable(reconnect_interop_client
15197   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
15198   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
15199   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
15200   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
15201   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
15202   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
15203   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
15204   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
15205   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
15206   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
15207   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
15208   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
15209   test/cpp/interop/reconnect_interop_client.cc
15210   third_party/googletest/googletest/src/gtest-all.cc
15211   third_party/googletest/googlemock/src/gmock-all.cc
15212 )
15213
15214 protobuf_generate_grpc_cpp(
15215   src/proto/grpc/testing/empty.proto
15216 )
15217 protobuf_generate_grpc_cpp(
15218   src/proto/grpc/testing/messages.proto
15219 )
15220 protobuf_generate_grpc_cpp(
15221   src/proto/grpc/testing/test.proto
15222 )
15223
15224 target_include_directories(reconnect_interop_client
15225   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15226   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15227   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15228   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15229   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15230   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15231   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15232   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15233   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15234   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15235   PRIVATE third_party/googletest/googletest/include
15236   PRIVATE third_party/googletest/googletest
15237   PRIVATE third_party/googletest/googlemock/include
15238   PRIVATE third_party/googletest/googlemock
15239   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15240 )
15241
15242 target_link_libraries(reconnect_interop_client
15243   ${_gRPC_PROTOBUF_LIBRARIES}
15244   ${_gRPC_ALLTARGETS_LIBRARIES}
15245   grpc++_test_util
15246   grpc_test_util
15247   grpc++
15248   grpc
15249   gpr
15250   grpc++_test_config
15251   ${_gRPC_GFLAGS_LIBRARIES}
15252 )
15253
15254
15255 endif (gRPC_BUILD_TESTS)
15256 if (gRPC_BUILD_TESTS)
15257
15258 add_executable(reconnect_interop_server
15259   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
15260   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
15261   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
15262   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
15263   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
15264   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
15265   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
15266   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
15267   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
15268   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
15269   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
15270   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
15271   test/cpp/interop/reconnect_interop_server.cc
15272   third_party/googletest/googletest/src/gtest-all.cc
15273   third_party/googletest/googlemock/src/gmock-all.cc
15274 )
15275
15276 protobuf_generate_grpc_cpp(
15277   src/proto/grpc/testing/empty.proto
15278 )
15279 protobuf_generate_grpc_cpp(
15280   src/proto/grpc/testing/messages.proto
15281 )
15282 protobuf_generate_grpc_cpp(
15283   src/proto/grpc/testing/test.proto
15284 )
15285
15286 target_include_directories(reconnect_interop_server
15287   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15288   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15289   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15290   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15291   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15292   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15293   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15294   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15295   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15296   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15297   PRIVATE third_party/googletest/googletest/include
15298   PRIVATE third_party/googletest/googletest
15299   PRIVATE third_party/googletest/googlemock/include
15300   PRIVATE third_party/googletest/googlemock
15301   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15302 )
15303
15304 target_link_libraries(reconnect_interop_server
15305   ${_gRPC_PROTOBUF_LIBRARIES}
15306   ${_gRPC_ALLTARGETS_LIBRARIES}
15307   reconnect_server
15308   test_tcp_server
15309   grpc++_test_util
15310   grpc_test_util
15311   grpc++
15312   grpc
15313   gpr
15314   grpc++_test_config
15315   ${_gRPC_GFLAGS_LIBRARIES}
15316 )
15317
15318
15319 endif (gRPC_BUILD_TESTS)
15320 if (gRPC_BUILD_TESTS)
15321
15322 add_executable(ref_counted_ptr_test
15323   test/core/gprpp/ref_counted_ptr_test.cc
15324   third_party/googletest/googletest/src/gtest-all.cc
15325   third_party/googletest/googlemock/src/gmock-all.cc
15326 )
15327
15328
15329 target_include_directories(ref_counted_ptr_test
15330   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15331   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15332   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15333   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15334   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15335   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15336   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15337   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15338   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15339   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15340   PRIVATE third_party/googletest/googletest/include
15341   PRIVATE third_party/googletest/googletest
15342   PRIVATE third_party/googletest/googlemock/include
15343   PRIVATE third_party/googletest/googlemock
15344   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15345 )
15346
15347 target_link_libraries(ref_counted_ptr_test
15348   ${_gRPC_PROTOBUF_LIBRARIES}
15349   ${_gRPC_ALLTARGETS_LIBRARIES}
15350   grpc_test_util
15351   grpc++
15352   grpc
15353   gpr
15354   ${_gRPC_GFLAGS_LIBRARIES}
15355 )
15356
15357
15358 endif (gRPC_BUILD_TESTS)
15359 if (gRPC_BUILD_TESTS)
15360
15361 add_executable(ref_counted_test
15362   test/core/gprpp/ref_counted_test.cc
15363   third_party/googletest/googletest/src/gtest-all.cc
15364   third_party/googletest/googlemock/src/gmock-all.cc
15365 )
15366
15367
15368 target_include_directories(ref_counted_test
15369   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15370   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15371   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15372   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15373   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15374   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15375   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15376   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15377   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15378   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15379   PRIVATE third_party/googletest/googletest/include
15380   PRIVATE third_party/googletest/googletest
15381   PRIVATE third_party/googletest/googlemock/include
15382   PRIVATE third_party/googletest/googlemock
15383   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15384 )
15385
15386 target_link_libraries(ref_counted_test
15387   ${_gRPC_PROTOBUF_LIBRARIES}
15388   ${_gRPC_ALLTARGETS_LIBRARIES}
15389   grpc_test_util
15390   grpc++
15391   grpc
15392   gpr
15393   ${_gRPC_GFLAGS_LIBRARIES}
15394 )
15395
15396
15397 endif (gRPC_BUILD_TESTS)
15398 if (gRPC_BUILD_TESTS)
15399
15400 add_executable(retry_throttle_test
15401   test/core/client_channel/retry_throttle_test.cc
15402   third_party/googletest/googletest/src/gtest-all.cc
15403   third_party/googletest/googlemock/src/gmock-all.cc
15404 )
15405
15406
15407 target_include_directories(retry_throttle_test
15408   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15409   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15410   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15411   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15412   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15413   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15414   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15415   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15416   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15417   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15418   PRIVATE third_party/googletest/googletest/include
15419   PRIVATE third_party/googletest/googletest
15420   PRIVATE third_party/googletest/googlemock/include
15421   PRIVATE third_party/googletest/googlemock
15422   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15423 )
15424
15425 target_link_libraries(retry_throttle_test
15426   ${_gRPC_PROTOBUF_LIBRARIES}
15427   ${_gRPC_ALLTARGETS_LIBRARIES}
15428   grpc_test_util
15429   grpc
15430   gpr
15431   ${_gRPC_GFLAGS_LIBRARIES}
15432 )
15433
15434
15435 endif (gRPC_BUILD_TESTS)
15436 if (gRPC_BUILD_TESTS)
15437
15438 add_executable(secure_auth_context_test
15439   test/cpp/common/secure_auth_context_test.cc
15440   third_party/googletest/googletest/src/gtest-all.cc
15441   third_party/googletest/googlemock/src/gmock-all.cc
15442 )
15443
15444
15445 target_include_directories(secure_auth_context_test
15446   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15447   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15448   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15449   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15450   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15451   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15452   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15453   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15454   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15455   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15456   PRIVATE third_party/googletest/googletest/include
15457   PRIVATE third_party/googletest/googletest
15458   PRIVATE third_party/googletest/googlemock/include
15459   PRIVATE third_party/googletest/googlemock
15460   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15461 )
15462
15463 target_link_libraries(secure_auth_context_test
15464   ${_gRPC_PROTOBUF_LIBRARIES}
15465   ${_gRPC_ALLTARGETS_LIBRARIES}
15466   grpc++_test_util
15467   grpc_test_util
15468   grpc++
15469   grpc
15470   gpr
15471   ${_gRPC_GFLAGS_LIBRARIES}
15472 )
15473
15474
15475 endif (gRPC_BUILD_TESTS)
15476 if (gRPC_BUILD_TESTS)
15477 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15478
15479 add_executable(secure_sync_unary_ping_pong_test
15480   test/cpp/qps/secure_sync_unary_ping_pong_test.cc
15481   third_party/googletest/googletest/src/gtest-all.cc
15482   third_party/googletest/googlemock/src/gmock-all.cc
15483 )
15484
15485
15486 target_include_directories(secure_sync_unary_ping_pong_test
15487   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15488   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15489   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15490   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15491   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15492   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15493   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15494   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15495   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15496   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15497   PRIVATE third_party/googletest/googletest/include
15498   PRIVATE third_party/googletest/googletest
15499   PRIVATE third_party/googletest/googlemock/include
15500   PRIVATE third_party/googletest/googlemock
15501   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15502 )
15503
15504 target_link_libraries(secure_sync_unary_ping_pong_test
15505   ${_gRPC_PROTOBUF_LIBRARIES}
15506   ${_gRPC_ALLTARGETS_LIBRARIES}
15507   qps
15508   grpc++_core_stats
15509   grpc++_test_util
15510   grpc_test_util
15511   grpc++
15512   grpc
15513   gpr
15514   grpc++_test_config
15515   ${_gRPC_GFLAGS_LIBRARIES}
15516 )
15517
15518
15519 endif()
15520 endif (gRPC_BUILD_TESTS)
15521 if (gRPC_BUILD_TESTS)
15522
15523 add_executable(server_builder_plugin_test
15524   test/cpp/end2end/server_builder_plugin_test.cc
15525   third_party/googletest/googletest/src/gtest-all.cc
15526   third_party/googletest/googlemock/src/gmock-all.cc
15527 )
15528
15529
15530 target_include_directories(server_builder_plugin_test
15531   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15532   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15533   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15534   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15535   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15536   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15537   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15538   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15539   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15540   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15541   PRIVATE third_party/googletest/googletest/include
15542   PRIVATE third_party/googletest/googletest
15543   PRIVATE third_party/googletest/googlemock/include
15544   PRIVATE third_party/googletest/googlemock
15545   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15546 )
15547
15548 target_link_libraries(server_builder_plugin_test
15549   ${_gRPC_PROTOBUF_LIBRARIES}
15550   ${_gRPC_ALLTARGETS_LIBRARIES}
15551   grpc++_test_util
15552   grpc_test_util
15553   grpc++
15554   grpc
15555   gpr
15556   ${_gRPC_GFLAGS_LIBRARIES}
15557 )
15558
15559
15560 endif (gRPC_BUILD_TESTS)
15561 if (gRPC_BUILD_TESTS)
15562
15563 add_executable(server_builder_test
15564   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
15565   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
15566   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
15567   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
15568   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
15569   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
15570   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
15571   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
15572   test/cpp/server/server_builder_test.cc
15573   third_party/googletest/googletest/src/gtest-all.cc
15574   third_party/googletest/googlemock/src/gmock-all.cc
15575 )
15576
15577 protobuf_generate_grpc_cpp(
15578   src/proto/grpc/testing/echo_messages.proto
15579 )
15580 protobuf_generate_grpc_cpp(
15581   src/proto/grpc/testing/echo.proto
15582 )
15583
15584 target_include_directories(server_builder_test
15585   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15586   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15587   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15588   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15589   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15590   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15591   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15592   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15593   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15594   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15595   PRIVATE third_party/googletest/googletest/include
15596   PRIVATE third_party/googletest/googletest
15597   PRIVATE third_party/googletest/googlemock/include
15598   PRIVATE third_party/googletest/googlemock
15599   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15600 )
15601
15602 target_link_libraries(server_builder_test
15603   ${_gRPC_PROTOBUF_LIBRARIES}
15604   ${_gRPC_ALLTARGETS_LIBRARIES}
15605   grpc++_test_util_unsecure
15606   grpc_test_util_unsecure
15607   grpc++_unsecure
15608   grpc_unsecure
15609   gpr
15610   ${_gRPC_GFLAGS_LIBRARIES}
15611 )
15612
15613
15614 endif (gRPC_BUILD_TESTS)
15615 if (gRPC_BUILD_TESTS)
15616 if(_gRPC_PLATFORM_POSIX)
15617
15618 add_executable(server_builder_with_socket_mutator_test
15619   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
15620   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
15621   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
15622   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
15623   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
15624   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
15625   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
15626   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
15627   test/cpp/server/server_builder_with_socket_mutator_test.cc
15628   third_party/googletest/googletest/src/gtest-all.cc
15629   third_party/googletest/googlemock/src/gmock-all.cc
15630 )
15631
15632 protobuf_generate_grpc_cpp(
15633   src/proto/grpc/testing/echo_messages.proto
15634 )
15635 protobuf_generate_grpc_cpp(
15636   src/proto/grpc/testing/echo.proto
15637 )
15638
15639 target_include_directories(server_builder_with_socket_mutator_test
15640   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15641   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15642   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15643   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15644   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15645   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15646   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15647   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15648   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15649   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15650   PRIVATE third_party/googletest/googletest/include
15651   PRIVATE third_party/googletest/googletest
15652   PRIVATE third_party/googletest/googlemock/include
15653   PRIVATE third_party/googletest/googlemock
15654   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15655 )
15656
15657 target_link_libraries(server_builder_with_socket_mutator_test
15658   ${_gRPC_PROTOBUF_LIBRARIES}
15659   ${_gRPC_ALLTARGETS_LIBRARIES}
15660   grpc++_test_util_unsecure
15661   grpc_test_util_unsecure
15662   grpc++_unsecure
15663   grpc_unsecure
15664   gpr
15665   ${_gRPC_GFLAGS_LIBRARIES}
15666 )
15667
15668
15669 endif()
15670 endif (gRPC_BUILD_TESTS)
15671 if (gRPC_BUILD_TESTS)
15672
15673 add_executable(server_context_test_spouse_test
15674   test/cpp/test/server_context_test_spouse_test.cc
15675   third_party/googletest/googletest/src/gtest-all.cc
15676   third_party/googletest/googlemock/src/gmock-all.cc
15677 )
15678
15679
15680 target_include_directories(server_context_test_spouse_test
15681   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15682   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15683   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15684   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15685   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15686   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15687   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15688   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15689   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15690   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15691   PRIVATE third_party/googletest/googletest/include
15692   PRIVATE third_party/googletest/googletest
15693   PRIVATE third_party/googletest/googlemock/include
15694   PRIVATE third_party/googletest/googlemock
15695   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15696 )
15697
15698 target_link_libraries(server_context_test_spouse_test
15699   ${_gRPC_PROTOBUF_LIBRARIES}
15700   ${_gRPC_ALLTARGETS_LIBRARIES}
15701   grpc_test_util
15702   grpc++
15703   grpc
15704   gpr
15705   ${_gRPC_GFLAGS_LIBRARIES}
15706 )
15707
15708
15709 endif (gRPC_BUILD_TESTS)
15710 if (gRPC_BUILD_TESTS)
15711 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
15712
15713 add_executable(server_crash_test
15714   test/cpp/end2end/server_crash_test.cc
15715   third_party/googletest/googletest/src/gtest-all.cc
15716   third_party/googletest/googlemock/src/gmock-all.cc
15717 )
15718
15719
15720 target_include_directories(server_crash_test
15721   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15722   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15723   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15724   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15725   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15726   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15727   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15728   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15729   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15730   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15731   PRIVATE third_party/googletest/googletest/include
15732   PRIVATE third_party/googletest/googletest
15733   PRIVATE third_party/googletest/googlemock/include
15734   PRIVATE third_party/googletest/googlemock
15735   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15736 )
15737
15738 target_link_libraries(server_crash_test
15739   ${_gRPC_PROTOBUF_LIBRARIES}
15740   ${_gRPC_ALLTARGETS_LIBRARIES}
15741   grpc++_test_util
15742   grpc_test_util
15743   grpc++
15744   grpc
15745   gpr
15746   ${_gRPC_GFLAGS_LIBRARIES}
15747 )
15748
15749
15750 endif()
15751 endif (gRPC_BUILD_TESTS)
15752 if (gRPC_BUILD_TESTS)
15753
15754 add_executable(server_crash_test_client
15755   test/cpp/end2end/server_crash_test_client.cc
15756   third_party/googletest/googletest/src/gtest-all.cc
15757   third_party/googletest/googlemock/src/gmock-all.cc
15758 )
15759
15760
15761 target_include_directories(server_crash_test_client
15762   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15763   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15764   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15765   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15766   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15767   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15768   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15769   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15770   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15771   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15772   PRIVATE third_party/googletest/googletest/include
15773   PRIVATE third_party/googletest/googletest
15774   PRIVATE third_party/googletest/googlemock/include
15775   PRIVATE third_party/googletest/googlemock
15776   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15777 )
15778
15779 target_link_libraries(server_crash_test_client
15780   ${_gRPC_PROTOBUF_LIBRARIES}
15781   ${_gRPC_ALLTARGETS_LIBRARIES}
15782   grpc++_test_config
15783   grpc++_test_util
15784   grpc_test_util
15785   grpc++
15786   grpc
15787   gpr
15788   ${_gRPC_GFLAGS_LIBRARIES}
15789 )
15790
15791
15792 endif (gRPC_BUILD_TESTS)
15793 if (gRPC_BUILD_TESTS)
15794
15795 add_executable(server_early_return_test
15796   test/cpp/end2end/server_early_return_test.cc
15797   third_party/googletest/googletest/src/gtest-all.cc
15798   third_party/googletest/googlemock/src/gmock-all.cc
15799 )
15800
15801
15802 target_include_directories(server_early_return_test
15803   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15804   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15805   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15806   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15807   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15808   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15809   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15810   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15811   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15812   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15813   PRIVATE third_party/googletest/googletest/include
15814   PRIVATE third_party/googletest/googletest
15815   PRIVATE third_party/googletest/googlemock/include
15816   PRIVATE third_party/googletest/googlemock
15817   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15818 )
15819
15820 target_link_libraries(server_early_return_test
15821   ${_gRPC_PROTOBUF_LIBRARIES}
15822   ${_gRPC_ALLTARGETS_LIBRARIES}
15823   grpc++_test_util
15824   grpc_test_util
15825   grpc++
15826   grpc
15827   gpr
15828   ${_gRPC_GFLAGS_LIBRARIES}
15829 )
15830
15831
15832 endif (gRPC_BUILD_TESTS)
15833 if (gRPC_BUILD_TESTS)
15834
15835 add_executable(server_interceptors_end2end_test
15836   test/cpp/end2end/interceptors_util.cc
15837   test/cpp/end2end/server_interceptors_end2end_test.cc
15838   third_party/googletest/googletest/src/gtest-all.cc
15839   third_party/googletest/googlemock/src/gmock-all.cc
15840 )
15841
15842
15843 target_include_directories(server_interceptors_end2end_test
15844   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15845   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15846   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15847   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15848   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15849   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15850   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15851   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15852   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15853   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15854   PRIVATE third_party/googletest/googletest/include
15855   PRIVATE third_party/googletest/googletest
15856   PRIVATE third_party/googletest/googlemock/include
15857   PRIVATE third_party/googletest/googlemock
15858   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15859 )
15860
15861 target_link_libraries(server_interceptors_end2end_test
15862   ${_gRPC_PROTOBUF_LIBRARIES}
15863   ${_gRPC_ALLTARGETS_LIBRARIES}
15864   grpc++_test_util
15865   grpc_test_util
15866   grpc++
15867   grpc
15868   gpr
15869   ${_gRPC_GFLAGS_LIBRARIES}
15870 )
15871
15872
15873 endif (gRPC_BUILD_TESTS)
15874 if (gRPC_BUILD_TESTS)
15875
15876 add_executable(server_request_call_test
15877   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc
15878   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc
15879   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h
15880   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h
15881   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc
15882   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc
15883   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h
15884   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h
15885   test/cpp/server/server_request_call_test.cc
15886   third_party/googletest/googletest/src/gtest-all.cc
15887   third_party/googletest/googlemock/src/gmock-all.cc
15888 )
15889
15890 protobuf_generate_grpc_cpp(
15891   src/proto/grpc/testing/echo_messages.proto
15892 )
15893 protobuf_generate_grpc_cpp(
15894   src/proto/grpc/testing/echo.proto
15895 )
15896
15897 target_include_directories(server_request_call_test
15898   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15899   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15900   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15901   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15902   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15903   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15904   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15905   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15906   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15907   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15908   PRIVATE third_party/googletest/googletest/include
15909   PRIVATE third_party/googletest/googletest
15910   PRIVATE third_party/googletest/googlemock/include
15911   PRIVATE third_party/googletest/googlemock
15912   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15913 )
15914
15915 target_link_libraries(server_request_call_test
15916   ${_gRPC_PROTOBUF_LIBRARIES}
15917   ${_gRPC_ALLTARGETS_LIBRARIES}
15918   grpc++_test_util_unsecure
15919   grpc_test_util_unsecure
15920   grpc++_unsecure
15921   grpc_unsecure
15922   gpr
15923   ${_gRPC_GFLAGS_LIBRARIES}
15924 )
15925
15926
15927 endif (gRPC_BUILD_TESTS)
15928 if (gRPC_BUILD_TESTS)
15929
15930 add_executable(service_config_end2end_test
15931   test/cpp/end2end/service_config_end2end_test.cc
15932   third_party/googletest/googletest/src/gtest-all.cc
15933   third_party/googletest/googlemock/src/gmock-all.cc
15934 )
15935
15936
15937 target_include_directories(service_config_end2end_test
15938   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15939   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15940   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15941   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15942   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15943   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15944   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15945   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15946   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15947   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15948   PRIVATE third_party/googletest/googletest/include
15949   PRIVATE third_party/googletest/googletest
15950   PRIVATE third_party/googletest/googlemock/include
15951   PRIVATE third_party/googletest/googlemock
15952   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15953 )
15954
15955 target_link_libraries(service_config_end2end_test
15956   ${_gRPC_PROTOBUF_LIBRARIES}
15957   ${_gRPC_ALLTARGETS_LIBRARIES}
15958   grpc++_test_util
15959   grpc_test_util
15960   grpc++
15961   grpc
15962   gpr
15963   ${_gRPC_GFLAGS_LIBRARIES}
15964 )
15965
15966
15967 endif (gRPC_BUILD_TESTS)
15968 if (gRPC_BUILD_TESTS)
15969
15970 add_executable(service_config_test
15971   test/core/client_channel/service_config_test.cc
15972   third_party/googletest/googletest/src/gtest-all.cc
15973   third_party/googletest/googlemock/src/gmock-all.cc
15974 )
15975
15976
15977 target_include_directories(service_config_test
15978   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
15979   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
15980   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
15981   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
15982   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
15983   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
15984   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
15985   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
15986   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
15987   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
15988   PRIVATE third_party/googletest/googletest/include
15989   PRIVATE third_party/googletest/googletest
15990   PRIVATE third_party/googletest/googlemock/include
15991   PRIVATE third_party/googletest/googlemock
15992   PRIVATE ${_gRPC_PROTO_GENS_DIR}
15993 )
15994
15995 target_link_libraries(service_config_test
15996   ${_gRPC_PROTOBUF_LIBRARIES}
15997   ${_gRPC_ALLTARGETS_LIBRARIES}
15998   grpc_test_util
15999   grpc++
16000   grpc
16001   gpr
16002   ${_gRPC_GFLAGS_LIBRARIES}
16003 )
16004
16005
16006 endif (gRPC_BUILD_TESTS)
16007 if (gRPC_BUILD_TESTS)
16008
16009 add_executable(shutdown_test
16010   test/cpp/end2end/shutdown_test.cc
16011   third_party/googletest/googletest/src/gtest-all.cc
16012   third_party/googletest/googlemock/src/gmock-all.cc
16013 )
16014
16015
16016 target_include_directories(shutdown_test
16017   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16018   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16019   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16020   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16021   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16022   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16023   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16024   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16025   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16026   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16027   PRIVATE third_party/googletest/googletest/include
16028   PRIVATE third_party/googletest/googletest
16029   PRIVATE third_party/googletest/googlemock/include
16030   PRIVATE third_party/googletest/googlemock
16031   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16032 )
16033
16034 target_link_libraries(shutdown_test
16035   ${_gRPC_PROTOBUF_LIBRARIES}
16036   ${_gRPC_ALLTARGETS_LIBRARIES}
16037   grpc++_test_util
16038   grpc_test_util
16039   grpc++
16040   grpc
16041   gpr
16042   ${_gRPC_GFLAGS_LIBRARIES}
16043 )
16044
16045
16046 endif (gRPC_BUILD_TESTS)
16047 if (gRPC_BUILD_TESTS)
16048
16049 add_executable(slice_hash_table_test
16050   test/core/slice/slice_hash_table_test.cc
16051   third_party/googletest/googletest/src/gtest-all.cc
16052   third_party/googletest/googlemock/src/gmock-all.cc
16053 )
16054
16055
16056 target_include_directories(slice_hash_table_test
16057   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16058   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16059   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16060   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16061   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16062   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16063   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16064   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16065   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16066   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16067   PRIVATE third_party/googletest/googletest/include
16068   PRIVATE third_party/googletest/googletest
16069   PRIVATE third_party/googletest/googlemock/include
16070   PRIVATE third_party/googletest/googlemock
16071   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16072 )
16073
16074 target_link_libraries(slice_hash_table_test
16075   ${_gRPC_PROTOBUF_LIBRARIES}
16076   ${_gRPC_ALLTARGETS_LIBRARIES}
16077   grpc_test_util
16078   grpc
16079   gpr
16080   ${_gRPC_GFLAGS_LIBRARIES}
16081 )
16082
16083
16084 endif (gRPC_BUILD_TESTS)
16085 if (gRPC_BUILD_TESTS)
16086
16087 add_executable(slice_weak_hash_table_test
16088   test/core/slice/slice_weak_hash_table_test.cc
16089   third_party/googletest/googletest/src/gtest-all.cc
16090   third_party/googletest/googlemock/src/gmock-all.cc
16091 )
16092
16093
16094 target_include_directories(slice_weak_hash_table_test
16095   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16096   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16097   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16098   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16099   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16100   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16101   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16102   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16103   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16104   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16105   PRIVATE third_party/googletest/googletest/include
16106   PRIVATE third_party/googletest/googletest
16107   PRIVATE third_party/googletest/googlemock/include
16108   PRIVATE third_party/googletest/googlemock
16109   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16110 )
16111
16112 target_link_libraries(slice_weak_hash_table_test
16113   ${_gRPC_PROTOBUF_LIBRARIES}
16114   ${_gRPC_ALLTARGETS_LIBRARIES}
16115   grpc_test_util
16116   grpc
16117   gpr
16118   ${_gRPC_GFLAGS_LIBRARIES}
16119 )
16120
16121
16122 endif (gRPC_BUILD_TESTS)
16123 if (gRPC_BUILD_TESTS)
16124
16125 add_executable(stats_test
16126   test/core/debug/stats_test.cc
16127   third_party/googletest/googletest/src/gtest-all.cc
16128   third_party/googletest/googlemock/src/gmock-all.cc
16129 )
16130
16131
16132 target_include_directories(stats_test
16133   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16134   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16135   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16136   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16137   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16138   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16139   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16140   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16141   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16142   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16143   PRIVATE third_party/googletest/googletest/include
16144   PRIVATE third_party/googletest/googletest
16145   PRIVATE third_party/googletest/googlemock/include
16146   PRIVATE third_party/googletest/googlemock
16147   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16148 )
16149
16150 target_link_libraries(stats_test
16151   ${_gRPC_PROTOBUF_LIBRARIES}
16152   ${_gRPC_ALLTARGETS_LIBRARIES}
16153   grpc++_test_util
16154   grpc_test_util
16155   grpc
16156   gpr
16157   ${_gRPC_GFLAGS_LIBRARIES}
16158 )
16159
16160
16161 endif (gRPC_BUILD_TESTS)
16162 if (gRPC_BUILD_TESTS)
16163
16164 add_executable(status_metadata_test
16165   test/core/transport/status_metadata_test.cc
16166   third_party/googletest/googletest/src/gtest-all.cc
16167   third_party/googletest/googlemock/src/gmock-all.cc
16168 )
16169
16170
16171 target_include_directories(status_metadata_test
16172   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16173   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16174   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16175   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16176   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16177   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16178   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16179   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16180   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16181   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16182   PRIVATE third_party/googletest/googletest/include
16183   PRIVATE third_party/googletest/googletest
16184   PRIVATE third_party/googletest/googlemock/include
16185   PRIVATE third_party/googletest/googlemock
16186   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16187 )
16188
16189 target_link_libraries(status_metadata_test
16190   ${_gRPC_PROTOBUF_LIBRARIES}
16191   ${_gRPC_ALLTARGETS_LIBRARIES}
16192   grpc
16193   ${_gRPC_GFLAGS_LIBRARIES}
16194 )
16195
16196
16197 endif (gRPC_BUILD_TESTS)
16198 if (gRPC_BUILD_TESTS)
16199
16200 add_executable(status_util_test
16201   test/core/channel/status_util_test.cc
16202   third_party/googletest/googletest/src/gtest-all.cc
16203   third_party/googletest/googlemock/src/gmock-all.cc
16204 )
16205
16206
16207 target_include_directories(status_util_test
16208   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16209   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16210   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16211   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16212   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16213   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16214   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16215   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16216   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16217   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16218   PRIVATE third_party/googletest/googletest/include
16219   PRIVATE third_party/googletest/googletest
16220   PRIVATE third_party/googletest/googlemock/include
16221   PRIVATE third_party/googletest/googlemock
16222   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16223 )
16224
16225 target_link_libraries(status_util_test
16226   ${_gRPC_PROTOBUF_LIBRARIES}
16227   ${_gRPC_ALLTARGETS_LIBRARIES}
16228   grpc
16229   ${_gRPC_GFLAGS_LIBRARIES}
16230 )
16231
16232
16233 endif (gRPC_BUILD_TESTS)
16234 if (gRPC_BUILD_TESTS)
16235 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
16236
16237 add_executable(streaming_throughput_test
16238   test/cpp/end2end/streaming_throughput_test.cc
16239   third_party/googletest/googletest/src/gtest-all.cc
16240   third_party/googletest/googlemock/src/gmock-all.cc
16241 )
16242
16243
16244 target_include_directories(streaming_throughput_test
16245   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16246   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16247   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16248   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16249   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16250   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16251   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16252   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16253   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16254   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16255   PRIVATE third_party/googletest/googletest/include
16256   PRIVATE third_party/googletest/googletest
16257   PRIVATE third_party/googletest/googlemock/include
16258   PRIVATE third_party/googletest/googlemock
16259   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16260 )
16261
16262 target_link_libraries(streaming_throughput_test
16263   ${_gRPC_PROTOBUF_LIBRARIES}
16264   ${_gRPC_ALLTARGETS_LIBRARIES}
16265   grpc++_test_util
16266   grpc_test_util
16267   grpc++
16268   grpc
16269   gpr
16270   ${_gRPC_GFLAGS_LIBRARIES}
16271 )
16272
16273
16274 endif()
16275 endif (gRPC_BUILD_TESTS)
16276 if (gRPC_BUILD_TESTS)
16277
16278 add_executable(stress_test
16279   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc
16280   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc
16281   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.h
16282   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.h
16283   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.cc
16284   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.cc
16285   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.pb.h
16286   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/messages.grpc.pb.h
16287   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.cc
16288   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.cc
16289   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.pb.h
16290   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/metrics.grpc.pb.h
16291   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.cc
16292   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.cc
16293   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.pb.h
16294   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/test.grpc.pb.h
16295   test/cpp/interop/interop_client.cc
16296   test/cpp/interop/stress_interop_client.cc
16297   test/cpp/interop/stress_test.cc
16298   test/cpp/util/metrics_server.cc
16299   third_party/googletest/googletest/src/gtest-all.cc
16300   third_party/googletest/googlemock/src/gmock-all.cc
16301 )
16302
16303 protobuf_generate_grpc_cpp(
16304   src/proto/grpc/testing/empty.proto
16305 )
16306 protobuf_generate_grpc_cpp(
16307   src/proto/grpc/testing/messages.proto
16308 )
16309 protobuf_generate_grpc_cpp(
16310   src/proto/grpc/testing/metrics.proto
16311 )
16312 protobuf_generate_grpc_cpp(
16313   src/proto/grpc/testing/test.proto
16314 )
16315
16316 target_include_directories(stress_test
16317   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16318   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16319   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16320   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16321   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16322   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16323   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16324   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16325   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16326   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16327   PRIVATE third_party/googletest/googletest/include
16328   PRIVATE third_party/googletest/googletest
16329   PRIVATE third_party/googletest/googlemock/include
16330   PRIVATE third_party/googletest/googlemock
16331   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16332 )
16333
16334 target_link_libraries(stress_test
16335   ${_gRPC_PROTOBUF_LIBRARIES}
16336   ${_gRPC_ALLTARGETS_LIBRARIES}
16337   grpc++_test_util
16338   grpc_test_util
16339   grpc++
16340   grpc
16341   gpr
16342   grpc++_test_config
16343   ${_gRPC_GFLAGS_LIBRARIES}
16344 )
16345
16346
16347 endif (gRPC_BUILD_TESTS)
16348 if (gRPC_BUILD_TESTS)
16349
16350 add_executable(string_view_test
16351   test/core/gprpp/string_view_test.cc
16352   third_party/googletest/googletest/src/gtest-all.cc
16353   third_party/googletest/googlemock/src/gmock-all.cc
16354 )
16355
16356
16357 target_include_directories(string_view_test
16358   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16359   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16360   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16361   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16362   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16363   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16364   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16365   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16366   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16367   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16368   PRIVATE third_party/googletest/googletest/include
16369   PRIVATE third_party/googletest/googletest
16370   PRIVATE third_party/googletest/googlemock/include
16371   PRIVATE third_party/googletest/googlemock
16372   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16373 )
16374
16375 target_link_libraries(string_view_test
16376   ${_gRPC_PROTOBUF_LIBRARIES}
16377   ${_gRPC_ALLTARGETS_LIBRARIES}
16378   grpc_test_util
16379   grpc++
16380   grpc
16381   gpr
16382   ${_gRPC_GFLAGS_LIBRARIES}
16383 )
16384
16385
16386 endif (gRPC_BUILD_TESTS)
16387 if (gRPC_BUILD_TESTS)
16388
16389 add_executable(thread_manager_test
16390   test/cpp/thread_manager/thread_manager_test.cc
16391   third_party/googletest/googletest/src/gtest-all.cc
16392   third_party/googletest/googlemock/src/gmock-all.cc
16393 )
16394
16395
16396 target_include_directories(thread_manager_test
16397   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16398   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16399   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16400   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16401   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16402   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16403   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16404   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16405   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16406   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16407   PRIVATE third_party/googletest/googletest/include
16408   PRIVATE third_party/googletest/googletest
16409   PRIVATE third_party/googletest/googlemock/include
16410   PRIVATE third_party/googletest/googlemock
16411   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16412 )
16413
16414 target_link_libraries(thread_manager_test
16415   ${_gRPC_PROTOBUF_LIBRARIES}
16416   ${_gRPC_ALLTARGETS_LIBRARIES}
16417   grpc++_unsecure
16418   grpc_unsecure
16419   gpr
16420   grpc++_test_config
16421   ${_gRPC_GFLAGS_LIBRARIES}
16422 )
16423
16424
16425 endif (gRPC_BUILD_TESTS)
16426 if (gRPC_BUILD_TESTS)
16427
16428 add_executable(thread_stress_test
16429   test/cpp/end2end/thread_stress_test.cc
16430   third_party/googletest/googletest/src/gtest-all.cc
16431   third_party/googletest/googlemock/src/gmock-all.cc
16432 )
16433
16434
16435 target_include_directories(thread_stress_test
16436   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16437   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16438   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16439   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16440   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16441   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16442   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16443   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16444   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16445   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16446   PRIVATE third_party/googletest/googletest/include
16447   PRIVATE third_party/googletest/googletest
16448   PRIVATE third_party/googletest/googlemock/include
16449   PRIVATE third_party/googletest/googlemock
16450   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16451 )
16452
16453 target_link_libraries(thread_stress_test
16454   ${_gRPC_PROTOBUF_LIBRARIES}
16455   ${_gRPC_ALLTARGETS_LIBRARIES}
16456   grpc++_test_util_unsecure
16457   grpc_test_util_unsecure
16458   grpc++_unsecure
16459   grpc_unsecure
16460   gpr
16461   ${_gRPC_GFLAGS_LIBRARIES}
16462 )
16463
16464
16465 endif (gRPC_BUILD_TESTS)
16466 if (gRPC_BUILD_TESTS)
16467 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
16468
16469 add_executable(time_change_test
16470   test/cpp/end2end/time_change_test.cc
16471   third_party/googletest/googletest/src/gtest-all.cc
16472   third_party/googletest/googlemock/src/gmock-all.cc
16473 )
16474
16475
16476 target_include_directories(time_change_test
16477   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16478   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16479   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16480   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16481   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16482   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16483   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16484   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16485   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16486   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16487   PRIVATE third_party/googletest/googletest/include
16488   PRIVATE third_party/googletest/googletest
16489   PRIVATE third_party/googletest/googlemock/include
16490   PRIVATE third_party/googletest/googlemock
16491   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16492 )
16493
16494 target_link_libraries(time_change_test
16495   ${_gRPC_PROTOBUF_LIBRARIES}
16496   ${_gRPC_ALLTARGETS_LIBRARIES}
16497   grpc++_test_util
16498   grpc_test_util
16499   grpc++
16500   grpc
16501   gpr
16502   ${_gRPC_GFLAGS_LIBRARIES}
16503 )
16504
16505
16506 endif()
16507 endif (gRPC_BUILD_TESTS)
16508 if (gRPC_BUILD_TESTS)
16509
16510 add_executable(transport_pid_controller_test
16511   test/core/transport/pid_controller_test.cc
16512   third_party/googletest/googletest/src/gtest-all.cc
16513   third_party/googletest/googlemock/src/gmock-all.cc
16514 )
16515
16516
16517 target_include_directories(transport_pid_controller_test
16518   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16519   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16520   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16521   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16522   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16523   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16524   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16525   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16526   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16527   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16528   PRIVATE third_party/googletest/googletest/include
16529   PRIVATE third_party/googletest/googletest
16530   PRIVATE third_party/googletest/googlemock/include
16531   PRIVATE third_party/googletest/googlemock
16532   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16533 )
16534
16535 target_link_libraries(transport_pid_controller_test
16536   ${_gRPC_PROTOBUF_LIBRARIES}
16537   ${_gRPC_ALLTARGETS_LIBRARIES}
16538   grpc++_test_util
16539   grpc++
16540   grpc_test_util
16541   grpc
16542   gpr
16543   ${_gRPC_GFLAGS_LIBRARIES}
16544 )
16545
16546
16547 endif (gRPC_BUILD_TESTS)
16548 if (gRPC_BUILD_TESTS)
16549
16550 add_executable(transport_security_common_api_test
16551   test/core/tsi/alts/handshaker/transport_security_common_api_test.cc
16552   third_party/googletest/googletest/src/gtest-all.cc
16553   third_party/googletest/googlemock/src/gmock-all.cc
16554 )
16555
16556
16557 target_include_directories(transport_security_common_api_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(transport_security_common_api_test
16576   ${_gRPC_PROTOBUF_LIBRARIES}
16577   ${_gRPC_ALLTARGETS_LIBRARIES}
16578   alts_test_util
16579   gpr
16580   grpc
16581   ${_gRPC_GFLAGS_LIBRARIES}
16582 )
16583
16584
16585 endif (gRPC_BUILD_TESTS)
16586 if (gRPC_BUILD_TESTS)
16587 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
16588
16589 add_executable(writes_per_rpc_test
16590   test/cpp/performance/writes_per_rpc_test.cc
16591   third_party/googletest/googletest/src/gtest-all.cc
16592   third_party/googletest/googlemock/src/gmock-all.cc
16593 )
16594
16595
16596 target_include_directories(writes_per_rpc_test
16597   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16598   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16599   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16600   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16601   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16602   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16603   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16604   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16605   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16606   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16607   PRIVATE third_party/googletest/googletest/include
16608   PRIVATE third_party/googletest/googletest
16609   PRIVATE third_party/googletest/googlemock/include
16610   PRIVATE third_party/googletest/googlemock
16611   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16612 )
16613
16614 target_link_libraries(writes_per_rpc_test
16615   ${_gRPC_PROTOBUF_LIBRARIES}
16616   ${_gRPC_ALLTARGETS_LIBRARIES}
16617   grpc++_test_util
16618   grpc_test_util
16619   grpc++
16620   grpc
16621   gpr
16622   ${_gRPC_GFLAGS_LIBRARIES}
16623 )
16624
16625
16626 endif()
16627 endif (gRPC_BUILD_TESTS)
16628 if (gRPC_BUILD_TESTS)
16629
16630 add_executable(xds_end2end_test
16631   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.cc
16632   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.cc
16633   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.pb.h
16634   ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v1/load_balancer.grpc.pb.h
16635   test/cpp/end2end/xds_end2end_test.cc
16636   third_party/googletest/googletest/src/gtest-all.cc
16637   third_party/googletest/googlemock/src/gmock-all.cc
16638 )
16639
16640 protobuf_generate_grpc_cpp(
16641   src/proto/grpc/lb/v1/load_balancer.proto
16642 )
16643
16644 target_include_directories(xds_end2end_test
16645   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16646   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16647   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16648   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16649   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16650   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16651   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16652   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16653   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16654   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16655   PRIVATE third_party/googletest/googletest/include
16656   PRIVATE third_party/googletest/googletest
16657   PRIVATE third_party/googletest/googlemock/include
16658   PRIVATE third_party/googletest/googlemock
16659   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16660 )
16661
16662 target_link_libraries(xds_end2end_test
16663   ${_gRPC_PROTOBUF_LIBRARIES}
16664   ${_gRPC_ALLTARGETS_LIBRARIES}
16665   grpc++_test_util
16666   grpc_test_util
16667   grpc++
16668   grpc
16669   gpr
16670   ${_gRPC_GFLAGS_LIBRARIES}
16671 )
16672
16673
16674 endif (gRPC_BUILD_TESTS)
16675 if (gRPC_BUILD_TESTS)
16676
16677 add_executable(public_headers_must_be_c89
16678   test/core/surface/public_headers_must_be_c89.c
16679 )
16680
16681
16682 target_include_directories(public_headers_must_be_c89
16683   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16684   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16685   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16686   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16687   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16688   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16689   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16690   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16691   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16692   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16693 )
16694
16695 target_link_libraries(public_headers_must_be_c89
16696   ${_gRPC_ALLTARGETS_LIBRARIES}
16697   grpc
16698   gpr
16699 )
16700
16701
16702 endif (gRPC_BUILD_TESTS)
16703
16704 add_executable(gen_hpack_tables
16705   tools/codegen/core/gen_hpack_tables.cc
16706 )
16707
16708
16709 target_include_directories(gen_hpack_tables
16710   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16711   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16712   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16713   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16714   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16715   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16716   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16717   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16718   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16719   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16720 )
16721
16722 target_link_libraries(gen_hpack_tables
16723   ${_gRPC_ALLTARGETS_LIBRARIES}
16724   gpr
16725   grpc
16726 )
16727
16728
16729
16730 add_executable(gen_legal_metadata_characters
16731   tools/codegen/core/gen_legal_metadata_characters.cc
16732 )
16733
16734
16735 target_include_directories(gen_legal_metadata_characters
16736   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16737   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16738   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16739   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16740   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16741   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16742   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16743   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16744   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16745   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16746 )
16747
16748 target_link_libraries(gen_legal_metadata_characters
16749   ${_gRPC_ALLTARGETS_LIBRARIES}
16750 )
16751
16752
16753
16754 add_executable(gen_percent_encoding_tables
16755   tools/codegen/core/gen_percent_encoding_tables.cc
16756 )
16757
16758
16759 target_include_directories(gen_percent_encoding_tables
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 )
16771
16772 target_link_libraries(gen_percent_encoding_tables
16773   ${_gRPC_ALLTARGETS_LIBRARIES}
16774 )
16775
16776
16777 if (gRPC_BUILD_TESTS)
16778
16779 add_executable(bad_streaming_id_bad_client_test
16780   test/core/bad_client/tests/bad_streaming_id.cc
16781   third_party/googletest/googletest/src/gtest-all.cc
16782   third_party/googletest/googlemock/src/gmock-all.cc
16783 )
16784
16785
16786 target_include_directories(bad_streaming_id_bad_client_test
16787   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16788   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16789   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16790   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16791   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16792   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16793   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16794   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16795   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16796   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16797   PRIVATE third_party/googletest/googletest/include
16798   PRIVATE third_party/googletest/googletest
16799   PRIVATE third_party/googletest/googlemock/include
16800   PRIVATE third_party/googletest/googlemock
16801   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16802 )
16803
16804 target_link_libraries(bad_streaming_id_bad_client_test
16805   ${_gRPC_SSL_LIBRARIES}
16806   ${_gRPC_PROTOBUF_LIBRARIES}
16807   ${_gRPC_ALLTARGETS_LIBRARIES}
16808   bad_client_test
16809   grpc_test_util_unsecure
16810   grpc_unsecure
16811   gpr
16812   ${_gRPC_GFLAGS_LIBRARIES}
16813 )
16814
16815
16816 endif (gRPC_BUILD_TESTS)
16817 if (gRPC_BUILD_TESTS)
16818
16819 add_executable(badreq_bad_client_test
16820   test/core/bad_client/tests/badreq.cc
16821   third_party/googletest/googletest/src/gtest-all.cc
16822   third_party/googletest/googlemock/src/gmock-all.cc
16823 )
16824
16825
16826 target_include_directories(badreq_bad_client_test
16827   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16828   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16829   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16830   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16831   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16832   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16833   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16834   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16835   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16836   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16837   PRIVATE third_party/googletest/googletest/include
16838   PRIVATE third_party/googletest/googletest
16839   PRIVATE third_party/googletest/googlemock/include
16840   PRIVATE third_party/googletest/googlemock
16841   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16842 )
16843
16844 target_link_libraries(badreq_bad_client_test
16845   ${_gRPC_SSL_LIBRARIES}
16846   ${_gRPC_PROTOBUF_LIBRARIES}
16847   ${_gRPC_ALLTARGETS_LIBRARIES}
16848   bad_client_test
16849   grpc_test_util_unsecure
16850   grpc_unsecure
16851   gpr
16852   ${_gRPC_GFLAGS_LIBRARIES}
16853 )
16854
16855
16856 endif (gRPC_BUILD_TESTS)
16857 if (gRPC_BUILD_TESTS)
16858
16859 add_executable(connection_prefix_bad_client_test
16860   test/core/bad_client/tests/connection_prefix.cc
16861   third_party/googletest/googletest/src/gtest-all.cc
16862   third_party/googletest/googlemock/src/gmock-all.cc
16863 )
16864
16865
16866 target_include_directories(connection_prefix_bad_client_test
16867   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16868   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16869   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16870   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16871   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16872   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16873   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16874   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16875   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16876   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16877   PRIVATE third_party/googletest/googletest/include
16878   PRIVATE third_party/googletest/googletest
16879   PRIVATE third_party/googletest/googlemock/include
16880   PRIVATE third_party/googletest/googlemock
16881   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16882 )
16883
16884 target_link_libraries(connection_prefix_bad_client_test
16885   ${_gRPC_SSL_LIBRARIES}
16886   ${_gRPC_PROTOBUF_LIBRARIES}
16887   ${_gRPC_ALLTARGETS_LIBRARIES}
16888   bad_client_test
16889   grpc_test_util_unsecure
16890   grpc_unsecure
16891   gpr
16892   ${_gRPC_GFLAGS_LIBRARIES}
16893 )
16894
16895
16896 endif (gRPC_BUILD_TESTS)
16897 if (gRPC_BUILD_TESTS)
16898
16899 add_executable(duplicate_header_bad_client_test
16900   test/core/bad_client/tests/duplicate_header.cc
16901   third_party/googletest/googletest/src/gtest-all.cc
16902   third_party/googletest/googlemock/src/gmock-all.cc
16903 )
16904
16905
16906 target_include_directories(duplicate_header_bad_client_test
16907   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16908   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16909   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16910   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16911   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16912   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16913   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16914   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16915   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16916   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16917   PRIVATE third_party/googletest/googletest/include
16918   PRIVATE third_party/googletest/googletest
16919   PRIVATE third_party/googletest/googlemock/include
16920   PRIVATE third_party/googletest/googlemock
16921   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16922 )
16923
16924 target_link_libraries(duplicate_header_bad_client_test
16925   ${_gRPC_SSL_LIBRARIES}
16926   ${_gRPC_PROTOBUF_LIBRARIES}
16927   ${_gRPC_ALLTARGETS_LIBRARIES}
16928   bad_client_test
16929   grpc_test_util_unsecure
16930   grpc_unsecure
16931   gpr
16932   ${_gRPC_GFLAGS_LIBRARIES}
16933 )
16934
16935
16936 endif (gRPC_BUILD_TESTS)
16937 if (gRPC_BUILD_TESTS)
16938
16939 add_executable(head_of_line_blocking_bad_client_test
16940   test/core/bad_client/tests/head_of_line_blocking.cc
16941   third_party/googletest/googletest/src/gtest-all.cc
16942   third_party/googletest/googlemock/src/gmock-all.cc
16943 )
16944
16945
16946 target_include_directories(head_of_line_blocking_bad_client_test
16947   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16948   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16949   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16950   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16951   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16952   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16953   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16954   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16955   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16956   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16957   PRIVATE third_party/googletest/googletest/include
16958   PRIVATE third_party/googletest/googletest
16959   PRIVATE third_party/googletest/googlemock/include
16960   PRIVATE third_party/googletest/googlemock
16961   PRIVATE ${_gRPC_PROTO_GENS_DIR}
16962 )
16963
16964 target_link_libraries(head_of_line_blocking_bad_client_test
16965   ${_gRPC_SSL_LIBRARIES}
16966   ${_gRPC_PROTOBUF_LIBRARIES}
16967   ${_gRPC_ALLTARGETS_LIBRARIES}
16968   bad_client_test
16969   grpc_test_util_unsecure
16970   grpc_unsecure
16971   gpr
16972   ${_gRPC_GFLAGS_LIBRARIES}
16973 )
16974
16975
16976 endif (gRPC_BUILD_TESTS)
16977 if (gRPC_BUILD_TESTS)
16978
16979 add_executable(headers_bad_client_test
16980   test/core/bad_client/tests/headers.cc
16981   third_party/googletest/googletest/src/gtest-all.cc
16982   third_party/googletest/googlemock/src/gmock-all.cc
16983 )
16984
16985
16986 target_include_directories(headers_bad_client_test
16987   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
16988   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
16989   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
16990   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
16991   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
16992   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
16993   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
16994   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
16995   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
16996   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
16997   PRIVATE third_party/googletest/googletest/include
16998   PRIVATE third_party/googletest/googletest
16999   PRIVATE third_party/googletest/googlemock/include
17000   PRIVATE third_party/googletest/googlemock
17001   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17002 )
17003
17004 target_link_libraries(headers_bad_client_test
17005   ${_gRPC_SSL_LIBRARIES}
17006   ${_gRPC_PROTOBUF_LIBRARIES}
17007   ${_gRPC_ALLTARGETS_LIBRARIES}
17008   bad_client_test
17009   grpc_test_util_unsecure
17010   grpc_unsecure
17011   gpr
17012   ${_gRPC_GFLAGS_LIBRARIES}
17013 )
17014
17015
17016 endif (gRPC_BUILD_TESTS)
17017 if (gRPC_BUILD_TESTS)
17018
17019 add_executable(initial_settings_frame_bad_client_test
17020   test/core/bad_client/tests/initial_settings_frame.cc
17021   third_party/googletest/googletest/src/gtest-all.cc
17022   third_party/googletest/googlemock/src/gmock-all.cc
17023 )
17024
17025
17026 target_include_directories(initial_settings_frame_bad_client_test
17027   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17028   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17029   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17030   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17031   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17032   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17033   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17034   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17035   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17036   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17037   PRIVATE third_party/googletest/googletest/include
17038   PRIVATE third_party/googletest/googletest
17039   PRIVATE third_party/googletest/googlemock/include
17040   PRIVATE third_party/googletest/googlemock
17041   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17042 )
17043
17044 target_link_libraries(initial_settings_frame_bad_client_test
17045   ${_gRPC_SSL_LIBRARIES}
17046   ${_gRPC_PROTOBUF_LIBRARIES}
17047   ${_gRPC_ALLTARGETS_LIBRARIES}
17048   bad_client_test
17049   grpc_test_util_unsecure
17050   grpc_unsecure
17051   gpr
17052   ${_gRPC_GFLAGS_LIBRARIES}
17053 )
17054
17055
17056 endif (gRPC_BUILD_TESTS)
17057 if (gRPC_BUILD_TESTS)
17058
17059 add_executable(large_metadata_bad_client_test
17060   test/core/bad_client/tests/large_metadata.cc
17061   third_party/googletest/googletest/src/gtest-all.cc
17062   third_party/googletest/googlemock/src/gmock-all.cc
17063 )
17064
17065
17066 target_include_directories(large_metadata_bad_client_test
17067   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17068   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17069   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17070   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17071   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17072   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17073   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17074   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17075   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17076   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17077   PRIVATE third_party/googletest/googletest/include
17078   PRIVATE third_party/googletest/googletest
17079   PRIVATE third_party/googletest/googlemock/include
17080   PRIVATE third_party/googletest/googlemock
17081   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17082 )
17083
17084 target_link_libraries(large_metadata_bad_client_test
17085   ${_gRPC_SSL_LIBRARIES}
17086   ${_gRPC_PROTOBUF_LIBRARIES}
17087   ${_gRPC_ALLTARGETS_LIBRARIES}
17088   bad_client_test
17089   grpc_test_util_unsecure
17090   grpc_unsecure
17091   gpr
17092   ${_gRPC_GFLAGS_LIBRARIES}
17093 )
17094
17095
17096 endif (gRPC_BUILD_TESTS)
17097 if (gRPC_BUILD_TESTS)
17098
17099 add_executable(out_of_bounds_bad_client_test
17100   test/core/bad_client/tests/out_of_bounds.cc
17101   third_party/googletest/googletest/src/gtest-all.cc
17102   third_party/googletest/googlemock/src/gmock-all.cc
17103 )
17104
17105
17106 target_include_directories(out_of_bounds_bad_client_test
17107   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17108   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17109   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17110   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17111   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17112   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17113   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17114   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17115   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17116   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17117   PRIVATE third_party/googletest/googletest/include
17118   PRIVATE third_party/googletest/googletest
17119   PRIVATE third_party/googletest/googlemock/include
17120   PRIVATE third_party/googletest/googlemock
17121   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17122 )
17123
17124 target_link_libraries(out_of_bounds_bad_client_test
17125   ${_gRPC_SSL_LIBRARIES}
17126   ${_gRPC_PROTOBUF_LIBRARIES}
17127   ${_gRPC_ALLTARGETS_LIBRARIES}
17128   bad_client_test
17129   grpc_test_util_unsecure
17130   grpc_unsecure
17131   gpr
17132   ${_gRPC_GFLAGS_LIBRARIES}
17133 )
17134
17135
17136 endif (gRPC_BUILD_TESTS)
17137 if (gRPC_BUILD_TESTS)
17138
17139 add_executable(server_registered_method_bad_client_test
17140   test/core/bad_client/tests/server_registered_method.cc
17141   third_party/googletest/googletest/src/gtest-all.cc
17142   third_party/googletest/googlemock/src/gmock-all.cc
17143 )
17144
17145
17146 target_include_directories(server_registered_method_bad_client_test
17147   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17148   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17149   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17150   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17151   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17152   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17153   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17154   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17155   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17156   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17157   PRIVATE third_party/googletest/googletest/include
17158   PRIVATE third_party/googletest/googletest
17159   PRIVATE third_party/googletest/googlemock/include
17160   PRIVATE third_party/googletest/googlemock
17161   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17162 )
17163
17164 target_link_libraries(server_registered_method_bad_client_test
17165   ${_gRPC_SSL_LIBRARIES}
17166   ${_gRPC_PROTOBUF_LIBRARIES}
17167   ${_gRPC_ALLTARGETS_LIBRARIES}
17168   bad_client_test
17169   grpc_test_util_unsecure
17170   grpc_unsecure
17171   gpr
17172   ${_gRPC_GFLAGS_LIBRARIES}
17173 )
17174
17175
17176 endif (gRPC_BUILD_TESTS)
17177 if (gRPC_BUILD_TESTS)
17178
17179 add_executable(simple_request_bad_client_test
17180   test/core/bad_client/tests/simple_request.cc
17181   third_party/googletest/googletest/src/gtest-all.cc
17182   third_party/googletest/googlemock/src/gmock-all.cc
17183 )
17184
17185
17186 target_include_directories(simple_request_bad_client_test
17187   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17188   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17189   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17190   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17191   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17192   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17193   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17194   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17195   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17196   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17197   PRIVATE third_party/googletest/googletest/include
17198   PRIVATE third_party/googletest/googletest
17199   PRIVATE third_party/googletest/googlemock/include
17200   PRIVATE third_party/googletest/googlemock
17201   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17202 )
17203
17204 target_link_libraries(simple_request_bad_client_test
17205   ${_gRPC_SSL_LIBRARIES}
17206   ${_gRPC_PROTOBUF_LIBRARIES}
17207   ${_gRPC_ALLTARGETS_LIBRARIES}
17208   bad_client_test
17209   grpc_test_util_unsecure
17210   grpc_unsecure
17211   gpr
17212   ${_gRPC_GFLAGS_LIBRARIES}
17213 )
17214
17215
17216 endif (gRPC_BUILD_TESTS)
17217 if (gRPC_BUILD_TESTS)
17218
17219 add_executable(unknown_frame_bad_client_test
17220   test/core/bad_client/tests/unknown_frame.cc
17221   third_party/googletest/googletest/src/gtest-all.cc
17222   third_party/googletest/googlemock/src/gmock-all.cc
17223 )
17224
17225
17226 target_include_directories(unknown_frame_bad_client_test
17227   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17228   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17229   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17230   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17231   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17232   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17233   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17234   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17235   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17236   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17237   PRIVATE third_party/googletest/googletest/include
17238   PRIVATE third_party/googletest/googletest
17239   PRIVATE third_party/googletest/googlemock/include
17240   PRIVATE third_party/googletest/googlemock
17241   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17242 )
17243
17244 target_link_libraries(unknown_frame_bad_client_test
17245   ${_gRPC_SSL_LIBRARIES}
17246   ${_gRPC_PROTOBUF_LIBRARIES}
17247   ${_gRPC_ALLTARGETS_LIBRARIES}
17248   bad_client_test
17249   grpc_test_util_unsecure
17250   grpc_unsecure
17251   gpr
17252   ${_gRPC_GFLAGS_LIBRARIES}
17253 )
17254
17255
17256 endif (gRPC_BUILD_TESTS)
17257 if (gRPC_BUILD_TESTS)
17258
17259 add_executable(window_overflow_bad_client_test
17260   test/core/bad_client/tests/window_overflow.cc
17261   third_party/googletest/googletest/src/gtest-all.cc
17262   third_party/googletest/googlemock/src/gmock-all.cc
17263 )
17264
17265
17266 target_include_directories(window_overflow_bad_client_test
17267   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17268   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17269   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17270   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17271   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17272   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17273   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17274   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17275   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17276   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17277   PRIVATE third_party/googletest/googletest/include
17278   PRIVATE third_party/googletest/googletest
17279   PRIVATE third_party/googletest/googlemock/include
17280   PRIVATE third_party/googletest/googlemock
17281   PRIVATE ${_gRPC_PROTO_GENS_DIR}
17282 )
17283
17284 target_link_libraries(window_overflow_bad_client_test
17285   ${_gRPC_SSL_LIBRARIES}
17286   ${_gRPC_PROTOBUF_LIBRARIES}
17287   ${_gRPC_ALLTARGETS_LIBRARIES}
17288   bad_client_test
17289   grpc_test_util_unsecure
17290   grpc_unsecure
17291   gpr
17292   ${_gRPC_GFLAGS_LIBRARIES}
17293 )
17294
17295
17296 endif (gRPC_BUILD_TESTS)
17297 if (gRPC_BUILD_TESTS)
17298 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17299
17300 add_executable(bad_ssl_cert_server
17301   test/core/bad_ssl/servers/cert.cc
17302 )
17303
17304
17305 target_include_directories(bad_ssl_cert_server
17306   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17307   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17308   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17309   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17310   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17311   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17312   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17313   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17314   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17315   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17316 )
17317
17318 target_link_libraries(bad_ssl_cert_server
17319   ${_gRPC_ALLTARGETS_LIBRARIES}
17320   bad_ssl_test_server
17321   grpc_test_util
17322   grpc
17323   gpr
17324 )
17325
17326   # avoid dependency on libstdc++
17327   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17328     set_target_properties(bad_ssl_cert_server PROPERTIES LINKER_LANGUAGE C)
17329     target_compile_options(bad_ssl_cert_server PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17330   endif()
17331
17332 endif()
17333 endif (gRPC_BUILD_TESTS)
17334 if (gRPC_BUILD_TESTS)
17335 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17336
17337 add_executable(bad_ssl_cert_test
17338   test/core/bad_ssl/bad_ssl_test.cc
17339 )
17340
17341
17342 target_include_directories(bad_ssl_cert_test
17343   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17344   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17345   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17346   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17347   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17348   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17349   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17350   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17351   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17352   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17353 )
17354
17355 target_link_libraries(bad_ssl_cert_test
17356   ${_gRPC_ALLTARGETS_LIBRARIES}
17357   grpc_test_util
17358   grpc
17359   gpr
17360 )
17361
17362   # avoid dependency on libstdc++
17363   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17364     set_target_properties(bad_ssl_cert_test PROPERTIES LINKER_LANGUAGE C)
17365     target_compile_options(bad_ssl_cert_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17366   endif()
17367
17368 endif()
17369 endif (gRPC_BUILD_TESTS)
17370 if (gRPC_BUILD_TESTS)
17371
17372 add_executable(h2_census_test
17373   test/core/end2end/fixtures/h2_census.cc
17374 )
17375
17376
17377 target_include_directories(h2_census_test
17378   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17379   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17380   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17381   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17382   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17383   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17384   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17385   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17386   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17387   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17388 )
17389
17390 target_link_libraries(h2_census_test
17391   ${_gRPC_ALLTARGETS_LIBRARIES}
17392   end2end_tests
17393   grpc_test_util
17394   grpc
17395   gpr
17396 )
17397
17398   # avoid dependency on libstdc++
17399   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17400     set_target_properties(h2_census_test PROPERTIES LINKER_LANGUAGE C)
17401     target_compile_options(h2_census_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17402   endif()
17403
17404 endif (gRPC_BUILD_TESTS)
17405 if (gRPC_BUILD_TESTS)
17406
17407 add_executable(h2_compress_test
17408   test/core/end2end/fixtures/h2_compress.cc
17409 )
17410
17411
17412 target_include_directories(h2_compress_test
17413   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17414   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17415   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17416   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17417   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17418   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17419   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17420   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17421   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17422   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17423 )
17424
17425 target_link_libraries(h2_compress_test
17426   ${_gRPC_ALLTARGETS_LIBRARIES}
17427   end2end_tests
17428   grpc_test_util
17429   grpc
17430   gpr
17431 )
17432
17433   # avoid dependency on libstdc++
17434   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17435     set_target_properties(h2_compress_test PROPERTIES LINKER_LANGUAGE C)
17436     target_compile_options(h2_compress_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17437   endif()
17438
17439 endif (gRPC_BUILD_TESTS)
17440 if (gRPC_BUILD_TESTS)
17441
17442 add_executable(h2_fakesec_test
17443   test/core/end2end/fixtures/h2_fakesec.cc
17444 )
17445
17446
17447 target_include_directories(h2_fakesec_test
17448   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17449   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17450   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17451   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17452   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17453   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17454   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17455   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17456   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17457   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17458 )
17459
17460 target_link_libraries(h2_fakesec_test
17461   ${_gRPC_ALLTARGETS_LIBRARIES}
17462   end2end_tests
17463   grpc_test_util
17464   grpc
17465   gpr
17466 )
17467
17468   # avoid dependency on libstdc++
17469   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17470     set_target_properties(h2_fakesec_test PROPERTIES LINKER_LANGUAGE C)
17471     target_compile_options(h2_fakesec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17472   endif()
17473
17474 endif (gRPC_BUILD_TESTS)
17475 if (gRPC_BUILD_TESTS)
17476 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17477
17478 add_executable(h2_fd_test
17479   test/core/end2end/fixtures/h2_fd.cc
17480 )
17481
17482
17483 target_include_directories(h2_fd_test
17484   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17485   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17486   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17487   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17488   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17489   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17490   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17491   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17492   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17493   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17494 )
17495
17496 target_link_libraries(h2_fd_test
17497   ${_gRPC_ALLTARGETS_LIBRARIES}
17498   end2end_tests
17499   grpc_test_util
17500   grpc
17501   gpr
17502 )
17503
17504   # avoid dependency on libstdc++
17505   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17506     set_target_properties(h2_fd_test PROPERTIES LINKER_LANGUAGE C)
17507     target_compile_options(h2_fd_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17508   endif()
17509
17510 endif()
17511 endif (gRPC_BUILD_TESTS)
17512 if (gRPC_BUILD_TESTS)
17513
17514 add_executable(h2_full_test
17515   test/core/end2end/fixtures/h2_full.cc
17516 )
17517
17518
17519 target_include_directories(h2_full_test
17520   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17521   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17522   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17523   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17524   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17525   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17526   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17527   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17528   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17529   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17530 )
17531
17532 target_link_libraries(h2_full_test
17533   ${_gRPC_ALLTARGETS_LIBRARIES}
17534   end2end_tests
17535   grpc_test_util
17536   grpc
17537   gpr
17538 )
17539
17540   # avoid dependency on libstdc++
17541   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17542     set_target_properties(h2_full_test PROPERTIES LINKER_LANGUAGE C)
17543     target_compile_options(h2_full_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17544   endif()
17545
17546 endif (gRPC_BUILD_TESTS)
17547 if (gRPC_BUILD_TESTS)
17548 if(_gRPC_PLATFORM_LINUX)
17549
17550 add_executable(h2_full+pipe_test
17551   test/core/end2end/fixtures/h2_full+pipe.cc
17552 )
17553
17554
17555 target_include_directories(h2_full+pipe_test
17556   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17557   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17558   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17559   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17560   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17561   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17562   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17563   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17564   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17565   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17566 )
17567
17568 target_link_libraries(h2_full+pipe_test
17569   ${_gRPC_ALLTARGETS_LIBRARIES}
17570   end2end_tests
17571   grpc_test_util
17572   grpc
17573   gpr
17574 )
17575
17576   # avoid dependency on libstdc++
17577   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17578     set_target_properties(h2_full+pipe_test PROPERTIES LINKER_LANGUAGE C)
17579     target_compile_options(h2_full+pipe_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17580   endif()
17581
17582 endif()
17583 endif (gRPC_BUILD_TESTS)
17584 if (gRPC_BUILD_TESTS)
17585
17586 add_executable(h2_full+trace_test
17587   test/core/end2end/fixtures/h2_full+trace.cc
17588 )
17589
17590
17591 target_include_directories(h2_full+trace_test
17592   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17593   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17594   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17595   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17596   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17597   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17598   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17599   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17600   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17601   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17602 )
17603
17604 target_link_libraries(h2_full+trace_test
17605   ${_gRPC_ALLTARGETS_LIBRARIES}
17606   end2end_tests
17607   grpc_test_util
17608   grpc
17609   gpr
17610 )
17611
17612   # avoid dependency on libstdc++
17613   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17614     set_target_properties(h2_full+trace_test PROPERTIES LINKER_LANGUAGE C)
17615     target_compile_options(h2_full+trace_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17616   endif()
17617
17618 endif (gRPC_BUILD_TESTS)
17619 if (gRPC_BUILD_TESTS)
17620
17621 add_executable(h2_full+workarounds_test
17622   test/core/end2end/fixtures/h2_full+workarounds.cc
17623 )
17624
17625
17626 target_include_directories(h2_full+workarounds_test
17627   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17628   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17629   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17630   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17631   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17632   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17633   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17634   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17635   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17636   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17637 )
17638
17639 target_link_libraries(h2_full+workarounds_test
17640   ${_gRPC_ALLTARGETS_LIBRARIES}
17641   end2end_tests
17642   grpc_test_util
17643   grpc
17644   gpr
17645 )
17646
17647   # avoid dependency on libstdc++
17648   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17649     set_target_properties(h2_full+workarounds_test PROPERTIES LINKER_LANGUAGE C)
17650     target_compile_options(h2_full+workarounds_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17651   endif()
17652
17653 endif (gRPC_BUILD_TESTS)
17654 if (gRPC_BUILD_TESTS)
17655
17656 add_executable(h2_http_proxy_test
17657   test/core/end2end/fixtures/h2_http_proxy.cc
17658 )
17659
17660
17661 target_include_directories(h2_http_proxy_test
17662   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17663   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17664   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17665   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17666   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17667   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17668   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17669   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17670   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17671   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17672 )
17673
17674 target_link_libraries(h2_http_proxy_test
17675   ${_gRPC_ALLTARGETS_LIBRARIES}
17676   end2end_tests
17677   grpc_test_util
17678   grpc
17679   gpr
17680 )
17681
17682   # avoid dependency on libstdc++
17683   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17684     set_target_properties(h2_http_proxy_test PROPERTIES LINKER_LANGUAGE C)
17685     target_compile_options(h2_http_proxy_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17686   endif()
17687
17688 endif (gRPC_BUILD_TESTS)
17689 if (gRPC_BUILD_TESTS)
17690 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17691
17692 add_executable(h2_local_ipv4_test
17693   test/core/end2end/fixtures/h2_local_ipv4.cc
17694 )
17695
17696
17697 target_include_directories(h2_local_ipv4_test
17698   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17699   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17700   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17701   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17702   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17703   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17704   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17705   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17706   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17707   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17708 )
17709
17710 target_link_libraries(h2_local_ipv4_test
17711   ${_gRPC_ALLTARGETS_LIBRARIES}
17712   end2end_tests
17713   grpc_test_util
17714   grpc
17715   gpr
17716 )
17717
17718   # avoid dependency on libstdc++
17719   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17720     set_target_properties(h2_local_ipv4_test PROPERTIES LINKER_LANGUAGE C)
17721     target_compile_options(h2_local_ipv4_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17722   endif()
17723
17724 endif()
17725 endif (gRPC_BUILD_TESTS)
17726 if (gRPC_BUILD_TESTS)
17727 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17728
17729 add_executable(h2_local_ipv6_test
17730   test/core/end2end/fixtures/h2_local_ipv6.cc
17731 )
17732
17733
17734 target_include_directories(h2_local_ipv6_test
17735   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17736   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17737   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17738   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17739   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17740   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17741   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17742   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17743   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17744   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17745 )
17746
17747 target_link_libraries(h2_local_ipv6_test
17748   ${_gRPC_ALLTARGETS_LIBRARIES}
17749   end2end_tests
17750   grpc_test_util
17751   grpc
17752   gpr
17753 )
17754
17755   # avoid dependency on libstdc++
17756   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17757     set_target_properties(h2_local_ipv6_test PROPERTIES LINKER_LANGUAGE C)
17758     target_compile_options(h2_local_ipv6_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17759   endif()
17760
17761 endif()
17762 endif (gRPC_BUILD_TESTS)
17763 if (gRPC_BUILD_TESTS)
17764 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
17765
17766 add_executable(h2_local_uds_test
17767   test/core/end2end/fixtures/h2_local_uds.cc
17768 )
17769
17770
17771 target_include_directories(h2_local_uds_test
17772   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17773   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17774   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17775   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17776   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17777   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17778   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17779   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17780   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17781   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17782 )
17783
17784 target_link_libraries(h2_local_uds_test
17785   ${_gRPC_ALLTARGETS_LIBRARIES}
17786   end2end_tests
17787   grpc_test_util
17788   grpc
17789   gpr
17790 )
17791
17792   # avoid dependency on libstdc++
17793   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17794     set_target_properties(h2_local_uds_test PROPERTIES LINKER_LANGUAGE C)
17795     target_compile_options(h2_local_uds_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17796   endif()
17797
17798 endif()
17799 endif (gRPC_BUILD_TESTS)
17800 if (gRPC_BUILD_TESTS)
17801
17802 add_executable(h2_oauth2_test
17803   test/core/end2end/fixtures/h2_oauth2.cc
17804 )
17805
17806
17807 target_include_directories(h2_oauth2_test
17808   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17809   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17810   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17811   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17812   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17813   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17814   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17815   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17816   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17817   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17818 )
17819
17820 target_link_libraries(h2_oauth2_test
17821   ${_gRPC_ALLTARGETS_LIBRARIES}
17822   end2end_tests
17823   grpc_test_util
17824   grpc
17825   gpr
17826 )
17827
17828   # avoid dependency on libstdc++
17829   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17830     set_target_properties(h2_oauth2_test PROPERTIES LINKER_LANGUAGE C)
17831     target_compile_options(h2_oauth2_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17832   endif()
17833
17834 endif (gRPC_BUILD_TESTS)
17835 if (gRPC_BUILD_TESTS)
17836
17837 add_executable(h2_proxy_test
17838   test/core/end2end/fixtures/h2_proxy.cc
17839 )
17840
17841
17842 target_include_directories(h2_proxy_test
17843   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17844   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17845   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17846   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17847   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17848   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17849   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17850   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17851   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17852   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17853 )
17854
17855 target_link_libraries(h2_proxy_test
17856   ${_gRPC_ALLTARGETS_LIBRARIES}
17857   end2end_tests
17858   grpc_test_util
17859   grpc
17860   gpr
17861 )
17862
17863   # avoid dependency on libstdc++
17864   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17865     set_target_properties(h2_proxy_test PROPERTIES LINKER_LANGUAGE C)
17866     target_compile_options(h2_proxy_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17867   endif()
17868
17869 endif (gRPC_BUILD_TESTS)
17870 if (gRPC_BUILD_TESTS)
17871
17872 add_executable(h2_sockpair_test
17873   test/core/end2end/fixtures/h2_sockpair.cc
17874 )
17875
17876
17877 target_include_directories(h2_sockpair_test
17878   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17879   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17880   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17881   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17882   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17883   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17884   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17885   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17886   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17887   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17888 )
17889
17890 target_link_libraries(h2_sockpair_test
17891   ${_gRPC_ALLTARGETS_LIBRARIES}
17892   end2end_tests
17893   grpc_test_util
17894   grpc
17895   gpr
17896 )
17897
17898   # avoid dependency on libstdc++
17899   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17900     set_target_properties(h2_sockpair_test PROPERTIES LINKER_LANGUAGE C)
17901     target_compile_options(h2_sockpair_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17902   endif()
17903
17904 endif (gRPC_BUILD_TESTS)
17905 if (gRPC_BUILD_TESTS)
17906
17907 add_executable(h2_sockpair+trace_test
17908   test/core/end2end/fixtures/h2_sockpair+trace.cc
17909 )
17910
17911
17912 target_include_directories(h2_sockpair+trace_test
17913   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17914   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17915   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17916   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17917   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17918   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17919   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17920   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17921   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17922   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17923 )
17924
17925 target_link_libraries(h2_sockpair+trace_test
17926   ${_gRPC_ALLTARGETS_LIBRARIES}
17927   end2end_tests
17928   grpc_test_util
17929   grpc
17930   gpr
17931 )
17932
17933   # avoid dependency on libstdc++
17934   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17935     set_target_properties(h2_sockpair+trace_test PROPERTIES LINKER_LANGUAGE C)
17936     target_compile_options(h2_sockpair+trace_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17937   endif()
17938
17939 endif (gRPC_BUILD_TESTS)
17940 if (gRPC_BUILD_TESTS)
17941
17942 add_executable(h2_sockpair_1byte_test
17943   test/core/end2end/fixtures/h2_sockpair_1byte.cc
17944 )
17945
17946
17947 target_include_directories(h2_sockpair_1byte_test
17948   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17949   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17950   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17951   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17952   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17953   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17954   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17955   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17956   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17957   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17958 )
17959
17960 target_link_libraries(h2_sockpair_1byte_test
17961   ${_gRPC_ALLTARGETS_LIBRARIES}
17962   end2end_tests
17963   grpc_test_util
17964   grpc
17965   gpr
17966 )
17967
17968   # avoid dependency on libstdc++
17969   if (_gRPC_CORE_NOSTDCXX_FLAGS)
17970     set_target_properties(h2_sockpair_1byte_test PROPERTIES LINKER_LANGUAGE C)
17971     target_compile_options(h2_sockpair_1byte_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
17972   endif()
17973
17974 endif (gRPC_BUILD_TESTS)
17975 if (gRPC_BUILD_TESTS)
17976
17977 add_executable(h2_spiffe_test
17978   test/core/end2end/fixtures/h2_spiffe.cc
17979 )
17980
17981
17982 target_include_directories(h2_spiffe_test
17983   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
17984   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
17985   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
17986   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
17987   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
17988   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
17989   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
17990   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
17991   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
17992   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
17993 )
17994
17995 target_link_libraries(h2_spiffe_test
17996   ${_gRPC_ALLTARGETS_LIBRARIES}
17997   end2end_tests
17998   grpc_test_util
17999   grpc
18000   gpr
18001 )
18002
18003   # avoid dependency on libstdc++
18004   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18005     set_target_properties(h2_spiffe_test PROPERTIES LINKER_LANGUAGE C)
18006     target_compile_options(h2_spiffe_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18007   endif()
18008
18009 endif (gRPC_BUILD_TESTS)
18010 if (gRPC_BUILD_TESTS)
18011
18012 add_executable(h2_ssl_test
18013   test/core/end2end/fixtures/h2_ssl.cc
18014 )
18015
18016
18017 target_include_directories(h2_ssl_test
18018   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18019   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18020   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18021   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18022   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18023   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18024   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18025   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18026   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18027   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18028 )
18029
18030 target_link_libraries(h2_ssl_test
18031   ${_gRPC_ALLTARGETS_LIBRARIES}
18032   end2end_tests
18033   grpc_test_util
18034   grpc
18035   gpr
18036 )
18037
18038   # avoid dependency on libstdc++
18039   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18040     set_target_properties(h2_ssl_test PROPERTIES LINKER_LANGUAGE C)
18041     target_compile_options(h2_ssl_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18042   endif()
18043
18044 endif (gRPC_BUILD_TESTS)
18045 if (gRPC_BUILD_TESTS)
18046
18047 add_executable(h2_ssl_cred_reload_test
18048   test/core/end2end/fixtures/h2_ssl_cred_reload.cc
18049 )
18050
18051
18052 target_include_directories(h2_ssl_cred_reload_test
18053   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18054   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18055   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18056   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18057   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18058   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18059   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18060   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18061   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18062   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18063 )
18064
18065 target_link_libraries(h2_ssl_cred_reload_test
18066   ${_gRPC_ALLTARGETS_LIBRARIES}
18067   end2end_tests
18068   grpc_test_util
18069   grpc
18070   gpr
18071 )
18072
18073   # avoid dependency on libstdc++
18074   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18075     set_target_properties(h2_ssl_cred_reload_test PROPERTIES LINKER_LANGUAGE C)
18076     target_compile_options(h2_ssl_cred_reload_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18077   endif()
18078
18079 endif (gRPC_BUILD_TESTS)
18080 if (gRPC_BUILD_TESTS)
18081
18082 add_executable(h2_ssl_proxy_test
18083   test/core/end2end/fixtures/h2_ssl_proxy.cc
18084 )
18085
18086
18087 target_include_directories(h2_ssl_proxy_test
18088   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18089   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18090   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18091   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18092   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18093   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18094   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18095   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18096   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18097   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18098 )
18099
18100 target_link_libraries(h2_ssl_proxy_test
18101   ${_gRPC_ALLTARGETS_LIBRARIES}
18102   end2end_tests
18103   grpc_test_util
18104   grpc
18105   gpr
18106 )
18107
18108   # avoid dependency on libstdc++
18109   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18110     set_target_properties(h2_ssl_proxy_test PROPERTIES LINKER_LANGUAGE C)
18111     target_compile_options(h2_ssl_proxy_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18112   endif()
18113
18114 endif (gRPC_BUILD_TESTS)
18115 if (gRPC_BUILD_TESTS)
18116 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18117
18118 add_executable(h2_uds_test
18119   test/core/end2end/fixtures/h2_uds.cc
18120 )
18121
18122
18123 target_include_directories(h2_uds_test
18124   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18125   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18126   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18127   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18128   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18129   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18130   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18131   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18132   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18133   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18134 )
18135
18136 target_link_libraries(h2_uds_test
18137   ${_gRPC_ALLTARGETS_LIBRARIES}
18138   end2end_tests
18139   grpc_test_util
18140   grpc
18141   gpr
18142 )
18143
18144   # avoid dependency on libstdc++
18145   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18146     set_target_properties(h2_uds_test PROPERTIES LINKER_LANGUAGE C)
18147     target_compile_options(h2_uds_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18148   endif()
18149
18150 endif()
18151 endif (gRPC_BUILD_TESTS)
18152 if (gRPC_BUILD_TESTS)
18153
18154 add_executable(inproc_test
18155   test/core/end2end/fixtures/inproc.cc
18156 )
18157
18158
18159 target_include_directories(inproc_test
18160   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18161   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18162   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18163   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18164   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18165   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18166   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18167   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18168   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18169   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18170 )
18171
18172 target_link_libraries(inproc_test
18173   ${_gRPC_ALLTARGETS_LIBRARIES}
18174   end2end_tests
18175   grpc_test_util
18176   grpc
18177   gpr
18178 )
18179
18180   # avoid dependency on libstdc++
18181   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18182     set_target_properties(inproc_test PROPERTIES LINKER_LANGUAGE C)
18183     target_compile_options(inproc_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18184   endif()
18185
18186 endif (gRPC_BUILD_TESTS)
18187 if (gRPC_BUILD_TESTS)
18188
18189 add_executable(h2_census_nosec_test
18190   test/core/end2end/fixtures/h2_census.cc
18191 )
18192
18193
18194 target_include_directories(h2_census_nosec_test
18195   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18196   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18197   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18198   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18199   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18200   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18201   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18202   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18203   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18204   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18205 )
18206
18207 target_link_libraries(h2_census_nosec_test
18208   ${_gRPC_ALLTARGETS_LIBRARIES}
18209   end2end_nosec_tests
18210   grpc_test_util_unsecure
18211   grpc_unsecure
18212   gpr
18213 )
18214
18215   # avoid dependency on libstdc++
18216   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18217     set_target_properties(h2_census_nosec_test PROPERTIES LINKER_LANGUAGE C)
18218     target_compile_options(h2_census_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18219   endif()
18220
18221 endif (gRPC_BUILD_TESTS)
18222 if (gRPC_BUILD_TESTS)
18223
18224 add_executable(h2_compress_nosec_test
18225   test/core/end2end/fixtures/h2_compress.cc
18226 )
18227
18228
18229 target_include_directories(h2_compress_nosec_test
18230   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18231   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18232   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18233   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18234   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18235   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18236   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18237   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18238   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18239   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18240 )
18241
18242 target_link_libraries(h2_compress_nosec_test
18243   ${_gRPC_ALLTARGETS_LIBRARIES}
18244   end2end_nosec_tests
18245   grpc_test_util_unsecure
18246   grpc_unsecure
18247   gpr
18248 )
18249
18250   # avoid dependency on libstdc++
18251   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18252     set_target_properties(h2_compress_nosec_test PROPERTIES LINKER_LANGUAGE C)
18253     target_compile_options(h2_compress_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18254   endif()
18255
18256 endif (gRPC_BUILD_TESTS)
18257 if (gRPC_BUILD_TESTS)
18258 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18259
18260 add_executable(h2_fd_nosec_test
18261   test/core/end2end/fixtures/h2_fd.cc
18262 )
18263
18264
18265 target_include_directories(h2_fd_nosec_test
18266   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18267   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18268   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18269   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18270   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18271   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18272   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18273   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18274   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18275   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18276 )
18277
18278 target_link_libraries(h2_fd_nosec_test
18279   ${_gRPC_ALLTARGETS_LIBRARIES}
18280   end2end_nosec_tests
18281   grpc_test_util_unsecure
18282   grpc_unsecure
18283   gpr
18284 )
18285
18286   # avoid dependency on libstdc++
18287   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18288     set_target_properties(h2_fd_nosec_test PROPERTIES LINKER_LANGUAGE C)
18289     target_compile_options(h2_fd_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18290   endif()
18291
18292 endif()
18293 endif (gRPC_BUILD_TESTS)
18294 if (gRPC_BUILD_TESTS)
18295
18296 add_executable(h2_full_nosec_test
18297   test/core/end2end/fixtures/h2_full.cc
18298 )
18299
18300
18301 target_include_directories(h2_full_nosec_test
18302   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18303   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18304   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18305   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18306   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18307   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18308   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18309   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18310   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18311   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18312 )
18313
18314 target_link_libraries(h2_full_nosec_test
18315   ${_gRPC_ALLTARGETS_LIBRARIES}
18316   end2end_nosec_tests
18317   grpc_test_util_unsecure
18318   grpc_unsecure
18319   gpr
18320 )
18321
18322   # avoid dependency on libstdc++
18323   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18324     set_target_properties(h2_full_nosec_test PROPERTIES LINKER_LANGUAGE C)
18325     target_compile_options(h2_full_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18326   endif()
18327
18328 endif (gRPC_BUILD_TESTS)
18329 if (gRPC_BUILD_TESTS)
18330 if(_gRPC_PLATFORM_LINUX)
18331
18332 add_executable(h2_full+pipe_nosec_test
18333   test/core/end2end/fixtures/h2_full+pipe.cc
18334 )
18335
18336
18337 target_include_directories(h2_full+pipe_nosec_test
18338   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18339   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18340   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18341   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18342   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18343   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18344   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18345   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18346   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18347   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18348 )
18349
18350 target_link_libraries(h2_full+pipe_nosec_test
18351   ${_gRPC_ALLTARGETS_LIBRARIES}
18352   end2end_nosec_tests
18353   grpc_test_util_unsecure
18354   grpc_unsecure
18355   gpr
18356 )
18357
18358   # avoid dependency on libstdc++
18359   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18360     set_target_properties(h2_full+pipe_nosec_test PROPERTIES LINKER_LANGUAGE C)
18361     target_compile_options(h2_full+pipe_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18362   endif()
18363
18364 endif()
18365 endif (gRPC_BUILD_TESTS)
18366 if (gRPC_BUILD_TESTS)
18367
18368 add_executable(h2_full+trace_nosec_test
18369   test/core/end2end/fixtures/h2_full+trace.cc
18370 )
18371
18372
18373 target_include_directories(h2_full+trace_nosec_test
18374   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18375   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18376   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18377   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18378   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18379   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18380   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18381   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18382   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18383   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18384 )
18385
18386 target_link_libraries(h2_full+trace_nosec_test
18387   ${_gRPC_ALLTARGETS_LIBRARIES}
18388   end2end_nosec_tests
18389   grpc_test_util_unsecure
18390   grpc_unsecure
18391   gpr
18392 )
18393
18394   # avoid dependency on libstdc++
18395   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18396     set_target_properties(h2_full+trace_nosec_test PROPERTIES LINKER_LANGUAGE C)
18397     target_compile_options(h2_full+trace_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18398   endif()
18399
18400 endif (gRPC_BUILD_TESTS)
18401 if (gRPC_BUILD_TESTS)
18402
18403 add_executable(h2_full+workarounds_nosec_test
18404   test/core/end2end/fixtures/h2_full+workarounds.cc
18405 )
18406
18407
18408 target_include_directories(h2_full+workarounds_nosec_test
18409   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18410   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18411   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18412   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18413   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18414   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18415   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18416   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18417   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18418   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18419 )
18420
18421 target_link_libraries(h2_full+workarounds_nosec_test
18422   ${_gRPC_ALLTARGETS_LIBRARIES}
18423   end2end_nosec_tests
18424   grpc_test_util_unsecure
18425   grpc_unsecure
18426   gpr
18427 )
18428
18429   # avoid dependency on libstdc++
18430   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18431     set_target_properties(h2_full+workarounds_nosec_test PROPERTIES LINKER_LANGUAGE C)
18432     target_compile_options(h2_full+workarounds_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18433   endif()
18434
18435 endif (gRPC_BUILD_TESTS)
18436 if (gRPC_BUILD_TESTS)
18437
18438 add_executable(h2_http_proxy_nosec_test
18439   test/core/end2end/fixtures/h2_http_proxy.cc
18440 )
18441
18442
18443 target_include_directories(h2_http_proxy_nosec_test
18444   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18445   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18446   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18447   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18448   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18449   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18450   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18451   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18452   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18453   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18454 )
18455
18456 target_link_libraries(h2_http_proxy_nosec_test
18457   ${_gRPC_ALLTARGETS_LIBRARIES}
18458   end2end_nosec_tests
18459   grpc_test_util_unsecure
18460   grpc_unsecure
18461   gpr
18462 )
18463
18464   # avoid dependency on libstdc++
18465   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18466     set_target_properties(h2_http_proxy_nosec_test PROPERTIES LINKER_LANGUAGE C)
18467     target_compile_options(h2_http_proxy_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18468   endif()
18469
18470 endif (gRPC_BUILD_TESTS)
18471 if (gRPC_BUILD_TESTS)
18472
18473 add_executable(h2_proxy_nosec_test
18474   test/core/end2end/fixtures/h2_proxy.cc
18475 )
18476
18477
18478 target_include_directories(h2_proxy_nosec_test
18479   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18480   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18481   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18482   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18483   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18484   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18485   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18486   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18487   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18488   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18489 )
18490
18491 target_link_libraries(h2_proxy_nosec_test
18492   ${_gRPC_ALLTARGETS_LIBRARIES}
18493   end2end_nosec_tests
18494   grpc_test_util_unsecure
18495   grpc_unsecure
18496   gpr
18497 )
18498
18499   # avoid dependency on libstdc++
18500   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18501     set_target_properties(h2_proxy_nosec_test PROPERTIES LINKER_LANGUAGE C)
18502     target_compile_options(h2_proxy_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18503   endif()
18504
18505 endif (gRPC_BUILD_TESTS)
18506 if (gRPC_BUILD_TESTS)
18507
18508 add_executable(h2_sockpair_nosec_test
18509   test/core/end2end/fixtures/h2_sockpair.cc
18510 )
18511
18512
18513 target_include_directories(h2_sockpair_nosec_test
18514   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18515   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18516   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18517   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18518   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18519   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18520   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18521   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18522   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18523   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18524 )
18525
18526 target_link_libraries(h2_sockpair_nosec_test
18527   ${_gRPC_ALLTARGETS_LIBRARIES}
18528   end2end_nosec_tests
18529   grpc_test_util_unsecure
18530   grpc_unsecure
18531   gpr
18532 )
18533
18534   # avoid dependency on libstdc++
18535   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18536     set_target_properties(h2_sockpair_nosec_test PROPERTIES LINKER_LANGUAGE C)
18537     target_compile_options(h2_sockpair_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18538   endif()
18539
18540 endif (gRPC_BUILD_TESTS)
18541 if (gRPC_BUILD_TESTS)
18542
18543 add_executable(h2_sockpair+trace_nosec_test
18544   test/core/end2end/fixtures/h2_sockpair+trace.cc
18545 )
18546
18547
18548 target_include_directories(h2_sockpair+trace_nosec_test
18549   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18550   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18551   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18552   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18553   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18554   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18555   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18556   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18557   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18558   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18559 )
18560
18561 target_link_libraries(h2_sockpair+trace_nosec_test
18562   ${_gRPC_ALLTARGETS_LIBRARIES}
18563   end2end_nosec_tests
18564   grpc_test_util_unsecure
18565   grpc_unsecure
18566   gpr
18567 )
18568
18569   # avoid dependency on libstdc++
18570   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18571     set_target_properties(h2_sockpair+trace_nosec_test PROPERTIES LINKER_LANGUAGE C)
18572     target_compile_options(h2_sockpair+trace_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18573   endif()
18574
18575 endif (gRPC_BUILD_TESTS)
18576 if (gRPC_BUILD_TESTS)
18577
18578 add_executable(h2_sockpair_1byte_nosec_test
18579   test/core/end2end/fixtures/h2_sockpair_1byte.cc
18580 )
18581
18582
18583 target_include_directories(h2_sockpair_1byte_nosec_test
18584   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18585   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18586   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18587   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18588   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18589   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18590   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18591   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18592   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18593   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18594 )
18595
18596 target_link_libraries(h2_sockpair_1byte_nosec_test
18597   ${_gRPC_ALLTARGETS_LIBRARIES}
18598   end2end_nosec_tests
18599   grpc_test_util_unsecure
18600   grpc_unsecure
18601   gpr
18602 )
18603
18604   # avoid dependency on libstdc++
18605   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18606     set_target_properties(h2_sockpair_1byte_nosec_test PROPERTIES LINKER_LANGUAGE C)
18607     target_compile_options(h2_sockpair_1byte_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18608   endif()
18609
18610 endif (gRPC_BUILD_TESTS)
18611 if (gRPC_BUILD_TESTS)
18612 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18613
18614 add_executable(h2_uds_nosec_test
18615   test/core/end2end/fixtures/h2_uds.cc
18616 )
18617
18618
18619 target_include_directories(h2_uds_nosec_test
18620   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18621   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18622   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18623   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18624   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18625   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18626   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18627   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18628   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18629   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18630 )
18631
18632 target_link_libraries(h2_uds_nosec_test
18633   ${_gRPC_ALLTARGETS_LIBRARIES}
18634   end2end_nosec_tests
18635   grpc_test_util_unsecure
18636   grpc_unsecure
18637   gpr
18638 )
18639
18640   # avoid dependency on libstdc++
18641   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18642     set_target_properties(h2_uds_nosec_test PROPERTIES LINKER_LANGUAGE C)
18643     target_compile_options(h2_uds_nosec_test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18644   endif()
18645
18646 endif()
18647 endif (gRPC_BUILD_TESTS)
18648 if (gRPC_BUILD_TESTS)
18649
18650 add_executable(resolver_component_test_unsecure
18651   test/cpp/naming/resolver_component_test.cc
18652   third_party/googletest/googletest/src/gtest-all.cc
18653   third_party/googletest/googlemock/src/gmock-all.cc
18654 )
18655
18656
18657 target_include_directories(resolver_component_test_unsecure
18658   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18659   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18660   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18661   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18662   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18663   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18664   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18665   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18666   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18667   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18668   PRIVATE third_party/googletest/googletest/include
18669   PRIVATE third_party/googletest/googletest
18670   PRIVATE third_party/googletest/googlemock/include
18671   PRIVATE third_party/googletest/googlemock
18672   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18673 )
18674
18675 target_link_libraries(resolver_component_test_unsecure
18676   ${_gRPC_PROTOBUF_LIBRARIES}
18677   ${_gRPC_ALLTARGETS_LIBRARIES}
18678   dns_test_util
18679   grpc++_test_util_unsecure
18680   grpc_test_util_unsecure
18681   grpc++_unsecure
18682   grpc_unsecure
18683   gpr
18684   grpc++_test_config
18685   ${_gRPC_GFLAGS_LIBRARIES}
18686 )
18687
18688
18689 endif (gRPC_BUILD_TESTS)
18690 if (gRPC_BUILD_TESTS)
18691
18692 add_executable(resolver_component_test
18693   test/cpp/naming/resolver_component_test.cc
18694   third_party/googletest/googletest/src/gtest-all.cc
18695   third_party/googletest/googlemock/src/gmock-all.cc
18696 )
18697
18698
18699 target_include_directories(resolver_component_test
18700   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18701   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18702   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18703   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18704   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18705   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18706   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18707   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18708   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18709   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18710   PRIVATE third_party/googletest/googletest/include
18711   PRIVATE third_party/googletest/googletest
18712   PRIVATE third_party/googletest/googlemock/include
18713   PRIVATE third_party/googletest/googlemock
18714   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18715 )
18716
18717 target_link_libraries(resolver_component_test
18718   ${_gRPC_PROTOBUF_LIBRARIES}
18719   ${_gRPC_ALLTARGETS_LIBRARIES}
18720   dns_test_util
18721   grpc++_test_util
18722   grpc_test_util
18723   grpc++
18724   grpc
18725   gpr
18726   grpc++_test_config
18727   ${_gRPC_GFLAGS_LIBRARIES}
18728 )
18729
18730
18731 endif (gRPC_BUILD_TESTS)
18732 if (gRPC_BUILD_TESTS)
18733 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18734
18735 add_executable(resolver_component_tests_runner_invoker_unsecure
18736   test/cpp/naming/resolver_component_tests_runner_invoker.cc
18737   third_party/googletest/googletest/src/gtest-all.cc
18738   third_party/googletest/googlemock/src/gmock-all.cc
18739 )
18740
18741
18742 target_include_directories(resolver_component_tests_runner_invoker_unsecure
18743   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18744   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18745   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18746   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18747   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18748   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18749   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18750   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18751   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18752   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18753   PRIVATE third_party/googletest/googletest/include
18754   PRIVATE third_party/googletest/googletest
18755   PRIVATE third_party/googletest/googlemock/include
18756   PRIVATE third_party/googletest/googlemock
18757   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18758 )
18759
18760 target_link_libraries(resolver_component_tests_runner_invoker_unsecure
18761   ${_gRPC_PROTOBUF_LIBRARIES}
18762   ${_gRPC_ALLTARGETS_LIBRARIES}
18763   grpc++_test_util
18764   grpc_test_util
18765   grpc++
18766   grpc
18767   gpr
18768   grpc++_test_config
18769   ${_gRPC_GFLAGS_LIBRARIES}
18770 )
18771
18772
18773 endif()
18774 endif (gRPC_BUILD_TESTS)
18775 if (gRPC_BUILD_TESTS)
18776 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
18777
18778 add_executable(resolver_component_tests_runner_invoker
18779   test/cpp/naming/resolver_component_tests_runner_invoker.cc
18780   third_party/googletest/googletest/src/gtest-all.cc
18781   third_party/googletest/googlemock/src/gmock-all.cc
18782 )
18783
18784
18785 target_include_directories(resolver_component_tests_runner_invoker
18786   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18787   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18788   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18789   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18790   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18791   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18792   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18793   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18794   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18795   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18796   PRIVATE third_party/googletest/googletest/include
18797   PRIVATE third_party/googletest/googletest
18798   PRIVATE third_party/googletest/googlemock/include
18799   PRIVATE third_party/googletest/googlemock
18800   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18801 )
18802
18803 target_link_libraries(resolver_component_tests_runner_invoker
18804   ${_gRPC_PROTOBUF_LIBRARIES}
18805   ${_gRPC_ALLTARGETS_LIBRARIES}
18806   grpc++_test_util
18807   grpc_test_util
18808   grpc++
18809   grpc
18810   gpr
18811   grpc++_test_config
18812   ${_gRPC_GFLAGS_LIBRARIES}
18813 )
18814
18815
18816 endif()
18817 endif (gRPC_BUILD_TESTS)
18818 if (gRPC_BUILD_TESTS)
18819
18820 add_executable(address_sorting_test_unsecure
18821   test/cpp/naming/address_sorting_test.cc
18822   third_party/googletest/googletest/src/gtest-all.cc
18823   third_party/googletest/googlemock/src/gmock-all.cc
18824 )
18825
18826
18827 target_include_directories(address_sorting_test_unsecure
18828   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18829   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18830   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18831   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18832   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18833   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18834   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18835   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18836   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18837   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18838   PRIVATE third_party/googletest/googletest/include
18839   PRIVATE third_party/googletest/googletest
18840   PRIVATE third_party/googletest/googlemock/include
18841   PRIVATE third_party/googletest/googlemock
18842   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18843 )
18844
18845 target_link_libraries(address_sorting_test_unsecure
18846   ${_gRPC_PROTOBUF_LIBRARIES}
18847   ${_gRPC_ALLTARGETS_LIBRARIES}
18848   grpc++_test_util_unsecure
18849   grpc_test_util_unsecure
18850   grpc++_unsecure
18851   grpc_unsecure
18852   gpr
18853   grpc++_test_config
18854   ${_gRPC_GFLAGS_LIBRARIES}
18855 )
18856
18857
18858 endif (gRPC_BUILD_TESTS)
18859 if (gRPC_BUILD_TESTS)
18860
18861 add_executable(address_sorting_test
18862   test/cpp/naming/address_sorting_test.cc
18863   third_party/googletest/googletest/src/gtest-all.cc
18864   third_party/googletest/googlemock/src/gmock-all.cc
18865 )
18866
18867
18868 target_include_directories(address_sorting_test
18869   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18870   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18871   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18872   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18873   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18874   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18875   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18876   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18877   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18878   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18879   PRIVATE third_party/googletest/googletest/include
18880   PRIVATE third_party/googletest/googletest
18881   PRIVATE third_party/googletest/googlemock/include
18882   PRIVATE third_party/googletest/googlemock
18883   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18884 )
18885
18886 target_link_libraries(address_sorting_test
18887   ${_gRPC_PROTOBUF_LIBRARIES}
18888   ${_gRPC_ALLTARGETS_LIBRARIES}
18889   grpc++_test_util
18890   grpc_test_util
18891   grpc++
18892   grpc
18893   gpr
18894   grpc++_test_config
18895   ${_gRPC_GFLAGS_LIBRARIES}
18896 )
18897
18898
18899 endif (gRPC_BUILD_TESTS)
18900 if (gRPC_BUILD_TESTS)
18901
18902 add_executable(cancel_ares_query_test
18903   test/cpp/naming/cancel_ares_query_test.cc
18904   third_party/googletest/googletest/src/gtest-all.cc
18905   third_party/googletest/googlemock/src/gmock-all.cc
18906 )
18907
18908
18909 target_include_directories(cancel_ares_query_test
18910   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18911   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18912   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18913   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18914   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18915   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18916   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18917   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18918   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18919   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18920   PRIVATE third_party/googletest/googletest/include
18921   PRIVATE third_party/googletest/googletest
18922   PRIVATE third_party/googletest/googlemock/include
18923   PRIVATE third_party/googletest/googlemock
18924   PRIVATE ${_gRPC_PROTO_GENS_DIR}
18925 )
18926
18927 target_link_libraries(cancel_ares_query_test
18928   ${_gRPC_PROTOBUF_LIBRARIES}
18929   ${_gRPC_ALLTARGETS_LIBRARIES}
18930   dns_test_util
18931   grpc++_test_util
18932   grpc_test_util
18933   grpc++
18934   grpc
18935   gpr
18936   grpc++_test_config
18937   ${_gRPC_GFLAGS_LIBRARIES}
18938 )
18939
18940
18941 endif (gRPC_BUILD_TESTS)
18942 if (gRPC_BUILD_TESTS)
18943
18944 add_executable(alts_credentials_fuzzer_one_entry
18945   test/core/security/alts_credentials_fuzzer.cc
18946   test/core/util/one_corpus_entry_fuzzer.cc
18947 )
18948
18949
18950 target_include_directories(alts_credentials_fuzzer_one_entry
18951   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18952   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18953   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18954   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18955   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18956   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18957   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18958   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18959   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18960   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18961 )
18962
18963 target_link_libraries(alts_credentials_fuzzer_one_entry
18964   ${_gRPC_ALLTARGETS_LIBRARIES}
18965   grpc_test_util
18966   grpc
18967   gpr
18968 )
18969
18970   # avoid dependency on libstdc++
18971   if (_gRPC_CORE_NOSTDCXX_FLAGS)
18972     set_target_properties(alts_credentials_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
18973     target_compile_options(alts_credentials_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
18974   endif()
18975
18976 endif (gRPC_BUILD_TESTS)
18977 if (gRPC_BUILD_TESTS)
18978
18979 add_executable(api_fuzzer_one_entry
18980   test/core/end2end/fuzzers/api_fuzzer.cc
18981   test/core/util/one_corpus_entry_fuzzer.cc
18982 )
18983
18984
18985 target_include_directories(api_fuzzer_one_entry
18986   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
18987   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
18988   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
18989   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
18990   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
18991   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
18992   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
18993   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
18994   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
18995   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
18996 )
18997
18998 target_link_libraries(api_fuzzer_one_entry
18999   ${_gRPC_ALLTARGETS_LIBRARIES}
19000   grpc_test_util
19001   grpc
19002   gpr
19003 )
19004
19005   # avoid dependency on libstdc++
19006   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19007     set_target_properties(api_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19008     target_compile_options(api_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19009   endif()
19010
19011 endif (gRPC_BUILD_TESTS)
19012 if (gRPC_BUILD_TESTS)
19013
19014 add_executable(client_fuzzer_one_entry
19015   test/core/end2end/fuzzers/client_fuzzer.cc
19016   test/core/util/one_corpus_entry_fuzzer.cc
19017 )
19018
19019
19020 target_include_directories(client_fuzzer_one_entry
19021   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19022   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19023   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19024   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19025   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19026   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19027   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19028   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19029   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19030   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19031 )
19032
19033 target_link_libraries(client_fuzzer_one_entry
19034   ${_gRPC_ALLTARGETS_LIBRARIES}
19035   grpc_test_util
19036   grpc
19037   gpr
19038 )
19039
19040   # avoid dependency on libstdc++
19041   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19042     set_target_properties(client_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19043     target_compile_options(client_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19044   endif()
19045
19046 endif (gRPC_BUILD_TESTS)
19047 if (gRPC_BUILD_TESTS)
19048
19049 add_executable(hpack_parser_fuzzer_test_one_entry
19050   test/core/transport/chttp2/hpack_parser_fuzzer_test.cc
19051   test/core/util/one_corpus_entry_fuzzer.cc
19052 )
19053
19054
19055 target_include_directories(hpack_parser_fuzzer_test_one_entry
19056   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19057   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19058   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19059   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19060   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19061   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19062   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19063   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19064   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19065   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19066 )
19067
19068 target_link_libraries(hpack_parser_fuzzer_test_one_entry
19069   ${_gRPC_ALLTARGETS_LIBRARIES}
19070   grpc_test_util
19071   grpc
19072   gpr
19073 )
19074
19075   # avoid dependency on libstdc++
19076   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19077     set_target_properties(hpack_parser_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19078     target_compile_options(hpack_parser_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19079   endif()
19080
19081 endif (gRPC_BUILD_TESTS)
19082 if (gRPC_BUILD_TESTS)
19083
19084 add_executable(http_request_fuzzer_test_one_entry
19085   test/core/http/request_fuzzer.cc
19086   test/core/util/one_corpus_entry_fuzzer.cc
19087 )
19088
19089
19090 target_include_directories(http_request_fuzzer_test_one_entry
19091   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19092   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19093   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19094   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19095   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19096   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19097   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19098   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19099   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19100   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19101 )
19102
19103 target_link_libraries(http_request_fuzzer_test_one_entry
19104   ${_gRPC_ALLTARGETS_LIBRARIES}
19105   grpc_test_util
19106   grpc
19107   gpr
19108 )
19109
19110   # avoid dependency on libstdc++
19111   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19112     set_target_properties(http_request_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19113     target_compile_options(http_request_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19114   endif()
19115
19116 endif (gRPC_BUILD_TESTS)
19117 if (gRPC_BUILD_TESTS)
19118
19119 add_executable(http_response_fuzzer_test_one_entry
19120   test/core/http/response_fuzzer.cc
19121   test/core/util/one_corpus_entry_fuzzer.cc
19122 )
19123
19124
19125 target_include_directories(http_response_fuzzer_test_one_entry
19126   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19127   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19128   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19129   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19130   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19131   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19132   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19133   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19134   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19135   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19136 )
19137
19138 target_link_libraries(http_response_fuzzer_test_one_entry
19139   ${_gRPC_ALLTARGETS_LIBRARIES}
19140   grpc_test_util
19141   grpc
19142   gpr
19143 )
19144
19145   # avoid dependency on libstdc++
19146   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19147     set_target_properties(http_response_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19148     target_compile_options(http_response_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19149   endif()
19150
19151 endif (gRPC_BUILD_TESTS)
19152 if (gRPC_BUILD_TESTS)
19153
19154 add_executable(json_fuzzer_test_one_entry
19155   test/core/json/fuzzer.cc
19156   test/core/util/one_corpus_entry_fuzzer.cc
19157 )
19158
19159
19160 target_include_directories(json_fuzzer_test_one_entry
19161   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19162   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19163   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19164   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19165   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19166   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19167   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19168   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19169   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19170   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19171 )
19172
19173 target_link_libraries(json_fuzzer_test_one_entry
19174   ${_gRPC_ALLTARGETS_LIBRARIES}
19175   grpc_test_util
19176   grpc
19177   gpr
19178 )
19179
19180   # avoid dependency on libstdc++
19181   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19182     set_target_properties(json_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19183     target_compile_options(json_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19184   endif()
19185
19186 endif (gRPC_BUILD_TESTS)
19187 if (gRPC_BUILD_TESTS)
19188
19189 add_executable(nanopb_fuzzer_response_test_one_entry
19190   test/core/nanopb/fuzzer_response.cc
19191   test/core/util/one_corpus_entry_fuzzer.cc
19192 )
19193
19194
19195 target_include_directories(nanopb_fuzzer_response_test_one_entry
19196   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19197   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19198   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19199   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19200   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19201   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19202   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19203   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19204   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19205   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19206 )
19207
19208 target_link_libraries(nanopb_fuzzer_response_test_one_entry
19209   ${_gRPC_ALLTARGETS_LIBRARIES}
19210   grpc_test_util
19211   grpc
19212   gpr
19213 )
19214
19215   # avoid dependency on libstdc++
19216   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19217     set_target_properties(nanopb_fuzzer_response_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19218     target_compile_options(nanopb_fuzzer_response_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19219   endif()
19220
19221 endif (gRPC_BUILD_TESTS)
19222 if (gRPC_BUILD_TESTS)
19223
19224 add_executable(nanopb_fuzzer_serverlist_test_one_entry
19225   test/core/nanopb/fuzzer_serverlist.cc
19226   test/core/util/one_corpus_entry_fuzzer.cc
19227 )
19228
19229
19230 target_include_directories(nanopb_fuzzer_serverlist_test_one_entry
19231   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19232   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19233   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19234   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19235   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19236   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19237   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19238   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19239   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19240   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19241 )
19242
19243 target_link_libraries(nanopb_fuzzer_serverlist_test_one_entry
19244   ${_gRPC_ALLTARGETS_LIBRARIES}
19245   grpc_test_util
19246   grpc
19247   gpr
19248 )
19249
19250   # avoid dependency on libstdc++
19251   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19252     set_target_properties(nanopb_fuzzer_serverlist_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19253     target_compile_options(nanopb_fuzzer_serverlist_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19254   endif()
19255
19256 endif (gRPC_BUILD_TESTS)
19257 if (gRPC_BUILD_TESTS)
19258
19259 add_executable(percent_decode_fuzzer_one_entry
19260   test/core/slice/percent_decode_fuzzer.cc
19261   test/core/util/one_corpus_entry_fuzzer.cc
19262 )
19263
19264
19265 target_include_directories(percent_decode_fuzzer_one_entry
19266   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19267   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19268   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19269   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19270   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19271   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19272   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19273   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19274   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19275   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19276 )
19277
19278 target_link_libraries(percent_decode_fuzzer_one_entry
19279   ${_gRPC_ALLTARGETS_LIBRARIES}
19280   grpc_test_util
19281   grpc
19282   gpr
19283 )
19284
19285   # avoid dependency on libstdc++
19286   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19287     set_target_properties(percent_decode_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19288     target_compile_options(percent_decode_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19289   endif()
19290
19291 endif (gRPC_BUILD_TESTS)
19292 if (gRPC_BUILD_TESTS)
19293
19294 add_executable(percent_encode_fuzzer_one_entry
19295   test/core/slice/percent_encode_fuzzer.cc
19296   test/core/util/one_corpus_entry_fuzzer.cc
19297 )
19298
19299
19300 target_include_directories(percent_encode_fuzzer_one_entry
19301   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19302   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19303   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19304   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19305   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19306   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19307   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19308   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19309   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19310   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19311 )
19312
19313 target_link_libraries(percent_encode_fuzzer_one_entry
19314   ${_gRPC_ALLTARGETS_LIBRARIES}
19315   grpc_test_util
19316   grpc
19317   gpr
19318 )
19319
19320   # avoid dependency on libstdc++
19321   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19322     set_target_properties(percent_encode_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19323     target_compile_options(percent_encode_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19324   endif()
19325
19326 endif (gRPC_BUILD_TESTS)
19327 if (gRPC_BUILD_TESTS)
19328
19329 add_executable(server_fuzzer_one_entry
19330   test/core/end2end/fuzzers/server_fuzzer.cc
19331   test/core/util/one_corpus_entry_fuzzer.cc
19332 )
19333
19334
19335 target_include_directories(server_fuzzer_one_entry
19336   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19337   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19338   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19339   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19340   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19341   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19342   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19343   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19344   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19345   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19346 )
19347
19348 target_link_libraries(server_fuzzer_one_entry
19349   ${_gRPC_ALLTARGETS_LIBRARIES}
19350   grpc_test_util
19351   grpc
19352   gpr
19353 )
19354
19355   # avoid dependency on libstdc++
19356   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19357     set_target_properties(server_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19358     target_compile_options(server_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19359   endif()
19360
19361 endif (gRPC_BUILD_TESTS)
19362 if (gRPC_BUILD_TESTS)
19363
19364 add_executable(ssl_server_fuzzer_one_entry
19365   test/core/security/ssl_server_fuzzer.cc
19366   test/core/util/one_corpus_entry_fuzzer.cc
19367 )
19368
19369
19370 target_include_directories(ssl_server_fuzzer_one_entry
19371   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19372   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19373   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19374   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19375   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19376   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19377   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19378   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19379   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19380   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19381 )
19382
19383 target_link_libraries(ssl_server_fuzzer_one_entry
19384   ${_gRPC_ALLTARGETS_LIBRARIES}
19385   grpc_test_util
19386   grpc
19387   gpr
19388 )
19389
19390   # avoid dependency on libstdc++
19391   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19392     set_target_properties(ssl_server_fuzzer_one_entry PROPERTIES LINKER_LANGUAGE C)
19393     target_compile_options(ssl_server_fuzzer_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19394   endif()
19395
19396 endif (gRPC_BUILD_TESTS)
19397 if (gRPC_BUILD_TESTS)
19398
19399 add_executable(uri_fuzzer_test_one_entry
19400   test/core/client_channel/uri_fuzzer_test.cc
19401   test/core/util/one_corpus_entry_fuzzer.cc
19402 )
19403
19404
19405 target_include_directories(uri_fuzzer_test_one_entry
19406   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
19407   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
19408   PRIVATE ${_gRPC_SSL_INCLUDE_DIR}
19409   PRIVATE ${_gRPC_PROTOBUF_INCLUDE_DIR}
19410   PRIVATE ${_gRPC_ZLIB_INCLUDE_DIR}
19411   PRIVATE ${_gRPC_BENCHMARK_INCLUDE_DIR}
19412   PRIVATE ${_gRPC_CARES_INCLUDE_DIR}
19413   PRIVATE ${_gRPC_GFLAGS_INCLUDE_DIR}
19414   PRIVATE ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR}
19415   PRIVATE ${_gRPC_NANOPB_INCLUDE_DIR}
19416 )
19417
19418 target_link_libraries(uri_fuzzer_test_one_entry
19419   ${_gRPC_ALLTARGETS_LIBRARIES}
19420   grpc_test_util
19421   grpc
19422   gpr
19423 )
19424
19425   # avoid dependency on libstdc++
19426   if (_gRPC_CORE_NOSTDCXX_FLAGS)
19427     set_target_properties(uri_fuzzer_test_one_entry PROPERTIES LINKER_LANGUAGE C)
19428     target_compile_options(uri_fuzzer_test_one_entry PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${_gRPC_CORE_NOSTDCXX_FLAGS}>)
19429   endif()
19430
19431 endif (gRPC_BUILD_TESTS)
19432
19433
19434
19435
19436
19437
19438
19439 if (gRPC_INSTALL)
19440   install(EXPORT gRPCTargets
19441     DESTINATION ${gRPC_INSTALL_CMAKEDIR}
19442     NAMESPACE gRPC::
19443   )
19444 endif()
19445
19446 foreach(_config gRPCConfig gRPCConfigVersion)
19447   configure_file(cmake/${_config}.cmake.in
19448     ${_config}.cmake @ONLY)
19449   install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
19450     DESTINATION ${gRPC_INSTALL_CMAKEDIR}
19451   )
19452 endforeach()
19453
19454 install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/etc/roots.pem
19455   DESTINATION ${gRPC_INSTALL_SHAREDIR})