blob: f4d4e6a2c38ce206acd3698e33a0941fd5f19741 [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")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010077endif()
78
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030079if("${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()")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010098endif()
99
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300100if("${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()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100137
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300138if("${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")
170endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100171
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200172
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100173add_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
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100196 src/core/lib/support/stack_lockfree.c
197 src/core/lib/support/string.c
198 src/core/lib/support/string_posix.c
199 src/core/lib/support/string_util_windows.c
200 src/core/lib/support/string_windows.c
201 src/core/lib/support/subprocess_posix.c
202 src/core/lib/support/subprocess_windows.c
203 src/core/lib/support/sync.c
204 src/core/lib/support/sync_posix.c
205 src/core/lib/support/sync_windows.c
206 src/core/lib/support/thd.c
207 src/core/lib/support/thd_posix.c
208 src/core/lib/support/thd_windows.c
209 src/core/lib/support/time.c
210 src/core/lib/support/time_posix.c
211 src/core/lib/support/time_precise.c
212 src/core/lib/support/time_windows.c
213 src/core/lib/support/tls_pthread.c
214 src/core/lib/support/tmpfile_msys.c
215 src/core/lib/support/tmpfile_posix.c
216 src/core/lib/support/tmpfile_windows.c
217 src/core/lib/support/wrap_memcpy.c
218)
219
220target_include_directories(gpr
221 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
222 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
223 PRIVATE ${BORINGSSL_ROOT_DIR}/include
224 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300225 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100226 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
227)
228
229
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300230foreach(_hdr
231 include/grpc/support/alloc.h
232 include/grpc/support/atm.h
233 include/grpc/support/atm_gcc_atomic.h
234 include/grpc/support/atm_gcc_sync.h
235 include/grpc/support/atm_windows.h
236 include/grpc/support/avl.h
237 include/grpc/support/cmdline.h
238 include/grpc/support/cpu.h
239 include/grpc/support/histogram.h
240 include/grpc/support/host_port.h
241 include/grpc/support/log.h
242 include/grpc/support/log_windows.h
243 include/grpc/support/port_platform.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300244 include/grpc/support/string_util.h
245 include/grpc/support/subprocess.h
246 include/grpc/support/sync.h
247 include/grpc/support/sync_generic.h
248 include/grpc/support/sync_posix.h
249 include/grpc/support/sync_windows.h
250 include/grpc/support/thd.h
251 include/grpc/support/time.h
252 include/grpc/support/tls.h
253 include/grpc/support/tls_gcc.h
254 include/grpc/support/tls_msvc.h
255 include/grpc/support/tls_pthread.h
256 include/grpc/support/useful.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300257 include/grpc/impl/codegen/atm.h
258 include/grpc/impl/codegen/atm_gcc_atomic.h
259 include/grpc/impl/codegen/atm_gcc_sync.h
260 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700261 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300262 include/grpc/impl/codegen/port_platform.h
263 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300264 include/grpc/impl/codegen/sync.h
265 include/grpc/impl/codegen/sync_generic.h
266 include/grpc/impl/codegen/sync_posix.h
267 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300268)
269 string(REPLACE "include/" "" _path ${_hdr})
270 get_filename_component(_path ${_path} PATH)
271 install(FILES ${_hdr}
272 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
273 )
274endforeach()
275
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200276
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300277if (gRPC_INSTALL)
278 install(TARGETS gpr EXPORT gRPCTargets
279 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
280 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
281 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
282 )
283endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300284
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200285
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100286add_library(grpc
287 src/core/lib/surface/init.c
288 src/core/lib/channel/channel_args.c
289 src/core/lib/channel/channel_stack.c
290 src/core/lib/channel/channel_stack_builder.c
291 src/core/lib/channel/compress_filter.c
292 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700293 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700294 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100295 src/core/lib/channel/http_client_filter.c
296 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700297 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100298 src/core/lib/compression/compression.c
299 src/core/lib/compression/message_compress.c
300 src/core/lib/debug/trace.c
301 src/core/lib/http/format_request.c
302 src/core/lib/http/httpcli.c
303 src/core/lib/http/parser.c
304 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700305 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100306 src/core/lib/iomgr/endpoint.c
307 src/core/lib/iomgr/endpoint_pair_posix.c
308 src/core/lib/iomgr/endpoint_pair_windows.c
309 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200310 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100311 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
312 src/core/lib/iomgr/ev_poll_posix.c
313 src/core/lib/iomgr/ev_posix.c
314 src/core/lib/iomgr/exec_ctx.c
315 src/core/lib/iomgr/executor.c
316 src/core/lib/iomgr/iocp_windows.c
317 src/core/lib/iomgr/iomgr.c
318 src/core/lib/iomgr/iomgr_posix.c
319 src/core/lib/iomgr/iomgr_windows.c
320 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200321 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100322 src/core/lib/iomgr/polling_entity.c
323 src/core/lib/iomgr/pollset_set_windows.c
324 src/core/lib/iomgr/pollset_windows.c
325 src/core/lib/iomgr/resolve_address_posix.c
326 src/core/lib/iomgr/resolve_address_windows.c
Craig Tiller20afa3d2016-10-17 14:52:14 -0700327 src/core/lib/iomgr/resource_quota.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100328 src/core/lib/iomgr/sockaddr_utils.c
329 src/core/lib/iomgr/socket_utils_common_posix.c
330 src/core/lib/iomgr/socket_utils_linux.c
331 src/core/lib/iomgr/socket_utils_posix.c
332 src/core/lib/iomgr/socket_windows.c
333 src/core/lib/iomgr/tcp_client_posix.c
334 src/core/lib/iomgr/tcp_client_windows.c
335 src/core/lib/iomgr/tcp_posix.c
336 src/core/lib/iomgr/tcp_server_posix.c
337 src/core/lib/iomgr/tcp_server_windows.c
338 src/core/lib/iomgr/tcp_windows.c
339 src/core/lib/iomgr/time_averaged_stats.c
340 src/core/lib/iomgr/timer.c
341 src/core/lib/iomgr/timer_heap.c
342 src/core/lib/iomgr/udp_server.c
343 src/core/lib/iomgr/unix_sockets_posix.c
344 src/core/lib/iomgr/unix_sockets_posix_noop.c
kpayson64d195cf52016-10-09 18:04:00 -0700345 src/core/lib/iomgr/wakeup_fd_cv.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100346 src/core/lib/iomgr/wakeup_fd_eventfd.c
347 src/core/lib/iomgr/wakeup_fd_nospecial.c
348 src/core/lib/iomgr/wakeup_fd_pipe.c
349 src/core/lib/iomgr/wakeup_fd_posix.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100350 src/core/lib/iomgr/workqueue_windows.c
351 src/core/lib/json/json.c
352 src/core/lib/json/json_reader.c
353 src/core/lib/json/json_string.c
354 src/core/lib/json/json_writer.c
Craig Tillerc3350542016-10-26 16:19:01 -0700355 src/core/lib/slice/percent_encoding.c
356 src/core/lib/slice/slice.c
357 src/core/lib/slice/slice_buffer.c
358 src/core/lib/slice/slice_string_helpers.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100359 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
Mark D. Roth2137cd82016-09-14 09:04:00 -0700438 src/core/ext/client_channel/channel_connectivity.c
439 src/core/ext/client_channel/client_channel.c
440 src/core/ext/client_channel/client_channel_factory.c
441 src/core/ext/client_channel/client_channel_plugin.c
442 src/core/ext/client_channel/connector.c
443 src/core/ext/client_channel/default_initial_connect_string.c
Mark D. Roth15195742016-10-07 09:02:28 -0700444 src/core/ext/client_channel/http_connect_handshaker.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700445 src/core/ext/client_channel/initial_connect_string.c
446 src/core/ext/client_channel/lb_policy.c
447 src/core/ext/client_channel/lb_policy_factory.c
448 src/core/ext/client_channel/lb_policy_registry.c
Mark D. Rotheb35a1d2016-10-19 14:53:42 -0700449 src/core/ext/client_channel/method_config.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700450 src/core/ext/client_channel/parse_address.c
451 src/core/ext/client_channel/resolver.c
452 src/core/ext/client_channel/resolver_factory.c
453 src/core/ext/client_channel/resolver_registry.c
454 src/core/ext/client_channel/resolver_result.c
455 src/core/ext/client_channel/subchannel.c
456 src/core/ext/client_channel/subchannel_index.c
457 src/core/ext/client_channel/uri_parser.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100458 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
Craig Tillerc3350542016-10-26 16:19:01 -0700514 include/grpc/slice.h
515 include/grpc/slice_buffer.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300516 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300517 include/grpc/impl/codegen/byte_buffer_reader.h
518 include/grpc/impl/codegen/compression_types.h
519 include/grpc/impl/codegen/connectivity_state.h
520 include/grpc/impl/codegen/grpc_types.h
521 include/grpc/impl/codegen/propagation_bits.h
522 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300523 include/grpc/impl/codegen/atm.h
524 include/grpc/impl/codegen/atm_gcc_atomic.h
525 include/grpc/impl/codegen/atm_gcc_sync.h
526 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700527 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300528 include/grpc/impl/codegen/port_platform.h
529 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300530 include/grpc/impl/codegen/sync.h
531 include/grpc/impl/codegen/sync_generic.h
532 include/grpc/impl/codegen/sync_posix.h
533 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300534 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300535 include/grpc/census.h
536)
537 string(REPLACE "include/" "" _path ${_hdr})
538 get_filename_component(_path ${_path} PATH)
539 install(FILES ${_hdr}
540 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
541 )
542endforeach()
543
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200544
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300545if (gRPC_INSTALL)
546 install(TARGETS grpc EXPORT gRPCTargets
547 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
548 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
549 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
550 )
551endif()
552
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200553
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100554add_library(grpc_cronet
555 src/core/lib/surface/init.c
556 src/core/lib/channel/channel_args.c
557 src/core/lib/channel/channel_stack.c
558 src/core/lib/channel/channel_stack_builder.c
559 src/core/lib/channel/compress_filter.c
560 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700561 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700562 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100563 src/core/lib/channel/http_client_filter.c
564 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700565 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100566 src/core/lib/compression/compression.c
567 src/core/lib/compression/message_compress.c
568 src/core/lib/debug/trace.c
569 src/core/lib/http/format_request.c
570 src/core/lib/http/httpcli.c
571 src/core/lib/http/parser.c
572 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700573 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100574 src/core/lib/iomgr/endpoint.c
575 src/core/lib/iomgr/endpoint_pair_posix.c
576 src/core/lib/iomgr/endpoint_pair_windows.c
577 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200578 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100579 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
580 src/core/lib/iomgr/ev_poll_posix.c
581 src/core/lib/iomgr/ev_posix.c
582 src/core/lib/iomgr/exec_ctx.c
583 src/core/lib/iomgr/executor.c
584 src/core/lib/iomgr/iocp_windows.c
585 src/core/lib/iomgr/iomgr.c
586 src/core/lib/iomgr/iomgr_posix.c
587 src/core/lib/iomgr/iomgr_windows.c
588 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200589 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100590 src/core/lib/iomgr/polling_entity.c
591 src/core/lib/iomgr/pollset_set_windows.c
592 src/core/lib/iomgr/pollset_windows.c
593 src/core/lib/iomgr/resolve_address_posix.c
594 src/core/lib/iomgr/resolve_address_windows.c
Craig Tiller20afa3d2016-10-17 14:52:14 -0700595 src/core/lib/iomgr/resource_quota.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100596 src/core/lib/iomgr/sockaddr_utils.c
597 src/core/lib/iomgr/socket_utils_common_posix.c
598 src/core/lib/iomgr/socket_utils_linux.c
599 src/core/lib/iomgr/socket_utils_posix.c
600 src/core/lib/iomgr/socket_windows.c
601 src/core/lib/iomgr/tcp_client_posix.c
602 src/core/lib/iomgr/tcp_client_windows.c
603 src/core/lib/iomgr/tcp_posix.c
604 src/core/lib/iomgr/tcp_server_posix.c
605 src/core/lib/iomgr/tcp_server_windows.c
606 src/core/lib/iomgr/tcp_windows.c
607 src/core/lib/iomgr/time_averaged_stats.c
608 src/core/lib/iomgr/timer.c
609 src/core/lib/iomgr/timer_heap.c
610 src/core/lib/iomgr/udp_server.c
611 src/core/lib/iomgr/unix_sockets_posix.c
612 src/core/lib/iomgr/unix_sockets_posix_noop.c
kpayson64d195cf52016-10-09 18:04:00 -0700613 src/core/lib/iomgr/wakeup_fd_cv.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100614 src/core/lib/iomgr/wakeup_fd_eventfd.c
615 src/core/lib/iomgr/wakeup_fd_nospecial.c
616 src/core/lib/iomgr/wakeup_fd_pipe.c
617 src/core/lib/iomgr/wakeup_fd_posix.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100618 src/core/lib/iomgr/workqueue_windows.c
619 src/core/lib/json/json.c
620 src/core/lib/json/json_reader.c
621 src/core/lib/json/json_string.c
622 src/core/lib/json/json_writer.c
Craig Tillerc3350542016-10-26 16:19:01 -0700623 src/core/lib/slice/percent_encoding.c
624 src/core/lib/slice/slice.c
625 src/core/lib/slice/slice_buffer.c
626 src/core/lib/slice/slice_string_helpers.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100627 src/core/lib/surface/alarm.c
628 src/core/lib/surface/api_trace.c
629 src/core/lib/surface/byte_buffer.c
630 src/core/lib/surface/byte_buffer_reader.c
631 src/core/lib/surface/call.c
632 src/core/lib/surface/call_details.c
633 src/core/lib/surface/call_log_batch.c
634 src/core/lib/surface/channel.c
635 src/core/lib/surface/channel_init.c
636 src/core/lib/surface/channel_ping.c
637 src/core/lib/surface/channel_stack_type.c
638 src/core/lib/surface/completion_queue.c
639 src/core/lib/surface/event_string.c
640 src/core/lib/surface/lame_client.c
641 src/core/lib/surface/metadata_array.c
642 src/core/lib/surface/server.c
643 src/core/lib/surface/validate_metadata.c
644 src/core/lib/surface/version.c
645 src/core/lib/transport/byte_stream.c
646 src/core/lib/transport/connectivity_state.c
Mark D. Roth6a721b52016-10-14 12:43:34 -0700647 src/core/lib/transport/mdstr_hash_table.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100648 src/core/lib/transport/metadata.c
649 src/core/lib/transport/metadata_batch.c
650 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400651 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100652 src/core/lib/transport/transport.c
653 src/core/lib/transport/transport_op_string.c
654 src/core/ext/transport/cronet/client/secure/cronet_channel_create.c
655 src/core/ext/transport/cronet/transport/cronet_api_dummy.c
656 src/core/ext/transport/cronet/transport/cronet_transport.c
657 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
658 src/core/ext/transport/chttp2/transport/bin_decoder.c
659 src/core/ext/transport/chttp2/transport/bin_encoder.c
660 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
661 src/core/ext/transport/chttp2/transport/chttp2_transport.c
662 src/core/ext/transport/chttp2/transport/frame_data.c
663 src/core/ext/transport/chttp2/transport/frame_goaway.c
664 src/core/ext/transport/chttp2/transport/frame_ping.c
665 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
666 src/core/ext/transport/chttp2/transport/frame_settings.c
667 src/core/ext/transport/chttp2/transport/frame_window_update.c
668 src/core/ext/transport/chttp2/transport/hpack_encoder.c
669 src/core/ext/transport/chttp2/transport/hpack_parser.c
670 src/core/ext/transport/chttp2/transport/hpack_table.c
671 src/core/ext/transport/chttp2/transport/huffsyms.c
672 src/core/ext/transport/chttp2/transport/incoming_metadata.c
673 src/core/ext/transport/chttp2/transport/parsing.c
674 src/core/ext/transport/chttp2/transport/status_conversion.c
675 src/core/ext/transport/chttp2/transport/stream_lists.c
676 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100677 src/core/ext/transport/chttp2/transport/varint.c
678 src/core/ext/transport/chttp2/transport/writing.c
679 src/core/ext/transport/chttp2/alpn/alpn.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700680 src/core/ext/client_channel/channel_connectivity.c
681 src/core/ext/client_channel/client_channel.c
682 src/core/ext/client_channel/client_channel_factory.c
683 src/core/ext/client_channel/client_channel_plugin.c
684 src/core/ext/client_channel/connector.c
685 src/core/ext/client_channel/default_initial_connect_string.c
Mark D. Roth15195742016-10-07 09:02:28 -0700686 src/core/ext/client_channel/http_connect_handshaker.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700687 src/core/ext/client_channel/initial_connect_string.c
688 src/core/ext/client_channel/lb_policy.c
689 src/core/ext/client_channel/lb_policy_factory.c
690 src/core/ext/client_channel/lb_policy_registry.c
Mark D. Rotheb35a1d2016-10-19 14:53:42 -0700691 src/core/ext/client_channel/method_config.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700692 src/core/ext/client_channel/parse_address.c
693 src/core/ext/client_channel/resolver.c
694 src/core/ext/client_channel/resolver_factory.c
695 src/core/ext/client_channel/resolver_registry.c
696 src/core/ext/client_channel/resolver_result.c
697 src/core/ext/client_channel/subchannel.c
698 src/core/ext/client_channel/subchannel_index.c
699 src/core/ext/client_channel/uri_parser.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100700 src/core/lib/http/httpcli_security_connector.c
701 src/core/lib/security/context/security_context.c
702 src/core/lib/security/credentials/composite/composite_credentials.c
703 src/core/lib/security/credentials/credentials.c
704 src/core/lib/security/credentials/credentials_metadata.c
705 src/core/lib/security/credentials/fake/fake_credentials.c
706 src/core/lib/security/credentials/google_default/credentials_posix.c
707 src/core/lib/security/credentials/google_default/credentials_windows.c
708 src/core/lib/security/credentials/google_default/google_default_credentials.c
709 src/core/lib/security/credentials/iam/iam_credentials.c
710 src/core/lib/security/credentials/jwt/json_token.c
711 src/core/lib/security/credentials/jwt/jwt_credentials.c
712 src/core/lib/security/credentials/jwt/jwt_verifier.c
713 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
714 src/core/lib/security/credentials/plugin/plugin_credentials.c
715 src/core/lib/security/credentials/ssl/ssl_credentials.c
716 src/core/lib/security/transport/client_auth_filter.c
717 src/core/lib/security/transport/handshake.c
718 src/core/lib/security/transport/secure_endpoint.c
719 src/core/lib/security/transport/security_connector.c
720 src/core/lib/security/transport/server_auth_filter.c
721 src/core/lib/security/transport/tsi_error.c
722 src/core/lib/security/util/b64.c
723 src/core/lib/security/util/json_util.c
724 src/core/lib/surface/init_secure.c
725 src/core/lib/tsi/fake_transport_security.c
726 src/core/lib/tsi/ssl_transport_security.c
727 src/core/lib/tsi/transport_security.c
728 src/core/plugin_registry/grpc_cronet_plugin_registry.c
729)
730
731target_include_directories(grpc_cronet
732 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
733 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
734 PRIVATE ${BORINGSSL_ROOT_DIR}/include
735 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300736 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100737 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
738)
739
740target_link_libraries(grpc_cronet
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300741 ${_gRPC_BASELIB_LIBRARIES}
742 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100743 gpr
744)
745
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300746foreach(_hdr
747 include/grpc/byte_buffer.h
748 include/grpc/byte_buffer_reader.h
749 include/grpc/compression.h
750 include/grpc/grpc.h
751 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200752 include/grpc/grpc_security_constants.h
Craig Tillerc3350542016-10-26 16:19:01 -0700753 include/grpc/slice.h
754 include/grpc/slice_buffer.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300755 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300756 include/grpc/impl/codegen/byte_buffer_reader.h
757 include/grpc/impl/codegen/compression_types.h
758 include/grpc/impl/codegen/connectivity_state.h
759 include/grpc/impl/codegen/grpc_types.h
760 include/grpc/impl/codegen/propagation_bits.h
761 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300762 include/grpc/impl/codegen/atm.h
763 include/grpc/impl/codegen/atm_gcc_atomic.h
764 include/grpc/impl/codegen/atm_gcc_sync.h
765 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700766 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300767 include/grpc/impl/codegen/port_platform.h
768 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300769 include/grpc/impl/codegen/sync.h
770 include/grpc/impl/codegen/sync_generic.h
771 include/grpc/impl/codegen/sync_posix.h
772 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300773 include/grpc/grpc_cronet.h
774 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300775)
776 string(REPLACE "include/" "" _path ${_hdr})
777 get_filename_component(_path ${_path} PATH)
778 install(FILES ${_hdr}
779 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
780 )
781endforeach()
782
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200783
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300784if (gRPC_INSTALL)
785 install(TARGETS grpc_cronet EXPORT gRPCTargets
786 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
787 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
788 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
789 )
790endif()
791
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200792
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100793add_library(grpc_unsecure
794 src/core/lib/surface/init.c
795 src/core/lib/surface/init_unsecure.c
796 src/core/lib/channel/channel_args.c
797 src/core/lib/channel/channel_stack.c
798 src/core/lib/channel/channel_stack_builder.c
799 src/core/lib/channel/compress_filter.c
800 src/core/lib/channel/connected_channel.c
Mark D. Roth14c072c2016-08-26 08:31:34 -0700801 src/core/lib/channel/deadline_filter.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700802 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100803 src/core/lib/channel/http_client_filter.c
804 src/core/lib/channel/http_server_filter.c
Mark D. Rothaf00d8b2016-08-23 12:48:16 -0700805 src/core/lib/channel/message_size_filter.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100806 src/core/lib/compression/compression.c
807 src/core/lib/compression/message_compress.c
808 src/core/lib/debug/trace.c
809 src/core/lib/http/format_request.c
810 src/core/lib/http/httpcli.c
811 src/core/lib/http/parser.c
812 src/core/lib/iomgr/closure.c
Craig Tiller57726ca2016-09-12 11:59:45 -0700813 src/core/lib/iomgr/combiner.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100814 src/core/lib/iomgr/endpoint.c
815 src/core/lib/iomgr/endpoint_pair_posix.c
816 src/core/lib/iomgr/endpoint_pair_windows.c
817 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200818 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100819 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
820 src/core/lib/iomgr/ev_poll_posix.c
821 src/core/lib/iomgr/ev_posix.c
822 src/core/lib/iomgr/exec_ctx.c
823 src/core/lib/iomgr/executor.c
824 src/core/lib/iomgr/iocp_windows.c
825 src/core/lib/iomgr/iomgr.c
826 src/core/lib/iomgr/iomgr_posix.c
827 src/core/lib/iomgr/iomgr_windows.c
828 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200829 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100830 src/core/lib/iomgr/polling_entity.c
831 src/core/lib/iomgr/pollset_set_windows.c
832 src/core/lib/iomgr/pollset_windows.c
833 src/core/lib/iomgr/resolve_address_posix.c
834 src/core/lib/iomgr/resolve_address_windows.c
Craig Tiller20afa3d2016-10-17 14:52:14 -0700835 src/core/lib/iomgr/resource_quota.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100836 src/core/lib/iomgr/sockaddr_utils.c
837 src/core/lib/iomgr/socket_utils_common_posix.c
838 src/core/lib/iomgr/socket_utils_linux.c
839 src/core/lib/iomgr/socket_utils_posix.c
840 src/core/lib/iomgr/socket_windows.c
841 src/core/lib/iomgr/tcp_client_posix.c
842 src/core/lib/iomgr/tcp_client_windows.c
843 src/core/lib/iomgr/tcp_posix.c
844 src/core/lib/iomgr/tcp_server_posix.c
845 src/core/lib/iomgr/tcp_server_windows.c
846 src/core/lib/iomgr/tcp_windows.c
847 src/core/lib/iomgr/time_averaged_stats.c
848 src/core/lib/iomgr/timer.c
849 src/core/lib/iomgr/timer_heap.c
850 src/core/lib/iomgr/udp_server.c
851 src/core/lib/iomgr/unix_sockets_posix.c
852 src/core/lib/iomgr/unix_sockets_posix_noop.c
kpayson64d195cf52016-10-09 18:04:00 -0700853 src/core/lib/iomgr/wakeup_fd_cv.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100854 src/core/lib/iomgr/wakeup_fd_eventfd.c
855 src/core/lib/iomgr/wakeup_fd_nospecial.c
856 src/core/lib/iomgr/wakeup_fd_pipe.c
857 src/core/lib/iomgr/wakeup_fd_posix.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100858 src/core/lib/iomgr/workqueue_windows.c
859 src/core/lib/json/json.c
860 src/core/lib/json/json_reader.c
861 src/core/lib/json/json_string.c
862 src/core/lib/json/json_writer.c
Craig Tillerc3350542016-10-26 16:19:01 -0700863 src/core/lib/slice/percent_encoding.c
864 src/core/lib/slice/slice.c
865 src/core/lib/slice/slice_buffer.c
866 src/core/lib/slice/slice_string_helpers.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100867 src/core/lib/surface/alarm.c
868 src/core/lib/surface/api_trace.c
869 src/core/lib/surface/byte_buffer.c
870 src/core/lib/surface/byte_buffer_reader.c
871 src/core/lib/surface/call.c
872 src/core/lib/surface/call_details.c
873 src/core/lib/surface/call_log_batch.c
874 src/core/lib/surface/channel.c
875 src/core/lib/surface/channel_init.c
876 src/core/lib/surface/channel_ping.c
877 src/core/lib/surface/channel_stack_type.c
878 src/core/lib/surface/completion_queue.c
879 src/core/lib/surface/event_string.c
880 src/core/lib/surface/lame_client.c
881 src/core/lib/surface/metadata_array.c
882 src/core/lib/surface/server.c
883 src/core/lib/surface/validate_metadata.c
884 src/core/lib/surface/version.c
885 src/core/lib/transport/byte_stream.c
886 src/core/lib/transport/connectivity_state.c
Mark D. Roth6a721b52016-10-14 12:43:34 -0700887 src/core/lib/transport/mdstr_hash_table.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100888 src/core/lib/transport/metadata.c
889 src/core/lib/transport/metadata_batch.c
890 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400891 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100892 src/core/lib/transport/transport.c
893 src/core/lib/transport/transport_op_string.c
894 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
895 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
896 src/core/ext/transport/chttp2/transport/bin_decoder.c
897 src/core/ext/transport/chttp2/transport/bin_encoder.c
898 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
899 src/core/ext/transport/chttp2/transport/chttp2_transport.c
900 src/core/ext/transport/chttp2/transport/frame_data.c
901 src/core/ext/transport/chttp2/transport/frame_goaway.c
902 src/core/ext/transport/chttp2/transport/frame_ping.c
903 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
904 src/core/ext/transport/chttp2/transport/frame_settings.c
905 src/core/ext/transport/chttp2/transport/frame_window_update.c
906 src/core/ext/transport/chttp2/transport/hpack_encoder.c
907 src/core/ext/transport/chttp2/transport/hpack_parser.c
908 src/core/ext/transport/chttp2/transport/hpack_table.c
909 src/core/ext/transport/chttp2/transport/huffsyms.c
910 src/core/ext/transport/chttp2/transport/incoming_metadata.c
911 src/core/ext/transport/chttp2/transport/parsing.c
912 src/core/ext/transport/chttp2/transport/status_conversion.c
913 src/core/ext/transport/chttp2/transport/stream_lists.c
914 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100915 src/core/ext/transport/chttp2/transport/varint.c
916 src/core/ext/transport/chttp2/transport/writing.c
917 src/core/ext/transport/chttp2/alpn/alpn.c
918 src/core/ext/transport/chttp2/client/insecure/channel_create.c
919 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700920 src/core/ext/client_channel/channel_connectivity.c
921 src/core/ext/client_channel/client_channel.c
922 src/core/ext/client_channel/client_channel_factory.c
923 src/core/ext/client_channel/client_channel_plugin.c
924 src/core/ext/client_channel/connector.c
925 src/core/ext/client_channel/default_initial_connect_string.c
Mark D. Roth15195742016-10-07 09:02:28 -0700926 src/core/ext/client_channel/http_connect_handshaker.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700927 src/core/ext/client_channel/initial_connect_string.c
928 src/core/ext/client_channel/lb_policy.c
929 src/core/ext/client_channel/lb_policy_factory.c
930 src/core/ext/client_channel/lb_policy_registry.c
Mark D. Rotheb35a1d2016-10-19 14:53:42 -0700931 src/core/ext/client_channel/method_config.c
Mark D. Roth2137cd82016-09-14 09:04:00 -0700932 src/core/ext/client_channel/parse_address.c
933 src/core/ext/client_channel/resolver.c
934 src/core/ext/client_channel/resolver_factory.c
935 src/core/ext/client_channel/resolver_registry.c
936 src/core/ext/client_channel/resolver_result.c
937 src/core/ext/client_channel/subchannel.c
938 src/core/ext/client_channel/subchannel_index.c
939 src/core/ext/client_channel/uri_parser.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100940 src/core/ext/resolver/dns/native/dns_resolver.c
941 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
942 src/core/ext/load_reporting/load_reporting.c
943 src/core/ext/load_reporting/load_reporting_filter.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700944 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100945 src/core/ext/lb_policy/grpclb/load_balancer_api.c
946 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
947 third_party/nanopb/pb_common.c
948 third_party/nanopb/pb_decode.c
949 third_party/nanopb/pb_encode.c
950 src/core/ext/lb_policy/pick_first/pick_first.c
951 src/core/ext/lb_policy/round_robin/round_robin.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700952 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100953 src/core/ext/census/context.c
954 src/core/ext/census/gen/census.pb.c
Alistair Veitcha0c69f92016-08-31 12:01:27 -0700955 src/core/ext/census/gen/trace_context.pb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100956 src/core/ext/census/grpc_context.c
957 src/core/ext/census/grpc_filter.c
958 src/core/ext/census/grpc_plugin.c
959 src/core/ext/census/initialize.c
960 src/core/ext/census/mlog.c
961 src/core/ext/census/operation.c
962 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700963 src/core/ext/census/resource.c
Vizerai12d1fc62016-09-09 14:22:19 -0700964 src/core/ext/census/trace_context.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100965 src/core/ext/census/tracing.c
966 src/core/plugin_registry/grpc_unsecure_plugin_registry.c
967)
968
969target_include_directories(grpc_unsecure
970 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
971 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
972 PRIVATE ${BORINGSSL_ROOT_DIR}/include
973 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300974 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100975 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
976)
977
978target_link_libraries(grpc_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300979 ${_gRPC_BASELIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100980 gpr
981)
982
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300983foreach(_hdr
984 include/grpc/byte_buffer.h
985 include/grpc/byte_buffer_reader.h
986 include/grpc/compression.h
987 include/grpc/grpc.h
988 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200989 include/grpc/grpc_security_constants.h
Craig Tillerc3350542016-10-26 16:19:01 -0700990 include/grpc/slice.h
991 include/grpc/slice_buffer.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300992 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300993 include/grpc/impl/codegen/byte_buffer_reader.h
994 include/grpc/impl/codegen/compression_types.h
995 include/grpc/impl/codegen/connectivity_state.h
996 include/grpc/impl/codegen/grpc_types.h
997 include/grpc/impl/codegen/propagation_bits.h
998 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300999 include/grpc/impl/codegen/atm.h
1000 include/grpc/impl/codegen/atm_gcc_atomic.h
1001 include/grpc/impl/codegen/atm_gcc_sync.h
1002 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001003 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001004 include/grpc/impl/codegen/port_platform.h
1005 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001006 include/grpc/impl/codegen/sync.h
1007 include/grpc/impl/codegen/sync_generic.h
1008 include/grpc/impl/codegen/sync_posix.h
1009 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001010 include/grpc/census.h
1011)
1012 string(REPLACE "include/" "" _path ${_hdr})
1013 get_filename_component(_path ${_path} PATH)
1014 install(FILES ${_hdr}
1015 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1016 )
1017endforeach()
1018
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001019
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001020if (gRPC_INSTALL)
1021 install(TARGETS grpc_unsecure EXPORT gRPCTargets
1022 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1023 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1024 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1025 )
1026endif()
1027
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001028
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001029add_library(grpc++
murgatroid991ca0f3e2016-08-26 14:58:49 -07001030 src/cpp/client/insecure_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001031 src/cpp/client/secure_credentials.cc
1032 src/cpp/common/auth_property_iterator.cc
1033 src/cpp/common/secure_auth_context.cc
1034 src/cpp/common/secure_channel_arguments.cc
1035 src/cpp/common/secure_create_auth_context.cc
murgatroid991ca0f3e2016-08-26 14:58:49 -07001036 src/cpp/server/insecure_server_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001037 src/cpp/server/secure_server_credentials.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001038 src/cpp/client/channel_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001039 src/cpp/client/client_context.cc
1040 src/cpp/client/create_channel.cc
1041 src/cpp/client/create_channel_internal.cc
1042 src/cpp/client/create_channel_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001043 src/cpp/client/credentials_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001044 src/cpp/client/generic_stub.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001045 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001046 src/cpp/common/channel_filter.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001047 src/cpp/common/completion_queue_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001048 src/cpp/common/core_codegen.cc
Craig Tiller20afa3d2016-10-17 14:52:14 -07001049 src/cpp/common/resource_quota_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001050 src/cpp/common/rpc_method.cc
1051 src/cpp/server/async_generic_service.cc
1052 src/cpp/server/create_default_thread_pool.cc
1053 src/cpp/server/dynamic_thread_pool.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001054 src/cpp/server/server_builder.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001055 src/cpp/server/server_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001056 src/cpp/server/server_context.cc
1057 src/cpp/server/server_credentials.cc
1058 src/cpp/server/server_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001059 src/cpp/util/byte_buffer_cc.cc
1060 src/cpp/util/slice_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001061 src/cpp/util/status.cc
1062 src/cpp/util/string_ref.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001063 src/cpp/util/time_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001064 src/cpp/codegen/codegen_init.cc
1065)
1066
1067target_include_directories(grpc++
1068 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1069 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1070 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1071 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001072 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001073 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1074)
1075
1076target_link_libraries(grpc++
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001077 ${_gRPC_BASELIB_LIBRARIES}
1078 ${_gRPC_SSL_LIBRARIES}
1079 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001080 grpc
1081)
1082
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001083foreach(_hdr
1084 include/grpc++/alarm.h
1085 include/grpc++/channel.h
1086 include/grpc++/client_context.h
1087 include/grpc++/completion_queue.h
1088 include/grpc++/create_channel.h
1089 include/grpc++/create_channel_posix.h
1090 include/grpc++/generic/async_generic_service.h
1091 include/grpc++/generic/generic_stub.h
1092 include/grpc++/grpc++.h
1093 include/grpc++/impl/call.h
1094 include/grpc++/impl/client_unary_call.h
1095 include/grpc++/impl/codegen/core_codegen.h
1096 include/grpc++/impl/grpc_library.h
1097 include/grpc++/impl/method_handler_impl.h
1098 include/grpc++/impl/rpc_method.h
1099 include/grpc++/impl/rpc_service_method.h
1100 include/grpc++/impl/serialization_traits.h
1101 include/grpc++/impl/server_builder_option.h
1102 include/grpc++/impl/server_builder_plugin.h
1103 include/grpc++/impl/server_initializer.h
1104 include/grpc++/impl/service_type.h
1105 include/grpc++/impl/sync.h
1106 include/grpc++/impl/sync_cxx11.h
1107 include/grpc++/impl/sync_no_cxx11.h
1108 include/grpc++/impl/thd.h
1109 include/grpc++/impl/thd_cxx11.h
1110 include/grpc++/impl/thd_no_cxx11.h
Craig Tiller20afa3d2016-10-17 14:52:14 -07001111 include/grpc++/resource_quota.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001112 include/grpc++/security/auth_context.h
1113 include/grpc++/security/auth_metadata_processor.h
1114 include/grpc++/security/credentials.h
1115 include/grpc++/security/server_credentials.h
1116 include/grpc++/server.h
1117 include/grpc++/server_builder.h
1118 include/grpc++/server_context.h
1119 include/grpc++/server_posix.h
1120 include/grpc++/support/async_stream.h
1121 include/grpc++/support/async_unary_call.h
1122 include/grpc++/support/byte_buffer.h
1123 include/grpc++/support/channel_arguments.h
1124 include/grpc++/support/config.h
1125 include/grpc++/support/slice.h
1126 include/grpc++/support/status.h
1127 include/grpc++/support/status_code_enum.h
1128 include/grpc++/support/string_ref.h
1129 include/grpc++/support/stub_options.h
1130 include/grpc++/support/sync_stream.h
1131 include/grpc++/support/time.h
1132 include/grpc++/impl/codegen/async_stream.h
1133 include/grpc++/impl/codegen/async_unary_call.h
1134 include/grpc++/impl/codegen/call.h
1135 include/grpc++/impl/codegen/call_hook.h
1136 include/grpc++/impl/codegen/channel_interface.h
1137 include/grpc++/impl/codegen/client_context.h
1138 include/grpc++/impl/codegen/client_unary_call.h
1139 include/grpc++/impl/codegen/completion_queue.h
1140 include/grpc++/impl/codegen/completion_queue_tag.h
1141 include/grpc++/impl/codegen/config.h
1142 include/grpc++/impl/codegen/core_codegen_interface.h
1143 include/grpc++/impl/codegen/create_auth_context.h
1144 include/grpc++/impl/codegen/grpc_library.h
1145 include/grpc++/impl/codegen/method_handler_impl.h
1146 include/grpc++/impl/codegen/rpc_method.h
1147 include/grpc++/impl/codegen/rpc_service_method.h
1148 include/grpc++/impl/codegen/security/auth_context.h
1149 include/grpc++/impl/codegen/serialization_traits.h
1150 include/grpc++/impl/codegen/server_context.h
1151 include/grpc++/impl/codegen/server_interface.h
1152 include/grpc++/impl/codegen/service_type.h
1153 include/grpc++/impl/codegen/status.h
1154 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001155 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001156 include/grpc++/impl/codegen/string_ref.h
1157 include/grpc++/impl/codegen/stub_options.h
1158 include/grpc++/impl/codegen/sync.h
1159 include/grpc++/impl/codegen/sync_cxx11.h
1160 include/grpc++/impl/codegen/sync_no_cxx11.h
1161 include/grpc++/impl/codegen/sync_stream.h
1162 include/grpc++/impl/codegen/time.h
Nicolas "Pixel" Noble87a10812016-09-29 01:31:54 +02001163 include/grpc/impl/codegen/byte_buffer_reader.h
1164 include/grpc/impl/codegen/compression_types.h
1165 include/grpc/impl/codegen/connectivity_state.h
1166 include/grpc/impl/codegen/grpc_types.h
1167 include/grpc/impl/codegen/propagation_bits.h
1168 include/grpc/impl/codegen/status.h
1169 include/grpc/impl/codegen/atm.h
1170 include/grpc/impl/codegen/atm_gcc_atomic.h
1171 include/grpc/impl/codegen/atm_gcc_sync.h
1172 include/grpc/impl/codegen/atm_windows.h
1173 include/grpc/impl/codegen/gpr_types.h
1174 include/grpc/impl/codegen/port_platform.h
1175 include/grpc/impl/codegen/slice.h
1176 include/grpc/impl/codegen/sync.h
1177 include/grpc/impl/codegen/sync_generic.h
1178 include/grpc/impl/codegen/sync_posix.h
1179 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001180)
1181 string(REPLACE "include/" "" _path ${_hdr})
1182 get_filename_component(_path ${_path} PATH)
1183 install(FILES ${_hdr}
1184 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1185 )
1186endforeach()
1187
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001188
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001189if (gRPC_INSTALL)
1190 install(TARGETS grpc++ EXPORT gRPCTargets
1191 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1192 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1193 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1194 )
1195endif()
1196
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001197
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001198add_library(grpc++_reflection
1199 src/cpp/ext/proto_server_reflection.cc
1200 src/cpp/ext/proto_server_reflection_plugin.cc
1201 src/cpp/ext/reflection.grpc.pb.cc
1202 src/cpp/ext/reflection.pb.cc
1203)
1204
1205target_include_directories(grpc++_reflection
1206 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1207 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1208 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1209 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001210 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001211 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1212)
1213
1214target_link_libraries(grpc++_reflection
1215 grpc++
1216)
1217
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001218foreach(_hdr
1219 include/grpc++/ext/proto_server_reflection_plugin.h
1220 include/grpc++/ext/reflection.grpc.pb.h
1221 include/grpc++/ext/reflection.pb.h
1222 include/grpc++/impl/codegen/proto_utils.h
1223 include/grpc++/impl/codegen/async_stream.h
1224 include/grpc++/impl/codegen/async_unary_call.h
1225 include/grpc++/impl/codegen/call.h
1226 include/grpc++/impl/codegen/call_hook.h
1227 include/grpc++/impl/codegen/channel_interface.h
1228 include/grpc++/impl/codegen/client_context.h
1229 include/grpc++/impl/codegen/client_unary_call.h
1230 include/grpc++/impl/codegen/completion_queue.h
1231 include/grpc++/impl/codegen/completion_queue_tag.h
1232 include/grpc++/impl/codegen/config.h
1233 include/grpc++/impl/codegen/core_codegen_interface.h
1234 include/grpc++/impl/codegen/create_auth_context.h
1235 include/grpc++/impl/codegen/grpc_library.h
1236 include/grpc++/impl/codegen/method_handler_impl.h
1237 include/grpc++/impl/codegen/rpc_method.h
1238 include/grpc++/impl/codegen/rpc_service_method.h
1239 include/grpc++/impl/codegen/security/auth_context.h
1240 include/grpc++/impl/codegen/serialization_traits.h
1241 include/grpc++/impl/codegen/server_context.h
1242 include/grpc++/impl/codegen/server_interface.h
1243 include/grpc++/impl/codegen/service_type.h
1244 include/grpc++/impl/codegen/status.h
1245 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001246 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001247 include/grpc++/impl/codegen/string_ref.h
1248 include/grpc++/impl/codegen/stub_options.h
1249 include/grpc++/impl/codegen/sync.h
1250 include/grpc++/impl/codegen/sync_cxx11.h
1251 include/grpc++/impl/codegen/sync_no_cxx11.h
1252 include/grpc++/impl/codegen/sync_stream.h
1253 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001254 include/grpc/impl/codegen/byte_buffer_reader.h
1255 include/grpc/impl/codegen/compression_types.h
1256 include/grpc/impl/codegen/connectivity_state.h
1257 include/grpc/impl/codegen/grpc_types.h
1258 include/grpc/impl/codegen/propagation_bits.h
1259 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001260 include/grpc/impl/codegen/atm.h
1261 include/grpc/impl/codegen/atm_gcc_atomic.h
1262 include/grpc/impl/codegen/atm_gcc_sync.h
1263 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001264 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001265 include/grpc/impl/codegen/port_platform.h
1266 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001267 include/grpc/impl/codegen/sync.h
1268 include/grpc/impl/codegen/sync_generic.h
1269 include/grpc/impl/codegen/sync_posix.h
1270 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001271 include/grpc++/impl/codegen/config_protobuf.h
1272)
1273 string(REPLACE "include/" "" _path ${_hdr})
1274 get_filename_component(_path ${_path} PATH)
1275 install(FILES ${_hdr}
1276 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1277 )
1278endforeach()
1279
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001280
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001281if (gRPC_INSTALL)
1282 install(TARGETS grpc++_reflection EXPORT gRPCTargets
1283 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1284 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1285 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1286 )
1287endif()
1288
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001289
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001290add_library(grpc++_unsecure
murgatroid991ca0f3e2016-08-26 14:58:49 -07001291 src/cpp/client/insecure_credentials.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001292 src/cpp/common/insecure_create_auth_context.cc
murgatroid991ca0f3e2016-08-26 14:58:49 -07001293 src/cpp/server/insecure_server_credentials.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001294 src/cpp/client/channel_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001295 src/cpp/client/client_context.cc
1296 src/cpp/client/create_channel.cc
1297 src/cpp/client/create_channel_internal.cc
1298 src/cpp/client/create_channel_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001299 src/cpp/client/credentials_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001300 src/cpp/client/generic_stub.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001301 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001302 src/cpp/common/channel_filter.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001303 src/cpp/common/completion_queue_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001304 src/cpp/common/core_codegen.cc
Craig Tiller20afa3d2016-10-17 14:52:14 -07001305 src/cpp/common/resource_quota_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001306 src/cpp/common/rpc_method.cc
1307 src/cpp/server/async_generic_service.cc
1308 src/cpp/server/create_default_thread_pool.cc
1309 src/cpp/server/dynamic_thread_pool.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001310 src/cpp/server/server_builder.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001311 src/cpp/server/server_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001312 src/cpp/server/server_context.cc
1313 src/cpp/server/server_credentials.cc
1314 src/cpp/server/server_posix.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001315 src/cpp/util/byte_buffer_cc.cc
1316 src/cpp/util/slice_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001317 src/cpp/util/status.cc
1318 src/cpp/util/string_ref.cc
Craig Tiller102fa962016-08-22 13:56:36 -07001319 src/cpp/util/time_cc.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001320 src/cpp/codegen/codegen_init.cc
1321)
1322
1323target_include_directories(grpc++_unsecure
1324 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1325 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1326 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1327 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001328 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001329 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1330)
1331
1332target_link_libraries(grpc++_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001333 ${_gRPC_BASELIB_LIBRARIES}
1334 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001335 gpr
1336 grpc_unsecure
1337)
1338
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001339foreach(_hdr
1340 include/grpc++/alarm.h
1341 include/grpc++/channel.h
1342 include/grpc++/client_context.h
1343 include/grpc++/completion_queue.h
1344 include/grpc++/create_channel.h
1345 include/grpc++/create_channel_posix.h
1346 include/grpc++/generic/async_generic_service.h
1347 include/grpc++/generic/generic_stub.h
1348 include/grpc++/grpc++.h
1349 include/grpc++/impl/call.h
1350 include/grpc++/impl/client_unary_call.h
1351 include/grpc++/impl/codegen/core_codegen.h
1352 include/grpc++/impl/grpc_library.h
1353 include/grpc++/impl/method_handler_impl.h
1354 include/grpc++/impl/rpc_method.h
1355 include/grpc++/impl/rpc_service_method.h
1356 include/grpc++/impl/serialization_traits.h
1357 include/grpc++/impl/server_builder_option.h
1358 include/grpc++/impl/server_builder_plugin.h
1359 include/grpc++/impl/server_initializer.h
1360 include/grpc++/impl/service_type.h
1361 include/grpc++/impl/sync.h
1362 include/grpc++/impl/sync_cxx11.h
1363 include/grpc++/impl/sync_no_cxx11.h
1364 include/grpc++/impl/thd.h
1365 include/grpc++/impl/thd_cxx11.h
1366 include/grpc++/impl/thd_no_cxx11.h
Craig Tiller20afa3d2016-10-17 14:52:14 -07001367 include/grpc++/resource_quota.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001368 include/grpc++/security/auth_context.h
1369 include/grpc++/security/auth_metadata_processor.h
1370 include/grpc++/security/credentials.h
1371 include/grpc++/security/server_credentials.h
1372 include/grpc++/server.h
1373 include/grpc++/server_builder.h
1374 include/grpc++/server_context.h
1375 include/grpc++/server_posix.h
1376 include/grpc++/support/async_stream.h
1377 include/grpc++/support/async_unary_call.h
1378 include/grpc++/support/byte_buffer.h
1379 include/grpc++/support/channel_arguments.h
1380 include/grpc++/support/config.h
1381 include/grpc++/support/slice.h
1382 include/grpc++/support/status.h
1383 include/grpc++/support/status_code_enum.h
1384 include/grpc++/support/string_ref.h
1385 include/grpc++/support/stub_options.h
1386 include/grpc++/support/sync_stream.h
1387 include/grpc++/support/time.h
1388 include/grpc++/impl/codegen/async_stream.h
1389 include/grpc++/impl/codegen/async_unary_call.h
1390 include/grpc++/impl/codegen/call.h
1391 include/grpc++/impl/codegen/call_hook.h
1392 include/grpc++/impl/codegen/channel_interface.h
1393 include/grpc++/impl/codegen/client_context.h
1394 include/grpc++/impl/codegen/client_unary_call.h
1395 include/grpc++/impl/codegen/completion_queue.h
1396 include/grpc++/impl/codegen/completion_queue_tag.h
1397 include/grpc++/impl/codegen/config.h
1398 include/grpc++/impl/codegen/core_codegen_interface.h
1399 include/grpc++/impl/codegen/create_auth_context.h
1400 include/grpc++/impl/codegen/grpc_library.h
1401 include/grpc++/impl/codegen/method_handler_impl.h
1402 include/grpc++/impl/codegen/rpc_method.h
1403 include/grpc++/impl/codegen/rpc_service_method.h
1404 include/grpc++/impl/codegen/security/auth_context.h
1405 include/grpc++/impl/codegen/serialization_traits.h
1406 include/grpc++/impl/codegen/server_context.h
1407 include/grpc++/impl/codegen/server_interface.h
1408 include/grpc++/impl/codegen/service_type.h
1409 include/grpc++/impl/codegen/status.h
1410 include/grpc++/impl/codegen/status_code_enum.h
yang-gd5581492016-09-06 14:05:53 -07001411 include/grpc++/impl/codegen/status_helper.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001412 include/grpc++/impl/codegen/string_ref.h
1413 include/grpc++/impl/codegen/stub_options.h
1414 include/grpc++/impl/codegen/sync.h
1415 include/grpc++/impl/codegen/sync_cxx11.h
1416 include/grpc++/impl/codegen/sync_no_cxx11.h
1417 include/grpc++/impl/codegen/sync_stream.h
1418 include/grpc++/impl/codegen/time.h
Nicolas "Pixel" Noble87a10812016-09-29 01:31:54 +02001419 include/grpc/impl/codegen/byte_buffer_reader.h
1420 include/grpc/impl/codegen/compression_types.h
1421 include/grpc/impl/codegen/connectivity_state.h
1422 include/grpc/impl/codegen/grpc_types.h
1423 include/grpc/impl/codegen/propagation_bits.h
1424 include/grpc/impl/codegen/status.h
1425 include/grpc/impl/codegen/atm.h
1426 include/grpc/impl/codegen/atm_gcc_atomic.h
1427 include/grpc/impl/codegen/atm_gcc_sync.h
1428 include/grpc/impl/codegen/atm_windows.h
1429 include/grpc/impl/codegen/gpr_types.h
1430 include/grpc/impl/codegen/port_platform.h
1431 include/grpc/impl/codegen/slice.h
1432 include/grpc/impl/codegen/sync.h
1433 include/grpc/impl/codegen/sync_generic.h
1434 include/grpc/impl/codegen/sync_posix.h
1435 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001436)
1437 string(REPLACE "include/" "" _path ${_hdr})
1438 get_filename_component(_path ${_path} PATH)
1439 install(FILES ${_hdr}
1440 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1441 )
1442endforeach()
1443
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001444
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001445if (gRPC_INSTALL)
1446 install(TARGETS grpc++_unsecure EXPORT gRPCTargets
1447 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1448 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1449 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1450 )
1451endif()
1452
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001453
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001454add_library(grpc_plugin_support
1455 src/compiler/cpp_generator.cc
1456 src/compiler/csharp_generator.cc
1457 src/compiler/node_generator.cc
1458 src/compiler/objective_c_generator.cc
Stanley Cheung857a1302016-09-29 17:26:29 -07001459 src/compiler/php_generator.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001460 src/compiler/python_generator.cc
1461 src/compiler/ruby_generator.cc
1462)
1463
1464target_include_directories(grpc_plugin_support
1465 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1466 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1467 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1468 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001469 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001470 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1471)
1472
1473target_link_libraries(grpc_plugin_support
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001474 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001475)
1476
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001477foreach(_hdr
1478 include/grpc++/impl/codegen/config_protobuf.h
1479)
1480 string(REPLACE "include/" "" _path ${_hdr})
1481 get_filename_component(_path ${_path} PATH)
1482 install(FILES ${_hdr}
1483 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1484 )
1485endforeach()
1486
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001487
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001488if (gRPC_INSTALL)
1489 install(TARGETS grpc_plugin_support EXPORT gRPCTargets
1490 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1491 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1492 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1493 )
1494endif()
1495
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001496
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001497add_library(grpc_csharp_ext
1498 src/csharp/ext/grpc_csharp_ext.c
1499)
1500
1501target_include_directories(grpc_csharp_ext
1502 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1503 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1504 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1505 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001506 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001507 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1508)
1509
1510target_link_libraries(grpc_csharp_ext
1511 grpc
1512 gpr
1513)
1514
1515
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001516
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001517if (gRPC_INSTALL)
1518 install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
1519 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1520 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1521 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1522 )
1523endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001524
1525
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001526
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001527add_executable(gen_hpack_tables
1528 tools/codegen/core/gen_hpack_tables.c
1529)
1530
1531target_include_directories(gen_hpack_tables
1532 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1533 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1534 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1535 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1536 PRIVATE ${ZLIB_ROOT_DIR}
1537 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1538)
1539
1540target_link_libraries(gen_hpack_tables
1541 gpr
1542 grpc
1543)
1544
1545
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001546if (gRPC_INSTALL)
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001547 install(TARGETS gen_hpack_tables EXPORT gRPCTargets
1548 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1549 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1550 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1551 )
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001552endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001553
1554
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001555add_executable(gen_legal_metadata_characters
1556 tools/codegen/core/gen_legal_metadata_characters.c
1557)
1558
1559target_include_directories(gen_legal_metadata_characters
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
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001570if (gRPC_INSTALL)
1571 install(TARGETS gen_legal_metadata_characters EXPORT gRPCTargets
1572 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1573 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1574 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1575 )
1576endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001577
1578
Craig Tiller1c7a8422016-08-18 11:13:11 -07001579add_executable(gen_percent_encoding_tables
1580 tools/codegen/core/gen_percent_encoding_tables.c
1581)
1582
1583target_include_directories(gen_percent_encoding_tables
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
1592
1593
Craig Tiller426dcde2016-09-07 15:43:10 -07001594if (gRPC_INSTALL)
1595 install(TARGETS gen_percent_encoding_tables EXPORT gRPCTargets
1596 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1597 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1598 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1599 )
1600endif()
Craig Tiller1c7a8422016-08-18 11:13:11 -07001601
1602
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001603add_executable(grpc_create_jwt
1604 test/core/security/create_jwt.c
1605)
1606
1607target_include_directories(grpc_create_jwt
1608 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1609 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1610 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1611 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1612 PRIVATE ${ZLIB_ROOT_DIR}
1613 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1614)
1615
1616target_link_libraries(grpc_create_jwt
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001617 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001618 grpc
1619 gpr
1620)
1621
1622
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001623if (gRPC_INSTALL)
1624 install(TARGETS grpc_create_jwt EXPORT gRPCTargets
1625 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1626 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1627 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1628 )
1629endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001630
1631
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001632add_executable(grpc_print_google_default_creds_token
1633 test/core/security/print_google_default_creds_token.c
1634)
1635
1636target_include_directories(grpc_print_google_default_creds_token
1637 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1638 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1639 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1640 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1641 PRIVATE ${ZLIB_ROOT_DIR}
1642 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1643)
1644
1645target_link_libraries(grpc_print_google_default_creds_token
1646 grpc
1647 gpr
1648)
1649
1650
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001651if (gRPC_INSTALL)
1652 install(TARGETS grpc_print_google_default_creds_token EXPORT gRPCTargets
1653 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1654 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1655 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1656 )
1657endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001658
1659
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001660add_executable(grpc_verify_jwt
1661 test/core/security/verify_jwt.c
1662)
1663
1664target_include_directories(grpc_verify_jwt
1665 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1666 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1667 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1668 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1669 PRIVATE ${ZLIB_ROOT_DIR}
1670 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1671)
1672
1673target_link_libraries(grpc_verify_jwt
1674 grpc
1675 gpr
1676)
1677
1678
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001679if (gRPC_INSTALL)
1680 install(TARGETS grpc_verify_jwt EXPORT gRPCTargets
1681 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1682 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1683 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1684 )
1685endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001686
1687
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001688add_executable(grpc_cpp_plugin
1689 src/compiler/cpp_plugin.cc
1690)
1691
1692target_include_directories(grpc_cpp_plugin
1693 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1694 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1695 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1696 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1697 PRIVATE ${ZLIB_ROOT_DIR}
1698 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1699)
1700
1701target_link_libraries(grpc_cpp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001702 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001703 grpc_plugin_support
1704)
1705
1706
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001707if (gRPC_INSTALL)
1708 install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
1709 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1710 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1711 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1712 )
1713endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001714
1715
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001716add_executable(grpc_csharp_plugin
1717 src/compiler/csharp_plugin.cc
1718)
1719
1720target_include_directories(grpc_csharp_plugin
1721 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1722 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1723 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1724 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1725 PRIVATE ${ZLIB_ROOT_DIR}
1726 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1727)
1728
1729target_link_libraries(grpc_csharp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001730 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001731 grpc_plugin_support
1732)
1733
1734
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001735if (gRPC_INSTALL)
1736 install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
1737 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1738 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1739 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1740 )
1741endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001742
1743
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001744add_executable(grpc_node_plugin
1745 src/compiler/node_plugin.cc
1746)
1747
1748target_include_directories(grpc_node_plugin
1749 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1750 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1751 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1752 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1753 PRIVATE ${ZLIB_ROOT_DIR}
1754 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1755)
1756
1757target_link_libraries(grpc_node_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001758 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001759 grpc_plugin_support
1760)
1761
1762
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001763if (gRPC_INSTALL)
1764 install(TARGETS grpc_node_plugin EXPORT gRPCTargets
1765 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1766 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1767 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1768 )
1769endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001770
1771
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001772add_executable(grpc_objective_c_plugin
1773 src/compiler/objective_c_plugin.cc
1774)
1775
1776target_include_directories(grpc_objective_c_plugin
1777 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1778 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1779 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1780 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1781 PRIVATE ${ZLIB_ROOT_DIR}
1782 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1783)
1784
1785target_link_libraries(grpc_objective_c_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001786 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001787 grpc_plugin_support
1788)
1789
1790
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001791if (gRPC_INSTALL)
1792 install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
1793 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1794 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1795 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1796 )
1797endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001798
1799
Stanley Cheung857a1302016-09-29 17:26:29 -07001800add_executable(grpc_php_plugin
1801 src/compiler/php_plugin.cc
1802)
1803
1804target_include_directories(grpc_php_plugin
1805 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1806 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1807 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1808 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1809 PRIVATE ${ZLIB_ROOT_DIR}
1810 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1811)
1812
1813target_link_libraries(grpc_php_plugin
1814 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
1815 grpc_plugin_support
1816)
1817
1818
1819if (gRPC_INSTALL)
1820 install(TARGETS grpc_php_plugin EXPORT gRPCTargets
1821 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1822 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1823 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1824 )
1825endif()
1826
1827
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001828add_executable(grpc_python_plugin
1829 src/compiler/python_plugin.cc
1830)
1831
1832target_include_directories(grpc_python_plugin
1833 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1834 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1835 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1836 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1837 PRIVATE ${ZLIB_ROOT_DIR}
1838 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1839)
1840
1841target_link_libraries(grpc_python_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001842 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001843 grpc_plugin_support
1844)
1845
1846
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001847if (gRPC_INSTALL)
1848 install(TARGETS grpc_python_plugin EXPORT gRPCTargets
1849 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1850 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1851 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1852 )
1853endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001854
1855
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001856add_executable(grpc_ruby_plugin
1857 src/compiler/ruby_plugin.cc
1858)
1859
1860target_include_directories(grpc_ruby_plugin
1861 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1862 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1863 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1864 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1865 PRIVATE ${ZLIB_ROOT_DIR}
1866 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1867)
1868
1869target_link_libraries(grpc_ruby_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001870 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001871 grpc_plugin_support
1872)
1873
1874
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001875if (gRPC_INSTALL)
1876 install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
1877 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1878 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1879 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1880 )
1881endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001882
1883
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001884
1885
1886
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001887
1888
1889
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001890if (gRPC_INSTALL)
1891 install(EXPORT gRPCTargets
1892 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1893 NAMESPACE gRPC::
1894 )
1895endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001896
1897foreach(_config gRPCConfig gRPCConfigVersion)
1898 configure_file(tools/cmake/${_config}.cmake.in
1899 ${_config}.cmake @ONLY)
1900 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
1901 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1902 )
1903endforeach()