blob: d3382964d5ee9174e054e0095a3105aec979749b [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
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030051set(gRPC_ZLIB_PROVIDER "module" CACHE STRING "Provider of zlib library")
52set_property(CACHE gRPC_ZLIB_PROVIDER PROPERTY STRINGS "module" "package")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010053
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030054set(gRPC_SSL_PROVIDER "module" CACHE STRING "Provider of ssl library")
55set_property(CACHE gRPC_SSL_PROVIDER PROPERTY STRINGS "module" "package")
Tamas Berghammera72712e2016-07-06 10:30:25 +010056
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030057set(gRPC_PROTOBUF_PROVIDER "module" CACHE STRING "Provider of protobuf library")
58set_property(CACHE gRPC_PROTOBUF_PROVIDER PROPERTY STRINGS "module" "package")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010059
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030060set(gRPC_USE_PROTO_LITE OFF CACHE BOOL "Use the protobuf-lite library")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010061
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030062if (gRPC_USE_PROTO_LITE)
63 set(_gRPC_PROTOBUF_LIBRARY_NAME "libprotobuf-lite")
Tamas Berghammer23911562016-07-27 15:24:05 +010064 add_definitions("-DGRPC_USE_PROTO_LITE")
65else()
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030066 set(_gRPC_PROTOBUF_LIBRARY_NAME "libprotobuf")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010067endif()
68
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030069if("${gRPC_ZLIB_PROVIDER}" STREQUAL "module")
70 if(NOT ZLIB_ROOT_DIR)
71 set(ZLIB_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/zlib)
72 endif()
73 set(ZLIB_INCLUDE_DIR "${ZLIB_ROOT_DIR}")
74 if(EXISTS "${ZLIB_ROOT_DIR}/CMakeLists.txt")
75 add_subdirectory(${ZLIB_ROOT_DIR} third_party/zlib)
76 if(TARGET zlibstatic)
77 set(_gRPC_ZLIB_LIBRARIES zlibstatic)
78 endif()
79 else()
80 message(WARNING "gRPC_ZLIB_PROVIDER is \"module\" but ZLIB_ROOT_DIR is wrong")
81 endif()
82elseif("${gRPC_ZLIB_PROVIDER}" STREQUAL "package")
83 find_package(ZLIB)
84 if(TARGET ZLIB::ZLIB)
85 set(_gRPC_ZLIB_LIBRARIES ZLIB::ZLIB)
86 endif()
Konstantin Podsvirovdd331482016-07-28 00:00:25 +030087 set(_gRPC_FIND_ZLIB "if(NOT ZLIB_FOUND)\n find_package(ZLIB)\nendif()")
Tamas Berghammerd798a7d2016-06-21 13:58:18 +010088endif()
89
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +030090if("${gRPC_PROTOBUF_PROVIDER}" STREQUAL "module")
91 # Building the protobuf tests require gmock what is not part of a standard protobuf checkout.
92 # Disable them unless they are explicitly requested from the cmake command line (when we assume
93 # gmock is downloaded to the right location inside protobuf).
94 if(NOT protobuf_BUILD_TESTS)
95 set(protobuf_BUILD_TESTS OFF CACHE BOOL "Build protobuf tests")
96 endif()
97 if(NOT PROTOBUF_ROOT_DIR)
98 set(PROTOBUF_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/protobuf)
99 endif()
100 if(EXISTS "${PROTOBUF_ROOT_DIR}/cmake/CMakeLists.txt")
101 add_subdirectory(${PROTOBUF_ROOT_DIR}/cmake third_party/protobuf)
102 if(TARGET ${_gRPC_PROTOBUF_LIBRARY_NAME})
103 set(_gRPC_PROTOBUF_LIBRARIES ${_gRPC_PROTOBUF_LIBRARY_NAME})
104 endif()
105 if(TARGET libprotoc)
106 set(_gRPC_PROTOBUF_PROTOC_LIBRARIES libprotoc)
107 endif()
108 else()
109 message(WARNING "gRPC_PROTOBUF_PROVIDER is \"module\" but PROTOBUF_ROOT_DIR is wrong")
110 endif()
111elseif("${gRPC_PROTOBUF_PROVIDER}" STREQUAL "package")
112 find_package(protobuf CONFIG)
113 if(protobuf_FOUND)
114 if(TARGET protobuf::${_gRPC_PROTOBUF_LIBRARY_NAME})
115 set(_gRPC_PROTOBUF_LIBRARIES protobuf::${_gRPC_PROTOBUF_LIBRARY_NAME})
116 endif()
117 if(TARGET protobuf::libprotoc)
118 set(_gRPC_PROTOBUF_PROTOC_LIBRARIES protobuf::libprotoc)
119 endif()
Konstantin Podsvirovdd331482016-07-28 00:00:25 +0300120 set(_gRPC_FIND_PROTOBUF "if(NOT protobuf_FOUND)\n find_package(protobuf CONFIG)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300121 else()
122 find_package(Protobuf MODULE)
Konstantin Podsvirovdd331482016-07-28 00:00:25 +0300123 set(_gRPC_FIND_PROTOBUF "if(NOT Protobuf_FOUND)\n find_package(Protobuf)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300124 endif()
125endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100126
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300127if("${gRPC_SSL_PROVIDER}" STREQUAL "module")
128 if(NOT BORINGSSL_ROOT_DIR)
129 set(BORINGSSL_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/boringssl)
130 endif()
131 if(EXISTS "${BORINGSSL_ROOT_DIR}/CMakeLists.txt")
132 add_subdirectory(${BORINGSSL_ROOT_DIR} third_party/boringssl)
133 if(TARGET ssl)
134 set(_gRPC_SSL_LIBRARIES ssl)
135 endif()
136 else()
137 message(WARNING "gRPC_SSL_PROVIDER is \"module\" but BORINGSSL_ROOT_DIR is wrong")
138 endif()
139elseif("${gRPC_SSL_PROVIDER}" STREQUAL "package")
140 find_package(OpenSSL)
141 if(TARGET OpenSSL::SSL)
142 set(_gRPC_SSL_LIBRARIES OpenSSL::SSL)
143 endif()
Konstantin Podsvirovdd331482016-07-28 00:00:25 +0300144 set(_gRPC_FIND_SSL "if(NOT OpenSSL_FOUND)\n find_package(OpenSSL)\nendif()")
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300145endif()
146
147if(NOT MSVC)
148 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11")
149 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
150endif()
151
152if(WIN32 AND MSVC)
153 set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32)
Tamas Berghammer23911562016-07-27 15:24:05 +0100154endif()
155
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300156include(GNUInstallDirs)
157if(NOT DEFINED CMAKE_INSTALL_CMAKEDIR)
158 set(CMAKE_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/gRPC")
159endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100160
161
162add_library(gpr
163 src/core/lib/profiling/basic_timers.c
164 src/core/lib/profiling/stap_timers.c
165 src/core/lib/support/alloc.c
166 src/core/lib/support/avl.c
167 src/core/lib/support/backoff.c
168 src/core/lib/support/cmdline.c
169 src/core/lib/support/cpu_iphone.c
170 src/core/lib/support/cpu_linux.c
171 src/core/lib/support/cpu_posix.c
172 src/core/lib/support/cpu_windows.c
173 src/core/lib/support/env_linux.c
174 src/core/lib/support/env_posix.c
175 src/core/lib/support/env_windows.c
176 src/core/lib/support/histogram.c
177 src/core/lib/support/host_port.c
178 src/core/lib/support/log.c
179 src/core/lib/support/log_android.c
180 src/core/lib/support/log_linux.c
181 src/core/lib/support/log_posix.c
182 src/core/lib/support/log_windows.c
183 src/core/lib/support/murmur_hash.c
184 src/core/lib/support/slice.c
185 src/core/lib/support/slice_buffer.c
186 src/core/lib/support/stack_lockfree.c
187 src/core/lib/support/string.c
188 src/core/lib/support/string_posix.c
189 src/core/lib/support/string_util_windows.c
190 src/core/lib/support/string_windows.c
191 src/core/lib/support/subprocess_posix.c
192 src/core/lib/support/subprocess_windows.c
193 src/core/lib/support/sync.c
194 src/core/lib/support/sync_posix.c
195 src/core/lib/support/sync_windows.c
196 src/core/lib/support/thd.c
197 src/core/lib/support/thd_posix.c
198 src/core/lib/support/thd_windows.c
199 src/core/lib/support/time.c
200 src/core/lib/support/time_posix.c
201 src/core/lib/support/time_precise.c
202 src/core/lib/support/time_windows.c
203 src/core/lib/support/tls_pthread.c
204 src/core/lib/support/tmpfile_msys.c
205 src/core/lib/support/tmpfile_posix.c
206 src/core/lib/support/tmpfile_windows.c
207 src/core/lib/support/wrap_memcpy.c
208)
209
210target_include_directories(gpr
211 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
212 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
213 PRIVATE ${BORINGSSL_ROOT_DIR}/include
214 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300215 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100216 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
217)
218
219
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300220foreach(_hdr
221 include/grpc/support/alloc.h
222 include/grpc/support/atm.h
223 include/grpc/support/atm_gcc_atomic.h
224 include/grpc/support/atm_gcc_sync.h
225 include/grpc/support/atm_windows.h
226 include/grpc/support/avl.h
227 include/grpc/support/cmdline.h
228 include/grpc/support/cpu.h
229 include/grpc/support/histogram.h
230 include/grpc/support/host_port.h
231 include/grpc/support/log.h
232 include/grpc/support/log_windows.h
233 include/grpc/support/port_platform.h
234 include/grpc/support/slice.h
235 include/grpc/support/slice_buffer.h
236 include/grpc/support/string_util.h
237 include/grpc/support/subprocess.h
238 include/grpc/support/sync.h
239 include/grpc/support/sync_generic.h
240 include/grpc/support/sync_posix.h
241 include/grpc/support/sync_windows.h
242 include/grpc/support/thd.h
243 include/grpc/support/time.h
244 include/grpc/support/tls.h
245 include/grpc/support/tls_gcc.h
246 include/grpc/support/tls_msvc.h
247 include/grpc/support/tls_pthread.h
248 include/grpc/support/useful.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300249 include/grpc/impl/codegen/atm.h
250 include/grpc/impl/codegen/atm_gcc_atomic.h
251 include/grpc/impl/codegen/atm_gcc_sync.h
252 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700253 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300254 include/grpc/impl/codegen/port_platform.h
255 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300256 include/grpc/impl/codegen/sync.h
257 include/grpc/impl/codegen/sync_generic.h
258 include/grpc/impl/codegen/sync_posix.h
259 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300260)
261 string(REPLACE "include/" "" _path ${_hdr})
262 get_filename_component(_path ${_path} PATH)
263 install(FILES ${_hdr}
264 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
265 )
266endforeach()
267
268
269install(TARGETS gpr EXPORT gRPCTargets
270 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
271 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
272 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
273)
274
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100275
276add_library(grpc
277 src/core/lib/surface/init.c
278 src/core/lib/channel/channel_args.c
279 src/core/lib/channel/channel_stack.c
280 src/core/lib/channel/channel_stack_builder.c
281 src/core/lib/channel/compress_filter.c
282 src/core/lib/channel/connected_channel.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700283 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100284 src/core/lib/channel/http_client_filter.c
285 src/core/lib/channel/http_server_filter.c
286 src/core/lib/compression/compression.c
287 src/core/lib/compression/message_compress.c
288 src/core/lib/debug/trace.c
289 src/core/lib/http/format_request.c
290 src/core/lib/http/httpcli.c
291 src/core/lib/http/parser.c
292 src/core/lib/iomgr/closure.c
293 src/core/lib/iomgr/endpoint.c
294 src/core/lib/iomgr/endpoint_pair_posix.c
295 src/core/lib/iomgr/endpoint_pair_windows.c
296 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200297 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100298 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
299 src/core/lib/iomgr/ev_poll_posix.c
300 src/core/lib/iomgr/ev_posix.c
301 src/core/lib/iomgr/exec_ctx.c
302 src/core/lib/iomgr/executor.c
303 src/core/lib/iomgr/iocp_windows.c
304 src/core/lib/iomgr/iomgr.c
305 src/core/lib/iomgr/iomgr_posix.c
306 src/core/lib/iomgr/iomgr_windows.c
307 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200308 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100309 src/core/lib/iomgr/polling_entity.c
310 src/core/lib/iomgr/pollset_set_windows.c
311 src/core/lib/iomgr/pollset_windows.c
312 src/core/lib/iomgr/resolve_address_posix.c
313 src/core/lib/iomgr/resolve_address_windows.c
314 src/core/lib/iomgr/sockaddr_utils.c
315 src/core/lib/iomgr/socket_utils_common_posix.c
316 src/core/lib/iomgr/socket_utils_linux.c
317 src/core/lib/iomgr/socket_utils_posix.c
318 src/core/lib/iomgr/socket_windows.c
319 src/core/lib/iomgr/tcp_client_posix.c
320 src/core/lib/iomgr/tcp_client_windows.c
321 src/core/lib/iomgr/tcp_posix.c
322 src/core/lib/iomgr/tcp_server_posix.c
323 src/core/lib/iomgr/tcp_server_windows.c
324 src/core/lib/iomgr/tcp_windows.c
325 src/core/lib/iomgr/time_averaged_stats.c
326 src/core/lib/iomgr/timer.c
327 src/core/lib/iomgr/timer_heap.c
328 src/core/lib/iomgr/udp_server.c
329 src/core/lib/iomgr/unix_sockets_posix.c
330 src/core/lib/iomgr/unix_sockets_posix_noop.c
331 src/core/lib/iomgr/wakeup_fd_eventfd.c
332 src/core/lib/iomgr/wakeup_fd_nospecial.c
333 src/core/lib/iomgr/wakeup_fd_pipe.c
334 src/core/lib/iomgr/wakeup_fd_posix.c
335 src/core/lib/iomgr/workqueue_posix.c
336 src/core/lib/iomgr/workqueue_windows.c
337 src/core/lib/json/json.c
338 src/core/lib/json/json_reader.c
339 src/core/lib/json/json_string.c
340 src/core/lib/json/json_writer.c
341 src/core/lib/surface/alarm.c
342 src/core/lib/surface/api_trace.c
343 src/core/lib/surface/byte_buffer.c
344 src/core/lib/surface/byte_buffer_reader.c
345 src/core/lib/surface/call.c
346 src/core/lib/surface/call_details.c
347 src/core/lib/surface/call_log_batch.c
348 src/core/lib/surface/channel.c
349 src/core/lib/surface/channel_init.c
350 src/core/lib/surface/channel_ping.c
351 src/core/lib/surface/channel_stack_type.c
352 src/core/lib/surface/completion_queue.c
353 src/core/lib/surface/event_string.c
354 src/core/lib/surface/lame_client.c
355 src/core/lib/surface/metadata_array.c
356 src/core/lib/surface/server.c
357 src/core/lib/surface/validate_metadata.c
358 src/core/lib/surface/version.c
359 src/core/lib/transport/byte_stream.c
360 src/core/lib/transport/connectivity_state.c
361 src/core/lib/transport/metadata.c
362 src/core/lib/transport/metadata_batch.c
363 src/core/lib/transport/static_metadata.c
364 src/core/lib/transport/transport.c
365 src/core/lib/transport/transport_op_string.c
366 src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.c
367 src/core/ext/transport/chttp2/transport/bin_decoder.c
368 src/core/ext/transport/chttp2/transport/bin_encoder.c
369 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
370 src/core/ext/transport/chttp2/transport/chttp2_transport.c
371 src/core/ext/transport/chttp2/transport/frame_data.c
372 src/core/ext/transport/chttp2/transport/frame_goaway.c
373 src/core/ext/transport/chttp2/transport/frame_ping.c
374 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
375 src/core/ext/transport/chttp2/transport/frame_settings.c
376 src/core/ext/transport/chttp2/transport/frame_window_update.c
377 src/core/ext/transport/chttp2/transport/hpack_encoder.c
378 src/core/ext/transport/chttp2/transport/hpack_parser.c
379 src/core/ext/transport/chttp2/transport/hpack_table.c
380 src/core/ext/transport/chttp2/transport/huffsyms.c
381 src/core/ext/transport/chttp2/transport/incoming_metadata.c
382 src/core/ext/transport/chttp2/transport/parsing.c
383 src/core/ext/transport/chttp2/transport/status_conversion.c
384 src/core/ext/transport/chttp2/transport/stream_lists.c
385 src/core/ext/transport/chttp2/transport/stream_map.c
386 src/core/ext/transport/chttp2/transport/timeout_encoding.c
387 src/core/ext/transport/chttp2/transport/varint.c
388 src/core/ext/transport/chttp2/transport/writing.c
389 src/core/ext/transport/chttp2/alpn/alpn.c
390 src/core/lib/http/httpcli_security_connector.c
391 src/core/lib/security/context/security_context.c
392 src/core/lib/security/credentials/composite/composite_credentials.c
393 src/core/lib/security/credentials/credentials.c
394 src/core/lib/security/credentials/credentials_metadata.c
395 src/core/lib/security/credentials/fake/fake_credentials.c
396 src/core/lib/security/credentials/google_default/credentials_posix.c
397 src/core/lib/security/credentials/google_default/credentials_windows.c
398 src/core/lib/security/credentials/google_default/google_default_credentials.c
399 src/core/lib/security/credentials/iam/iam_credentials.c
400 src/core/lib/security/credentials/jwt/json_token.c
401 src/core/lib/security/credentials/jwt/jwt_credentials.c
402 src/core/lib/security/credentials/jwt/jwt_verifier.c
403 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
404 src/core/lib/security/credentials/plugin/plugin_credentials.c
405 src/core/lib/security/credentials/ssl/ssl_credentials.c
406 src/core/lib/security/transport/client_auth_filter.c
407 src/core/lib/security/transport/handshake.c
408 src/core/lib/security/transport/secure_endpoint.c
409 src/core/lib/security/transport/security_connector.c
410 src/core/lib/security/transport/server_auth_filter.c
411 src/core/lib/security/transport/tsi_error.c
412 src/core/lib/security/util/b64.c
413 src/core/lib/security/util/json_util.c
414 src/core/lib/surface/init_secure.c
415 src/core/lib/tsi/fake_transport_security.c
416 src/core/lib/tsi/ssl_transport_security.c
417 src/core/lib/tsi/transport_security.c
418 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
419 src/core/ext/client_config/channel_connectivity.c
420 src/core/ext/client_config/client_channel.c
421 src/core/ext/client_config/client_channel_factory.c
422 src/core/ext/client_config/client_config.c
423 src/core/ext/client_config/client_config_plugin.c
424 src/core/ext/client_config/connector.c
425 src/core/ext/client_config/default_initial_connect_string.c
426 src/core/ext/client_config/initial_connect_string.c
427 src/core/ext/client_config/lb_policy.c
428 src/core/ext/client_config/lb_policy_factory.c
429 src/core/ext/client_config/lb_policy_registry.c
430 src/core/ext/client_config/parse_address.c
431 src/core/ext/client_config/resolver.c
432 src/core/ext/client_config/resolver_factory.c
433 src/core/ext/client_config/resolver_registry.c
434 src/core/ext/client_config/subchannel.c
435 src/core/ext/client_config/subchannel_call_holder.c
436 src/core/ext/client_config/subchannel_index.c
437 src/core/ext/client_config/uri_parser.c
438 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
439 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
440 src/core/ext/transport/chttp2/client/insecure/channel_create.c
441 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700442 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100443 src/core/ext/lb_policy/grpclb/load_balancer_api.c
444 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
445 third_party/nanopb/pb_common.c
446 third_party/nanopb/pb_decode.c
447 third_party/nanopb/pb_encode.c
448 src/core/ext/lb_policy/pick_first/pick_first.c
449 src/core/ext/lb_policy/round_robin/round_robin.c
450 src/core/ext/resolver/dns/native/dns_resolver.c
451 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
452 src/core/ext/load_reporting/load_reporting.c
453 src/core/ext/load_reporting/load_reporting_filter.c
454 src/core/ext/census/context.c
455 src/core/ext/census/gen/census.pb.c
456 src/core/ext/census/grpc_context.c
457 src/core/ext/census/grpc_filter.c
458 src/core/ext/census/grpc_plugin.c
459 src/core/ext/census/initialize.c
460 src/core/ext/census/mlog.c
461 src/core/ext/census/operation.c
462 src/core/ext/census/placeholders.c
463 src/core/ext/census/tracing.c
464 src/core/plugin_registry/grpc_plugin_registry.c
465)
466
467target_include_directories(grpc
468 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
469 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
470 PRIVATE ${BORINGSSL_ROOT_DIR}/include
471 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300472 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100473 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
474)
475
476target_link_libraries(grpc
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300477 ${_gRPC_BASELIB_LIBRARIES}
478 ${_gRPC_SSL_LIBRARIES}
479 ${_gRPC_ZLIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100480 gpr
481)
482
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300483foreach(_hdr
484 include/grpc/byte_buffer.h
485 include/grpc/byte_buffer_reader.h
486 include/grpc/compression.h
487 include/grpc/grpc.h
488 include/grpc/grpc_posix.h
489 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300490 include/grpc/impl/codegen/byte_buffer_reader.h
491 include/grpc/impl/codegen/compression_types.h
492 include/grpc/impl/codegen/connectivity_state.h
493 include/grpc/impl/codegen/grpc_types.h
494 include/grpc/impl/codegen/propagation_bits.h
495 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300496 include/grpc/impl/codegen/atm.h
497 include/grpc/impl/codegen/atm_gcc_atomic.h
498 include/grpc/impl/codegen/atm_gcc_sync.h
499 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700500 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300501 include/grpc/impl/codegen/port_platform.h
502 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300503 include/grpc/impl/codegen/sync.h
504 include/grpc/impl/codegen/sync_generic.h
505 include/grpc/impl/codegen/sync_posix.h
506 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300507 include/grpc/grpc_security.h
508 include/grpc/grpc_security_constants.h
509 include/grpc/census.h
510)
511 string(REPLACE "include/" "" _path ${_hdr})
512 get_filename_component(_path ${_path} PATH)
513 install(FILES ${_hdr}
514 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
515 )
516endforeach()
517
518
519install(TARGETS grpc EXPORT gRPCTargets
520 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
521 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
522 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
523)
524
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100525
526add_library(grpc_cronet
527 src/core/lib/surface/init.c
528 src/core/lib/channel/channel_args.c
529 src/core/lib/channel/channel_stack.c
530 src/core/lib/channel/channel_stack_builder.c
531 src/core/lib/channel/compress_filter.c
532 src/core/lib/channel/connected_channel.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700533 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100534 src/core/lib/channel/http_client_filter.c
535 src/core/lib/channel/http_server_filter.c
536 src/core/lib/compression/compression.c
537 src/core/lib/compression/message_compress.c
538 src/core/lib/debug/trace.c
539 src/core/lib/http/format_request.c
540 src/core/lib/http/httpcli.c
541 src/core/lib/http/parser.c
542 src/core/lib/iomgr/closure.c
543 src/core/lib/iomgr/endpoint.c
544 src/core/lib/iomgr/endpoint_pair_posix.c
545 src/core/lib/iomgr/endpoint_pair_windows.c
546 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200547 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100548 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
549 src/core/lib/iomgr/ev_poll_posix.c
550 src/core/lib/iomgr/ev_posix.c
551 src/core/lib/iomgr/exec_ctx.c
552 src/core/lib/iomgr/executor.c
553 src/core/lib/iomgr/iocp_windows.c
554 src/core/lib/iomgr/iomgr.c
555 src/core/lib/iomgr/iomgr_posix.c
556 src/core/lib/iomgr/iomgr_windows.c
557 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200558 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100559 src/core/lib/iomgr/polling_entity.c
560 src/core/lib/iomgr/pollset_set_windows.c
561 src/core/lib/iomgr/pollset_windows.c
562 src/core/lib/iomgr/resolve_address_posix.c
563 src/core/lib/iomgr/resolve_address_windows.c
564 src/core/lib/iomgr/sockaddr_utils.c
565 src/core/lib/iomgr/socket_utils_common_posix.c
566 src/core/lib/iomgr/socket_utils_linux.c
567 src/core/lib/iomgr/socket_utils_posix.c
568 src/core/lib/iomgr/socket_windows.c
569 src/core/lib/iomgr/tcp_client_posix.c
570 src/core/lib/iomgr/tcp_client_windows.c
571 src/core/lib/iomgr/tcp_posix.c
572 src/core/lib/iomgr/tcp_server_posix.c
573 src/core/lib/iomgr/tcp_server_windows.c
574 src/core/lib/iomgr/tcp_windows.c
575 src/core/lib/iomgr/time_averaged_stats.c
576 src/core/lib/iomgr/timer.c
577 src/core/lib/iomgr/timer_heap.c
578 src/core/lib/iomgr/udp_server.c
579 src/core/lib/iomgr/unix_sockets_posix.c
580 src/core/lib/iomgr/unix_sockets_posix_noop.c
581 src/core/lib/iomgr/wakeup_fd_eventfd.c
582 src/core/lib/iomgr/wakeup_fd_nospecial.c
583 src/core/lib/iomgr/wakeup_fd_pipe.c
584 src/core/lib/iomgr/wakeup_fd_posix.c
585 src/core/lib/iomgr/workqueue_posix.c
586 src/core/lib/iomgr/workqueue_windows.c
587 src/core/lib/json/json.c
588 src/core/lib/json/json_reader.c
589 src/core/lib/json/json_string.c
590 src/core/lib/json/json_writer.c
591 src/core/lib/surface/alarm.c
592 src/core/lib/surface/api_trace.c
593 src/core/lib/surface/byte_buffer.c
594 src/core/lib/surface/byte_buffer_reader.c
595 src/core/lib/surface/call.c
596 src/core/lib/surface/call_details.c
597 src/core/lib/surface/call_log_batch.c
598 src/core/lib/surface/channel.c
599 src/core/lib/surface/channel_init.c
600 src/core/lib/surface/channel_ping.c
601 src/core/lib/surface/channel_stack_type.c
602 src/core/lib/surface/completion_queue.c
603 src/core/lib/surface/event_string.c
604 src/core/lib/surface/lame_client.c
605 src/core/lib/surface/metadata_array.c
606 src/core/lib/surface/server.c
607 src/core/lib/surface/validate_metadata.c
608 src/core/lib/surface/version.c
609 src/core/lib/transport/byte_stream.c
610 src/core/lib/transport/connectivity_state.c
611 src/core/lib/transport/metadata.c
612 src/core/lib/transport/metadata_batch.c
613 src/core/lib/transport/static_metadata.c
614 src/core/lib/transport/transport.c
615 src/core/lib/transport/transport_op_string.c
616 src/core/ext/transport/cronet/client/secure/cronet_channel_create.c
617 src/core/ext/transport/cronet/transport/cronet_api_dummy.c
618 src/core/ext/transport/cronet/transport/cronet_transport.c
619 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
620 src/core/ext/transport/chttp2/transport/bin_decoder.c
621 src/core/ext/transport/chttp2/transport/bin_encoder.c
622 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
623 src/core/ext/transport/chttp2/transport/chttp2_transport.c
624 src/core/ext/transport/chttp2/transport/frame_data.c
625 src/core/ext/transport/chttp2/transport/frame_goaway.c
626 src/core/ext/transport/chttp2/transport/frame_ping.c
627 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
628 src/core/ext/transport/chttp2/transport/frame_settings.c
629 src/core/ext/transport/chttp2/transport/frame_window_update.c
630 src/core/ext/transport/chttp2/transport/hpack_encoder.c
631 src/core/ext/transport/chttp2/transport/hpack_parser.c
632 src/core/ext/transport/chttp2/transport/hpack_table.c
633 src/core/ext/transport/chttp2/transport/huffsyms.c
634 src/core/ext/transport/chttp2/transport/incoming_metadata.c
635 src/core/ext/transport/chttp2/transport/parsing.c
636 src/core/ext/transport/chttp2/transport/status_conversion.c
637 src/core/ext/transport/chttp2/transport/stream_lists.c
638 src/core/ext/transport/chttp2/transport/stream_map.c
639 src/core/ext/transport/chttp2/transport/timeout_encoding.c
640 src/core/ext/transport/chttp2/transport/varint.c
641 src/core/ext/transport/chttp2/transport/writing.c
642 src/core/ext/transport/chttp2/alpn/alpn.c
643 src/core/ext/client_config/channel_connectivity.c
644 src/core/ext/client_config/client_channel.c
645 src/core/ext/client_config/client_channel_factory.c
646 src/core/ext/client_config/client_config.c
647 src/core/ext/client_config/client_config_plugin.c
648 src/core/ext/client_config/connector.c
649 src/core/ext/client_config/default_initial_connect_string.c
650 src/core/ext/client_config/initial_connect_string.c
651 src/core/ext/client_config/lb_policy.c
652 src/core/ext/client_config/lb_policy_factory.c
653 src/core/ext/client_config/lb_policy_registry.c
654 src/core/ext/client_config/parse_address.c
655 src/core/ext/client_config/resolver.c
656 src/core/ext/client_config/resolver_factory.c
657 src/core/ext/client_config/resolver_registry.c
658 src/core/ext/client_config/subchannel.c
659 src/core/ext/client_config/subchannel_call_holder.c
660 src/core/ext/client_config/subchannel_index.c
661 src/core/ext/client_config/uri_parser.c
662 src/core/lib/http/httpcli_security_connector.c
663 src/core/lib/security/context/security_context.c
664 src/core/lib/security/credentials/composite/composite_credentials.c
665 src/core/lib/security/credentials/credentials.c
666 src/core/lib/security/credentials/credentials_metadata.c
667 src/core/lib/security/credentials/fake/fake_credentials.c
668 src/core/lib/security/credentials/google_default/credentials_posix.c
669 src/core/lib/security/credentials/google_default/credentials_windows.c
670 src/core/lib/security/credentials/google_default/google_default_credentials.c
671 src/core/lib/security/credentials/iam/iam_credentials.c
672 src/core/lib/security/credentials/jwt/json_token.c
673 src/core/lib/security/credentials/jwt/jwt_credentials.c
674 src/core/lib/security/credentials/jwt/jwt_verifier.c
675 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
676 src/core/lib/security/credentials/plugin/plugin_credentials.c
677 src/core/lib/security/credentials/ssl/ssl_credentials.c
678 src/core/lib/security/transport/client_auth_filter.c
679 src/core/lib/security/transport/handshake.c
680 src/core/lib/security/transport/secure_endpoint.c
681 src/core/lib/security/transport/security_connector.c
682 src/core/lib/security/transport/server_auth_filter.c
683 src/core/lib/security/transport/tsi_error.c
684 src/core/lib/security/util/b64.c
685 src/core/lib/security/util/json_util.c
686 src/core/lib/surface/init_secure.c
687 src/core/lib/tsi/fake_transport_security.c
688 src/core/lib/tsi/ssl_transport_security.c
689 src/core/lib/tsi/transport_security.c
690 src/core/plugin_registry/grpc_cronet_plugin_registry.c
691)
692
693target_include_directories(grpc_cronet
694 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
695 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
696 PRIVATE ${BORINGSSL_ROOT_DIR}/include
697 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300698 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100699 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
700)
701
702target_link_libraries(grpc_cronet
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300703 ${_gRPC_BASELIB_LIBRARIES}
704 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100705 gpr
706)
707
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300708foreach(_hdr
709 include/grpc/byte_buffer.h
710 include/grpc/byte_buffer_reader.h
711 include/grpc/compression.h
712 include/grpc/grpc.h
713 include/grpc/grpc_posix.h
714 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300715 include/grpc/impl/codegen/byte_buffer_reader.h
716 include/grpc/impl/codegen/compression_types.h
717 include/grpc/impl/codegen/connectivity_state.h
718 include/grpc/impl/codegen/grpc_types.h
719 include/grpc/impl/codegen/propagation_bits.h
720 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300721 include/grpc/impl/codegen/atm.h
722 include/grpc/impl/codegen/atm_gcc_atomic.h
723 include/grpc/impl/codegen/atm_gcc_sync.h
724 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700725 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300726 include/grpc/impl/codegen/port_platform.h
727 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300728 include/grpc/impl/codegen/sync.h
729 include/grpc/impl/codegen/sync_generic.h
730 include/grpc/impl/codegen/sync_posix.h
731 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300732 include/grpc/grpc_cronet.h
733 include/grpc/grpc_security.h
734 include/grpc/grpc_security_constants.h
735)
736 string(REPLACE "include/" "" _path ${_hdr})
737 get_filename_component(_path ${_path} PATH)
738 install(FILES ${_hdr}
739 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
740 )
741endforeach()
742
743
744install(TARGETS grpc_cronet EXPORT gRPCTargets
745 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
746 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
747 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
748)
749
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100750
751add_library(grpc_unsecure
752 src/core/lib/surface/init.c
753 src/core/lib/surface/init_unsecure.c
754 src/core/lib/channel/channel_args.c
755 src/core/lib/channel/channel_stack.c
756 src/core/lib/channel/channel_stack_builder.c
757 src/core/lib/channel/compress_filter.c
758 src/core/lib/channel/connected_channel.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700759 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100760 src/core/lib/channel/http_client_filter.c
761 src/core/lib/channel/http_server_filter.c
762 src/core/lib/compression/compression.c
763 src/core/lib/compression/message_compress.c
764 src/core/lib/debug/trace.c
765 src/core/lib/http/format_request.c
766 src/core/lib/http/httpcli.c
767 src/core/lib/http/parser.c
768 src/core/lib/iomgr/closure.c
769 src/core/lib/iomgr/endpoint.c
770 src/core/lib/iomgr/endpoint_pair_posix.c
771 src/core/lib/iomgr/endpoint_pair_windows.c
772 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200773 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100774 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
775 src/core/lib/iomgr/ev_poll_posix.c
776 src/core/lib/iomgr/ev_posix.c
777 src/core/lib/iomgr/exec_ctx.c
778 src/core/lib/iomgr/executor.c
779 src/core/lib/iomgr/iocp_windows.c
780 src/core/lib/iomgr/iomgr.c
781 src/core/lib/iomgr/iomgr_posix.c
782 src/core/lib/iomgr/iomgr_windows.c
783 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200784 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100785 src/core/lib/iomgr/polling_entity.c
786 src/core/lib/iomgr/pollset_set_windows.c
787 src/core/lib/iomgr/pollset_windows.c
788 src/core/lib/iomgr/resolve_address_posix.c
789 src/core/lib/iomgr/resolve_address_windows.c
790 src/core/lib/iomgr/sockaddr_utils.c
791 src/core/lib/iomgr/socket_utils_common_posix.c
792 src/core/lib/iomgr/socket_utils_linux.c
793 src/core/lib/iomgr/socket_utils_posix.c
794 src/core/lib/iomgr/socket_windows.c
795 src/core/lib/iomgr/tcp_client_posix.c
796 src/core/lib/iomgr/tcp_client_windows.c
797 src/core/lib/iomgr/tcp_posix.c
798 src/core/lib/iomgr/tcp_server_posix.c
799 src/core/lib/iomgr/tcp_server_windows.c
800 src/core/lib/iomgr/tcp_windows.c
801 src/core/lib/iomgr/time_averaged_stats.c
802 src/core/lib/iomgr/timer.c
803 src/core/lib/iomgr/timer_heap.c
804 src/core/lib/iomgr/udp_server.c
805 src/core/lib/iomgr/unix_sockets_posix.c
806 src/core/lib/iomgr/unix_sockets_posix_noop.c
807 src/core/lib/iomgr/wakeup_fd_eventfd.c
808 src/core/lib/iomgr/wakeup_fd_nospecial.c
809 src/core/lib/iomgr/wakeup_fd_pipe.c
810 src/core/lib/iomgr/wakeup_fd_posix.c
811 src/core/lib/iomgr/workqueue_posix.c
812 src/core/lib/iomgr/workqueue_windows.c
813 src/core/lib/json/json.c
814 src/core/lib/json/json_reader.c
815 src/core/lib/json/json_string.c
816 src/core/lib/json/json_writer.c
817 src/core/lib/surface/alarm.c
818 src/core/lib/surface/api_trace.c
819 src/core/lib/surface/byte_buffer.c
820 src/core/lib/surface/byte_buffer_reader.c
821 src/core/lib/surface/call.c
822 src/core/lib/surface/call_details.c
823 src/core/lib/surface/call_log_batch.c
824 src/core/lib/surface/channel.c
825 src/core/lib/surface/channel_init.c
826 src/core/lib/surface/channel_ping.c
827 src/core/lib/surface/channel_stack_type.c
828 src/core/lib/surface/completion_queue.c
829 src/core/lib/surface/event_string.c
830 src/core/lib/surface/lame_client.c
831 src/core/lib/surface/metadata_array.c
832 src/core/lib/surface/server.c
833 src/core/lib/surface/validate_metadata.c
834 src/core/lib/surface/version.c
835 src/core/lib/transport/byte_stream.c
836 src/core/lib/transport/connectivity_state.c
837 src/core/lib/transport/metadata.c
838 src/core/lib/transport/metadata_batch.c
839 src/core/lib/transport/static_metadata.c
840 src/core/lib/transport/transport.c
841 src/core/lib/transport/transport_op_string.c
842 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
843 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
844 src/core/ext/transport/chttp2/transport/bin_decoder.c
845 src/core/ext/transport/chttp2/transport/bin_encoder.c
846 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
847 src/core/ext/transport/chttp2/transport/chttp2_transport.c
848 src/core/ext/transport/chttp2/transport/frame_data.c
849 src/core/ext/transport/chttp2/transport/frame_goaway.c
850 src/core/ext/transport/chttp2/transport/frame_ping.c
851 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
852 src/core/ext/transport/chttp2/transport/frame_settings.c
853 src/core/ext/transport/chttp2/transport/frame_window_update.c
854 src/core/ext/transport/chttp2/transport/hpack_encoder.c
855 src/core/ext/transport/chttp2/transport/hpack_parser.c
856 src/core/ext/transport/chttp2/transport/hpack_table.c
857 src/core/ext/transport/chttp2/transport/huffsyms.c
858 src/core/ext/transport/chttp2/transport/incoming_metadata.c
859 src/core/ext/transport/chttp2/transport/parsing.c
860 src/core/ext/transport/chttp2/transport/status_conversion.c
861 src/core/ext/transport/chttp2/transport/stream_lists.c
862 src/core/ext/transport/chttp2/transport/stream_map.c
863 src/core/ext/transport/chttp2/transport/timeout_encoding.c
864 src/core/ext/transport/chttp2/transport/varint.c
865 src/core/ext/transport/chttp2/transport/writing.c
866 src/core/ext/transport/chttp2/alpn/alpn.c
867 src/core/ext/transport/chttp2/client/insecure/channel_create.c
868 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
869 src/core/ext/client_config/channel_connectivity.c
870 src/core/ext/client_config/client_channel.c
871 src/core/ext/client_config/client_channel_factory.c
872 src/core/ext/client_config/client_config.c
873 src/core/ext/client_config/client_config_plugin.c
874 src/core/ext/client_config/connector.c
875 src/core/ext/client_config/default_initial_connect_string.c
876 src/core/ext/client_config/initial_connect_string.c
877 src/core/ext/client_config/lb_policy.c
878 src/core/ext/client_config/lb_policy_factory.c
879 src/core/ext/client_config/lb_policy_registry.c
880 src/core/ext/client_config/parse_address.c
881 src/core/ext/client_config/resolver.c
882 src/core/ext/client_config/resolver_factory.c
883 src/core/ext/client_config/resolver_registry.c
884 src/core/ext/client_config/subchannel.c
885 src/core/ext/client_config/subchannel_call_holder.c
886 src/core/ext/client_config/subchannel_index.c
887 src/core/ext/client_config/uri_parser.c
888 src/core/ext/resolver/dns/native/dns_resolver.c
889 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
890 src/core/ext/load_reporting/load_reporting.c
891 src/core/ext/load_reporting/load_reporting_filter.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700892 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100893 src/core/ext/lb_policy/grpclb/load_balancer_api.c
894 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
895 third_party/nanopb/pb_common.c
896 third_party/nanopb/pb_decode.c
897 third_party/nanopb/pb_encode.c
898 src/core/ext/lb_policy/pick_first/pick_first.c
899 src/core/ext/lb_policy/round_robin/round_robin.c
900 src/core/ext/census/context.c
901 src/core/ext/census/gen/census.pb.c
902 src/core/ext/census/grpc_context.c
903 src/core/ext/census/grpc_filter.c
904 src/core/ext/census/grpc_plugin.c
905 src/core/ext/census/initialize.c
906 src/core/ext/census/mlog.c
907 src/core/ext/census/operation.c
908 src/core/ext/census/placeholders.c
909 src/core/ext/census/tracing.c
910 src/core/plugin_registry/grpc_unsecure_plugin_registry.c
911)
912
913target_include_directories(grpc_unsecure
914 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
915 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
916 PRIVATE ${BORINGSSL_ROOT_DIR}/include
917 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300918 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100919 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
920)
921
922target_link_libraries(grpc_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300923 ${_gRPC_BASELIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100924 gpr
925)
926
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300927foreach(_hdr
928 include/grpc/byte_buffer.h
929 include/grpc/byte_buffer_reader.h
930 include/grpc/compression.h
931 include/grpc/grpc.h
932 include/grpc/grpc_posix.h
933 include/grpc/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300934 include/grpc/impl/codegen/byte_buffer_reader.h
935 include/grpc/impl/codegen/compression_types.h
936 include/grpc/impl/codegen/connectivity_state.h
937 include/grpc/impl/codegen/grpc_types.h
938 include/grpc/impl/codegen/propagation_bits.h
939 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300940 include/grpc/impl/codegen/atm.h
941 include/grpc/impl/codegen/atm_gcc_atomic.h
942 include/grpc/impl/codegen/atm_gcc_sync.h
943 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -0700944 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300945 include/grpc/impl/codegen/port_platform.h
946 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300947 include/grpc/impl/codegen/sync.h
948 include/grpc/impl/codegen/sync_generic.h
949 include/grpc/impl/codegen/sync_posix.h
950 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300951 include/grpc/census.h
952)
953 string(REPLACE "include/" "" _path ${_hdr})
954 get_filename_component(_path ${_path} PATH)
955 install(FILES ${_hdr}
956 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
957 )
958endforeach()
959
960
961install(TARGETS grpc_unsecure EXPORT gRPCTargets
962 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
963 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
964 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
965)
966
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100967
968add_library(grpc++
969 src/cpp/client/secure_credentials.cc
970 src/cpp/common/auth_property_iterator.cc
971 src/cpp/common/secure_auth_context.cc
972 src/cpp/common/secure_channel_arguments.cc
973 src/cpp/common/secure_create_auth_context.cc
974 src/cpp/server/secure_server_credentials.cc
975 src/cpp/client/channel.cc
976 src/cpp/client/client_context.cc
977 src/cpp/client/create_channel.cc
978 src/cpp/client/create_channel_internal.cc
979 src/cpp/client/create_channel_posix.cc
980 src/cpp/client/credentials.cc
981 src/cpp/client/generic_stub.cc
982 src/cpp/client/insecure_credentials.cc
983 src/cpp/common/channel_arguments.cc
984 src/cpp/common/completion_queue.cc
985 src/cpp/common/core_codegen.cc
986 src/cpp/common/rpc_method.cc
987 src/cpp/server/async_generic_service.cc
988 src/cpp/server/create_default_thread_pool.cc
989 src/cpp/server/dynamic_thread_pool.cc
990 src/cpp/server/insecure_server_credentials.cc
991 src/cpp/server/server.cc
992 src/cpp/server/server_builder.cc
993 src/cpp/server/server_context.cc
994 src/cpp/server/server_credentials.cc
995 src/cpp/server/server_posix.cc
996 src/cpp/util/byte_buffer.cc
997 src/cpp/util/slice.cc
998 src/cpp/util/status.cc
999 src/cpp/util/string_ref.cc
1000 src/cpp/util/time.cc
1001 src/cpp/codegen/codegen_init.cc
1002)
1003
1004target_include_directories(grpc++
1005 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1006 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1007 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1008 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001009 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001010 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1011)
1012
1013target_link_libraries(grpc++
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001014 ${_gRPC_BASELIB_LIBRARIES}
1015 ${_gRPC_SSL_LIBRARIES}
1016 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001017 grpc
1018)
1019
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001020foreach(_hdr
1021 include/grpc++/alarm.h
1022 include/grpc++/channel.h
1023 include/grpc++/client_context.h
1024 include/grpc++/completion_queue.h
1025 include/grpc++/create_channel.h
1026 include/grpc++/create_channel_posix.h
1027 include/grpc++/generic/async_generic_service.h
1028 include/grpc++/generic/generic_stub.h
1029 include/grpc++/grpc++.h
1030 include/grpc++/impl/call.h
1031 include/grpc++/impl/client_unary_call.h
1032 include/grpc++/impl/codegen/core_codegen.h
1033 include/grpc++/impl/grpc_library.h
1034 include/grpc++/impl/method_handler_impl.h
1035 include/grpc++/impl/rpc_method.h
1036 include/grpc++/impl/rpc_service_method.h
1037 include/grpc++/impl/serialization_traits.h
1038 include/grpc++/impl/server_builder_option.h
1039 include/grpc++/impl/server_builder_plugin.h
1040 include/grpc++/impl/server_initializer.h
1041 include/grpc++/impl/service_type.h
1042 include/grpc++/impl/sync.h
1043 include/grpc++/impl/sync_cxx11.h
1044 include/grpc++/impl/sync_no_cxx11.h
1045 include/grpc++/impl/thd.h
1046 include/grpc++/impl/thd_cxx11.h
1047 include/grpc++/impl/thd_no_cxx11.h
1048 include/grpc++/security/auth_context.h
1049 include/grpc++/security/auth_metadata_processor.h
1050 include/grpc++/security/credentials.h
1051 include/grpc++/security/server_credentials.h
1052 include/grpc++/server.h
1053 include/grpc++/server_builder.h
1054 include/grpc++/server_context.h
1055 include/grpc++/server_posix.h
1056 include/grpc++/support/async_stream.h
1057 include/grpc++/support/async_unary_call.h
1058 include/grpc++/support/byte_buffer.h
1059 include/grpc++/support/channel_arguments.h
1060 include/grpc++/support/config.h
1061 include/grpc++/support/slice.h
1062 include/grpc++/support/status.h
1063 include/grpc++/support/status_code_enum.h
1064 include/grpc++/support/string_ref.h
1065 include/grpc++/support/stub_options.h
1066 include/grpc++/support/sync_stream.h
1067 include/grpc++/support/time.h
1068 include/grpc++/impl/codegen/async_stream.h
1069 include/grpc++/impl/codegen/async_unary_call.h
1070 include/grpc++/impl/codegen/call.h
1071 include/grpc++/impl/codegen/call_hook.h
1072 include/grpc++/impl/codegen/channel_interface.h
1073 include/grpc++/impl/codegen/client_context.h
1074 include/grpc++/impl/codegen/client_unary_call.h
1075 include/grpc++/impl/codegen/completion_queue.h
1076 include/grpc++/impl/codegen/completion_queue_tag.h
1077 include/grpc++/impl/codegen/config.h
1078 include/grpc++/impl/codegen/core_codegen_interface.h
1079 include/grpc++/impl/codegen/create_auth_context.h
1080 include/grpc++/impl/codegen/grpc_library.h
1081 include/grpc++/impl/codegen/method_handler_impl.h
1082 include/grpc++/impl/codegen/rpc_method.h
1083 include/grpc++/impl/codegen/rpc_service_method.h
1084 include/grpc++/impl/codegen/security/auth_context.h
1085 include/grpc++/impl/codegen/serialization_traits.h
1086 include/grpc++/impl/codegen/server_context.h
1087 include/grpc++/impl/codegen/server_interface.h
1088 include/grpc++/impl/codegen/service_type.h
1089 include/grpc++/impl/codegen/status.h
1090 include/grpc++/impl/codegen/status_code_enum.h
1091 include/grpc++/impl/codegen/string_ref.h
1092 include/grpc++/impl/codegen/stub_options.h
1093 include/grpc++/impl/codegen/sync.h
1094 include/grpc++/impl/codegen/sync_cxx11.h
1095 include/grpc++/impl/codegen/sync_no_cxx11.h
1096 include/grpc++/impl/codegen/sync_stream.h
1097 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001098 include/grpc/impl/codegen/byte_buffer_reader.h
1099 include/grpc/impl/codegen/compression_types.h
1100 include/grpc/impl/codegen/connectivity_state.h
1101 include/grpc/impl/codegen/grpc_types.h
1102 include/grpc/impl/codegen/propagation_bits.h
1103 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001104 include/grpc/impl/codegen/atm.h
1105 include/grpc/impl/codegen/atm_gcc_atomic.h
1106 include/grpc/impl/codegen/atm_gcc_sync.h
1107 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001108 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001109 include/grpc/impl/codegen/port_platform.h
1110 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001111 include/grpc/impl/codegen/sync.h
1112 include/grpc/impl/codegen/sync_generic.h
1113 include/grpc/impl/codegen/sync_posix.h
1114 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001115)
1116 string(REPLACE "include/" "" _path ${_hdr})
1117 get_filename_component(_path ${_path} PATH)
1118 install(FILES ${_hdr}
1119 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1120 )
1121endforeach()
1122
1123
1124install(TARGETS grpc++ EXPORT gRPCTargets
1125 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1126 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1127 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1128)
1129
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001130
1131add_library(grpc++_reflection
1132 src/cpp/ext/proto_server_reflection.cc
1133 src/cpp/ext/proto_server_reflection_plugin.cc
1134 src/cpp/ext/reflection.grpc.pb.cc
1135 src/cpp/ext/reflection.pb.cc
1136)
1137
1138target_include_directories(grpc++_reflection
1139 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1140 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1141 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1142 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001143 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001144 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1145)
1146
1147target_link_libraries(grpc++_reflection
1148 grpc++
1149)
1150
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001151foreach(_hdr
1152 include/grpc++/ext/proto_server_reflection_plugin.h
1153 include/grpc++/ext/reflection.grpc.pb.h
1154 include/grpc++/ext/reflection.pb.h
1155 include/grpc++/impl/codegen/proto_utils.h
1156 include/grpc++/impl/codegen/async_stream.h
1157 include/grpc++/impl/codegen/async_unary_call.h
1158 include/grpc++/impl/codegen/call.h
1159 include/grpc++/impl/codegen/call_hook.h
1160 include/grpc++/impl/codegen/channel_interface.h
1161 include/grpc++/impl/codegen/client_context.h
1162 include/grpc++/impl/codegen/client_unary_call.h
1163 include/grpc++/impl/codegen/completion_queue.h
1164 include/grpc++/impl/codegen/completion_queue_tag.h
1165 include/grpc++/impl/codegen/config.h
1166 include/grpc++/impl/codegen/core_codegen_interface.h
1167 include/grpc++/impl/codegen/create_auth_context.h
1168 include/grpc++/impl/codegen/grpc_library.h
1169 include/grpc++/impl/codegen/method_handler_impl.h
1170 include/grpc++/impl/codegen/rpc_method.h
1171 include/grpc++/impl/codegen/rpc_service_method.h
1172 include/grpc++/impl/codegen/security/auth_context.h
1173 include/grpc++/impl/codegen/serialization_traits.h
1174 include/grpc++/impl/codegen/server_context.h
1175 include/grpc++/impl/codegen/server_interface.h
1176 include/grpc++/impl/codegen/service_type.h
1177 include/grpc++/impl/codegen/status.h
1178 include/grpc++/impl/codegen/status_code_enum.h
1179 include/grpc++/impl/codegen/string_ref.h
1180 include/grpc++/impl/codegen/stub_options.h
1181 include/grpc++/impl/codegen/sync.h
1182 include/grpc++/impl/codegen/sync_cxx11.h
1183 include/grpc++/impl/codegen/sync_no_cxx11.h
1184 include/grpc++/impl/codegen/sync_stream.h
1185 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001186 include/grpc/impl/codegen/byte_buffer_reader.h
1187 include/grpc/impl/codegen/compression_types.h
1188 include/grpc/impl/codegen/connectivity_state.h
1189 include/grpc/impl/codegen/grpc_types.h
1190 include/grpc/impl/codegen/propagation_bits.h
1191 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001192 include/grpc/impl/codegen/atm.h
1193 include/grpc/impl/codegen/atm_gcc_atomic.h
1194 include/grpc/impl/codegen/atm_gcc_sync.h
1195 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001196 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001197 include/grpc/impl/codegen/port_platform.h
1198 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001199 include/grpc/impl/codegen/sync.h
1200 include/grpc/impl/codegen/sync_generic.h
1201 include/grpc/impl/codegen/sync_posix.h
1202 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001203 include/grpc++/impl/codegen/config_protobuf.h
1204)
1205 string(REPLACE "include/" "" _path ${_hdr})
1206 get_filename_component(_path ${_path} PATH)
1207 install(FILES ${_hdr}
1208 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1209 )
1210endforeach()
1211
1212
1213install(TARGETS grpc++_reflection EXPORT gRPCTargets
1214 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1215 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1216 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1217)
1218
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001219
1220add_library(grpc++_unsecure
1221 src/cpp/common/insecure_create_auth_context.cc
1222 src/cpp/client/channel.cc
1223 src/cpp/client/client_context.cc
1224 src/cpp/client/create_channel.cc
1225 src/cpp/client/create_channel_internal.cc
1226 src/cpp/client/create_channel_posix.cc
1227 src/cpp/client/credentials.cc
1228 src/cpp/client/generic_stub.cc
1229 src/cpp/client/insecure_credentials.cc
1230 src/cpp/common/channel_arguments.cc
1231 src/cpp/common/completion_queue.cc
1232 src/cpp/common/core_codegen.cc
1233 src/cpp/common/rpc_method.cc
1234 src/cpp/server/async_generic_service.cc
1235 src/cpp/server/create_default_thread_pool.cc
1236 src/cpp/server/dynamic_thread_pool.cc
1237 src/cpp/server/insecure_server_credentials.cc
1238 src/cpp/server/server.cc
1239 src/cpp/server/server_builder.cc
1240 src/cpp/server/server_context.cc
1241 src/cpp/server/server_credentials.cc
1242 src/cpp/server/server_posix.cc
1243 src/cpp/util/byte_buffer.cc
1244 src/cpp/util/slice.cc
1245 src/cpp/util/status.cc
1246 src/cpp/util/string_ref.cc
1247 src/cpp/util/time.cc
1248 src/cpp/codegen/codegen_init.cc
1249)
1250
1251target_include_directories(grpc++_unsecure
1252 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1253 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1254 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1255 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001256 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001257 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1258)
1259
1260target_link_libraries(grpc++_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001261 ${_gRPC_BASELIB_LIBRARIES}
1262 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001263 gpr
1264 grpc_unsecure
Yuchen Zengf0ec5b62016-07-08 13:40:40 -07001265 grpc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001266)
1267
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001268foreach(_hdr
1269 include/grpc++/alarm.h
1270 include/grpc++/channel.h
1271 include/grpc++/client_context.h
1272 include/grpc++/completion_queue.h
1273 include/grpc++/create_channel.h
1274 include/grpc++/create_channel_posix.h
1275 include/grpc++/generic/async_generic_service.h
1276 include/grpc++/generic/generic_stub.h
1277 include/grpc++/grpc++.h
1278 include/grpc++/impl/call.h
1279 include/grpc++/impl/client_unary_call.h
1280 include/grpc++/impl/codegen/core_codegen.h
1281 include/grpc++/impl/grpc_library.h
1282 include/grpc++/impl/method_handler_impl.h
1283 include/grpc++/impl/rpc_method.h
1284 include/grpc++/impl/rpc_service_method.h
1285 include/grpc++/impl/serialization_traits.h
1286 include/grpc++/impl/server_builder_option.h
1287 include/grpc++/impl/server_builder_plugin.h
1288 include/grpc++/impl/server_initializer.h
1289 include/grpc++/impl/service_type.h
1290 include/grpc++/impl/sync.h
1291 include/grpc++/impl/sync_cxx11.h
1292 include/grpc++/impl/sync_no_cxx11.h
1293 include/grpc++/impl/thd.h
1294 include/grpc++/impl/thd_cxx11.h
1295 include/grpc++/impl/thd_no_cxx11.h
1296 include/grpc++/security/auth_context.h
1297 include/grpc++/security/auth_metadata_processor.h
1298 include/grpc++/security/credentials.h
1299 include/grpc++/security/server_credentials.h
1300 include/grpc++/server.h
1301 include/grpc++/server_builder.h
1302 include/grpc++/server_context.h
1303 include/grpc++/server_posix.h
1304 include/grpc++/support/async_stream.h
1305 include/grpc++/support/async_unary_call.h
1306 include/grpc++/support/byte_buffer.h
1307 include/grpc++/support/channel_arguments.h
1308 include/grpc++/support/config.h
1309 include/grpc++/support/slice.h
1310 include/grpc++/support/status.h
1311 include/grpc++/support/status_code_enum.h
1312 include/grpc++/support/string_ref.h
1313 include/grpc++/support/stub_options.h
1314 include/grpc++/support/sync_stream.h
1315 include/grpc++/support/time.h
1316 include/grpc++/impl/codegen/async_stream.h
1317 include/grpc++/impl/codegen/async_unary_call.h
1318 include/grpc++/impl/codegen/call.h
1319 include/grpc++/impl/codegen/call_hook.h
1320 include/grpc++/impl/codegen/channel_interface.h
1321 include/grpc++/impl/codegen/client_context.h
1322 include/grpc++/impl/codegen/client_unary_call.h
1323 include/grpc++/impl/codegen/completion_queue.h
1324 include/grpc++/impl/codegen/completion_queue_tag.h
1325 include/grpc++/impl/codegen/config.h
1326 include/grpc++/impl/codegen/core_codegen_interface.h
1327 include/grpc++/impl/codegen/create_auth_context.h
1328 include/grpc++/impl/codegen/grpc_library.h
1329 include/grpc++/impl/codegen/method_handler_impl.h
1330 include/grpc++/impl/codegen/rpc_method.h
1331 include/grpc++/impl/codegen/rpc_service_method.h
1332 include/grpc++/impl/codegen/security/auth_context.h
1333 include/grpc++/impl/codegen/serialization_traits.h
1334 include/grpc++/impl/codegen/server_context.h
1335 include/grpc++/impl/codegen/server_interface.h
1336 include/grpc++/impl/codegen/service_type.h
1337 include/grpc++/impl/codegen/status.h
1338 include/grpc++/impl/codegen/status_code_enum.h
1339 include/grpc++/impl/codegen/string_ref.h
1340 include/grpc++/impl/codegen/stub_options.h
1341 include/grpc++/impl/codegen/sync.h
1342 include/grpc++/impl/codegen/sync_cxx11.h
1343 include/grpc++/impl/codegen/sync_no_cxx11.h
1344 include/grpc++/impl/codegen/sync_stream.h
1345 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001346 include/grpc/impl/codegen/byte_buffer_reader.h
1347 include/grpc/impl/codegen/compression_types.h
1348 include/grpc/impl/codegen/connectivity_state.h
1349 include/grpc/impl/codegen/grpc_types.h
1350 include/grpc/impl/codegen/propagation_bits.h
1351 include/grpc/impl/codegen/status.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001352 include/grpc/impl/codegen/atm.h
1353 include/grpc/impl/codegen/atm_gcc_atomic.h
1354 include/grpc/impl/codegen/atm_gcc_sync.h
1355 include/grpc/impl/codegen/atm_windows.h
David Garcia Quintas44cb6c92016-08-02 10:26:51 -07001356 include/grpc/impl/codegen/gpr_types.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001357 include/grpc/impl/codegen/port_platform.h
1358 include/grpc/impl/codegen/slice.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001359 include/grpc/impl/codegen/sync.h
1360 include/grpc/impl/codegen/sync_generic.h
1361 include/grpc/impl/codegen/sync_posix.h
1362 include/grpc/impl/codegen/sync_windows.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001363)
1364 string(REPLACE "include/" "" _path ${_hdr})
1365 get_filename_component(_path ${_path} PATH)
1366 install(FILES ${_hdr}
1367 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1368 )
1369endforeach()
1370
1371
1372install(TARGETS grpc++_unsecure EXPORT gRPCTargets
1373 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1374 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1375 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1376)
1377
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001378
1379add_library(grpc_plugin_support
1380 src/compiler/cpp_generator.cc
1381 src/compiler/csharp_generator.cc
1382 src/compiler/node_generator.cc
1383 src/compiler/objective_c_generator.cc
1384 src/compiler/python_generator.cc
1385 src/compiler/ruby_generator.cc
1386)
1387
1388target_include_directories(grpc_plugin_support
1389 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1390 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1391 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1392 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001393 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001394 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1395)
1396
1397target_link_libraries(grpc_plugin_support
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001398 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001399)
1400
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001401foreach(_hdr
1402 include/grpc++/impl/codegen/config_protobuf.h
1403)
1404 string(REPLACE "include/" "" _path ${_hdr})
1405 get_filename_component(_path ${_path} PATH)
1406 install(FILES ${_hdr}
1407 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1408 )
1409endforeach()
1410
1411
1412install(TARGETS grpc_plugin_support EXPORT gRPCTargets
1413 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1414 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1415 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001416)
1417
1418
1419add_library(grpc_csharp_ext
1420 src/csharp/ext/grpc_csharp_ext.c
1421)
1422
1423target_include_directories(grpc_csharp_ext
1424 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1425 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1426 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1427 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001428 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001429 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1430)
1431
1432target_link_libraries(grpc_csharp_ext
1433 grpc
1434 gpr
1435)
1436
1437
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001438
1439install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
1440 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1441 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1442 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1443)
1444
1445
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001446
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001447add_executable(gen_hpack_tables
1448 tools/codegen/core/gen_hpack_tables.c
1449)
1450
1451target_include_directories(gen_hpack_tables
1452 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1453 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1454 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1455 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1456 PRIVATE ${ZLIB_ROOT_DIR}
1457 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1458)
1459
1460target_link_libraries(gen_hpack_tables
1461 gpr
1462 grpc
1463)
1464
1465
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001466install(TARGETS gen_hpack_tables EXPORT gRPCTargets
1467 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1468 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1469 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1470)
1471
1472
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001473add_executable(gen_legal_metadata_characters
1474 tools/codegen/core/gen_legal_metadata_characters.c
1475)
1476
1477target_include_directories(gen_legal_metadata_characters
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
1482 PRIVATE ${ZLIB_ROOT_DIR}
1483 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1484)
1485
1486
1487
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001488install(TARGETS gen_legal_metadata_characters EXPORT gRPCTargets
1489 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1490 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1491 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1492)
1493
1494
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001495add_executable(grpc_create_jwt
1496 test/core/security/create_jwt.c
1497)
1498
1499target_include_directories(grpc_create_jwt
1500 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1501 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1502 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1503 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1504 PRIVATE ${ZLIB_ROOT_DIR}
1505 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1506)
1507
1508target_link_libraries(grpc_create_jwt
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001509 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001510 grpc
1511 gpr
1512)
1513
1514
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001515install(TARGETS grpc_create_jwt EXPORT gRPCTargets
1516 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1517 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1518 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1519)
1520
1521
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001522add_executable(grpc_print_google_default_creds_token
1523 test/core/security/print_google_default_creds_token.c
1524)
1525
1526target_include_directories(grpc_print_google_default_creds_token
1527 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1528 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1529 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1530 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1531 PRIVATE ${ZLIB_ROOT_DIR}
1532 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1533)
1534
1535target_link_libraries(grpc_print_google_default_creds_token
1536 grpc
1537 gpr
1538)
1539
1540
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001541install(TARGETS grpc_print_google_default_creds_token EXPORT gRPCTargets
1542 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1543 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1544 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1545)
1546
1547
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001548add_executable(grpc_verify_jwt
1549 test/core/security/verify_jwt.c
1550)
1551
1552target_include_directories(grpc_verify_jwt
1553 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1554 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1555 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1556 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1557 PRIVATE ${ZLIB_ROOT_DIR}
1558 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1559)
1560
1561target_link_libraries(grpc_verify_jwt
1562 grpc
1563 gpr
1564)
1565
1566
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001567install(TARGETS grpc_verify_jwt EXPORT gRPCTargets
1568 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1569 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1570 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1571)
1572
1573
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001574add_executable(grpc_cpp_plugin
1575 src/compiler/cpp_plugin.cc
1576)
1577
1578target_include_directories(grpc_cpp_plugin
1579 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1580 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1581 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1582 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1583 PRIVATE ${ZLIB_ROOT_DIR}
1584 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1585)
1586
1587target_link_libraries(grpc_cpp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001588 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001589 grpc_plugin_support
1590)
1591
1592
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001593install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
1594 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1595 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1596 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1597)
1598
1599
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001600add_executable(grpc_csharp_plugin
1601 src/compiler/csharp_plugin.cc
1602)
1603
1604target_include_directories(grpc_csharp_plugin
1605 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1606 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1607 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1608 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1609 PRIVATE ${ZLIB_ROOT_DIR}
1610 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1611)
1612
1613target_link_libraries(grpc_csharp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001614 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001615 grpc_plugin_support
1616)
1617
1618
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001619install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
1620 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1621 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1622 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1623)
1624
1625
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001626add_executable(grpc_node_plugin
1627 src/compiler/node_plugin.cc
1628)
1629
1630target_include_directories(grpc_node_plugin
1631 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1632 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1633 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1634 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1635 PRIVATE ${ZLIB_ROOT_DIR}
1636 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1637)
1638
1639target_link_libraries(grpc_node_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001640 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001641 grpc_plugin_support
1642)
1643
1644
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001645install(TARGETS grpc_node_plugin EXPORT gRPCTargets
1646 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1647 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1648 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1649)
1650
1651
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001652add_executable(grpc_objective_c_plugin
1653 src/compiler/objective_c_plugin.cc
1654)
1655
1656target_include_directories(grpc_objective_c_plugin
1657 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1658 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1659 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1660 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1661 PRIVATE ${ZLIB_ROOT_DIR}
1662 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1663)
1664
1665target_link_libraries(grpc_objective_c_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001666 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001667 grpc_plugin_support
1668)
1669
1670
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001671install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
1672 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1673 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1674 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1675)
1676
1677
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001678add_executable(grpc_python_plugin
1679 src/compiler/python_plugin.cc
1680)
1681
1682target_include_directories(grpc_python_plugin
1683 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1684 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1685 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1686 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1687 PRIVATE ${ZLIB_ROOT_DIR}
1688 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1689)
1690
1691target_link_libraries(grpc_python_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001692 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001693 grpc_plugin_support
1694)
1695
1696
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001697install(TARGETS grpc_python_plugin EXPORT gRPCTargets
1698 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1699 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1700 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1701)
1702
1703
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001704add_executable(grpc_ruby_plugin
1705 src/compiler/ruby_plugin.cc
1706)
1707
1708target_include_directories(grpc_ruby_plugin
1709 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1710 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1711 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1712 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1713 PRIVATE ${ZLIB_ROOT_DIR}
1714 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1715)
1716
1717target_link_libraries(grpc_ruby_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001718 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001719 grpc_plugin_support
1720)
1721
1722
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001723install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
1724 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1725 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1726 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1727)
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001728
1729
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001730
1731
1732
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001733
1734
1735
1736install(EXPORT gRPCTargets
1737 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1738 NAMESPACE gRPC::
1739)
1740
1741foreach(_config gRPCConfig gRPCConfigVersion)
1742 configure_file(tools/cmake/${_config}.cmake.in
1743 ${_config}.cmake @ONLY)
1744 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
1745 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
1746 )
1747endforeach()