blob: a5108f523342d36d9167344dc423995f5b42838e [file] [log] [blame]
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001# 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
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +02007#
8# Additionally, this is currently very experimental, and unsupported.
9# Further work will happen on that file.
10#
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010011# Copyright 2015, Google Inc.
12# All rights reserved.
13#
14# Redistribution and use in source and binary forms, with or without
15# modification, are permitted provided that the following conditions are
16# met:
17#
18# * Redistributions of source code must retain the above copyright
19# notice, this list of conditions and the following disclaimer.
20# * Redistributions in binary form must reproduce the above
21# copyright notice, this list of conditions and the following disclaimer
22# in the documentation and/or other materials provided with the
23# distribution.
24# * Neither the name of Google Inc. nor the names of its
25# contributors may be used to endorse or promote products derived from
26# this software without specific prior written permission.
27#
28# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
29# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
32# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
33# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
34# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
35# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
36# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
37# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
38# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39
40
41
42cmake_minimum_required(VERSION 2.8)
43
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +010044set(PACKAGE_NAME "grpc")
Nicolas "Pixel" Noble49bfb922016-07-12 09:31:41 +020045set(PACKAGE_VERSION "1.1.0-dev")
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +010046set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
47set(PACKAGE_TARNAME "${PACKAGE_NAME}-${PACKAGE_VERSION}")
48set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/")
49project(${PACKAGE_NAME} C CXX)
50
Arkadiy Shapkin40beb372016-08-17 14:42:36 +030051if (NOT MSVC)
52 set(gRPC_INSTALL ON CACHE BOOL "Generate installation target")
53else()
54 set(gRPC_INSTALL OFF CACHE BOOL "Generate installation target")
55endif()
56
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030057set(gRPC_ZLIB_PROVIDER "module" CACHE STRING "Provider of zlib library")
58set_property(CACHE gRPC_ZLIB_PROVIDER PROPERTY STRINGS "module" "package")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010059
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030060set(gRPC_SSL_PROVIDER "module" CACHE STRING "Provider of ssl library")
61set_property(CACHE gRPC_SSL_PROVIDER PROPERTY STRINGS "module" "package")
Tamas Berghammera72712e2016-07-06 10:30:25 +010062
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030063set(gRPC_PROTOBUF_PROVIDER "module" CACHE STRING "Provider of protobuf library")
64set_property(CACHE gRPC_PROTOBUF_PROVIDER PROPERTY STRINGS "module" "package")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010065
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030066set(gRPC_USE_PROTO_LITE OFF CACHE BOOL "Use the protobuf-lite library")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010067
Arkadiy Shapkin40beb372016-08-17 14:42:36 +030068if (MSVC)
69 add_definitions( -D_WIN32_WINNT=0x600 )
70endif()
71
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030072if (gRPC_USE_PROTO_LITE)
73 set(_gRPC_PROTOBUF_LIBRARY_NAME "libprotobuf-lite")
Tamas Berghammer23911562016-07-27 15:24:05 +010074 add_definitions("-DGRPC_USE_PROTO_LITE")
75else()
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030076 set(_gRPC_PROTOBUF_LIBRARY_NAME "libprotobuf")
77endif()
78
79if("${gRPC_ZLIB_PROVIDER}" STREQUAL "module")
80 if(NOT ZLIB_ROOT_DIR)
81 set(ZLIB_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/zlib)
82 endif()
83 set(ZLIB_INCLUDE_DIR "${ZLIB_ROOT_DIR}")
84 if(EXISTS "${ZLIB_ROOT_DIR}/CMakeLists.txt")
85 add_subdirectory(${ZLIB_ROOT_DIR} third_party/zlib)
86 if(TARGET zlibstatic)
87 set(_gRPC_ZLIB_LIBRARIES zlibstatic)
88 endif()
89 else()
90 message(WARNING "gRPC_ZLIB_PROVIDER is \"module\" but ZLIB_ROOT_DIR is wrong")
91 endif()
92elseif("${gRPC_ZLIB_PROVIDER}" STREQUAL "package")
93 find_package(ZLIB)
94 if(TARGET ZLIB::ZLIB)
95 set(_gRPC_ZLIB_LIBRARIES ZLIB::ZLIB)
96 endif()
Konstantin Podsvirovdd331482016-07-28 00:00:25 +030097 set(_gRPC_FIND_ZLIB "if(NOT ZLIB_FOUND)\n find_package(ZLIB)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030098endif()
99
100if("${gRPC_PROTOBUF_PROVIDER}" STREQUAL "module")
101 # Building the protobuf tests require gmock what is not part of a standard protobuf checkout.
102 # Disable them unless they are explicitly requested from the cmake command line (when we assume
103 # gmock is downloaded to the right location inside protobuf).
104 if(NOT protobuf_BUILD_TESTS)
105 set(protobuf_BUILD_TESTS OFF CACHE BOOL "Build protobuf tests")
106 endif()
107 if(NOT PROTOBUF_ROOT_DIR)
108 set(PROTOBUF_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/protobuf)
109 endif()
110 if(EXISTS "${PROTOBUF_ROOT_DIR}/cmake/CMakeLists.txt")
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300111 set(protobuf_MSVC_STATIC_RUNTIME OFF CACHE BOOL "Link static runtime libraries")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300112 add_subdirectory(${PROTOBUF_ROOT_DIR}/cmake third_party/protobuf)
113 if(TARGET ${_gRPC_PROTOBUF_LIBRARY_NAME})
114 set(_gRPC_PROTOBUF_LIBRARIES ${_gRPC_PROTOBUF_LIBRARY_NAME})
115 endif()
116 if(TARGET libprotoc)
117 set(_gRPC_PROTOBUF_PROTOC_LIBRARIES libprotoc)
118 endif()
119 else()
120 message(WARNING "gRPC_PROTOBUF_PROVIDER is \"module\" but PROTOBUF_ROOT_DIR is wrong")
121 endif()
122elseif("${gRPC_PROTOBUF_PROVIDER}" STREQUAL "package")
123 find_package(protobuf CONFIG)
124 if(protobuf_FOUND)
125 if(TARGET protobuf::${_gRPC_PROTOBUF_LIBRARY_NAME})
126 set(_gRPC_PROTOBUF_LIBRARIES protobuf::${_gRPC_PROTOBUF_LIBRARY_NAME})
127 endif()
128 if(TARGET protobuf::libprotoc)
129 set(_gRPC_PROTOBUF_PROTOC_LIBRARIES protobuf::libprotoc)
130 endif()
Konstantin Podsvirovdd331482016-07-28 00:00:25 +0300131 set(_gRPC_FIND_PROTOBUF "if(NOT protobuf_FOUND)\n find_package(protobuf CONFIG)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300132 else()
133 find_package(Protobuf MODULE)
Konstantin Podsvirovdd331482016-07-28 00:00:25 +0300134 set(_gRPC_FIND_PROTOBUF "if(NOT Protobuf_FOUND)\n find_package(Protobuf)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300135 endif()
136endif()
137
138if("${gRPC_SSL_PROVIDER}" STREQUAL "module")
139 if(NOT BORINGSSL_ROOT_DIR)
140 set(BORINGSSL_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/boringssl)
141 endif()
142 if(EXISTS "${BORINGSSL_ROOT_DIR}/CMakeLists.txt")
143 add_subdirectory(${BORINGSSL_ROOT_DIR} third_party/boringssl)
144 if(TARGET ssl)
145 set(_gRPC_SSL_LIBRARIES ssl)
146 endif()
147 else()
148 message(WARNING "gRPC_SSL_PROVIDER is \"module\" but BORINGSSL_ROOT_DIR is wrong")
149 endif()
150elseif("${gRPC_SSL_PROVIDER}" STREQUAL "package")
151 find_package(OpenSSL)
152 if(TARGET OpenSSL::SSL)
153 set(_gRPC_SSL_LIBRARIES OpenSSL::SSL)
154 endif()
Konstantin Podsvirovdd331482016-07-28 00:00:25 +0300155 set(_gRPC_FIND_SSL "if(NOT OpenSSL_FOUND)\n find_package(OpenSSL)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300156endif()
157
158if(NOT MSVC)
159 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11")
160 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
161endif()
162
163if(WIN32 AND MSVC)
164 set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32)
Tamas Berghammer23911562016-07-27 15:24:05 +0100165endif()
166
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300167include(GNUInstallDirs)
168if(NOT DEFINED CMAKE_INSTALL_CMAKEDIR)
169 set(CMAKE_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/gRPC")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100170endif()
171
172
173add_library(gpr
174 src/core/lib/profiling/basic_timers.c
175 src/core/lib/profiling/stap_timers.c
176 src/core/lib/support/alloc.c
177 src/core/lib/support/avl.c
178 src/core/lib/support/backoff.c
179 src/core/lib/support/cmdline.c
180 src/core/lib/support/cpu_iphone.c
181 src/core/lib/support/cpu_linux.c
182 src/core/lib/support/cpu_posix.c
183 src/core/lib/support/cpu_windows.c
184 src/core/lib/support/env_linux.c
185 src/core/lib/support/env_posix.c
186 src/core/lib/support/env_windows.c
187 src/core/lib/support/histogram.c
188 src/core/lib/support/host_port.c
189 src/core/lib/support/log.c
190 src/core/lib/support/log_android.c
191 src/core/lib/support/log_linux.c
192 src/core/lib/support/log_posix.c
193 src/core/lib/support/log_windows.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700194 src/core/lib/support/mpscq.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100195 src/core/lib/support/murmur_hash.c
Craig Tiller17ed6b12016-08-18 09:33:33 -0700196 src/core/lib/support/percent_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100197 src/core/lib/support/slice.c
198 src/core/lib/support/slice_buffer.c
199 src/core/lib/support/stack_lockfree.c
200 src/core/lib/support/string.c
201 src/core/lib/support/string_posix.c
202 src/core/lib/support/string_util_windows.c
203 src/core/lib/support/string_windows.c
204 src/core/lib/support/subprocess_posix.c
205 src/core/lib/support/subprocess_windows.c
206 src/core/lib/support/sync.c
207 src/core/lib/support/sync_posix.c
208 src/core/lib/support/sync_windows.c
209 src/core/lib/support/thd.c
210 src/core/lib/support/thd_posix.c
211 src/core/lib/support/thd_windows.c
212 src/core/lib/support/time.c
213 src/core/lib/support/time_posix.c
214 src/core/lib/support/time_precise.c
215 src/core/lib/support/time_windows.c
216 src/core/lib/support/tls_pthread.c
217 src/core/lib/support/tmpfile_msys.c
218 src/core/lib/support/tmpfile_posix.c
219 src/core/lib/support/tmpfile_windows.c
220 src/core/lib/support/wrap_memcpy.c
221)
222
223target_include_directories(gpr
224 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
225 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
226 PRIVATE ${BORINGSSL_ROOT_DIR}/include
227 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300228 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100229 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
230)
231
232
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300233foreach(_hdr
234 include/grpc/support/alloc.h
235 include/grpc/support/atm.h
236 include/grpc/support/atm_gcc_atomic.h
237 include/grpc/support/atm_gcc_sync.h
238 include/grpc/support/atm_windows.h
239 include/grpc/support/avl.h
240 include/grpc/support/cmdline.h
241 include/grpc/support/cpu.h
242 include/grpc/support/histogram.h
243 include/grpc/support/host_port.h
244 include/grpc/support/log.h
245 include/grpc/support/log_windows.h
246 include/grpc/support/port_platform.h
247 include/grpc/support/slice.h
248 include/grpc/support/slice_buffer.h
249 include/grpc/support/string_util.h
250 include/grpc/support/subprocess.h
251 include/grpc/support/sync.h
252 include/grpc/support/sync_generic.h
253 include/grpc/support/sync_posix.h
254 include/grpc/support/sync_windows.h
255 include/grpc/support/thd.h
256 include/grpc/support/time.h
257 include/grpc/support/tls.h
258 include/grpc/support/tls_gcc.h
259 include/grpc/support/tls_msvc.h
260 include/grpc/support/tls_pthread.h
261 include/grpc/support/useful.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300262 include/grpc/impl/codegen/atm.h
263 include/grpc/impl/codegen/atm_gcc_atomic.h
264 include/grpc/impl/codegen/atm_gcc_sync.h
265 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700266 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300267 include/grpc/impl/codegen/port_platform.h
268 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300269 include/grpc/impl/codegen/sync.h
270 include/grpc/impl/codegen/sync_generic.h
271 include/grpc/impl/codegen/sync_posix.h
272 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300273)
274 string(REPLACE "include/" "" _path ${_hdr})
275 get_filename_component(_path ${_path} PATH)
276 install(FILES ${_hdr}
277 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
278 )
279endforeach()
280
281
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300282if (gRPC_INSTALL)
283 install(TARGETS gpr EXPORT gRPCTargets
284 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
285 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
286 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
287 )
288endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300289
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100290
291add_library(grpc
292 src/core/lib/surface/init.c
293 src/core/lib/channel/channel_args.c
294 src/core/lib/channel/channel_stack.c
295 src/core/lib/channel/channel_stack_builder.c
296 src/core/lib/channel/compress_filter.c
297 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700298 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700299 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100300 src/core/lib/channel/http_client_filter.c
301 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700302 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100303 src/core/lib/compression/compression.c
304 src/core/lib/compression/message_compress.c
305 src/core/lib/debug/trace.c
306 src/core/lib/http/format_request.c
307 src/core/lib/http/httpcli.c
308 src/core/lib/http/parser.c
309 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700310 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100311 src/core/lib/iomgr/endpoint.c
312 src/core/lib/iomgr/endpoint_pair_posix.c
313 src/core/lib/iomgr/endpoint_pair_windows.c
314 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200315 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100316 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
317 src/core/lib/iomgr/ev_poll_posix.c
318 src/core/lib/iomgr/ev_posix.c
319 src/core/lib/iomgr/exec_ctx.c
320 src/core/lib/iomgr/executor.c
321 src/core/lib/iomgr/iocp_windows.c
322 src/core/lib/iomgr/iomgr.c
323 src/core/lib/iomgr/iomgr_posix.c
324 src/core/lib/iomgr/iomgr_windows.c
325 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200326 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100327 src/core/lib/iomgr/polling_entity.c
328 src/core/lib/iomgr/pollset_set_windows.c
329 src/core/lib/iomgr/pollset_windows.c
330 src/core/lib/iomgr/resolve_address_posix.c
331 src/core/lib/iomgr/resolve_address_windows.c
332 src/core/lib/iomgr/sockaddr_utils.c
333 src/core/lib/iomgr/socket_utils_common_posix.c
334 src/core/lib/iomgr/socket_utils_linux.c
335 src/core/lib/iomgr/socket_utils_posix.c
336 src/core/lib/iomgr/socket_windows.c
337 src/core/lib/iomgr/tcp_client_posix.c
338 src/core/lib/iomgr/tcp_client_windows.c
339 src/core/lib/iomgr/tcp_posix.c
340 src/core/lib/iomgr/tcp_server_posix.c
341 src/core/lib/iomgr/tcp_server_windows.c
342 src/core/lib/iomgr/tcp_windows.c
343 src/core/lib/iomgr/time_averaged_stats.c
344 src/core/lib/iomgr/timer.c
345 src/core/lib/iomgr/timer_heap.c
346 src/core/lib/iomgr/udp_server.c
347 src/core/lib/iomgr/unix_sockets_posix.c
348 src/core/lib/iomgr/unix_sockets_posix_noop.c
kpayson64d195cf52016-10-09 18:04:00 -0700349 src/core/lib/iomgr/wakeup_fd_cv.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100350 src/core/lib/iomgr/wakeup_fd_eventfd.c
351 src/core/lib/iomgr/wakeup_fd_nospecial.c
352 src/core/lib/iomgr/wakeup_fd_pipe.c
353 src/core/lib/iomgr/wakeup_fd_posix.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100354 src/core/lib/iomgr/workqueue_windows.c
355 src/core/lib/json/json.c
356 src/core/lib/json/json_reader.c
357 src/core/lib/json/json_string.c
358 src/core/lib/json/json_writer.c
359 src/core/lib/surface/alarm.c
360 src/core/lib/surface/api_trace.c
361 src/core/lib/surface/byte_buffer.c
362 src/core/lib/surface/byte_buffer_reader.c
363 src/core/lib/surface/call.c
364 src/core/lib/surface/call_details.c
365 src/core/lib/surface/call_log_batch.c
366 src/core/lib/surface/channel.c
367 src/core/lib/surface/channel_init.c
368 src/core/lib/surface/channel_ping.c
369 src/core/lib/surface/channel_stack_type.c
370 src/core/lib/surface/completion_queue.c
371 src/core/lib/surface/event_string.c
372 src/core/lib/surface/lame_client.c
373 src/core/lib/surface/metadata_array.c
374 src/core/lib/surface/server.c
375 src/core/lib/surface/validate_metadata.c
376 src/core/lib/surface/version.c
377 src/core/lib/transport/byte_stream.c
378 src/core/lib/transport/connectivity_state.c
Mark D. Roth6a721b52016-10-14 12:43:34 -0700379 src/core/lib/transport/mdstr_hash_table.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100380 src/core/lib/transport/metadata.c
381 src/core/lib/transport/metadata_batch.c
382 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400383 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100384 src/core/lib/transport/transport.c
385 src/core/lib/transport/transport_op_string.c
386 src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.c
387 src/core/ext/transport/chttp2/transport/bin_decoder.c
388 src/core/ext/transport/chttp2/transport/bin_encoder.c
389 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
390 src/core/ext/transport/chttp2/transport/chttp2_transport.c
391 src/core/ext/transport/chttp2/transport/frame_data.c
392 src/core/ext/transport/chttp2/transport/frame_goaway.c
393 src/core/ext/transport/chttp2/transport/frame_ping.c
394 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
395 src/core/ext/transport/chttp2/transport/frame_settings.c
396 src/core/ext/transport/chttp2/transport/frame_window_update.c
397 src/core/ext/transport/chttp2/transport/hpack_encoder.c
398 src/core/ext/transport/chttp2/transport/hpack_parser.c
399 src/core/ext/transport/chttp2/transport/hpack_table.c
400 src/core/ext/transport/chttp2/transport/huffsyms.c
401 src/core/ext/transport/chttp2/transport/incoming_metadata.c
402 src/core/ext/transport/chttp2/transport/parsing.c
403 src/core/ext/transport/chttp2/transport/status_conversion.c
404 src/core/ext/transport/chttp2/transport/stream_lists.c
405 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100406 src/core/ext/transport/chttp2/transport/varint.c
407 src/core/ext/transport/chttp2/transport/writing.c
408 src/core/ext/transport/chttp2/alpn/alpn.c
409 src/core/lib/http/httpcli_security_connector.c
410 src/core/lib/security/context/security_context.c
411 src/core/lib/security/credentials/composite/composite_credentials.c
412 src/core/lib/security/credentials/credentials.c
413 src/core/lib/security/credentials/credentials_metadata.c
414 src/core/lib/security/credentials/fake/fake_credentials.c
415 src/core/lib/security/credentials/google_default/credentials_posix.c
416 src/core/lib/security/credentials/google_default/credentials_windows.c
417 src/core/lib/security/credentials/google_default/google_default_credentials.c
418 src/core/lib/security/credentials/iam/iam_credentials.c
419 src/core/lib/security/credentials/jwt/json_token.c
420 src/core/lib/security/credentials/jwt/jwt_credentials.c
421 src/core/lib/security/credentials/jwt/jwt_verifier.c
422 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
423 src/core/lib/security/credentials/plugin/plugin_credentials.c
424 src/core/lib/security/credentials/ssl/ssl_credentials.c
425 src/core/lib/security/transport/client_auth_filter.c
426 src/core/lib/security/transport/handshake.c
427 src/core/lib/security/transport/secure_endpoint.c
428 src/core/lib/security/transport/security_connector.c
429 src/core/lib/security/transport/server_auth_filter.c
430 src/core/lib/security/transport/tsi_error.c
431 src/core/lib/security/util/b64.c
432 src/core/lib/security/util/json_util.c
433 src/core/lib/surface/init_secure.c
434 src/core/lib/tsi/fake_transport_security.c
435 src/core/lib/tsi/ssl_transport_security.c
436 src/core/lib/tsi/transport_security.c
437 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
438 src/core/ext/client_config/channel_connectivity.c
439 src/core/ext/client_config/client_channel.c
440 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100441 src/core/ext/client_config/client_config_plugin.c
442 src/core/ext/client_config/connector.c
443 src/core/ext/client_config/default_initial_connect_string.c
Mark D. Roth1102a9e2016-07-22 09:10:01 -0700444 src/core/ext/client_config/http_connect_handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100445 src/core/ext/client_config/initial_connect_string.c
446 src/core/ext/client_config/lb_policy.c
447 src/core/ext/client_config/lb_policy_factory.c
448 src/core/ext/client_config/lb_policy_registry.c
Mark D. Roth4c3a4682016-09-23 15:19:26 -0700449 src/core/ext/client_config/method_config.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100450 src/core/ext/client_config/parse_address.c
451 src/core/ext/client_config/resolver.c
452 src/core/ext/client_config/resolver_factory.c
453 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700454 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100455 src/core/ext/client_config/subchannel.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100456 src/core/ext/client_config/subchannel_index.c
457 src/core/ext/client_config/uri_parser.c
458 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
459 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
460 src/core/ext/transport/chttp2/client/insecure/channel_create.c
461 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700462 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100463 src/core/ext/lb_policy/grpclb/load_balancer_api.c
464 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
465 third_party/nanopb/pb_common.c
466 third_party/nanopb/pb_decode.c
467 third_party/nanopb/pb_encode.c
468 src/core/ext/lb_policy/pick_first/pick_first.c
469 src/core/ext/lb_policy/round_robin/round_robin.c
470 src/core/ext/resolver/dns/native/dns_resolver.c
471 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
472 src/core/ext/load_reporting/load_reporting.c
473 src/core/ext/load_reporting/load_reporting_filter.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700474 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100475 src/core/ext/census/context.c
476 src/core/ext/census/gen/census.pb.c
Alistair Veitcha0c69f92016-08-31 12:01:27 -0700477 src/core/ext/census/gen/trace_context.pb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100478 src/core/ext/census/grpc_context.c
479 src/core/ext/census/grpc_filter.c
480 src/core/ext/census/grpc_plugin.c
481 src/core/ext/census/initialize.c
482 src/core/ext/census/mlog.c
483 src/core/ext/census/operation.c
484 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700485 src/core/ext/census/resource.c
Vizerai12d1fc62016-09-09 14:22:19 -0700486 src/core/ext/census/trace_context.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100487 src/core/ext/census/tracing.c
488 src/core/plugin_registry/grpc_plugin_registry.c
489)
490
491target_include_directories(grpc
492 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
493 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
494 PRIVATE ${BORINGSSL_ROOT_DIR}/include
495 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300496 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100497 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
498)
499
500target_link_libraries(grpc
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300501 ${_gRPC_BASELIB_LIBRARIES}
502 ${_gRPC_SSL_LIBRARIES}
503 ${_gRPC_ZLIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100504 gpr
505)
506
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300507foreach(_hdr
508 include/grpc/byte_buffer.h
509 include/grpc/byte_buffer_reader.h
510 include/grpc/compression.h
511 include/grpc/grpc.h
512 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200513 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300514 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300515 include/grpc/impl/codegen/byte_buffer_reader.h
516 include/grpc/impl/codegen/compression_types.h
517 include/grpc/impl/codegen/connectivity_state.h
518 include/grpc/impl/codegen/grpc_types.h
519 include/grpc/impl/codegen/propagation_bits.h
520 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300521 include/grpc/impl/codegen/atm.h
522 include/grpc/impl/codegen/atm_gcc_atomic.h
523 include/grpc/impl/codegen/atm_gcc_sync.h
524 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700525 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300526 include/grpc/impl/codegen/port_platform.h
527 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300528 include/grpc/impl/codegen/sync.h
529 include/grpc/impl/codegen/sync_generic.h
530 include/grpc/impl/codegen/sync_posix.h
531 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300532 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300533 include/grpc/census.h
534)
535 string(REPLACE "include/" "" _path ${_hdr})
536 get_filename_component(_path ${_path} PATH)
537 install(FILES ${_hdr}
538 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
539 )
540endforeach()
541
542
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300543if (gRPC_INSTALL)
544 install(TARGETS grpc EXPORT gRPCTargets
545 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
546 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
547 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
548 )
549endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300550
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100551
552add_library(grpc_cronet
553 src/core/lib/surface/init.c
554 src/core/lib/channel/channel_args.c
555 src/core/lib/channel/channel_stack.c
556 src/core/lib/channel/channel_stack_builder.c
557 src/core/lib/channel/compress_filter.c
558 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700559 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700560 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100561 src/core/lib/channel/http_client_filter.c
562 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700563 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100564 src/core/lib/compression/compression.c
565 src/core/lib/compression/message_compress.c
566 src/core/lib/debug/trace.c
567 src/core/lib/http/format_request.c
568 src/core/lib/http/httpcli.c
569 src/core/lib/http/parser.c
570 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700571 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100572 src/core/lib/iomgr/endpoint.c
573 src/core/lib/iomgr/endpoint_pair_posix.c
574 src/core/lib/iomgr/endpoint_pair_windows.c
575 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200576 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100577 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
578 src/core/lib/iomgr/ev_poll_posix.c
579 src/core/lib/iomgr/ev_posix.c
580 src/core/lib/iomgr/exec_ctx.c
581 src/core/lib/iomgr/executor.c
582 src/core/lib/iomgr/iocp_windows.c
583 src/core/lib/iomgr/iomgr.c
584 src/core/lib/iomgr/iomgr_posix.c
585 src/core/lib/iomgr/iomgr_windows.c
586 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200587 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100588 src/core/lib/iomgr/polling_entity.c
589 src/core/lib/iomgr/pollset_set_windows.c
590 src/core/lib/iomgr/pollset_windows.c
591 src/core/lib/iomgr/resolve_address_posix.c
592 src/core/lib/iomgr/resolve_address_windows.c
593 src/core/lib/iomgr/sockaddr_utils.c
594 src/core/lib/iomgr/socket_utils_common_posix.c
595 src/core/lib/iomgr/socket_utils_linux.c
596 src/core/lib/iomgr/socket_utils_posix.c
597 src/core/lib/iomgr/socket_windows.c
598 src/core/lib/iomgr/tcp_client_posix.c
599 src/core/lib/iomgr/tcp_client_windows.c
600 src/core/lib/iomgr/tcp_posix.c
601 src/core/lib/iomgr/tcp_server_posix.c
602 src/core/lib/iomgr/tcp_server_windows.c
603 src/core/lib/iomgr/tcp_windows.c
604 src/core/lib/iomgr/time_averaged_stats.c
605 src/core/lib/iomgr/timer.c
606 src/core/lib/iomgr/timer_heap.c
607 src/core/lib/iomgr/udp_server.c
608 src/core/lib/iomgr/unix_sockets_posix.c
609 src/core/lib/iomgr/unix_sockets_posix_noop.c
kpayson64d195cf52016-10-09 18:04:00 -0700610 src/core/lib/iomgr/wakeup_fd_cv.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100611 src/core/lib/iomgr/wakeup_fd_eventfd.c
612 src/core/lib/iomgr/wakeup_fd_nospecial.c
613 src/core/lib/iomgr/wakeup_fd_pipe.c
614 src/core/lib/iomgr/wakeup_fd_posix.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100615 src/core/lib/iomgr/workqueue_windows.c
616 src/core/lib/json/json.c
617 src/core/lib/json/json_reader.c
618 src/core/lib/json/json_string.c
619 src/core/lib/json/json_writer.c
620 src/core/lib/surface/alarm.c
621 src/core/lib/surface/api_trace.c
622 src/core/lib/surface/byte_buffer.c
623 src/core/lib/surface/byte_buffer_reader.c
624 src/core/lib/surface/call.c
625 src/core/lib/surface/call_details.c
626 src/core/lib/surface/call_log_batch.c
627 src/core/lib/surface/channel.c
628 src/core/lib/surface/channel_init.c
629 src/core/lib/surface/channel_ping.c
630 src/core/lib/surface/channel_stack_type.c
631 src/core/lib/surface/completion_queue.c
632 src/core/lib/surface/event_string.c
633 src/core/lib/surface/lame_client.c
634 src/core/lib/surface/metadata_array.c
635 src/core/lib/surface/server.c
636 src/core/lib/surface/validate_metadata.c
637 src/core/lib/surface/version.c
638 src/core/lib/transport/byte_stream.c
639 src/core/lib/transport/connectivity_state.c
Mark D. Roth6a721b52016-10-14 12:43:34 -0700640 src/core/lib/transport/mdstr_hash_table.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100641 src/core/lib/transport/metadata.c
642 src/core/lib/transport/metadata_batch.c
643 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400644 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100645 src/core/lib/transport/transport.c
646 src/core/lib/transport/transport_op_string.c
647 src/core/ext/transport/cronet/client/secure/cronet_channel_create.c
648 src/core/ext/transport/cronet/transport/cronet_api_dummy.c
649 src/core/ext/transport/cronet/transport/cronet_transport.c
650 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
651 src/core/ext/transport/chttp2/transport/bin_decoder.c
652 src/core/ext/transport/chttp2/transport/bin_encoder.c
653 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
654 src/core/ext/transport/chttp2/transport/chttp2_transport.c
655 src/core/ext/transport/chttp2/transport/frame_data.c
656 src/core/ext/transport/chttp2/transport/frame_goaway.c
657 src/core/ext/transport/chttp2/transport/frame_ping.c
658 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
659 src/core/ext/transport/chttp2/transport/frame_settings.c
660 src/core/ext/transport/chttp2/transport/frame_window_update.c
661 src/core/ext/transport/chttp2/transport/hpack_encoder.c
662 src/core/ext/transport/chttp2/transport/hpack_parser.c
663 src/core/ext/transport/chttp2/transport/hpack_table.c
664 src/core/ext/transport/chttp2/transport/huffsyms.c
665 src/core/ext/transport/chttp2/transport/incoming_metadata.c
666 src/core/ext/transport/chttp2/transport/parsing.c
667 src/core/ext/transport/chttp2/transport/status_conversion.c
668 src/core/ext/transport/chttp2/transport/stream_lists.c
669 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100670 src/core/ext/transport/chttp2/transport/varint.c
671 src/core/ext/transport/chttp2/transport/writing.c
672 src/core/ext/transport/chttp2/alpn/alpn.c
673 src/core/ext/client_config/channel_connectivity.c
674 src/core/ext/client_config/client_channel.c
675 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100676 src/core/ext/client_config/client_config_plugin.c
677 src/core/ext/client_config/connector.c
678 src/core/ext/client_config/default_initial_connect_string.c
Mark D. Roth1102a9e2016-07-22 09:10:01 -0700679 src/core/ext/client_config/http_connect_handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100680 src/core/ext/client_config/initial_connect_string.c
681 src/core/ext/client_config/lb_policy.c
682 src/core/ext/client_config/lb_policy_factory.c
683 src/core/ext/client_config/lb_policy_registry.c
Mark D. Roth4c3a4682016-09-23 15:19:26 -0700684 src/core/ext/client_config/method_config.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100685 src/core/ext/client_config/parse_address.c
686 src/core/ext/client_config/resolver.c
687 src/core/ext/client_config/resolver_factory.c
688 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700689 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100690 src/core/ext/client_config/subchannel.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100691 src/core/ext/client_config/subchannel_index.c
692 src/core/ext/client_config/uri_parser.c
693 src/core/lib/http/httpcli_security_connector.c
694 src/core/lib/security/context/security_context.c
695 src/core/lib/security/credentials/composite/composite_credentials.c
696 src/core/lib/security/credentials/credentials.c
697 src/core/lib/security/credentials/credentials_metadata.c
698 src/core/lib/security/credentials/fake/fake_credentials.c
699 src/core/lib/security/credentials/google_default/credentials_posix.c
700 src/core/lib/security/credentials/google_default/credentials_windows.c
701 src/core/lib/security/credentials/google_default/google_default_credentials.c
702 src/core/lib/security/credentials/iam/iam_credentials.c
703 src/core/lib/security/credentials/jwt/json_token.c
704 src/core/lib/security/credentials/jwt/jwt_credentials.c
705 src/core/lib/security/credentials/jwt/jwt_verifier.c
706 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
707 src/core/lib/security/credentials/plugin/plugin_credentials.c
708 src/core/lib/security/credentials/ssl/ssl_credentials.c
709 src/core/lib/security/transport/client_auth_filter.c
710 src/core/lib/security/transport/handshake.c
711 src/core/lib/security/transport/secure_endpoint.c
712 src/core/lib/security/transport/security_connector.c
713 src/core/lib/security/transport/server_auth_filter.c
714 src/core/lib/security/transport/tsi_error.c
715 src/core/lib/security/util/b64.c
716 src/core/lib/security/util/json_util.c
717 src/core/lib/surface/init_secure.c
718 src/core/lib/tsi/fake_transport_security.c
719 src/core/lib/tsi/ssl_transport_security.c
720 src/core/lib/tsi/transport_security.c
721 src/core/plugin_registry/grpc_cronet_plugin_registry.c
722)
723
724target_include_directories(grpc_cronet
725 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
726 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
727 PRIVATE ${BORINGSSL_ROOT_DIR}/include
728 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300729 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100730 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
731)
732
733target_link_libraries(grpc_cronet
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300734 ${_gRPC_BASELIB_LIBRARIES}
735 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100736 gpr
737)
738
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300739foreach(_hdr
740 include/grpc/byte_buffer.h
741 include/grpc/byte_buffer_reader.h
742 include/grpc/compression.h
743 include/grpc/grpc.h
744 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200745 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300746 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300747 include/grpc/impl/codegen/byte_buffer_reader.h
748 include/grpc/impl/codegen/compression_types.h
749 include/grpc/impl/codegen/connectivity_state.h
750 include/grpc/impl/codegen/grpc_types.h
751 include/grpc/impl/codegen/propagation_bits.h
752 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300753 include/grpc/impl/codegen/atm.h
754 include/grpc/impl/codegen/atm_gcc_atomic.h
755 include/grpc/impl/codegen/atm_gcc_sync.h
756 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700757 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300758 include/grpc/impl/codegen/port_platform.h
759 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300760 include/grpc/impl/codegen/sync.h
761 include/grpc/impl/codegen/sync_generic.h
762 include/grpc/impl/codegen/sync_posix.h
763 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300764 include/grpc/grpc_cronet.h
765 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300766)
767 string(REPLACE "include/" "" _path ${_hdr})
768 get_filename_component(_path ${_path} PATH)
769 install(FILES ${_hdr}
770 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
771 )
772endforeach()
773
774
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300775if (gRPC_INSTALL)
776 install(TARGETS grpc_cronet EXPORT gRPCTargets
777 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
778 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
779 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
780 )
781endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300782
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100783
784add_library(grpc_unsecure
785 src/core/lib/surface/init.c
786 src/core/lib/surface/init_unsecure.c
787 src/core/lib/channel/channel_args.c
788 src/core/lib/channel/channel_stack.c
789 src/core/lib/channel/channel_stack_builder.c
790 src/core/lib/channel/compress_filter.c
791 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700792 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700793 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100794 src/core/lib/channel/http_client_filter.c
795 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700796 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100797 src/core/lib/compression/compression.c
798 src/core/lib/compression/message_compress.c
799 src/core/lib/debug/trace.c
800 src/core/lib/http/format_request.c
801 src/core/lib/http/httpcli.c
802 src/core/lib/http/parser.c
803 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700804 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100805 src/core/lib/iomgr/endpoint.c
806 src/core/lib/iomgr/endpoint_pair_posix.c
807 src/core/lib/iomgr/endpoint_pair_windows.c
808 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200809 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100810 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
811 src/core/lib/iomgr/ev_poll_posix.c
812 src/core/lib/iomgr/ev_posix.c
813 src/core/lib/iomgr/exec_ctx.c
814 src/core/lib/iomgr/executor.c
815 src/core/lib/iomgr/iocp_windows.c
816 src/core/lib/iomgr/iomgr.c
817 src/core/lib/iomgr/iomgr_posix.c
818 src/core/lib/iomgr/iomgr_windows.c
819 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200820 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100821 src/core/lib/iomgr/polling_entity.c
822 src/core/lib/iomgr/pollset_set_windows.c
823 src/core/lib/iomgr/pollset_windows.c
824 src/core/lib/iomgr/resolve_address_posix.c
825 src/core/lib/iomgr/resolve_address_windows.c
826 src/core/lib/iomgr/sockaddr_utils.c
827 src/core/lib/iomgr/socket_utils_common_posix.c
828 src/core/lib/iomgr/socket_utils_linux.c
829 src/core/lib/iomgr/socket_utils_posix.c
830 src/core/lib/iomgr/socket_windows.c
831 src/core/lib/iomgr/tcp_client_posix.c
832 src/core/lib/iomgr/tcp_client_windows.c
833 src/core/lib/iomgr/tcp_posix.c
834 src/core/lib/iomgr/tcp_server_posix.c
835 src/core/lib/iomgr/tcp_server_windows.c
836 src/core/lib/iomgr/tcp_windows.c
837 src/core/lib/iomgr/time_averaged_stats.c
838 src/core/lib/iomgr/timer.c
839 src/core/lib/iomgr/timer_heap.c
840 src/core/lib/iomgr/udp_server.c
841 src/core/lib/iomgr/unix_sockets_posix.c
842 src/core/lib/iomgr/unix_sockets_posix_noop.c
kpayson64d195cf52016-10-09 18:04:00 -0700843 src/core/lib/iomgr/wakeup_fd_cv.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100844 src/core/lib/iomgr/wakeup_fd_eventfd.c
845 src/core/lib/iomgr/wakeup_fd_nospecial.c
846 src/core/lib/iomgr/wakeup_fd_pipe.c
847 src/core/lib/iomgr/wakeup_fd_posix.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100848 src/core/lib/iomgr/workqueue_windows.c
849 src/core/lib/json/json.c
850 src/core/lib/json/json_reader.c
851 src/core/lib/json/json_string.c
852 src/core/lib/json/json_writer.c
853 src/core/lib/surface/alarm.c
854 src/core/lib/surface/api_trace.c
855 src/core/lib/surface/byte_buffer.c
856 src/core/lib/surface/byte_buffer_reader.c
857 src/core/lib/surface/call.c
858 src/core/lib/surface/call_details.c
859 src/core/lib/surface/call_log_batch.c
860 src/core/lib/surface/channel.c
861 src/core/lib/surface/channel_init.c
862 src/core/lib/surface/channel_ping.c
863 src/core/lib/surface/channel_stack_type.c
864 src/core/lib/surface/completion_queue.c
865 src/core/lib/surface/event_string.c
866 src/core/lib/surface/lame_client.c
867 src/core/lib/surface/metadata_array.c
868 src/core/lib/surface/server.c
869 src/core/lib/surface/validate_metadata.c
870 src/core/lib/surface/version.c
871 src/core/lib/transport/byte_stream.c
872 src/core/lib/transport/connectivity_state.c
Mark D. Roth6a721b52016-10-14 12:43:34 -0700873 src/core/lib/transport/mdstr_hash_table.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100874 src/core/lib/transport/metadata.c
875 src/core/lib/transport/metadata_batch.c
876 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400877 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100878 src/core/lib/transport/transport.c
879 src/core/lib/transport/transport_op_string.c
880 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
881 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
882 src/core/ext/transport/chttp2/transport/bin_decoder.c
883 src/core/ext/transport/chttp2/transport/bin_encoder.c
884 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
885 src/core/ext/transport/chttp2/transport/chttp2_transport.c
886 src/core/ext/transport/chttp2/transport/frame_data.c
887 src/core/ext/transport/chttp2/transport/frame_goaway.c
888 src/core/ext/transport/chttp2/transport/frame_ping.c
889 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
890 src/core/ext/transport/chttp2/transport/frame_settings.c
891 src/core/ext/transport/chttp2/transport/frame_window_update.c
892 src/core/ext/transport/chttp2/transport/hpack_encoder.c
893 src/core/ext/transport/chttp2/transport/hpack_parser.c
894 src/core/ext/transport/chttp2/transport/hpack_table.c
895 src/core/ext/transport/chttp2/transport/huffsyms.c
896 src/core/ext/transport/chttp2/transport/incoming_metadata.c
897 src/core/ext/transport/chttp2/transport/parsing.c
898 src/core/ext/transport/chttp2/transport/status_conversion.c
899 src/core/ext/transport/chttp2/transport/stream_lists.c
900 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100901 src/core/ext/transport/chttp2/transport/varint.c
902 src/core/ext/transport/chttp2/transport/writing.c
903 src/core/ext/transport/chttp2/alpn/alpn.c
904 src/core/ext/transport/chttp2/client/insecure/channel_create.c
905 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
906 src/core/ext/client_config/channel_connectivity.c
907 src/core/ext/client_config/client_channel.c
908 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100909 src/core/ext/client_config/client_config_plugin.c
910 src/core/ext/client_config/connector.c
911 src/core/ext/client_config/default_initial_connect_string.c
Mark D. Roth1102a9e2016-07-22 09:10:01 -0700912 src/core/ext/client_config/http_connect_handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100913 src/core/ext/client_config/initial_connect_string.c
914 src/core/ext/client_config/lb_policy.c
915 src/core/ext/client_config/lb_policy_factory.c
916 src/core/ext/client_config/lb_policy_registry.c
Mark D. Roth4c3a4682016-09-23 15:19:26 -0700917 src/core/ext/client_config/method_config.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100918 src/core/ext/client_config/parse_address.c
919 src/core/ext/client_config/resolver.c
920 src/core/ext/client_config/resolver_factory.c
921 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700922 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100923 src/core/ext/client_config/subchannel.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100924 src/core/ext/client_config/subchannel_index.c
925 src/core/ext/client_config/uri_parser.c
926 src/core/ext/resolver/dns/native/dns_resolver.c
927 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
928 src/core/ext/load_reporting/load_reporting.c
929 src/core/ext/load_reporting/load_reporting_filter.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700930 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100931 src/core/ext/lb_policy/grpclb/load_balancer_api.c
932 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
933 third_party/nanopb/pb_common.c
934 third_party/nanopb/pb_decode.c
935 third_party/nanopb/pb_encode.c
936 src/core/ext/lb_policy/pick_first/pick_first.c
937 src/core/ext/lb_policy/round_robin/round_robin.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700938 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100939 src/core/ext/census/context.c
940 src/core/ext/census/gen/census.pb.c
Alistair Veitcha0c69f92016-08-31 12:01:27 -0700941 src/core/ext/census/gen/trace_context.pb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100942 src/core/ext/census/grpc_context.c
943 src/core/ext/census/grpc_filter.c
944 src/core/ext/census/grpc_plugin.c
945 src/core/ext/census/initialize.c
946 src/core/ext/census/mlog.c
947 src/core/ext/census/operation.c
948 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700949 src/core/ext/census/resource.c
Vizerai12d1fc62016-09-09 14:22:19 -0700950 src/core/ext/census/trace_context.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100951 src/core/ext/census/tracing.c
952 src/core/plugin_registry/grpc_unsecure_plugin_registry.c
953)
954
955target_include_directories(grpc_unsecure
956 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
957 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
958 PRIVATE ${BORINGSSL_ROOT_DIR}/include
959 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300960 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100961 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
962)
963
964target_link_libraries(grpc_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300965 ${_gRPC_BASELIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100966 gpr
967)
968
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300969foreach(_hdr
970 include/grpc/byte_buffer.h
971 include/grpc/byte_buffer_reader.h
972 include/grpc/compression.h
973 include/grpc/grpc.h
974 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200975 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300976 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300977 include/grpc/impl/codegen/byte_buffer_reader.h
978 include/grpc/impl/codegen/compression_types.h
979 include/grpc/impl/codegen/connectivity_state.h
980 include/grpc/impl/codegen/grpc_types.h
981 include/grpc/impl/codegen/propagation_bits.h
982 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300983 include/grpc/impl/codegen/atm.h
984 include/grpc/impl/codegen/atm_gcc_atomic.h
985 include/grpc/impl/codegen/atm_gcc_sync.h
986 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700987 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300988 include/grpc/impl/codegen/port_platform.h
989 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300990 include/grpc/impl/codegen/sync.h
991 include/grpc/impl/codegen/sync_generic.h
992 include/grpc/impl/codegen/sync_posix.h
993 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300994 include/grpc/census.h
995)
996 string(REPLACE "include/" "" _path ${_hdr})
997 get_filename_component(_path ${_path} PATH)
998 install(FILES ${_hdr}
999 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1000 )
1001endforeach()
1002
1003
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001004if (gRPC_INSTALL)
1005 install(TARGETS grpc_unsecure EXPORT gRPCTargets
1006 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1007 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1008 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1009 )
1010endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001011
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001012
1013add_library(grpc++
murgatroid991ca0f3e2016-08-26 14:58:49 -07001014 src/cpp/client/insecure_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001015 src/cpp/client/secure_credentials.cc
1016 src/cpp/common/auth_property_iterator.cc
1017 src/cpp/common/secure_auth_context.cc
1018 src/cpp/common/secure_channel_arguments.cc
1019 src/cpp/common/secure_create_auth_context.cc
murgatroid991ca0f3e2016-08-26 14:58:49 -07001020 src/cpp/server/insecure_server_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001021 src/cpp/server/secure_server_credentials.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001022 src/cpp/client/channel_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001023 src/cpp/client/client_context.cc
1024 src/cpp/client/create_channel.cc
1025 src/cpp/client/create_channel_internal.cc
1026 src/cpp/client/create_channel_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001027 src/cpp/client/credentials_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001028 src/cpp/client/generic_stub.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001029 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001030 src/cpp/common/channel_filter.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001031 src/cpp/common/completion_queue_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001032 src/cpp/common/core_codegen.cc
1033 src/cpp/common/rpc_method.cc
1034 src/cpp/server/async_generic_service.cc
1035 src/cpp/server/create_default_thread_pool.cc
1036 src/cpp/server/dynamic_thread_pool.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001037 src/cpp/server/server_builder.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001038 src/cpp/server/server_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001039 src/cpp/server/server_context.cc
1040 src/cpp/server/server_credentials.cc
1041 src/cpp/server/server_posix.cc
Sree Kuchibhotla8f7739b2016-10-13 15:12:55 -07001042 src/cpp/thread_manager/thread_manager.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001043 src/cpp/util/byte_buffer_cc.cc
1044 src/cpp/util/slice_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001045 src/cpp/util/status.cc
1046 src/cpp/util/string_ref.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001047 src/cpp/util/time_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001048 src/cpp/codegen/codegen_init.cc
1049)
1050
1051target_include_directories(grpc++
1052 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1053 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1054 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1055 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001056 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001057 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1058)
1059
1060target_link_libraries(grpc++
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001061 ${_gRPC_BASELIB_LIBRARIES}
1062 ${_gRPC_SSL_LIBRARIES}
1063 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001064 grpc
1065)
1066
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001067foreach(_hdr
1068 include/grpc++/alarm.h
1069 include/grpc++/channel.h
1070 include/grpc++/client_context.h
1071 include/grpc++/completion_queue.h
1072 include/grpc++/create_channel.h
1073 include/grpc++/create_channel_posix.h
1074 include/grpc++/generic/async_generic_service.h
1075 include/grpc++/generic/generic_stub.h
1076 include/grpc++/grpc++.h
1077 include/grpc++/impl/call.h
1078 include/grpc++/impl/client_unary_call.h
1079 include/grpc++/impl/codegen/core_codegen.h
1080 include/grpc++/impl/grpc_library.h
1081 include/grpc++/impl/method_handler_impl.h
1082 include/grpc++/impl/rpc_method.h
1083 include/grpc++/impl/rpc_service_method.h
1084 include/grpc++/impl/serialization_traits.h
1085 include/grpc++/impl/server_builder_option.h
1086 include/grpc++/impl/server_builder_plugin.h
1087 include/grpc++/impl/server_initializer.h
1088 include/grpc++/impl/service_type.h
1089 include/grpc++/impl/sync.h
1090 include/grpc++/impl/sync_cxx11.h
1091 include/grpc++/impl/sync_no_cxx11.h
1092 include/grpc++/impl/thd.h
1093 include/grpc++/impl/thd_cxx11.h
1094 include/grpc++/impl/thd_no_cxx11.h
1095 include/grpc++/security/auth_context.h
1096 include/grpc++/security/auth_metadata_processor.h
1097 include/grpc++/security/credentials.h
1098 include/grpc++/security/server_credentials.h
1099 include/grpc++/server.h
1100 include/grpc++/server_builder.h
1101 include/grpc++/server_context.h
1102 include/grpc++/server_posix.h
1103 include/grpc++/support/async_stream.h
1104 include/grpc++/support/async_unary_call.h
1105 include/grpc++/support/byte_buffer.h
1106 include/grpc++/support/channel_arguments.h
1107 include/grpc++/support/config.h
1108 include/grpc++/support/slice.h
1109 include/grpc++/support/status.h
1110 include/grpc++/support/status_code_enum.h
1111 include/grpc++/support/string_ref.h
1112 include/grpc++/support/stub_options.h
1113 include/grpc++/support/sync_stream.h
1114 include/grpc++/support/time.h
1115 include/grpc++/impl/codegen/async_stream.h
1116 include/grpc++/impl/codegen/async_unary_call.h
1117 include/grpc++/impl/codegen/call.h
1118 include/grpc++/impl/codegen/call_hook.h
1119 include/grpc++/impl/codegen/channel_interface.h
1120 include/grpc++/impl/codegen/client_context.h
1121 include/grpc++/impl/codegen/client_unary_call.h
1122 include/grpc++/impl/codegen/completion_queue.h
1123 include/grpc++/impl/codegen/completion_queue_tag.h
1124 include/grpc++/impl/codegen/config.h
1125 include/grpc++/impl/codegen/core_codegen_interface.h
1126 include/grpc++/impl/codegen/create_auth_context.h
1127 include/grpc++/impl/codegen/grpc_library.h
1128 include/grpc++/impl/codegen/method_handler_impl.h
1129 include/grpc++/impl/codegen/rpc_method.h
1130 include/grpc++/impl/codegen/rpc_service_method.h
1131 include/grpc++/impl/codegen/security/auth_context.h
1132 include/grpc++/impl/codegen/serialization_traits.h
1133 include/grpc++/impl/codegen/server_context.h
1134 include/grpc++/impl/codegen/server_interface.h
1135 include/grpc++/impl/codegen/service_type.h
1136 include/grpc++/impl/codegen/status.h
1137 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001138 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001139 include/grpc++/impl/codegen/string_ref.h
1140 include/grpc++/impl/codegen/stub_options.h
1141 include/grpc++/impl/codegen/sync.h
1142 include/grpc++/impl/codegen/sync_cxx11.h
1143 include/grpc++/impl/codegen/sync_no_cxx11.h
1144 include/grpc++/impl/codegen/sync_stream.h
1145 include/grpc++/impl/codegen/time.h
Nicolas "Pixel" Noble87a10812016-09-29 01:31:54 +02001146 include/grpc/impl/codegen/byte_buffer_reader.h
1147 include/grpc/impl/codegen/compression_types.h
1148 include/grpc/impl/codegen/connectivity_state.h
1149 include/grpc/impl/codegen/grpc_types.h
1150 include/grpc/impl/codegen/propagation_bits.h
1151 include/grpc/impl/codegen/status.h
1152 include/grpc/impl/codegen/atm.h
1153 include/grpc/impl/codegen/atm_gcc_atomic.h
1154 include/grpc/impl/codegen/atm_gcc_sync.h
1155 include/grpc/impl/codegen/atm_windows.h
1156 include/grpc/impl/codegen/gpr_types.h
1157 include/grpc/impl/codegen/port_platform.h
1158 include/grpc/impl/codegen/slice.h
1159 include/grpc/impl/codegen/sync.h
1160 include/grpc/impl/codegen/sync_generic.h
1161 include/grpc/impl/codegen/sync_posix.h
1162 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001163)
1164 string(REPLACE "include/" "" _path ${_hdr})
1165 get_filename_component(_path ${_path} PATH)
1166 install(FILES ${_hdr}
1167 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1168 )
1169endforeach()
1170
1171
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001172if (gRPC_INSTALL)
1173 install(TARGETS grpc++ EXPORT gRPCTargets
1174 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1175 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1176 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1177 )
1178endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001179
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001180
1181add_library(grpc++_reflection
1182 src/cpp/ext/proto_server_reflection.cc
1183 src/cpp/ext/proto_server_reflection_plugin.cc
1184 src/cpp/ext/reflection.grpc.pb.cc
1185 src/cpp/ext/reflection.pb.cc
1186)
1187
1188target_include_directories(grpc++_reflection
1189 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1190 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1191 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1192 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001193 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001194 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1195)
1196
1197target_link_libraries(grpc++_reflection
1198 grpc++
1199)
1200
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001201foreach(_hdr
1202 include/grpc++/ext/proto_server_reflection_plugin.h
1203 include/grpc++/ext/reflection.grpc.pb.h
1204 include/grpc++/ext/reflection.pb.h
1205 include/grpc++/impl/codegen/proto_utils.h
1206 include/grpc++/impl/codegen/async_stream.h
1207 include/grpc++/impl/codegen/async_unary_call.h
1208 include/grpc++/impl/codegen/call.h
1209 include/grpc++/impl/codegen/call_hook.h
1210 include/grpc++/impl/codegen/channel_interface.h
1211 include/grpc++/impl/codegen/client_context.h
1212 include/grpc++/impl/codegen/client_unary_call.h
1213 include/grpc++/impl/codegen/completion_queue.h
1214 include/grpc++/impl/codegen/completion_queue_tag.h
1215 include/grpc++/impl/codegen/config.h
1216 include/grpc++/impl/codegen/core_codegen_interface.h
1217 include/grpc++/impl/codegen/create_auth_context.h
1218 include/grpc++/impl/codegen/grpc_library.h
1219 include/grpc++/impl/codegen/method_handler_impl.h
1220 include/grpc++/impl/codegen/rpc_method.h
1221 include/grpc++/impl/codegen/rpc_service_method.h
1222 include/grpc++/impl/codegen/security/auth_context.h
1223 include/grpc++/impl/codegen/serialization_traits.h
1224 include/grpc++/impl/codegen/server_context.h
1225 include/grpc++/impl/codegen/server_interface.h
1226 include/grpc++/impl/codegen/service_type.h
1227 include/grpc++/impl/codegen/status.h
1228 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001229 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001230 include/grpc++/impl/codegen/string_ref.h
1231 include/grpc++/impl/codegen/stub_options.h
1232 include/grpc++/impl/codegen/sync.h
1233 include/grpc++/impl/codegen/sync_cxx11.h
1234 include/grpc++/impl/codegen/sync_no_cxx11.h
1235 include/grpc++/impl/codegen/sync_stream.h
1236 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001237 include/grpc/impl/codegen/byte_buffer_reader.h
1238 include/grpc/impl/codegen/compression_types.h
1239 include/grpc/impl/codegen/connectivity_state.h
1240 include/grpc/impl/codegen/grpc_types.h
1241 include/grpc/impl/codegen/propagation_bits.h
1242 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001243 include/grpc/impl/codegen/atm.h
1244 include/grpc/impl/codegen/atm_gcc_atomic.h
1245 include/grpc/impl/codegen/atm_gcc_sync.h
1246 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001247 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001248 include/grpc/impl/codegen/port_platform.h
1249 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001250 include/grpc/impl/codegen/sync.h
1251 include/grpc/impl/codegen/sync_generic.h
1252 include/grpc/impl/codegen/sync_posix.h
1253 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001254 include/grpc++/impl/codegen/config_protobuf.h
1255)
1256 string(REPLACE "include/" "" _path ${_hdr})
1257 get_filename_component(_path ${_path} PATH)
1258 install(FILES ${_hdr}
1259 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1260 )
1261endforeach()
1262
1263
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001264if (gRPC_INSTALL)
1265 install(TARGETS grpc++_reflection EXPORT gRPCTargets
1266 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1267 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1268 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1269 )
1270endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001271
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001272
1273add_library(grpc++_unsecure
murgatroid991ca0f3e2016-08-26 14:58:49 -07001274 src/cpp/client/insecure_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001275 src/cpp/common/insecure_create_auth_context.cc
murgatroid991ca0f3e2016-08-26 14:58:49 -07001276 src/cpp/server/insecure_server_credentials.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001277 src/cpp/client/channel_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001278 src/cpp/client/client_context.cc
1279 src/cpp/client/create_channel.cc
1280 src/cpp/client/create_channel_internal.cc
1281 src/cpp/client/create_channel_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001282 src/cpp/client/credentials_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001283 src/cpp/client/generic_stub.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001284 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001285 src/cpp/common/channel_filter.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001286 src/cpp/common/completion_queue_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001287 src/cpp/common/core_codegen.cc
1288 src/cpp/common/rpc_method.cc
1289 src/cpp/server/async_generic_service.cc
1290 src/cpp/server/create_default_thread_pool.cc
1291 src/cpp/server/dynamic_thread_pool.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001292 src/cpp/server/server_builder.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001293 src/cpp/server/server_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001294 src/cpp/server/server_context.cc
1295 src/cpp/server/server_credentials.cc
1296 src/cpp/server/server_posix.cc
Sree Kuchibhotla8f7739b2016-10-13 15:12:55 -07001297 src/cpp/thread_manager/thread_manager.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001298 src/cpp/util/byte_buffer_cc.cc
1299 src/cpp/util/slice_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001300 src/cpp/util/status.cc
1301 src/cpp/util/string_ref.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001302 src/cpp/util/time_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001303 src/cpp/codegen/codegen_init.cc
1304)
1305
1306target_include_directories(grpc++_unsecure
1307 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1308 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1309 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1310 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001311 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001312 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1313)
1314
1315target_link_libraries(grpc++_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001316 ${_gRPC_BASELIB_LIBRARIES}
1317 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001318 gpr
1319 grpc_unsecure
1320)
1321
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001322foreach(_hdr
1323 include/grpc++/alarm.h
1324 include/grpc++/channel.h
1325 include/grpc++/client_context.h
1326 include/grpc++/completion_queue.h
1327 include/grpc++/create_channel.h
1328 include/grpc++/create_channel_posix.h
1329 include/grpc++/generic/async_generic_service.h
1330 include/grpc++/generic/generic_stub.h
1331 include/grpc++/grpc++.h
1332 include/grpc++/impl/call.h
1333 include/grpc++/impl/client_unary_call.h
1334 include/grpc++/impl/codegen/core_codegen.h
1335 include/grpc++/impl/grpc_library.h
1336 include/grpc++/impl/method_handler_impl.h
1337 include/grpc++/impl/rpc_method.h
1338 include/grpc++/impl/rpc_service_method.h
1339 include/grpc++/impl/serialization_traits.h
1340 include/grpc++/impl/server_builder_option.h
1341 include/grpc++/impl/server_builder_plugin.h
1342 include/grpc++/impl/server_initializer.h
1343 include/grpc++/impl/service_type.h
1344 include/grpc++/impl/sync.h
1345 include/grpc++/impl/sync_cxx11.h
1346 include/grpc++/impl/sync_no_cxx11.h
1347 include/grpc++/impl/thd.h
1348 include/grpc++/impl/thd_cxx11.h
1349 include/grpc++/impl/thd_no_cxx11.h
1350 include/grpc++/security/auth_context.h
1351 include/grpc++/security/auth_metadata_processor.h
1352 include/grpc++/security/credentials.h
1353 include/grpc++/security/server_credentials.h
1354 include/grpc++/server.h
1355 include/grpc++/server_builder.h
1356 include/grpc++/server_context.h
1357 include/grpc++/server_posix.h
1358 include/grpc++/support/async_stream.h
1359 include/grpc++/support/async_unary_call.h
1360 include/grpc++/support/byte_buffer.h
1361 include/grpc++/support/channel_arguments.h
1362 include/grpc++/support/config.h
1363 include/grpc++/support/slice.h
1364 include/grpc++/support/status.h
1365 include/grpc++/support/status_code_enum.h
1366 include/grpc++/support/string_ref.h
1367 include/grpc++/support/stub_options.h
1368 include/grpc++/support/sync_stream.h
1369 include/grpc++/support/time.h
1370 include/grpc++/impl/codegen/async_stream.h
1371 include/grpc++/impl/codegen/async_unary_call.h
1372 include/grpc++/impl/codegen/call.h
1373 include/grpc++/impl/codegen/call_hook.h
1374 include/grpc++/impl/codegen/channel_interface.h
1375 include/grpc++/impl/codegen/client_context.h
1376 include/grpc++/impl/codegen/client_unary_call.h
1377 include/grpc++/impl/codegen/completion_queue.h
1378 include/grpc++/impl/codegen/completion_queue_tag.h
1379 include/grpc++/impl/codegen/config.h
1380 include/grpc++/impl/codegen/core_codegen_interface.h
1381 include/grpc++/impl/codegen/create_auth_context.h
1382 include/grpc++/impl/codegen/grpc_library.h
1383 include/grpc++/impl/codegen/method_handler_impl.h
1384 include/grpc++/impl/codegen/rpc_method.h
1385 include/grpc++/impl/codegen/rpc_service_method.h
1386 include/grpc++/impl/codegen/security/auth_context.h
1387 include/grpc++/impl/codegen/serialization_traits.h
1388 include/grpc++/impl/codegen/server_context.h
1389 include/grpc++/impl/codegen/server_interface.h
1390 include/grpc++/impl/codegen/service_type.h
1391 include/grpc++/impl/codegen/status.h
1392 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001393 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001394 include/grpc++/impl/codegen/string_ref.h
1395 include/grpc++/impl/codegen/stub_options.h
1396 include/grpc++/impl/codegen/sync.h
1397 include/grpc++/impl/codegen/sync_cxx11.h
1398 include/grpc++/impl/codegen/sync_no_cxx11.h
1399 include/grpc++/impl/codegen/sync_stream.h
1400 include/grpc++/impl/codegen/time.h
Nicolas "Pixel" Noble87a10812016-09-29 01:31:54 +02001401 include/grpc/impl/codegen/byte_buffer_reader.h
1402 include/grpc/impl/codegen/compression_types.h
1403 include/grpc/impl/codegen/connectivity_state.h
1404 include/grpc/impl/codegen/grpc_types.h
1405 include/grpc/impl/codegen/propagation_bits.h
1406 include/grpc/impl/codegen/status.h
1407 include/grpc/impl/codegen/atm.h
1408 include/grpc/impl/codegen/atm_gcc_atomic.h
1409 include/grpc/impl/codegen/atm_gcc_sync.h
1410 include/grpc/impl/codegen/atm_windows.h
1411 include/grpc/impl/codegen/gpr_types.h
1412 include/grpc/impl/codegen/port_platform.h
1413 include/grpc/impl/codegen/slice.h
1414 include/grpc/impl/codegen/sync.h
1415 include/grpc/impl/codegen/sync_generic.h
1416 include/grpc/impl/codegen/sync_posix.h
1417 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001418)
1419 string(REPLACE "include/" "" _path ${_hdr})
1420 get_filename_component(_path ${_path} PATH)
1421 install(FILES ${_hdr}
1422 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1423 )
1424endforeach()
1425
1426
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001427if (gRPC_INSTALL)
1428 install(TARGETS grpc++_unsecure EXPORT gRPCTargets
1429 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1430 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1431 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1432 )
1433endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001434
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001435
1436add_library(grpc_plugin_support
1437 src/compiler/cpp_generator.cc
1438 src/compiler/csharp_generator.cc
1439 src/compiler/node_generator.cc
1440 src/compiler/objective_c_generator.cc
Stanley Cheung857a1302016-09-29 17:26:29 -07001441 src/compiler/php_generator.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001442 src/compiler/python_generator.cc
1443 src/compiler/ruby_generator.cc
1444)
1445
1446target_include_directories(grpc_plugin_support
1447 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1448 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1449 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1450 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001451 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001452 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1453)
1454
1455target_link_libraries(grpc_plugin_support
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001456 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001457)
1458
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001459foreach(_hdr
1460 include/grpc++/impl/codegen/config_protobuf.h
1461)
1462 string(REPLACE "include/" "" _path ${_hdr})
1463 get_filename_component(_path ${_path} PATH)
1464 install(FILES ${_hdr}
1465 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1466 )
1467endforeach()
1468
1469
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001470if (gRPC_INSTALL)
1471 install(TARGETS grpc_plugin_support EXPORT gRPCTargets
1472 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1473 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1474 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1475 )
1476endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001477
1478
1479add_library(grpc_csharp_ext
1480 src/csharp/ext/grpc_csharp_ext.c
1481)
1482
1483target_include_directories(grpc_csharp_ext
1484 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1485 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1486 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1487 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001488 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001489 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1490)
1491
1492target_link_libraries(grpc_csharp_ext
1493 grpc
1494 gpr
1495)
1496
1497
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001498
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001499if (gRPC_INSTALL)
1500 install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
1501 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1502 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1503 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1504 )
1505endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001506
1507
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001508
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001509add_executable(gen_hpack_tables
1510 tools/codegen/core/gen_hpack_tables.c
1511)
1512
1513target_include_directories(gen_hpack_tables
1514 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1515 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1516 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1517 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1518 PRIVATE ${ZLIB_ROOT_DIR}
1519 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1520)
1521
1522target_link_libraries(gen_hpack_tables
1523 gpr
1524 grpc
1525)
1526
1527
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001528if (gRPC_INSTALL)
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001529 install(TARGETS gen_hpack_tables EXPORT gRPCTargets
1530 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1531 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1532 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1533 )
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001534endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001535
1536
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001537add_executable(gen_legal_metadata_characters
1538 tools/codegen/core/gen_legal_metadata_characters.c
1539)
1540
1541target_include_directories(gen_legal_metadata_characters
1542 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1543 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1544 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1545 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1546 PRIVATE ${ZLIB_ROOT_DIR}
1547 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1548)
1549
1550
1551
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001552if (gRPC_INSTALL)
1553 install(TARGETS gen_legal_metadata_characters EXPORT gRPCTargets
1554 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1555 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1556 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1557 )
1558endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001559
1560
Craig Tiller1c7a8422016-08-18 11:13:11 -07001561add_executable(gen_percent_encoding_tables
1562 tools/codegen/core/gen_percent_encoding_tables.c
1563)
1564
1565target_include_directories(gen_percent_encoding_tables
1566 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1567 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1568 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1569 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1570 PRIVATE ${ZLIB_ROOT_DIR}
1571 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1572)
1573
1574
1575
Craig Tiller426dcde2016-09-07 15:43:10 -07001576if (gRPC_INSTALL)
1577 install(TARGETS gen_percent_encoding_tables EXPORT gRPCTargets
1578 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1579 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1580 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1581 )
1582endif()
Craig Tiller1c7a8422016-08-18 11:13:11 -07001583
1584
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001585add_executable(grpc_create_jwt
1586 test/core/security/create_jwt.c
1587)
1588
1589target_include_directories(grpc_create_jwt
1590 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1591 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1592 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1593 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1594 PRIVATE ${ZLIB_ROOT_DIR}
1595 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1596)
1597
1598target_link_libraries(grpc_create_jwt
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001599 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001600 grpc
1601 gpr
1602)
1603
1604
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001605if (gRPC_INSTALL)
1606 install(TARGETS grpc_create_jwt EXPORT gRPCTargets
1607 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1608 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1609 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1610 )
1611endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001612
1613
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001614add_executable(grpc_print_google_default_creds_token
1615 test/core/security/print_google_default_creds_token.c
1616)
1617
1618target_include_directories(grpc_print_google_default_creds_token
1619 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1620 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1621 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1622 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1623 PRIVATE ${ZLIB_ROOT_DIR}
1624 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1625)
1626
1627target_link_libraries(grpc_print_google_default_creds_token
1628 grpc
1629 gpr
1630)
1631
1632
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001633if (gRPC_INSTALL)
1634 install(TARGETS grpc_print_google_default_creds_token EXPORT gRPCTargets
1635 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1636 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1637 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1638 )
1639endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001640
1641
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001642add_executable(grpc_verify_jwt
1643 test/core/security/verify_jwt.c
1644)
1645
1646target_include_directories(grpc_verify_jwt
1647 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1648 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1649 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1650 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1651 PRIVATE ${ZLIB_ROOT_DIR}
1652 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1653)
1654
1655target_link_libraries(grpc_verify_jwt
1656 grpc
1657 gpr
1658)
1659
1660
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001661if (gRPC_INSTALL)
1662 install(TARGETS grpc_verify_jwt EXPORT gRPCTargets
1663 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1664 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1665 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1666 )
1667endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001668
1669
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001670add_executable(grpc_cpp_plugin
1671 src/compiler/cpp_plugin.cc
1672)
1673
1674target_include_directories(grpc_cpp_plugin
1675 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1676 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1677 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1678 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1679 PRIVATE ${ZLIB_ROOT_DIR}
1680 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1681)
1682
1683target_link_libraries(grpc_cpp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001684 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001685 grpc_plugin_support
1686)
1687
1688
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001689if (gRPC_INSTALL)
1690 install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
1691 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1692 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1693 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1694 )
1695endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001696
1697
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001698add_executable(grpc_csharp_plugin
1699 src/compiler/csharp_plugin.cc
1700)
1701
1702target_include_directories(grpc_csharp_plugin
1703 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1704 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1705 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1706 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1707 PRIVATE ${ZLIB_ROOT_DIR}
1708 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1709)
1710
1711target_link_libraries(grpc_csharp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001712 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001713 grpc_plugin_support
1714)
1715
1716
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001717if (gRPC_INSTALL)
1718 install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
1719 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1720 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1721 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1722 )
1723endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001724
1725
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001726add_executable(grpc_node_plugin
1727 src/compiler/node_plugin.cc
1728)
1729
1730target_include_directories(grpc_node_plugin
1731 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1732 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1733 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1734 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1735 PRIVATE ${ZLIB_ROOT_DIR}
1736 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1737)
1738
1739target_link_libraries(grpc_node_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001740 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001741 grpc_plugin_support
1742)
1743
1744
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001745if (gRPC_INSTALL)
1746 install(TARGETS grpc_node_plugin EXPORT gRPCTargets
1747 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1748 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1749 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1750 )
1751endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001752
1753
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001754add_executable(grpc_objective_c_plugin
1755 src/compiler/objective_c_plugin.cc
1756)
1757
1758target_include_directories(grpc_objective_c_plugin
1759 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1760 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1761 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1762 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1763 PRIVATE ${ZLIB_ROOT_DIR}
1764 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1765)
1766
1767target_link_libraries(grpc_objective_c_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001768 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001769 grpc_plugin_support
1770)
1771
1772
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001773if (gRPC_INSTALL)
1774 install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
1775 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1776 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1777 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1778 )
1779endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001780
1781
Stanley Cheung857a1302016-09-29 17:26:29 -07001782add_executable(grpc_php_plugin
1783 src/compiler/php_plugin.cc
1784)
1785
1786target_include_directories(grpc_php_plugin
1787 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1788 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1789 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1790 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1791 PRIVATE ${ZLIB_ROOT_DIR}
1792 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1793)
1794
1795target_link_libraries(grpc_php_plugin
1796 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
1797 grpc_plugin_support
1798)
1799
1800
1801if (gRPC_INSTALL)
1802 install(TARGETS grpc_php_plugin EXPORT gRPCTargets
1803 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1804 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1805 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1806 )
1807endif()
1808
1809
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001810add_executable(grpc_python_plugin
1811 src/compiler/python_plugin.cc
1812)
1813
1814target_include_directories(grpc_python_plugin
1815 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1816 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1817 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1818 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1819 PRIVATE ${ZLIB_ROOT_DIR}
1820 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1821)
1822
1823target_link_libraries(grpc_python_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001824 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001825 grpc_plugin_support
1826)
1827
1828
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001829if (gRPC_INSTALL)
1830 install(TARGETS grpc_python_plugin EXPORT gRPCTargets
1831 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1832 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1833 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1834 )
1835endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001836
1837
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001838add_executable(grpc_ruby_plugin
1839 src/compiler/ruby_plugin.cc
1840)
1841
1842target_include_directories(grpc_ruby_plugin
1843 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1844 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1845 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1846 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1847 PRIVATE ${ZLIB_ROOT_DIR}
1848 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1849)
1850
1851target_link_libraries(grpc_ruby_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001852 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001853 grpc_plugin_support
1854)
1855
1856
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001857if (gRPC_INSTALL)
1858 install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
1859 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1860 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1861 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1862 )
1863endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001864
1865
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001866
1867
1868
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001869
1870
1871
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001872if (gRPC_INSTALL)
1873 install(EXPORT gRPCTargets
1874 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1875 NAMESPACE gRPC::
1876 )
1877endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001878
1879foreach(_config gRPCConfig gRPCConfigVersion)
1880 configure_file(tools/cmake/${_config}.cmake.in
1881 ${_config}.cmake @ONLY)
1882 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
1883 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1884 )
1885endforeach()