blob: f814407362498817f328e1af5c26687d4e0de5d6 [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
349 src/core/lib/iomgr/wakeup_fd_eventfd.c
350 src/core/lib/iomgr/wakeup_fd_nospecial.c
351 src/core/lib/iomgr/wakeup_fd_pipe.c
352 src/core/lib/iomgr/wakeup_fd_posix.c
353 src/core/lib/iomgr/workqueue_posix.c
354 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
379 src/core/lib/transport/metadata.c
380 src/core/lib/transport/metadata_batch.c
381 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400382 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100383 src/core/lib/transport/transport.c
384 src/core/lib/transport/transport_op_string.c
385 src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.c
386 src/core/ext/transport/chttp2/transport/bin_decoder.c
387 src/core/ext/transport/chttp2/transport/bin_encoder.c
388 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
389 src/core/ext/transport/chttp2/transport/chttp2_transport.c
390 src/core/ext/transport/chttp2/transport/frame_data.c
391 src/core/ext/transport/chttp2/transport/frame_goaway.c
392 src/core/ext/transport/chttp2/transport/frame_ping.c
393 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
394 src/core/ext/transport/chttp2/transport/frame_settings.c
395 src/core/ext/transport/chttp2/transport/frame_window_update.c
396 src/core/ext/transport/chttp2/transport/hpack_encoder.c
397 src/core/ext/transport/chttp2/transport/hpack_parser.c
398 src/core/ext/transport/chttp2/transport/hpack_table.c
399 src/core/ext/transport/chttp2/transport/huffsyms.c
400 src/core/ext/transport/chttp2/transport/incoming_metadata.c
401 src/core/ext/transport/chttp2/transport/parsing.c
402 src/core/ext/transport/chttp2/transport/status_conversion.c
403 src/core/ext/transport/chttp2/transport/stream_lists.c
404 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100405 src/core/ext/transport/chttp2/transport/varint.c
406 src/core/ext/transport/chttp2/transport/writing.c
407 src/core/ext/transport/chttp2/alpn/alpn.c
408 src/core/lib/http/httpcli_security_connector.c
409 src/core/lib/security/context/security_context.c
410 src/core/lib/security/credentials/composite/composite_credentials.c
411 src/core/lib/security/credentials/credentials.c
412 src/core/lib/security/credentials/credentials_metadata.c
413 src/core/lib/security/credentials/fake/fake_credentials.c
414 src/core/lib/security/credentials/google_default/credentials_posix.c
415 src/core/lib/security/credentials/google_default/credentials_windows.c
416 src/core/lib/security/credentials/google_default/google_default_credentials.c
417 src/core/lib/security/credentials/iam/iam_credentials.c
418 src/core/lib/security/credentials/jwt/json_token.c
419 src/core/lib/security/credentials/jwt/jwt_credentials.c
420 src/core/lib/security/credentials/jwt/jwt_verifier.c
421 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
422 src/core/lib/security/credentials/plugin/plugin_credentials.c
423 src/core/lib/security/credentials/ssl/ssl_credentials.c
424 src/core/lib/security/transport/client_auth_filter.c
425 src/core/lib/security/transport/handshake.c
426 src/core/lib/security/transport/secure_endpoint.c
427 src/core/lib/security/transport/security_connector.c
428 src/core/lib/security/transport/server_auth_filter.c
429 src/core/lib/security/transport/tsi_error.c
430 src/core/lib/security/util/b64.c
431 src/core/lib/security/util/json_util.c
432 src/core/lib/surface/init_secure.c
433 src/core/lib/tsi/fake_transport_security.c
434 src/core/lib/tsi/ssl_transport_security.c
435 src/core/lib/tsi/transport_security.c
436 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
437 src/core/ext/client_config/channel_connectivity.c
438 src/core/ext/client_config/client_channel.c
439 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100440 src/core/ext/client_config/client_config_plugin.c
441 src/core/ext/client_config/connector.c
442 src/core/ext/client_config/default_initial_connect_string.c
Mark D. Roth1102a9e2016-07-22 09:10:01 -0700443 src/core/ext/client_config/http_connect_handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100444 src/core/ext/client_config/initial_connect_string.c
445 src/core/ext/client_config/lb_policy.c
446 src/core/ext/client_config/lb_policy_factory.c
447 src/core/ext/client_config/lb_policy_registry.c
448 src/core/ext/client_config/parse_address.c
449 src/core/ext/client_config/resolver.c
450 src/core/ext/client_config/resolver_factory.c
451 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700452 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100453 src/core/ext/client_config/subchannel.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100454 src/core/ext/client_config/subchannel_index.c
455 src/core/ext/client_config/uri_parser.c
456 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
457 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
458 src/core/ext/transport/chttp2/client/insecure/channel_create.c
459 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700460 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100461 src/core/ext/lb_policy/grpclb/load_balancer_api.c
462 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
463 third_party/nanopb/pb_common.c
464 third_party/nanopb/pb_decode.c
465 third_party/nanopb/pb_encode.c
466 src/core/ext/lb_policy/pick_first/pick_first.c
467 src/core/ext/lb_policy/round_robin/round_robin.c
468 src/core/ext/resolver/dns/native/dns_resolver.c
469 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
470 src/core/ext/load_reporting/load_reporting.c
471 src/core/ext/load_reporting/load_reporting_filter.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700472 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100473 src/core/ext/census/context.c
474 src/core/ext/census/gen/census.pb.c
Alistair Veitcha0c69f92016-08-31 12:01:27 -0700475 src/core/ext/census/gen/trace_context.pb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100476 src/core/ext/census/grpc_context.c
477 src/core/ext/census/grpc_filter.c
478 src/core/ext/census/grpc_plugin.c
479 src/core/ext/census/initialize.c
480 src/core/ext/census/mlog.c
481 src/core/ext/census/operation.c
482 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700483 src/core/ext/census/resource.c
Vizerai12d1fc62016-09-09 14:22:19 -0700484 src/core/ext/census/trace_context.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100485 src/core/ext/census/tracing.c
486 src/core/plugin_registry/grpc_plugin_registry.c
487)
488
489target_include_directories(grpc
490 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
491 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
492 PRIVATE ${BORINGSSL_ROOT_DIR}/include
493 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300494 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100495 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
496)
497
498target_link_libraries(grpc
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300499 ${_gRPC_BASELIB_LIBRARIES}
500 ${_gRPC_SSL_LIBRARIES}
501 ${_gRPC_ZLIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100502 gpr
503)
504
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300505foreach(_hdr
506 include/grpc/byte_buffer.h
507 include/grpc/byte_buffer_reader.h
508 include/grpc/compression.h
509 include/grpc/grpc.h
510 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200511 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300512 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300513 include/grpc/impl/codegen/byte_buffer_reader.h
514 include/grpc/impl/codegen/compression_types.h
515 include/grpc/impl/codegen/connectivity_state.h
516 include/grpc/impl/codegen/grpc_types.h
517 include/grpc/impl/codegen/propagation_bits.h
518 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300519 include/grpc/impl/codegen/atm.h
520 include/grpc/impl/codegen/atm_gcc_atomic.h
521 include/grpc/impl/codegen/atm_gcc_sync.h
522 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700523 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300524 include/grpc/impl/codegen/port_platform.h
525 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300526 include/grpc/impl/codegen/sync.h
527 include/grpc/impl/codegen/sync_generic.h
528 include/grpc/impl/codegen/sync_posix.h
529 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300530 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300531 include/grpc/census.h
532)
533 string(REPLACE "include/" "" _path ${_hdr})
534 get_filename_component(_path ${_path} PATH)
535 install(FILES ${_hdr}
536 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
537 )
538endforeach()
539
540
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300541if (gRPC_INSTALL)
542 install(TARGETS grpc EXPORT gRPCTargets
543 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
544 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
545 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
546 )
547endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300548
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100549
550add_library(grpc_cronet
551 src/core/lib/surface/init.c
552 src/core/lib/channel/channel_args.c
553 src/core/lib/channel/channel_stack.c
554 src/core/lib/channel/channel_stack_builder.c
555 src/core/lib/channel/compress_filter.c
556 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700557 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700558 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100559 src/core/lib/channel/http_client_filter.c
560 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700561 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100562 src/core/lib/compression/compression.c
563 src/core/lib/compression/message_compress.c
564 src/core/lib/debug/trace.c
565 src/core/lib/http/format_request.c
566 src/core/lib/http/httpcli.c
567 src/core/lib/http/parser.c
568 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700569 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100570 src/core/lib/iomgr/endpoint.c
571 src/core/lib/iomgr/endpoint_pair_posix.c
572 src/core/lib/iomgr/endpoint_pair_windows.c
573 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200574 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100575 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
576 src/core/lib/iomgr/ev_poll_posix.c
577 src/core/lib/iomgr/ev_posix.c
578 src/core/lib/iomgr/exec_ctx.c
579 src/core/lib/iomgr/executor.c
580 src/core/lib/iomgr/iocp_windows.c
581 src/core/lib/iomgr/iomgr.c
582 src/core/lib/iomgr/iomgr_posix.c
583 src/core/lib/iomgr/iomgr_windows.c
584 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200585 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100586 src/core/lib/iomgr/polling_entity.c
587 src/core/lib/iomgr/pollset_set_windows.c
588 src/core/lib/iomgr/pollset_windows.c
589 src/core/lib/iomgr/resolve_address_posix.c
590 src/core/lib/iomgr/resolve_address_windows.c
591 src/core/lib/iomgr/sockaddr_utils.c
592 src/core/lib/iomgr/socket_utils_common_posix.c
593 src/core/lib/iomgr/socket_utils_linux.c
594 src/core/lib/iomgr/socket_utils_posix.c
595 src/core/lib/iomgr/socket_windows.c
596 src/core/lib/iomgr/tcp_client_posix.c
597 src/core/lib/iomgr/tcp_client_windows.c
598 src/core/lib/iomgr/tcp_posix.c
599 src/core/lib/iomgr/tcp_server_posix.c
600 src/core/lib/iomgr/tcp_server_windows.c
601 src/core/lib/iomgr/tcp_windows.c
602 src/core/lib/iomgr/time_averaged_stats.c
603 src/core/lib/iomgr/timer.c
604 src/core/lib/iomgr/timer_heap.c
605 src/core/lib/iomgr/udp_server.c
606 src/core/lib/iomgr/unix_sockets_posix.c
607 src/core/lib/iomgr/unix_sockets_posix_noop.c
608 src/core/lib/iomgr/wakeup_fd_eventfd.c
609 src/core/lib/iomgr/wakeup_fd_nospecial.c
610 src/core/lib/iomgr/wakeup_fd_pipe.c
611 src/core/lib/iomgr/wakeup_fd_posix.c
612 src/core/lib/iomgr/workqueue_posix.c
613 src/core/lib/iomgr/workqueue_windows.c
614 src/core/lib/json/json.c
615 src/core/lib/json/json_reader.c
616 src/core/lib/json/json_string.c
617 src/core/lib/json/json_writer.c
618 src/core/lib/surface/alarm.c
619 src/core/lib/surface/api_trace.c
620 src/core/lib/surface/byte_buffer.c
621 src/core/lib/surface/byte_buffer_reader.c
622 src/core/lib/surface/call.c
623 src/core/lib/surface/call_details.c
624 src/core/lib/surface/call_log_batch.c
625 src/core/lib/surface/channel.c
626 src/core/lib/surface/channel_init.c
627 src/core/lib/surface/channel_ping.c
628 src/core/lib/surface/channel_stack_type.c
629 src/core/lib/surface/completion_queue.c
630 src/core/lib/surface/event_string.c
631 src/core/lib/surface/lame_client.c
632 src/core/lib/surface/metadata_array.c
633 src/core/lib/surface/server.c
634 src/core/lib/surface/validate_metadata.c
635 src/core/lib/surface/version.c
636 src/core/lib/transport/byte_stream.c
637 src/core/lib/transport/connectivity_state.c
638 src/core/lib/transport/metadata.c
639 src/core/lib/transport/metadata_batch.c
640 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400641 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100642 src/core/lib/transport/transport.c
643 src/core/lib/transport/transport_op_string.c
644 src/core/ext/transport/cronet/client/secure/cronet_channel_create.c
645 src/core/ext/transport/cronet/transport/cronet_api_dummy.c
646 src/core/ext/transport/cronet/transport/cronet_transport.c
647 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
648 src/core/ext/transport/chttp2/transport/bin_decoder.c
649 src/core/ext/transport/chttp2/transport/bin_encoder.c
650 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
651 src/core/ext/transport/chttp2/transport/chttp2_transport.c
652 src/core/ext/transport/chttp2/transport/frame_data.c
653 src/core/ext/transport/chttp2/transport/frame_goaway.c
654 src/core/ext/transport/chttp2/transport/frame_ping.c
655 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
656 src/core/ext/transport/chttp2/transport/frame_settings.c
657 src/core/ext/transport/chttp2/transport/frame_window_update.c
658 src/core/ext/transport/chttp2/transport/hpack_encoder.c
659 src/core/ext/transport/chttp2/transport/hpack_parser.c
660 src/core/ext/transport/chttp2/transport/hpack_table.c
661 src/core/ext/transport/chttp2/transport/huffsyms.c
662 src/core/ext/transport/chttp2/transport/incoming_metadata.c
663 src/core/ext/transport/chttp2/transport/parsing.c
664 src/core/ext/transport/chttp2/transport/status_conversion.c
665 src/core/ext/transport/chttp2/transport/stream_lists.c
666 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100667 src/core/ext/transport/chttp2/transport/varint.c
668 src/core/ext/transport/chttp2/transport/writing.c
669 src/core/ext/transport/chttp2/alpn/alpn.c
670 src/core/ext/client_config/channel_connectivity.c
671 src/core/ext/client_config/client_channel.c
672 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100673 src/core/ext/client_config/client_config_plugin.c
674 src/core/ext/client_config/connector.c
675 src/core/ext/client_config/default_initial_connect_string.c
Mark D. Roth1102a9e2016-07-22 09:10:01 -0700676 src/core/ext/client_config/http_connect_handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100677 src/core/ext/client_config/initial_connect_string.c
678 src/core/ext/client_config/lb_policy.c
679 src/core/ext/client_config/lb_policy_factory.c
680 src/core/ext/client_config/lb_policy_registry.c
681 src/core/ext/client_config/parse_address.c
682 src/core/ext/client_config/resolver.c
683 src/core/ext/client_config/resolver_factory.c
684 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700685 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100686 src/core/ext/client_config/subchannel.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100687 src/core/ext/client_config/subchannel_index.c
688 src/core/ext/client_config/uri_parser.c
689 src/core/lib/http/httpcli_security_connector.c
690 src/core/lib/security/context/security_context.c
691 src/core/lib/security/credentials/composite/composite_credentials.c
692 src/core/lib/security/credentials/credentials.c
693 src/core/lib/security/credentials/credentials_metadata.c
694 src/core/lib/security/credentials/fake/fake_credentials.c
695 src/core/lib/security/credentials/google_default/credentials_posix.c
696 src/core/lib/security/credentials/google_default/credentials_windows.c
697 src/core/lib/security/credentials/google_default/google_default_credentials.c
698 src/core/lib/security/credentials/iam/iam_credentials.c
699 src/core/lib/security/credentials/jwt/json_token.c
700 src/core/lib/security/credentials/jwt/jwt_credentials.c
701 src/core/lib/security/credentials/jwt/jwt_verifier.c
702 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
703 src/core/lib/security/credentials/plugin/plugin_credentials.c
704 src/core/lib/security/credentials/ssl/ssl_credentials.c
705 src/core/lib/security/transport/client_auth_filter.c
706 src/core/lib/security/transport/handshake.c
707 src/core/lib/security/transport/secure_endpoint.c
708 src/core/lib/security/transport/security_connector.c
709 src/core/lib/security/transport/server_auth_filter.c
710 src/core/lib/security/transport/tsi_error.c
711 src/core/lib/security/util/b64.c
712 src/core/lib/security/util/json_util.c
713 src/core/lib/surface/init_secure.c
714 src/core/lib/tsi/fake_transport_security.c
715 src/core/lib/tsi/ssl_transport_security.c
716 src/core/lib/tsi/transport_security.c
717 src/core/plugin_registry/grpc_cronet_plugin_registry.c
718)
719
720target_include_directories(grpc_cronet
721 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
722 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
723 PRIVATE ${BORINGSSL_ROOT_DIR}/include
724 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300725 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100726 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
727)
728
729target_link_libraries(grpc_cronet
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300730 ${_gRPC_BASELIB_LIBRARIES}
731 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100732 gpr
733)
734
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300735foreach(_hdr
736 include/grpc/byte_buffer.h
737 include/grpc/byte_buffer_reader.h
738 include/grpc/compression.h
739 include/grpc/grpc.h
740 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200741 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300742 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300743 include/grpc/impl/codegen/byte_buffer_reader.h
744 include/grpc/impl/codegen/compression_types.h
745 include/grpc/impl/codegen/connectivity_state.h
746 include/grpc/impl/codegen/grpc_types.h
747 include/grpc/impl/codegen/propagation_bits.h
748 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300749 include/grpc/impl/codegen/atm.h
750 include/grpc/impl/codegen/atm_gcc_atomic.h
751 include/grpc/impl/codegen/atm_gcc_sync.h
752 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700753 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300754 include/grpc/impl/codegen/port_platform.h
755 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300756 include/grpc/impl/codegen/sync.h
757 include/grpc/impl/codegen/sync_generic.h
758 include/grpc/impl/codegen/sync_posix.h
759 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300760 include/grpc/grpc_cronet.h
761 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300762)
763 string(REPLACE "include/" "" _path ${_hdr})
764 get_filename_component(_path ${_path} PATH)
765 install(FILES ${_hdr}
766 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
767 )
768endforeach()
769
770
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300771if (gRPC_INSTALL)
772 install(TARGETS grpc_cronet EXPORT gRPCTargets
773 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
774 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
775 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
776 )
777endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300778
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100779
780add_library(grpc_unsecure
781 src/core/lib/surface/init.c
782 src/core/lib/surface/init_unsecure.c
783 src/core/lib/channel/channel_args.c
784 src/core/lib/channel/channel_stack.c
785 src/core/lib/channel/channel_stack_builder.c
786 src/core/lib/channel/compress_filter.c
787 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700788 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700789 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100790 src/core/lib/channel/http_client_filter.c
791 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700792 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100793 src/core/lib/compression/compression.c
794 src/core/lib/compression/message_compress.c
795 src/core/lib/debug/trace.c
796 src/core/lib/http/format_request.c
797 src/core/lib/http/httpcli.c
798 src/core/lib/http/parser.c
799 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700800 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100801 src/core/lib/iomgr/endpoint.c
802 src/core/lib/iomgr/endpoint_pair_posix.c
803 src/core/lib/iomgr/endpoint_pair_windows.c
804 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200805 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100806 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
807 src/core/lib/iomgr/ev_poll_posix.c
808 src/core/lib/iomgr/ev_posix.c
809 src/core/lib/iomgr/exec_ctx.c
810 src/core/lib/iomgr/executor.c
811 src/core/lib/iomgr/iocp_windows.c
812 src/core/lib/iomgr/iomgr.c
813 src/core/lib/iomgr/iomgr_posix.c
814 src/core/lib/iomgr/iomgr_windows.c
815 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200816 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100817 src/core/lib/iomgr/polling_entity.c
818 src/core/lib/iomgr/pollset_set_windows.c
819 src/core/lib/iomgr/pollset_windows.c
820 src/core/lib/iomgr/resolve_address_posix.c
821 src/core/lib/iomgr/resolve_address_windows.c
822 src/core/lib/iomgr/sockaddr_utils.c
823 src/core/lib/iomgr/socket_utils_common_posix.c
824 src/core/lib/iomgr/socket_utils_linux.c
825 src/core/lib/iomgr/socket_utils_posix.c
826 src/core/lib/iomgr/socket_windows.c
827 src/core/lib/iomgr/tcp_client_posix.c
828 src/core/lib/iomgr/tcp_client_windows.c
829 src/core/lib/iomgr/tcp_posix.c
830 src/core/lib/iomgr/tcp_server_posix.c
831 src/core/lib/iomgr/tcp_server_windows.c
832 src/core/lib/iomgr/tcp_windows.c
833 src/core/lib/iomgr/time_averaged_stats.c
834 src/core/lib/iomgr/timer.c
835 src/core/lib/iomgr/timer_heap.c
836 src/core/lib/iomgr/udp_server.c
837 src/core/lib/iomgr/unix_sockets_posix.c
838 src/core/lib/iomgr/unix_sockets_posix_noop.c
839 src/core/lib/iomgr/wakeup_fd_eventfd.c
840 src/core/lib/iomgr/wakeup_fd_nospecial.c
841 src/core/lib/iomgr/wakeup_fd_pipe.c
842 src/core/lib/iomgr/wakeup_fd_posix.c
843 src/core/lib/iomgr/workqueue_posix.c
844 src/core/lib/iomgr/workqueue_windows.c
845 src/core/lib/json/json.c
846 src/core/lib/json/json_reader.c
847 src/core/lib/json/json_string.c
848 src/core/lib/json/json_writer.c
849 src/core/lib/surface/alarm.c
850 src/core/lib/surface/api_trace.c
851 src/core/lib/surface/byte_buffer.c
852 src/core/lib/surface/byte_buffer_reader.c
853 src/core/lib/surface/call.c
854 src/core/lib/surface/call_details.c
855 src/core/lib/surface/call_log_batch.c
856 src/core/lib/surface/channel.c
857 src/core/lib/surface/channel_init.c
858 src/core/lib/surface/channel_ping.c
859 src/core/lib/surface/channel_stack_type.c
860 src/core/lib/surface/completion_queue.c
861 src/core/lib/surface/event_string.c
862 src/core/lib/surface/lame_client.c
863 src/core/lib/surface/metadata_array.c
864 src/core/lib/surface/server.c
865 src/core/lib/surface/validate_metadata.c
866 src/core/lib/surface/version.c
867 src/core/lib/transport/byte_stream.c
868 src/core/lib/transport/connectivity_state.c
869 src/core/lib/transport/metadata.c
870 src/core/lib/transport/metadata_batch.c
871 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400872 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100873 src/core/lib/transport/transport.c
874 src/core/lib/transport/transport_op_string.c
875 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
876 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
877 src/core/ext/transport/chttp2/transport/bin_decoder.c
878 src/core/ext/transport/chttp2/transport/bin_encoder.c
879 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
880 src/core/ext/transport/chttp2/transport/chttp2_transport.c
881 src/core/ext/transport/chttp2/transport/frame_data.c
882 src/core/ext/transport/chttp2/transport/frame_goaway.c
883 src/core/ext/transport/chttp2/transport/frame_ping.c
884 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
885 src/core/ext/transport/chttp2/transport/frame_settings.c
886 src/core/ext/transport/chttp2/transport/frame_window_update.c
887 src/core/ext/transport/chttp2/transport/hpack_encoder.c
888 src/core/ext/transport/chttp2/transport/hpack_parser.c
889 src/core/ext/transport/chttp2/transport/hpack_table.c
890 src/core/ext/transport/chttp2/transport/huffsyms.c
891 src/core/ext/transport/chttp2/transport/incoming_metadata.c
892 src/core/ext/transport/chttp2/transport/parsing.c
893 src/core/ext/transport/chttp2/transport/status_conversion.c
894 src/core/ext/transport/chttp2/transport/stream_lists.c
895 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100896 src/core/ext/transport/chttp2/transport/varint.c
897 src/core/ext/transport/chttp2/transport/writing.c
898 src/core/ext/transport/chttp2/alpn/alpn.c
899 src/core/ext/transport/chttp2/client/insecure/channel_create.c
900 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
901 src/core/ext/client_config/channel_connectivity.c
902 src/core/ext/client_config/client_channel.c
903 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100904 src/core/ext/client_config/client_config_plugin.c
905 src/core/ext/client_config/connector.c
906 src/core/ext/client_config/default_initial_connect_string.c
Mark D. Roth1102a9e2016-07-22 09:10:01 -0700907 src/core/ext/client_config/http_connect_handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100908 src/core/ext/client_config/initial_connect_string.c
909 src/core/ext/client_config/lb_policy.c
910 src/core/ext/client_config/lb_policy_factory.c
911 src/core/ext/client_config/lb_policy_registry.c
912 src/core/ext/client_config/parse_address.c
913 src/core/ext/client_config/resolver.c
914 src/core/ext/client_config/resolver_factory.c
915 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700916 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100917 src/core/ext/client_config/subchannel.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100918 src/core/ext/client_config/subchannel_index.c
919 src/core/ext/client_config/uri_parser.c
920 src/core/ext/resolver/dns/native/dns_resolver.c
921 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
922 src/core/ext/load_reporting/load_reporting.c
923 src/core/ext/load_reporting/load_reporting_filter.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700924 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100925 src/core/ext/lb_policy/grpclb/load_balancer_api.c
926 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
927 third_party/nanopb/pb_common.c
928 third_party/nanopb/pb_decode.c
929 third_party/nanopb/pb_encode.c
930 src/core/ext/lb_policy/pick_first/pick_first.c
931 src/core/ext/lb_policy/round_robin/round_robin.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700932 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100933 src/core/ext/census/context.c
934 src/core/ext/census/gen/census.pb.c
Alistair Veitcha0c69f92016-08-31 12:01:27 -0700935 src/core/ext/census/gen/trace_context.pb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100936 src/core/ext/census/grpc_context.c
937 src/core/ext/census/grpc_filter.c
938 src/core/ext/census/grpc_plugin.c
939 src/core/ext/census/initialize.c
940 src/core/ext/census/mlog.c
941 src/core/ext/census/operation.c
942 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700943 src/core/ext/census/resource.c
Vizerai12d1fc62016-09-09 14:22:19 -0700944 src/core/ext/census/trace_context.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100945 src/core/ext/census/tracing.c
946 src/core/plugin_registry/grpc_unsecure_plugin_registry.c
947)
948
949target_include_directories(grpc_unsecure
950 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
951 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
952 PRIVATE ${BORINGSSL_ROOT_DIR}/include
953 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300954 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100955 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
956)
957
958target_link_libraries(grpc_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300959 ${_gRPC_BASELIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100960 gpr
961)
962
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300963foreach(_hdr
964 include/grpc/byte_buffer.h
965 include/grpc/byte_buffer_reader.h
966 include/grpc/compression.h
967 include/grpc/grpc.h
968 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200969 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300970 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300971 include/grpc/impl/codegen/byte_buffer_reader.h
972 include/grpc/impl/codegen/compression_types.h
973 include/grpc/impl/codegen/connectivity_state.h
974 include/grpc/impl/codegen/grpc_types.h
975 include/grpc/impl/codegen/propagation_bits.h
976 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300977 include/grpc/impl/codegen/atm.h
978 include/grpc/impl/codegen/atm_gcc_atomic.h
979 include/grpc/impl/codegen/atm_gcc_sync.h
980 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700981 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300982 include/grpc/impl/codegen/port_platform.h
983 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300984 include/grpc/impl/codegen/sync.h
985 include/grpc/impl/codegen/sync_generic.h
986 include/grpc/impl/codegen/sync_posix.h
987 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300988 include/grpc/census.h
989)
990 string(REPLACE "include/" "" _path ${_hdr})
991 get_filename_component(_path ${_path} PATH)
992 install(FILES ${_hdr}
993 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
994 )
995endforeach()
996
997
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300998if (gRPC_INSTALL)
999 install(TARGETS grpc_unsecure EXPORT gRPCTargets
1000 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1001 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1002 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1003 )
1004endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001005
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001006
1007add_library(grpc++
murgatroid991ca0f3e2016-08-26 14:58:49 -07001008 src/cpp/client/insecure_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001009 src/cpp/client/secure_credentials.cc
1010 src/cpp/common/auth_property_iterator.cc
1011 src/cpp/common/secure_auth_context.cc
1012 src/cpp/common/secure_channel_arguments.cc
1013 src/cpp/common/secure_create_auth_context.cc
murgatroid991ca0f3e2016-08-26 14:58:49 -07001014 src/cpp/server/insecure_server_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001015 src/cpp/server/secure_server_credentials.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001016 src/cpp/client/channel_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001017 src/cpp/client/client_context.cc
1018 src/cpp/client/create_channel.cc
1019 src/cpp/client/create_channel_internal.cc
1020 src/cpp/client/create_channel_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001021 src/cpp/client/credentials_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001022 src/cpp/client/generic_stub.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001023 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001024 src/cpp/common/channel_filter.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001025 src/cpp/common/completion_queue_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001026 src/cpp/common/core_codegen.cc
1027 src/cpp/common/rpc_method.cc
1028 src/cpp/server/async_generic_service.cc
1029 src/cpp/server/create_default_thread_pool.cc
1030 src/cpp/server/dynamic_thread_pool.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001031 src/cpp/server/server_builder.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001032 src/cpp/server/server_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001033 src/cpp/server/server_context.cc
1034 src/cpp/server/server_credentials.cc
1035 src/cpp/server/server_posix.cc
Sree Kuchibhotla8f7739b2016-10-13 15:12:55 -07001036 src/cpp/thread_manager/thread_manager.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001037 src/cpp/util/byte_buffer_cc.cc
1038 src/cpp/util/slice_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001039 src/cpp/util/status.cc
1040 src/cpp/util/string_ref.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001041 src/cpp/util/time_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001042 src/cpp/codegen/codegen_init.cc
1043)
1044
1045target_include_directories(grpc++
1046 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1047 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1048 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1049 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001050 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001051 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1052)
1053
1054target_link_libraries(grpc++
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001055 ${_gRPC_BASELIB_LIBRARIES}
1056 ${_gRPC_SSL_LIBRARIES}
1057 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001058 grpc
1059)
1060
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001061foreach(_hdr
1062 include/grpc++/alarm.h
1063 include/grpc++/channel.h
1064 include/grpc++/client_context.h
1065 include/grpc++/completion_queue.h
1066 include/grpc++/create_channel.h
1067 include/grpc++/create_channel_posix.h
1068 include/grpc++/generic/async_generic_service.h
1069 include/grpc++/generic/generic_stub.h
1070 include/grpc++/grpc++.h
1071 include/grpc++/impl/call.h
1072 include/grpc++/impl/client_unary_call.h
1073 include/grpc++/impl/codegen/core_codegen.h
1074 include/grpc++/impl/grpc_library.h
1075 include/grpc++/impl/method_handler_impl.h
1076 include/grpc++/impl/rpc_method.h
1077 include/grpc++/impl/rpc_service_method.h
1078 include/grpc++/impl/serialization_traits.h
1079 include/grpc++/impl/server_builder_option.h
1080 include/grpc++/impl/server_builder_plugin.h
1081 include/grpc++/impl/server_initializer.h
1082 include/grpc++/impl/service_type.h
1083 include/grpc++/impl/sync.h
1084 include/grpc++/impl/sync_cxx11.h
1085 include/grpc++/impl/sync_no_cxx11.h
1086 include/grpc++/impl/thd.h
1087 include/grpc++/impl/thd_cxx11.h
1088 include/grpc++/impl/thd_no_cxx11.h
1089 include/grpc++/security/auth_context.h
1090 include/grpc++/security/auth_metadata_processor.h
1091 include/grpc++/security/credentials.h
1092 include/grpc++/security/server_credentials.h
1093 include/grpc++/server.h
1094 include/grpc++/server_builder.h
1095 include/grpc++/server_context.h
1096 include/grpc++/server_posix.h
1097 include/grpc++/support/async_stream.h
1098 include/grpc++/support/async_unary_call.h
1099 include/grpc++/support/byte_buffer.h
1100 include/grpc++/support/channel_arguments.h
1101 include/grpc++/support/config.h
1102 include/grpc++/support/slice.h
1103 include/grpc++/support/status.h
1104 include/grpc++/support/status_code_enum.h
1105 include/grpc++/support/string_ref.h
1106 include/grpc++/support/stub_options.h
1107 include/grpc++/support/sync_stream.h
1108 include/grpc++/support/time.h
1109 include/grpc++/impl/codegen/async_stream.h
1110 include/grpc++/impl/codegen/async_unary_call.h
1111 include/grpc++/impl/codegen/call.h
1112 include/grpc++/impl/codegen/call_hook.h
1113 include/grpc++/impl/codegen/channel_interface.h
1114 include/grpc++/impl/codegen/client_context.h
1115 include/grpc++/impl/codegen/client_unary_call.h
1116 include/grpc++/impl/codegen/completion_queue.h
1117 include/grpc++/impl/codegen/completion_queue_tag.h
1118 include/grpc++/impl/codegen/config.h
1119 include/grpc++/impl/codegen/core_codegen_interface.h
1120 include/grpc++/impl/codegen/create_auth_context.h
1121 include/grpc++/impl/codegen/grpc_library.h
1122 include/grpc++/impl/codegen/method_handler_impl.h
1123 include/grpc++/impl/codegen/rpc_method.h
1124 include/grpc++/impl/codegen/rpc_service_method.h
1125 include/grpc++/impl/codegen/security/auth_context.h
1126 include/grpc++/impl/codegen/serialization_traits.h
1127 include/grpc++/impl/codegen/server_context.h
1128 include/grpc++/impl/codegen/server_interface.h
1129 include/grpc++/impl/codegen/service_type.h
1130 include/grpc++/impl/codegen/status.h
1131 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001132 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001133 include/grpc++/impl/codegen/string_ref.h
1134 include/grpc++/impl/codegen/stub_options.h
1135 include/grpc++/impl/codegen/sync.h
1136 include/grpc++/impl/codegen/sync_cxx11.h
1137 include/grpc++/impl/codegen/sync_no_cxx11.h
1138 include/grpc++/impl/codegen/sync_stream.h
1139 include/grpc++/impl/codegen/time.h
Nicolas "Pixel" Noble87a10812016-09-29 01:31:54 +02001140 include/grpc/impl/codegen/byte_buffer_reader.h
1141 include/grpc/impl/codegen/compression_types.h
1142 include/grpc/impl/codegen/connectivity_state.h
1143 include/grpc/impl/codegen/grpc_types.h
1144 include/grpc/impl/codegen/propagation_bits.h
1145 include/grpc/impl/codegen/status.h
1146 include/grpc/impl/codegen/atm.h
1147 include/grpc/impl/codegen/atm_gcc_atomic.h
1148 include/grpc/impl/codegen/atm_gcc_sync.h
1149 include/grpc/impl/codegen/atm_windows.h
1150 include/grpc/impl/codegen/gpr_types.h
1151 include/grpc/impl/codegen/port_platform.h
1152 include/grpc/impl/codegen/slice.h
1153 include/grpc/impl/codegen/sync.h
1154 include/grpc/impl/codegen/sync_generic.h
1155 include/grpc/impl/codegen/sync_posix.h
1156 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001157)
1158 string(REPLACE "include/" "" _path ${_hdr})
1159 get_filename_component(_path ${_path} PATH)
1160 install(FILES ${_hdr}
1161 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1162 )
1163endforeach()
1164
1165
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001166if (gRPC_INSTALL)
1167 install(TARGETS grpc++ EXPORT gRPCTargets
1168 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1169 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1170 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1171 )
1172endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001173
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001174
1175add_library(grpc++_reflection
1176 src/cpp/ext/proto_server_reflection.cc
1177 src/cpp/ext/proto_server_reflection_plugin.cc
1178 src/cpp/ext/reflection.grpc.pb.cc
1179 src/cpp/ext/reflection.pb.cc
1180)
1181
1182target_include_directories(grpc++_reflection
1183 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1184 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1185 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1186 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001187 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001188 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1189)
1190
1191target_link_libraries(grpc++_reflection
1192 grpc++
1193)
1194
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001195foreach(_hdr
1196 include/grpc++/ext/proto_server_reflection_plugin.h
1197 include/grpc++/ext/reflection.grpc.pb.h
1198 include/grpc++/ext/reflection.pb.h
1199 include/grpc++/impl/codegen/proto_utils.h
1200 include/grpc++/impl/codegen/async_stream.h
1201 include/grpc++/impl/codegen/async_unary_call.h
1202 include/grpc++/impl/codegen/call.h
1203 include/grpc++/impl/codegen/call_hook.h
1204 include/grpc++/impl/codegen/channel_interface.h
1205 include/grpc++/impl/codegen/client_context.h
1206 include/grpc++/impl/codegen/client_unary_call.h
1207 include/grpc++/impl/codegen/completion_queue.h
1208 include/grpc++/impl/codegen/completion_queue_tag.h
1209 include/grpc++/impl/codegen/config.h
1210 include/grpc++/impl/codegen/core_codegen_interface.h
1211 include/grpc++/impl/codegen/create_auth_context.h
1212 include/grpc++/impl/codegen/grpc_library.h
1213 include/grpc++/impl/codegen/method_handler_impl.h
1214 include/grpc++/impl/codegen/rpc_method.h
1215 include/grpc++/impl/codegen/rpc_service_method.h
1216 include/grpc++/impl/codegen/security/auth_context.h
1217 include/grpc++/impl/codegen/serialization_traits.h
1218 include/grpc++/impl/codegen/server_context.h
1219 include/grpc++/impl/codegen/server_interface.h
1220 include/grpc++/impl/codegen/service_type.h
1221 include/grpc++/impl/codegen/status.h
1222 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001223 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001224 include/grpc++/impl/codegen/string_ref.h
1225 include/grpc++/impl/codegen/stub_options.h
1226 include/grpc++/impl/codegen/sync.h
1227 include/grpc++/impl/codegen/sync_cxx11.h
1228 include/grpc++/impl/codegen/sync_no_cxx11.h
1229 include/grpc++/impl/codegen/sync_stream.h
1230 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001231 include/grpc/impl/codegen/byte_buffer_reader.h
1232 include/grpc/impl/codegen/compression_types.h
1233 include/grpc/impl/codegen/connectivity_state.h
1234 include/grpc/impl/codegen/grpc_types.h
1235 include/grpc/impl/codegen/propagation_bits.h
1236 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001237 include/grpc/impl/codegen/atm.h
1238 include/grpc/impl/codegen/atm_gcc_atomic.h
1239 include/grpc/impl/codegen/atm_gcc_sync.h
1240 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001241 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001242 include/grpc/impl/codegen/port_platform.h
1243 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001244 include/grpc/impl/codegen/sync.h
1245 include/grpc/impl/codegen/sync_generic.h
1246 include/grpc/impl/codegen/sync_posix.h
1247 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001248 include/grpc++/impl/codegen/config_protobuf.h
1249)
1250 string(REPLACE "include/" "" _path ${_hdr})
1251 get_filename_component(_path ${_path} PATH)
1252 install(FILES ${_hdr}
1253 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1254 )
1255endforeach()
1256
1257
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001258if (gRPC_INSTALL)
1259 install(TARGETS grpc++_reflection EXPORT gRPCTargets
1260 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1261 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1262 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1263 )
1264endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001265
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001266
1267add_library(grpc++_unsecure
murgatroid991ca0f3e2016-08-26 14:58:49 -07001268 src/cpp/client/insecure_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001269 src/cpp/common/insecure_create_auth_context.cc
murgatroid991ca0f3e2016-08-26 14:58:49 -07001270 src/cpp/server/insecure_server_credentials.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001271 src/cpp/client/channel_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001272 src/cpp/client/client_context.cc
1273 src/cpp/client/create_channel.cc
1274 src/cpp/client/create_channel_internal.cc
1275 src/cpp/client/create_channel_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001276 src/cpp/client/credentials_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001277 src/cpp/client/generic_stub.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001278 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001279 src/cpp/common/channel_filter.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001280 src/cpp/common/completion_queue_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001281 src/cpp/common/core_codegen.cc
1282 src/cpp/common/rpc_method.cc
1283 src/cpp/server/async_generic_service.cc
1284 src/cpp/server/create_default_thread_pool.cc
1285 src/cpp/server/dynamic_thread_pool.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001286 src/cpp/server/server_builder.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001287 src/cpp/server/server_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001288 src/cpp/server/server_context.cc
1289 src/cpp/server/server_credentials.cc
1290 src/cpp/server/server_posix.cc
Sree Kuchibhotla8f7739b2016-10-13 15:12:55 -07001291 src/cpp/thread_manager/thread_manager.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001292 src/cpp/util/byte_buffer_cc.cc
1293 src/cpp/util/slice_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001294 src/cpp/util/status.cc
1295 src/cpp/util/string_ref.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001296 src/cpp/util/time_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001297 src/cpp/codegen/codegen_init.cc
1298)
1299
1300target_include_directories(grpc++_unsecure
1301 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1302 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1303 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1304 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001305 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001306 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1307)
1308
1309target_link_libraries(grpc++_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001310 ${_gRPC_BASELIB_LIBRARIES}
1311 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001312 gpr
1313 grpc_unsecure
1314)
1315
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001316foreach(_hdr
1317 include/grpc++/alarm.h
1318 include/grpc++/channel.h
1319 include/grpc++/client_context.h
1320 include/grpc++/completion_queue.h
1321 include/grpc++/create_channel.h
1322 include/grpc++/create_channel_posix.h
1323 include/grpc++/generic/async_generic_service.h
1324 include/grpc++/generic/generic_stub.h
1325 include/grpc++/grpc++.h
1326 include/grpc++/impl/call.h
1327 include/grpc++/impl/client_unary_call.h
1328 include/grpc++/impl/codegen/core_codegen.h
1329 include/grpc++/impl/grpc_library.h
1330 include/grpc++/impl/method_handler_impl.h
1331 include/grpc++/impl/rpc_method.h
1332 include/grpc++/impl/rpc_service_method.h
1333 include/grpc++/impl/serialization_traits.h
1334 include/grpc++/impl/server_builder_option.h
1335 include/grpc++/impl/server_builder_plugin.h
1336 include/grpc++/impl/server_initializer.h
1337 include/grpc++/impl/service_type.h
1338 include/grpc++/impl/sync.h
1339 include/grpc++/impl/sync_cxx11.h
1340 include/grpc++/impl/sync_no_cxx11.h
1341 include/grpc++/impl/thd.h
1342 include/grpc++/impl/thd_cxx11.h
1343 include/grpc++/impl/thd_no_cxx11.h
1344 include/grpc++/security/auth_context.h
1345 include/grpc++/security/auth_metadata_processor.h
1346 include/grpc++/security/credentials.h
1347 include/grpc++/security/server_credentials.h
1348 include/grpc++/server.h
1349 include/grpc++/server_builder.h
1350 include/grpc++/server_context.h
1351 include/grpc++/server_posix.h
1352 include/grpc++/support/async_stream.h
1353 include/grpc++/support/async_unary_call.h
1354 include/grpc++/support/byte_buffer.h
1355 include/grpc++/support/channel_arguments.h
1356 include/grpc++/support/config.h
1357 include/grpc++/support/slice.h
1358 include/grpc++/support/status.h
1359 include/grpc++/support/status_code_enum.h
1360 include/grpc++/support/string_ref.h
1361 include/grpc++/support/stub_options.h
1362 include/grpc++/support/sync_stream.h
1363 include/grpc++/support/time.h
1364 include/grpc++/impl/codegen/async_stream.h
1365 include/grpc++/impl/codegen/async_unary_call.h
1366 include/grpc++/impl/codegen/call.h
1367 include/grpc++/impl/codegen/call_hook.h
1368 include/grpc++/impl/codegen/channel_interface.h
1369 include/grpc++/impl/codegen/client_context.h
1370 include/grpc++/impl/codegen/client_unary_call.h
1371 include/grpc++/impl/codegen/completion_queue.h
1372 include/grpc++/impl/codegen/completion_queue_tag.h
1373 include/grpc++/impl/codegen/config.h
1374 include/grpc++/impl/codegen/core_codegen_interface.h
1375 include/grpc++/impl/codegen/create_auth_context.h
1376 include/grpc++/impl/codegen/grpc_library.h
1377 include/grpc++/impl/codegen/method_handler_impl.h
1378 include/grpc++/impl/codegen/rpc_method.h
1379 include/grpc++/impl/codegen/rpc_service_method.h
1380 include/grpc++/impl/codegen/security/auth_context.h
1381 include/grpc++/impl/codegen/serialization_traits.h
1382 include/grpc++/impl/codegen/server_context.h
1383 include/grpc++/impl/codegen/server_interface.h
1384 include/grpc++/impl/codegen/service_type.h
1385 include/grpc++/impl/codegen/status.h
1386 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001387 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001388 include/grpc++/impl/codegen/string_ref.h
1389 include/grpc++/impl/codegen/stub_options.h
1390 include/grpc++/impl/codegen/sync.h
1391 include/grpc++/impl/codegen/sync_cxx11.h
1392 include/grpc++/impl/codegen/sync_no_cxx11.h
1393 include/grpc++/impl/codegen/sync_stream.h
1394 include/grpc++/impl/codegen/time.h
Nicolas "Pixel" Noble87a10812016-09-29 01:31:54 +02001395 include/grpc/impl/codegen/byte_buffer_reader.h
1396 include/grpc/impl/codegen/compression_types.h
1397 include/grpc/impl/codegen/connectivity_state.h
1398 include/grpc/impl/codegen/grpc_types.h
1399 include/grpc/impl/codegen/propagation_bits.h
1400 include/grpc/impl/codegen/status.h
1401 include/grpc/impl/codegen/atm.h
1402 include/grpc/impl/codegen/atm_gcc_atomic.h
1403 include/grpc/impl/codegen/atm_gcc_sync.h
1404 include/grpc/impl/codegen/atm_windows.h
1405 include/grpc/impl/codegen/gpr_types.h
1406 include/grpc/impl/codegen/port_platform.h
1407 include/grpc/impl/codegen/slice.h
1408 include/grpc/impl/codegen/sync.h
1409 include/grpc/impl/codegen/sync_generic.h
1410 include/grpc/impl/codegen/sync_posix.h
1411 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001412)
1413 string(REPLACE "include/" "" _path ${_hdr})
1414 get_filename_component(_path ${_path} PATH)
1415 install(FILES ${_hdr}
1416 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1417 )
1418endforeach()
1419
1420
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001421if (gRPC_INSTALL)
1422 install(TARGETS grpc++_unsecure EXPORT gRPCTargets
1423 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1424 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1425 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1426 )
1427endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001428
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001429
1430add_library(grpc_plugin_support
1431 src/compiler/cpp_generator.cc
1432 src/compiler/csharp_generator.cc
1433 src/compiler/node_generator.cc
1434 src/compiler/objective_c_generator.cc
Stanley Cheung857a1302016-09-29 17:26:29 -07001435 src/compiler/php_generator.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001436 src/compiler/python_generator.cc
1437 src/compiler/ruby_generator.cc
1438)
1439
1440target_include_directories(grpc_plugin_support
1441 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1442 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1443 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1444 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001445 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001446 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1447)
1448
1449target_link_libraries(grpc_plugin_support
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001450 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001451)
1452
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001453foreach(_hdr
1454 include/grpc++/impl/codegen/config_protobuf.h
1455)
1456 string(REPLACE "include/" "" _path ${_hdr})
1457 get_filename_component(_path ${_path} PATH)
1458 install(FILES ${_hdr}
1459 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1460 )
1461endforeach()
1462
1463
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001464if (gRPC_INSTALL)
1465 install(TARGETS grpc_plugin_support EXPORT gRPCTargets
1466 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1467 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1468 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1469 )
1470endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001471
1472
1473add_library(grpc_csharp_ext
1474 src/csharp/ext/grpc_csharp_ext.c
1475)
1476
1477target_include_directories(grpc_csharp_ext
1478 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1479 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1480 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1481 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001482 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001483 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1484)
1485
1486target_link_libraries(grpc_csharp_ext
1487 grpc
1488 gpr
1489)
1490
1491
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001492
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001493if (gRPC_INSTALL)
1494 install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
1495 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1496 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1497 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1498 )
1499endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001500
1501
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001502
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001503add_executable(gen_hpack_tables
1504 tools/codegen/core/gen_hpack_tables.c
1505)
1506
1507target_include_directories(gen_hpack_tables
1508 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1509 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1510 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1511 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1512 PRIVATE ${ZLIB_ROOT_DIR}
1513 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1514)
1515
1516target_link_libraries(gen_hpack_tables
1517 gpr
1518 grpc
1519)
1520
1521
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001522if (gRPC_INSTALL)
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001523 install(TARGETS gen_hpack_tables EXPORT gRPCTargets
1524 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1525 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1526 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1527 )
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001528endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001529
1530
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001531add_executable(gen_legal_metadata_characters
1532 tools/codegen/core/gen_legal_metadata_characters.c
1533)
1534
1535target_include_directories(gen_legal_metadata_characters
1536 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1537 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1538 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1539 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1540 PRIVATE ${ZLIB_ROOT_DIR}
1541 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1542)
1543
1544
1545
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001546if (gRPC_INSTALL)
1547 install(TARGETS gen_legal_metadata_characters EXPORT gRPCTargets
1548 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1549 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1550 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1551 )
1552endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001553
1554
Craig Tiller1c7a8422016-08-18 11:13:11 -07001555add_executable(gen_percent_encoding_tables
1556 tools/codegen/core/gen_percent_encoding_tables.c
1557)
1558
1559target_include_directories(gen_percent_encoding_tables
1560 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1561 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1562 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1563 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1564 PRIVATE ${ZLIB_ROOT_DIR}
1565 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1566)
1567
1568
1569
Craig Tiller426dcde2016-09-07 15:43:10 -07001570if (gRPC_INSTALL)
1571 install(TARGETS gen_percent_encoding_tables EXPORT gRPCTargets
1572 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1573 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1574 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1575 )
1576endif()
Craig Tiller1c7a8422016-08-18 11:13:11 -07001577
1578
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001579add_executable(grpc_create_jwt
1580 test/core/security/create_jwt.c
1581)
1582
1583target_include_directories(grpc_create_jwt
1584 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1585 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1586 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1587 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1588 PRIVATE ${ZLIB_ROOT_DIR}
1589 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1590)
1591
1592target_link_libraries(grpc_create_jwt
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001593 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001594 grpc
1595 gpr
1596)
1597
1598
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001599if (gRPC_INSTALL)
1600 install(TARGETS grpc_create_jwt EXPORT gRPCTargets
1601 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1602 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1603 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1604 )
1605endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001606
1607
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001608add_executable(grpc_print_google_default_creds_token
1609 test/core/security/print_google_default_creds_token.c
1610)
1611
1612target_include_directories(grpc_print_google_default_creds_token
1613 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1614 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1615 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1616 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1617 PRIVATE ${ZLIB_ROOT_DIR}
1618 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1619)
1620
1621target_link_libraries(grpc_print_google_default_creds_token
1622 grpc
1623 gpr
1624)
1625
1626
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001627if (gRPC_INSTALL)
1628 install(TARGETS grpc_print_google_default_creds_token EXPORT gRPCTargets
1629 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1630 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1631 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1632 )
1633endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001634
1635
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001636add_executable(grpc_verify_jwt
1637 test/core/security/verify_jwt.c
1638)
1639
1640target_include_directories(grpc_verify_jwt
1641 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1642 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1643 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1644 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1645 PRIVATE ${ZLIB_ROOT_DIR}
1646 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1647)
1648
1649target_link_libraries(grpc_verify_jwt
1650 grpc
1651 gpr
1652)
1653
1654
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001655if (gRPC_INSTALL)
1656 install(TARGETS grpc_verify_jwt EXPORT gRPCTargets
1657 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1658 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1659 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1660 )
1661endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001662
1663
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001664add_executable(grpc_cpp_plugin
1665 src/compiler/cpp_plugin.cc
1666)
1667
1668target_include_directories(grpc_cpp_plugin
1669 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1670 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1671 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1672 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1673 PRIVATE ${ZLIB_ROOT_DIR}
1674 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1675)
1676
1677target_link_libraries(grpc_cpp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001678 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001679 grpc_plugin_support
1680)
1681
1682
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001683if (gRPC_INSTALL)
1684 install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
1685 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1686 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1687 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1688 )
1689endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001690
1691
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001692add_executable(grpc_csharp_plugin
1693 src/compiler/csharp_plugin.cc
1694)
1695
1696target_include_directories(grpc_csharp_plugin
1697 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1698 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1699 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1700 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1701 PRIVATE ${ZLIB_ROOT_DIR}
1702 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1703)
1704
1705target_link_libraries(grpc_csharp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001706 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001707 grpc_plugin_support
1708)
1709
1710
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001711if (gRPC_INSTALL)
1712 install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
1713 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1714 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1715 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1716 )
1717endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001718
1719
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001720add_executable(grpc_node_plugin
1721 src/compiler/node_plugin.cc
1722)
1723
1724target_include_directories(grpc_node_plugin
1725 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1726 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1727 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1728 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1729 PRIVATE ${ZLIB_ROOT_DIR}
1730 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1731)
1732
1733target_link_libraries(grpc_node_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001734 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001735 grpc_plugin_support
1736)
1737
1738
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001739if (gRPC_INSTALL)
1740 install(TARGETS grpc_node_plugin EXPORT gRPCTargets
1741 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1742 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1743 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1744 )
1745endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001746
1747
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001748add_executable(grpc_objective_c_plugin
1749 src/compiler/objective_c_plugin.cc
1750)
1751
1752target_include_directories(grpc_objective_c_plugin
1753 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1754 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1755 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1756 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1757 PRIVATE ${ZLIB_ROOT_DIR}
1758 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1759)
1760
1761target_link_libraries(grpc_objective_c_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001762 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001763 grpc_plugin_support
1764)
1765
1766
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001767if (gRPC_INSTALL)
1768 install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
1769 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1770 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1771 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1772 )
1773endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001774
1775
Stanley Cheung857a1302016-09-29 17:26:29 -07001776add_executable(grpc_php_plugin
1777 src/compiler/php_plugin.cc
1778)
1779
1780target_include_directories(grpc_php_plugin
1781 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1782 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1783 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1784 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1785 PRIVATE ${ZLIB_ROOT_DIR}
1786 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1787)
1788
1789target_link_libraries(grpc_php_plugin
1790 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
1791 grpc_plugin_support
1792)
1793
1794
1795if (gRPC_INSTALL)
1796 install(TARGETS grpc_php_plugin EXPORT gRPCTargets
1797 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1798 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1799 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1800 )
1801endif()
1802
1803
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001804add_executable(grpc_python_plugin
1805 src/compiler/python_plugin.cc
1806)
1807
1808target_include_directories(grpc_python_plugin
1809 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1810 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1811 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1812 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1813 PRIVATE ${ZLIB_ROOT_DIR}
1814 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1815)
1816
1817target_link_libraries(grpc_python_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001818 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001819 grpc_plugin_support
1820)
1821
1822
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001823if (gRPC_INSTALL)
1824 install(TARGETS grpc_python_plugin EXPORT gRPCTargets
1825 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1826 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1827 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1828 )
1829endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001830
1831
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001832add_executable(grpc_ruby_plugin
1833 src/compiler/ruby_plugin.cc
1834)
1835
1836target_include_directories(grpc_ruby_plugin
1837 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1838 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1839 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1840 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1841 PRIVATE ${ZLIB_ROOT_DIR}
1842 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1843)
1844
1845target_link_libraries(grpc_ruby_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001846 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001847 grpc_plugin_support
1848)
1849
1850
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001851if (gRPC_INSTALL)
1852 install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
1853 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1854 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1855 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1856 )
1857endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001858
1859
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001860
1861
1862
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001863
1864
1865
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001866if (gRPC_INSTALL)
1867 install(EXPORT gRPCTargets
1868 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1869 NAMESPACE gRPC::
1870 )
1871endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001872
1873foreach(_config gRPCConfig gRPCConfigVersion)
1874 configure_file(tools/cmake/${_config}.cmake.in
1875 ${_config}.cmake @ONLY)
1876 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
1877 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1878 )
1879endforeach()