blob: b8194652519028b64b8a33f2a6215db55a32b01f [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
194 src/core/lib/support/murmur_hash.c
195 src/core/lib/support/slice.c
196 src/core/lib/support/slice_buffer.c
197 src/core/lib/support/stack_lockfree.c
198 src/core/lib/support/string.c
199 src/core/lib/support/string_posix.c
200 src/core/lib/support/string_util_windows.c
201 src/core/lib/support/string_windows.c
202 src/core/lib/support/subprocess_posix.c
203 src/core/lib/support/subprocess_windows.c
204 src/core/lib/support/sync.c
205 src/core/lib/support/sync_posix.c
206 src/core/lib/support/sync_windows.c
207 src/core/lib/support/thd.c
208 src/core/lib/support/thd_posix.c
209 src/core/lib/support/thd_windows.c
210 src/core/lib/support/time.c
211 src/core/lib/support/time_posix.c
212 src/core/lib/support/time_precise.c
213 src/core/lib/support/time_windows.c
214 src/core/lib/support/tls_pthread.c
215 src/core/lib/support/tmpfile_msys.c
216 src/core/lib/support/tmpfile_posix.c
217 src/core/lib/support/tmpfile_windows.c
218 src/core/lib/support/wrap_memcpy.c
219)
220
221target_include_directories(gpr
222 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
223 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
224 PRIVATE ${BORINGSSL_ROOT_DIR}/include
225 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300226 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100227 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
228)
229
230
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300231foreach(_hdr
232 include/grpc/support/alloc.h
233 include/grpc/support/atm.h
234 include/grpc/support/atm_gcc_atomic.h
235 include/grpc/support/atm_gcc_sync.h
236 include/grpc/support/atm_windows.h
237 include/grpc/support/avl.h
238 include/grpc/support/cmdline.h
239 include/grpc/support/cpu.h
240 include/grpc/support/histogram.h
241 include/grpc/support/host_port.h
242 include/grpc/support/log.h
243 include/grpc/support/log_windows.h
244 include/grpc/support/port_platform.h
245 include/grpc/support/slice.h
246 include/grpc/support/slice_buffer.h
247 include/grpc/support/string_util.h
248 include/grpc/support/subprocess.h
249 include/grpc/support/sync.h
250 include/grpc/support/sync_generic.h
251 include/grpc/support/sync_posix.h
252 include/grpc/support/sync_windows.h
253 include/grpc/support/thd.h
254 include/grpc/support/time.h
255 include/grpc/support/tls.h
256 include/grpc/support/tls_gcc.h
257 include/grpc/support/tls_msvc.h
258 include/grpc/support/tls_pthread.h
259 include/grpc/support/useful.h
260 include/grpc/impl/codegen/alloc.h
261 include/grpc/impl/codegen/atm.h
262 include/grpc/impl/codegen/atm_gcc_atomic.h
263 include/grpc/impl/codegen/atm_gcc_sync.h
264 include/grpc/impl/codegen/atm_windows.h
265 include/grpc/impl/codegen/log.h
266 include/grpc/impl/codegen/port_platform.h
267 include/grpc/impl/codegen/slice.h
268 include/grpc/impl/codegen/slice_buffer.h
269 include/grpc/impl/codegen/sync.h
270 include/grpc/impl/codegen/sync_generic.h
271 include/grpc/impl/codegen/sync_posix.h
272 include/grpc/impl/codegen/sync_windows.h
273 include/grpc/impl/codegen/time.h
274)
275 string(REPLACE "include/" "" _path ${_hdr})
276 get_filename_component(_path ${_path} PATH)
277 install(FILES ${_hdr}
278 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
279 )
280endforeach()
281
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200282
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300283if (gRPC_INSTALL)
284 install(TARGETS gpr EXPORT gRPCTargets
285 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
286 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
287 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
288 )
289endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300290
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200291
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100292add_library(grpc
293 src/core/lib/surface/init.c
294 src/core/lib/channel/channel_args.c
295 src/core/lib/channel/channel_stack.c
296 src/core/lib/channel/channel_stack_builder.c
297 src/core/lib/channel/compress_filter.c
298 src/core/lib/channel/connected_channel.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700299 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100300 src/core/lib/channel/http_client_filter.c
301 src/core/lib/channel/http_server_filter.c
302 src/core/lib/compression/compression.c
303 src/core/lib/compression/message_compress.c
304 src/core/lib/debug/trace.c
305 src/core/lib/http/format_request.c
306 src/core/lib/http/httpcli.c
307 src/core/lib/http/parser.c
308 src/core/lib/iomgr/closure.c
309 src/core/lib/iomgr/endpoint.c
310 src/core/lib/iomgr/endpoint_pair_posix.c
311 src/core/lib/iomgr/endpoint_pair_windows.c
312 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200313 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100314 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
315 src/core/lib/iomgr/ev_poll_posix.c
316 src/core/lib/iomgr/ev_posix.c
317 src/core/lib/iomgr/exec_ctx.c
318 src/core/lib/iomgr/executor.c
319 src/core/lib/iomgr/iocp_windows.c
320 src/core/lib/iomgr/iomgr.c
321 src/core/lib/iomgr/iomgr_posix.c
322 src/core/lib/iomgr/iomgr_windows.c
323 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200324 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100325 src/core/lib/iomgr/polling_entity.c
326 src/core/lib/iomgr/pollset_set_windows.c
327 src/core/lib/iomgr/pollset_windows.c
328 src/core/lib/iomgr/resolve_address_posix.c
329 src/core/lib/iomgr/resolve_address_windows.c
330 src/core/lib/iomgr/sockaddr_utils.c
331 src/core/lib/iomgr/socket_utils_common_posix.c
332 src/core/lib/iomgr/socket_utils_linux.c
333 src/core/lib/iomgr/socket_utils_posix.c
334 src/core/lib/iomgr/socket_windows.c
335 src/core/lib/iomgr/tcp_client_posix.c
336 src/core/lib/iomgr/tcp_client_windows.c
337 src/core/lib/iomgr/tcp_posix.c
338 src/core/lib/iomgr/tcp_server_posix.c
339 src/core/lib/iomgr/tcp_server_windows.c
340 src/core/lib/iomgr/tcp_windows.c
341 src/core/lib/iomgr/time_averaged_stats.c
342 src/core/lib/iomgr/timer.c
343 src/core/lib/iomgr/timer_heap.c
344 src/core/lib/iomgr/udp_server.c
345 src/core/lib/iomgr/unix_sockets_posix.c
346 src/core/lib/iomgr/unix_sockets_posix_noop.c
347 src/core/lib/iomgr/wakeup_fd_eventfd.c
348 src/core/lib/iomgr/wakeup_fd_nospecial.c
349 src/core/lib/iomgr/wakeup_fd_pipe.c
350 src/core/lib/iomgr/wakeup_fd_posix.c
351 src/core/lib/iomgr/workqueue_posix.c
352 src/core/lib/iomgr/workqueue_windows.c
353 src/core/lib/json/json.c
354 src/core/lib/json/json_reader.c
355 src/core/lib/json/json_string.c
356 src/core/lib/json/json_writer.c
357 src/core/lib/surface/alarm.c
358 src/core/lib/surface/api_trace.c
359 src/core/lib/surface/byte_buffer.c
360 src/core/lib/surface/byte_buffer_reader.c
361 src/core/lib/surface/call.c
362 src/core/lib/surface/call_details.c
363 src/core/lib/surface/call_log_batch.c
364 src/core/lib/surface/channel.c
365 src/core/lib/surface/channel_init.c
366 src/core/lib/surface/channel_ping.c
367 src/core/lib/surface/channel_stack_type.c
368 src/core/lib/surface/completion_queue.c
369 src/core/lib/surface/event_string.c
370 src/core/lib/surface/lame_client.c
371 src/core/lib/surface/metadata_array.c
372 src/core/lib/surface/server.c
373 src/core/lib/surface/validate_metadata.c
374 src/core/lib/surface/version.c
375 src/core/lib/transport/byte_stream.c
376 src/core/lib/transport/connectivity_state.c
377 src/core/lib/transport/metadata.c
378 src/core/lib/transport/metadata_batch.c
379 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400380 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100381 src/core/lib/transport/transport.c
382 src/core/lib/transport/transport_op_string.c
383 src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.c
384 src/core/ext/transport/chttp2/transport/bin_decoder.c
385 src/core/ext/transport/chttp2/transport/bin_encoder.c
386 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
387 src/core/ext/transport/chttp2/transport/chttp2_transport.c
388 src/core/ext/transport/chttp2/transport/frame_data.c
389 src/core/ext/transport/chttp2/transport/frame_goaway.c
390 src/core/ext/transport/chttp2/transport/frame_ping.c
391 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
392 src/core/ext/transport/chttp2/transport/frame_settings.c
393 src/core/ext/transport/chttp2/transport/frame_window_update.c
394 src/core/ext/transport/chttp2/transport/hpack_encoder.c
395 src/core/ext/transport/chttp2/transport/hpack_parser.c
396 src/core/ext/transport/chttp2/transport/hpack_table.c
397 src/core/ext/transport/chttp2/transport/huffsyms.c
398 src/core/ext/transport/chttp2/transport/incoming_metadata.c
399 src/core/ext/transport/chttp2/transport/parsing.c
400 src/core/ext/transport/chttp2/transport/status_conversion.c
401 src/core/ext/transport/chttp2/transport/stream_lists.c
402 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100403 src/core/ext/transport/chttp2/transport/varint.c
404 src/core/ext/transport/chttp2/transport/writing.c
405 src/core/ext/transport/chttp2/alpn/alpn.c
406 src/core/lib/http/httpcli_security_connector.c
407 src/core/lib/security/context/security_context.c
408 src/core/lib/security/credentials/composite/composite_credentials.c
409 src/core/lib/security/credentials/credentials.c
410 src/core/lib/security/credentials/credentials_metadata.c
411 src/core/lib/security/credentials/fake/fake_credentials.c
412 src/core/lib/security/credentials/google_default/credentials_posix.c
413 src/core/lib/security/credentials/google_default/credentials_windows.c
414 src/core/lib/security/credentials/google_default/google_default_credentials.c
415 src/core/lib/security/credentials/iam/iam_credentials.c
416 src/core/lib/security/credentials/jwt/json_token.c
417 src/core/lib/security/credentials/jwt/jwt_credentials.c
418 src/core/lib/security/credentials/jwt/jwt_verifier.c
419 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
420 src/core/lib/security/credentials/plugin/plugin_credentials.c
421 src/core/lib/security/credentials/ssl/ssl_credentials.c
422 src/core/lib/security/transport/client_auth_filter.c
423 src/core/lib/security/transport/handshake.c
424 src/core/lib/security/transport/secure_endpoint.c
425 src/core/lib/security/transport/security_connector.c
426 src/core/lib/security/transport/server_auth_filter.c
427 src/core/lib/security/transport/tsi_error.c
428 src/core/lib/security/util/b64.c
429 src/core/lib/security/util/json_util.c
430 src/core/lib/surface/init_secure.c
431 src/core/lib/tsi/fake_transport_security.c
432 src/core/lib/tsi/ssl_transport_security.c
433 src/core/lib/tsi/transport_security.c
434 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
435 src/core/ext/client_config/channel_connectivity.c
436 src/core/ext/client_config/client_channel.c
437 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100438 src/core/ext/client_config/client_config_plugin.c
439 src/core/ext/client_config/connector.c
440 src/core/ext/client_config/default_initial_connect_string.c
441 src/core/ext/client_config/initial_connect_string.c
442 src/core/ext/client_config/lb_policy.c
443 src/core/ext/client_config/lb_policy_factory.c
444 src/core/ext/client_config/lb_policy_registry.c
445 src/core/ext/client_config/parse_address.c
446 src/core/ext/client_config/resolver.c
447 src/core/ext/client_config/resolver_factory.c
448 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700449 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100450 src/core/ext/client_config/subchannel.c
451 src/core/ext/client_config/subchannel_call_holder.c
452 src/core/ext/client_config/subchannel_index.c
453 src/core/ext/client_config/uri_parser.c
454 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
455 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
456 src/core/ext/transport/chttp2/client/insecure/channel_create.c
457 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700458 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100459 src/core/ext/lb_policy/grpclb/load_balancer_api.c
460 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
461 third_party/nanopb/pb_common.c
462 third_party/nanopb/pb_decode.c
463 third_party/nanopb/pb_encode.c
464 src/core/ext/lb_policy/pick_first/pick_first.c
465 src/core/ext/lb_policy/round_robin/round_robin.c
466 src/core/ext/resolver/dns/native/dns_resolver.c
467 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
468 src/core/ext/load_reporting/load_reporting.c
469 src/core/ext/load_reporting/load_reporting_filter.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700470 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100471 src/core/ext/census/context.c
472 src/core/ext/census/gen/census.pb.c
473 src/core/ext/census/grpc_context.c
474 src/core/ext/census/grpc_filter.c
475 src/core/ext/census/grpc_plugin.c
476 src/core/ext/census/initialize.c
477 src/core/ext/census/mlog.c
478 src/core/ext/census/operation.c
479 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700480 src/core/ext/census/resource.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100481 src/core/ext/census/tracing.c
482 src/core/plugin_registry/grpc_plugin_registry.c
483)
484
485target_include_directories(grpc
486 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
487 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
488 PRIVATE ${BORINGSSL_ROOT_DIR}/include
489 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300490 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100491 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
492)
493
494target_link_libraries(grpc
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300495 ${_gRPC_BASELIB_LIBRARIES}
496 ${_gRPC_SSL_LIBRARIES}
497 ${_gRPC_ZLIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100498 gpr
499)
500
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300501foreach(_hdr
502 include/grpc/byte_buffer.h
503 include/grpc/byte_buffer_reader.h
504 include/grpc/compression.h
505 include/grpc/grpc.h
506 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200507 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300508 include/grpc/status.h
509 include/grpc/impl/codegen/byte_buffer.h
510 include/grpc/impl/codegen/byte_buffer_reader.h
511 include/grpc/impl/codegen/compression_types.h
512 include/grpc/impl/codegen/connectivity_state.h
513 include/grpc/impl/codegen/grpc_types.h
514 include/grpc/impl/codegen/propagation_bits.h
515 include/grpc/impl/codegen/status.h
516 include/grpc/impl/codegen/alloc.h
517 include/grpc/impl/codegen/atm.h
518 include/grpc/impl/codegen/atm_gcc_atomic.h
519 include/grpc/impl/codegen/atm_gcc_sync.h
520 include/grpc/impl/codegen/atm_windows.h
521 include/grpc/impl/codegen/log.h
522 include/grpc/impl/codegen/port_platform.h
523 include/grpc/impl/codegen/slice.h
524 include/grpc/impl/codegen/slice_buffer.h
525 include/grpc/impl/codegen/sync.h
526 include/grpc/impl/codegen/sync_generic.h
527 include/grpc/impl/codegen/sync_posix.h
528 include/grpc/impl/codegen/sync_windows.h
529 include/grpc/impl/codegen/time.h
530 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300531 include/grpc/census.h
532)
533 string(REPLACE "include/" "" _path ${_hdr})
534 get_filename_component(_path ${_path} PATH)
535 install(FILES ${_hdr}
536 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
537 )
538endforeach()
539
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200540
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300541if (gRPC_INSTALL)
542 install(TARGETS grpc EXPORT gRPCTargets
543 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
544 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
545 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
546 )
547endif()
548
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200549
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100550add_library(grpc_cronet
551 src/core/lib/surface/init.c
552 src/core/lib/channel/channel_args.c
553 src/core/lib/channel/channel_stack.c
554 src/core/lib/channel/channel_stack_builder.c
555 src/core/lib/channel/compress_filter.c
556 src/core/lib/channel/connected_channel.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700557 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100558 src/core/lib/channel/http_client_filter.c
559 src/core/lib/channel/http_server_filter.c
560 src/core/lib/compression/compression.c
561 src/core/lib/compression/message_compress.c
562 src/core/lib/debug/trace.c
563 src/core/lib/http/format_request.c
564 src/core/lib/http/httpcli.c
565 src/core/lib/http/parser.c
566 src/core/lib/iomgr/closure.c
567 src/core/lib/iomgr/endpoint.c
568 src/core/lib/iomgr/endpoint_pair_posix.c
569 src/core/lib/iomgr/endpoint_pair_windows.c
570 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200571 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100572 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
573 src/core/lib/iomgr/ev_poll_posix.c
574 src/core/lib/iomgr/ev_posix.c
575 src/core/lib/iomgr/exec_ctx.c
576 src/core/lib/iomgr/executor.c
577 src/core/lib/iomgr/iocp_windows.c
578 src/core/lib/iomgr/iomgr.c
579 src/core/lib/iomgr/iomgr_posix.c
580 src/core/lib/iomgr/iomgr_windows.c
581 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200582 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100583 src/core/lib/iomgr/polling_entity.c
584 src/core/lib/iomgr/pollset_set_windows.c
585 src/core/lib/iomgr/pollset_windows.c
586 src/core/lib/iomgr/resolve_address_posix.c
587 src/core/lib/iomgr/resolve_address_windows.c
588 src/core/lib/iomgr/sockaddr_utils.c
589 src/core/lib/iomgr/socket_utils_common_posix.c
590 src/core/lib/iomgr/socket_utils_linux.c
591 src/core/lib/iomgr/socket_utils_posix.c
592 src/core/lib/iomgr/socket_windows.c
593 src/core/lib/iomgr/tcp_client_posix.c
594 src/core/lib/iomgr/tcp_client_windows.c
595 src/core/lib/iomgr/tcp_posix.c
596 src/core/lib/iomgr/tcp_server_posix.c
597 src/core/lib/iomgr/tcp_server_windows.c
598 src/core/lib/iomgr/tcp_windows.c
599 src/core/lib/iomgr/time_averaged_stats.c
600 src/core/lib/iomgr/timer.c
601 src/core/lib/iomgr/timer_heap.c
602 src/core/lib/iomgr/udp_server.c
603 src/core/lib/iomgr/unix_sockets_posix.c
604 src/core/lib/iomgr/unix_sockets_posix_noop.c
605 src/core/lib/iomgr/wakeup_fd_eventfd.c
606 src/core/lib/iomgr/wakeup_fd_nospecial.c
607 src/core/lib/iomgr/wakeup_fd_pipe.c
608 src/core/lib/iomgr/wakeup_fd_posix.c
609 src/core/lib/iomgr/workqueue_posix.c
610 src/core/lib/iomgr/workqueue_windows.c
611 src/core/lib/json/json.c
612 src/core/lib/json/json_reader.c
613 src/core/lib/json/json_string.c
614 src/core/lib/json/json_writer.c
615 src/core/lib/surface/alarm.c
616 src/core/lib/surface/api_trace.c
617 src/core/lib/surface/byte_buffer.c
618 src/core/lib/surface/byte_buffer_reader.c
619 src/core/lib/surface/call.c
620 src/core/lib/surface/call_details.c
621 src/core/lib/surface/call_log_batch.c
622 src/core/lib/surface/channel.c
623 src/core/lib/surface/channel_init.c
624 src/core/lib/surface/channel_ping.c
625 src/core/lib/surface/channel_stack_type.c
626 src/core/lib/surface/completion_queue.c
627 src/core/lib/surface/event_string.c
628 src/core/lib/surface/lame_client.c
629 src/core/lib/surface/metadata_array.c
630 src/core/lib/surface/server.c
631 src/core/lib/surface/validate_metadata.c
632 src/core/lib/surface/version.c
633 src/core/lib/transport/byte_stream.c
634 src/core/lib/transport/connectivity_state.c
635 src/core/lib/transport/metadata.c
636 src/core/lib/transport/metadata_batch.c
637 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400638 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100639 src/core/lib/transport/transport.c
640 src/core/lib/transport/transport_op_string.c
641 src/core/ext/transport/cronet/client/secure/cronet_channel_create.c
642 src/core/ext/transport/cronet/transport/cronet_api_dummy.c
643 src/core/ext/transport/cronet/transport/cronet_transport.c
644 src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
645 src/core/ext/transport/chttp2/transport/bin_decoder.c
646 src/core/ext/transport/chttp2/transport/bin_encoder.c
647 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
648 src/core/ext/transport/chttp2/transport/chttp2_transport.c
649 src/core/ext/transport/chttp2/transport/frame_data.c
650 src/core/ext/transport/chttp2/transport/frame_goaway.c
651 src/core/ext/transport/chttp2/transport/frame_ping.c
652 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
653 src/core/ext/transport/chttp2/transport/frame_settings.c
654 src/core/ext/transport/chttp2/transport/frame_window_update.c
655 src/core/ext/transport/chttp2/transport/hpack_encoder.c
656 src/core/ext/transport/chttp2/transport/hpack_parser.c
657 src/core/ext/transport/chttp2/transport/hpack_table.c
658 src/core/ext/transport/chttp2/transport/huffsyms.c
659 src/core/ext/transport/chttp2/transport/incoming_metadata.c
660 src/core/ext/transport/chttp2/transport/parsing.c
661 src/core/ext/transport/chttp2/transport/status_conversion.c
662 src/core/ext/transport/chttp2/transport/stream_lists.c
663 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100664 src/core/ext/transport/chttp2/transport/varint.c
665 src/core/ext/transport/chttp2/transport/writing.c
666 src/core/ext/transport/chttp2/alpn/alpn.c
667 src/core/ext/client_config/channel_connectivity.c
668 src/core/ext/client_config/client_channel.c
669 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100670 src/core/ext/client_config/client_config_plugin.c
671 src/core/ext/client_config/connector.c
672 src/core/ext/client_config/default_initial_connect_string.c
673 src/core/ext/client_config/initial_connect_string.c
674 src/core/ext/client_config/lb_policy.c
675 src/core/ext/client_config/lb_policy_factory.c
676 src/core/ext/client_config/lb_policy_registry.c
677 src/core/ext/client_config/parse_address.c
678 src/core/ext/client_config/resolver.c
679 src/core/ext/client_config/resolver_factory.c
680 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700681 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100682 src/core/ext/client_config/subchannel.c
683 src/core/ext/client_config/subchannel_call_holder.c
684 src/core/ext/client_config/subchannel_index.c
685 src/core/ext/client_config/uri_parser.c
686 src/core/lib/http/httpcli_security_connector.c
687 src/core/lib/security/context/security_context.c
688 src/core/lib/security/credentials/composite/composite_credentials.c
689 src/core/lib/security/credentials/credentials.c
690 src/core/lib/security/credentials/credentials_metadata.c
691 src/core/lib/security/credentials/fake/fake_credentials.c
692 src/core/lib/security/credentials/google_default/credentials_posix.c
693 src/core/lib/security/credentials/google_default/credentials_windows.c
694 src/core/lib/security/credentials/google_default/google_default_credentials.c
695 src/core/lib/security/credentials/iam/iam_credentials.c
696 src/core/lib/security/credentials/jwt/json_token.c
697 src/core/lib/security/credentials/jwt/jwt_credentials.c
698 src/core/lib/security/credentials/jwt/jwt_verifier.c
699 src/core/lib/security/credentials/oauth2/oauth2_credentials.c
700 src/core/lib/security/credentials/plugin/plugin_credentials.c
701 src/core/lib/security/credentials/ssl/ssl_credentials.c
702 src/core/lib/security/transport/client_auth_filter.c
703 src/core/lib/security/transport/handshake.c
704 src/core/lib/security/transport/secure_endpoint.c
705 src/core/lib/security/transport/security_connector.c
706 src/core/lib/security/transport/server_auth_filter.c
707 src/core/lib/security/transport/tsi_error.c
708 src/core/lib/security/util/b64.c
709 src/core/lib/security/util/json_util.c
710 src/core/lib/surface/init_secure.c
711 src/core/lib/tsi/fake_transport_security.c
712 src/core/lib/tsi/ssl_transport_security.c
713 src/core/lib/tsi/transport_security.c
714 src/core/plugin_registry/grpc_cronet_plugin_registry.c
715)
716
717target_include_directories(grpc_cronet
718 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
719 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
720 PRIVATE ${BORINGSSL_ROOT_DIR}/include
721 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300722 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100723 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
724)
725
726target_link_libraries(grpc_cronet
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300727 ${_gRPC_BASELIB_LIBRARIES}
728 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100729 gpr
730)
731
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300732foreach(_hdr
733 include/grpc/byte_buffer.h
734 include/grpc/byte_buffer_reader.h
735 include/grpc/compression.h
736 include/grpc/grpc.h
737 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200738 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300739 include/grpc/status.h
740 include/grpc/impl/codegen/byte_buffer.h
741 include/grpc/impl/codegen/byte_buffer_reader.h
742 include/grpc/impl/codegen/compression_types.h
743 include/grpc/impl/codegen/connectivity_state.h
744 include/grpc/impl/codegen/grpc_types.h
745 include/grpc/impl/codegen/propagation_bits.h
746 include/grpc/impl/codegen/status.h
747 include/grpc/impl/codegen/alloc.h
748 include/grpc/impl/codegen/atm.h
749 include/grpc/impl/codegen/atm_gcc_atomic.h
750 include/grpc/impl/codegen/atm_gcc_sync.h
751 include/grpc/impl/codegen/atm_windows.h
752 include/grpc/impl/codegen/log.h
753 include/grpc/impl/codegen/port_platform.h
754 include/grpc/impl/codegen/slice.h
755 include/grpc/impl/codegen/slice_buffer.h
756 include/grpc/impl/codegen/sync.h
757 include/grpc/impl/codegen/sync_generic.h
758 include/grpc/impl/codegen/sync_posix.h
759 include/grpc/impl/codegen/sync_windows.h
760 include/grpc/impl/codegen/time.h
761 include/grpc/grpc_cronet.h
762 include/grpc/grpc_security.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300763)
764 string(REPLACE "include/" "" _path ${_hdr})
765 get_filename_component(_path ${_path} PATH)
766 install(FILES ${_hdr}
767 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
768 )
769endforeach()
770
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200771
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300772if (gRPC_INSTALL)
773 install(TARGETS grpc_cronet EXPORT gRPCTargets
774 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
775 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
776 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
777 )
778endif()
779
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200780
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100781add_library(grpc_unsecure
782 src/core/lib/surface/init.c
783 src/core/lib/surface/init_unsecure.c
784 src/core/lib/channel/channel_args.c
785 src/core/lib/channel/channel_stack.c
786 src/core/lib/channel/channel_stack_builder.c
787 src/core/lib/channel/compress_filter.c
788 src/core/lib/channel/connected_channel.c
Mark D. Rothdfbdefe2016-07-14 09:18:22 -0700789 src/core/lib/channel/handshaker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100790 src/core/lib/channel/http_client_filter.c
791 src/core/lib/channel/http_server_filter.c
792 src/core/lib/compression/compression.c
793 src/core/lib/compression/message_compress.c
794 src/core/lib/debug/trace.c
795 src/core/lib/http/format_request.c
796 src/core/lib/http/httpcli.c
797 src/core/lib/http/parser.c
798 src/core/lib/iomgr/closure.c
799 src/core/lib/iomgr/endpoint.c
800 src/core/lib/iomgr/endpoint_pair_posix.c
801 src/core/lib/iomgr/endpoint_pair_windows.c
802 src/core/lib/iomgr/error.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200803 src/core/lib/iomgr/ev_epoll_linux.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100804 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
805 src/core/lib/iomgr/ev_poll_posix.c
806 src/core/lib/iomgr/ev_posix.c
807 src/core/lib/iomgr/exec_ctx.c
808 src/core/lib/iomgr/executor.c
809 src/core/lib/iomgr/iocp_windows.c
810 src/core/lib/iomgr/iomgr.c
811 src/core/lib/iomgr/iomgr_posix.c
812 src/core/lib/iomgr/iomgr_windows.c
813 src/core/lib/iomgr/load_file.c
Nicolas "Pixel" Nobleb360c8a2016-07-02 00:54:28 +0200814 src/core/lib/iomgr/network_status_tracker.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100815 src/core/lib/iomgr/polling_entity.c
816 src/core/lib/iomgr/pollset_set_windows.c
817 src/core/lib/iomgr/pollset_windows.c
818 src/core/lib/iomgr/resolve_address_posix.c
819 src/core/lib/iomgr/resolve_address_windows.c
820 src/core/lib/iomgr/sockaddr_utils.c
821 src/core/lib/iomgr/socket_utils_common_posix.c
822 src/core/lib/iomgr/socket_utils_linux.c
823 src/core/lib/iomgr/socket_utils_posix.c
824 src/core/lib/iomgr/socket_windows.c
825 src/core/lib/iomgr/tcp_client_posix.c
826 src/core/lib/iomgr/tcp_client_windows.c
827 src/core/lib/iomgr/tcp_posix.c
828 src/core/lib/iomgr/tcp_server_posix.c
829 src/core/lib/iomgr/tcp_server_windows.c
830 src/core/lib/iomgr/tcp_windows.c
831 src/core/lib/iomgr/time_averaged_stats.c
832 src/core/lib/iomgr/timer.c
833 src/core/lib/iomgr/timer_heap.c
834 src/core/lib/iomgr/udp_server.c
835 src/core/lib/iomgr/unix_sockets_posix.c
836 src/core/lib/iomgr/unix_sockets_posix_noop.c
837 src/core/lib/iomgr/wakeup_fd_eventfd.c
838 src/core/lib/iomgr/wakeup_fd_nospecial.c
839 src/core/lib/iomgr/wakeup_fd_pipe.c
840 src/core/lib/iomgr/wakeup_fd_posix.c
841 src/core/lib/iomgr/workqueue_posix.c
842 src/core/lib/iomgr/workqueue_windows.c
843 src/core/lib/json/json.c
844 src/core/lib/json/json_reader.c
845 src/core/lib/json/json_string.c
846 src/core/lib/json/json_writer.c
847 src/core/lib/surface/alarm.c
848 src/core/lib/surface/api_trace.c
849 src/core/lib/surface/byte_buffer.c
850 src/core/lib/surface/byte_buffer_reader.c
851 src/core/lib/surface/call.c
852 src/core/lib/surface/call_details.c
853 src/core/lib/surface/call_log_batch.c
854 src/core/lib/surface/channel.c
855 src/core/lib/surface/channel_init.c
856 src/core/lib/surface/channel_ping.c
857 src/core/lib/surface/channel_stack_type.c
858 src/core/lib/surface/completion_queue.c
859 src/core/lib/surface/event_string.c
860 src/core/lib/surface/lame_client.c
861 src/core/lib/surface/metadata_array.c
862 src/core/lib/surface/server.c
863 src/core/lib/surface/validate_metadata.c
864 src/core/lib/surface/version.c
865 src/core/lib/transport/byte_stream.c
866 src/core/lib/transport/connectivity_state.c
867 src/core/lib/transport/metadata.c
868 src/core/lib/transport/metadata_batch.c
869 src/core/lib/transport/static_metadata.c
Robbie Shade710d2422016-07-13 15:15:38 -0400870 src/core/lib/transport/timeout_encoding.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100871 src/core/lib/transport/transport.c
872 src/core/lib/transport/transport_op_string.c
873 src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
874 src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
875 src/core/ext/transport/chttp2/transport/bin_decoder.c
876 src/core/ext/transport/chttp2/transport/bin_encoder.c
877 src/core/ext/transport/chttp2/transport/chttp2_plugin.c
878 src/core/ext/transport/chttp2/transport/chttp2_transport.c
879 src/core/ext/transport/chttp2/transport/frame_data.c
880 src/core/ext/transport/chttp2/transport/frame_goaway.c
881 src/core/ext/transport/chttp2/transport/frame_ping.c
882 src/core/ext/transport/chttp2/transport/frame_rst_stream.c
883 src/core/ext/transport/chttp2/transport/frame_settings.c
884 src/core/ext/transport/chttp2/transport/frame_window_update.c
885 src/core/ext/transport/chttp2/transport/hpack_encoder.c
886 src/core/ext/transport/chttp2/transport/hpack_parser.c
887 src/core/ext/transport/chttp2/transport/hpack_table.c
888 src/core/ext/transport/chttp2/transport/huffsyms.c
889 src/core/ext/transport/chttp2/transport/incoming_metadata.c
890 src/core/ext/transport/chttp2/transport/parsing.c
891 src/core/ext/transport/chttp2/transport/status_conversion.c
892 src/core/ext/transport/chttp2/transport/stream_lists.c
893 src/core/ext/transport/chttp2/transport/stream_map.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100894 src/core/ext/transport/chttp2/transport/varint.c
895 src/core/ext/transport/chttp2/transport/writing.c
896 src/core/ext/transport/chttp2/alpn/alpn.c
897 src/core/ext/transport/chttp2/client/insecure/channel_create.c
898 src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
899 src/core/ext/client_config/channel_connectivity.c
900 src/core/ext/client_config/client_channel.c
901 src/core/ext/client_config/client_channel_factory.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100902 src/core/ext/client_config/client_config_plugin.c
903 src/core/ext/client_config/connector.c
904 src/core/ext/client_config/default_initial_connect_string.c
905 src/core/ext/client_config/initial_connect_string.c
906 src/core/ext/client_config/lb_policy.c
907 src/core/ext/client_config/lb_policy_factory.c
908 src/core/ext/client_config/lb_policy_registry.c
909 src/core/ext/client_config/parse_address.c
910 src/core/ext/client_config/resolver.c
911 src/core/ext/client_config/resolver_factory.c
912 src/core/ext/client_config/resolver_registry.c
Mark D. Rothff4df062016-08-22 15:02:49 -0700913 src/core/ext/client_config/resolver_result.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100914 src/core/ext/client_config/subchannel.c
915 src/core/ext/client_config/subchannel_call_holder.c
916 src/core/ext/client_config/subchannel_index.c
917 src/core/ext/client_config/uri_parser.c
918 src/core/ext/resolver/dns/native/dns_resolver.c
919 src/core/ext/resolver/sockaddr/sockaddr_resolver.c
920 src/core/ext/load_reporting/load_reporting.c
921 src/core/ext/load_reporting/load_reporting_filter.c
David Garcia Quintas7c3ba122016-07-14 11:38:38 -0700922 src/core/ext/lb_policy/grpclb/grpclb.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100923 src/core/ext/lb_policy/grpclb/load_balancer_api.c
924 src/core/ext/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c
925 third_party/nanopb/pb_common.c
926 third_party/nanopb/pb_decode.c
927 third_party/nanopb/pb_encode.c
928 src/core/ext/lb_policy/pick_first/pick_first.c
929 src/core/ext/lb_policy/round_robin/round_robin.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700930 src/core/ext/census/base_resources.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100931 src/core/ext/census/context.c
932 src/core/ext/census/gen/census.pb.c
933 src/core/ext/census/grpc_context.c
934 src/core/ext/census/grpc_filter.c
935 src/core/ext/census/grpc_plugin.c
936 src/core/ext/census/initialize.c
937 src/core/ext/census/mlog.c
938 src/core/ext/census/operation.c
939 src/core/ext/census/placeholders.c
Alistair Veitch3abd27e2016-07-21 17:29:04 -0700940 src/core/ext/census/resource.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100941 src/core/ext/census/tracing.c
942 src/core/plugin_registry/grpc_unsecure_plugin_registry.c
943)
944
945target_include_directories(grpc_unsecure
946 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
947 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
948 PRIVATE ${BORINGSSL_ROOT_DIR}/include
949 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300950 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100951 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
952)
953
954target_link_libraries(grpc_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +0300955 ${_gRPC_BASELIB_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +0100956 gpr
957)
958
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300959foreach(_hdr
960 include/grpc/byte_buffer.h
961 include/grpc/byte_buffer_reader.h
962 include/grpc/compression.h
963 include/grpc/grpc.h
964 include/grpc/grpc_posix.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +0200965 include/grpc/grpc_security_constants.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +0300966 include/grpc/status.h
967 include/grpc/impl/codegen/byte_buffer.h
968 include/grpc/impl/codegen/byte_buffer_reader.h
969 include/grpc/impl/codegen/compression_types.h
970 include/grpc/impl/codegen/connectivity_state.h
971 include/grpc/impl/codegen/grpc_types.h
972 include/grpc/impl/codegen/propagation_bits.h
973 include/grpc/impl/codegen/status.h
974 include/grpc/impl/codegen/alloc.h
975 include/grpc/impl/codegen/atm.h
976 include/grpc/impl/codegen/atm_gcc_atomic.h
977 include/grpc/impl/codegen/atm_gcc_sync.h
978 include/grpc/impl/codegen/atm_windows.h
979 include/grpc/impl/codegen/log.h
980 include/grpc/impl/codegen/port_platform.h
981 include/grpc/impl/codegen/slice.h
982 include/grpc/impl/codegen/slice_buffer.h
983 include/grpc/impl/codegen/sync.h
984 include/grpc/impl/codegen/sync_generic.h
985 include/grpc/impl/codegen/sync_posix.h
986 include/grpc/impl/codegen/sync_windows.h
987 include/grpc/impl/codegen/time.h
988 include/grpc/census.h
989)
990 string(REPLACE "include/" "" _path ${_hdr})
991 get_filename_component(_path ${_path} PATH)
992 install(FILES ${_hdr}
993 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
994 )
995endforeach()
996
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +0200997
Arkadiy Shapkin40beb372016-08-17 14:42:36 +0300998if (gRPC_INSTALL)
999 install(TARGETS grpc_unsecure EXPORT gRPCTargets
1000 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1001 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1002 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1003 )
1004endif()
1005
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001006
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001007add_library(grpc++
1008 src/cpp/client/secure_credentials.cc
1009 src/cpp/common/auth_property_iterator.cc
1010 src/cpp/common/secure_auth_context.cc
1011 src/cpp/common/secure_channel_arguments.cc
1012 src/cpp/common/secure_create_auth_context.cc
1013 src/cpp/server/secure_server_credentials.cc
1014 src/cpp/client/channel.cc
1015 src/cpp/client/client_context.cc
1016 src/cpp/client/create_channel.cc
1017 src/cpp/client/create_channel_internal.cc
1018 src/cpp/client/create_channel_posix.cc
1019 src/cpp/client/credentials.cc
1020 src/cpp/client/generic_stub.cc
1021 src/cpp/client/insecure_credentials.cc
1022 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001023 src/cpp/common/channel_filter.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001024 src/cpp/common/completion_queue.cc
1025 src/cpp/common/core_codegen.cc
1026 src/cpp/common/rpc_method.cc
1027 src/cpp/server/async_generic_service.cc
1028 src/cpp/server/create_default_thread_pool.cc
1029 src/cpp/server/dynamic_thread_pool.cc
1030 src/cpp/server/insecure_server_credentials.cc
1031 src/cpp/server/server.cc
1032 src/cpp/server/server_builder.cc
1033 src/cpp/server/server_context.cc
1034 src/cpp/server/server_credentials.cc
1035 src/cpp/server/server_posix.cc
1036 src/cpp/util/byte_buffer.cc
1037 src/cpp/util/slice.cc
1038 src/cpp/util/status.cc
1039 src/cpp/util/string_ref.cc
1040 src/cpp/util/time.cc
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001041 src/core/lib/channel/channel_args.c
1042 src/core/lib/channel/channel_stack.c
1043 src/core/lib/channel/channel_stack_builder.c
1044 src/core/lib/channel/compress_filter.c
1045 src/core/lib/channel/connected_channel.c
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +02001046 src/core/lib/channel/handshaker.c
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001047 src/core/lib/channel/http_client_filter.c
1048 src/core/lib/channel/http_server_filter.c
1049 src/core/lib/compression/compression.c
1050 src/core/lib/compression/message_compress.c
1051 src/core/lib/debug/trace.c
1052 src/core/lib/http/format_request.c
1053 src/core/lib/http/httpcli.c
1054 src/core/lib/http/parser.c
1055 src/core/lib/iomgr/closure.c
1056 src/core/lib/iomgr/endpoint.c
1057 src/core/lib/iomgr/endpoint_pair_posix.c
1058 src/core/lib/iomgr/endpoint_pair_windows.c
1059 src/core/lib/iomgr/error.c
1060 src/core/lib/iomgr/ev_epoll_linux.c
1061 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
1062 src/core/lib/iomgr/ev_poll_posix.c
1063 src/core/lib/iomgr/ev_posix.c
1064 src/core/lib/iomgr/exec_ctx.c
1065 src/core/lib/iomgr/executor.c
1066 src/core/lib/iomgr/iocp_windows.c
1067 src/core/lib/iomgr/iomgr.c
1068 src/core/lib/iomgr/iomgr_posix.c
1069 src/core/lib/iomgr/iomgr_windows.c
1070 src/core/lib/iomgr/load_file.c
1071 src/core/lib/iomgr/network_status_tracker.c
1072 src/core/lib/iomgr/polling_entity.c
1073 src/core/lib/iomgr/pollset_set_windows.c
1074 src/core/lib/iomgr/pollset_windows.c
1075 src/core/lib/iomgr/resolve_address_posix.c
1076 src/core/lib/iomgr/resolve_address_windows.c
1077 src/core/lib/iomgr/sockaddr_utils.c
1078 src/core/lib/iomgr/socket_utils_common_posix.c
1079 src/core/lib/iomgr/socket_utils_linux.c
1080 src/core/lib/iomgr/socket_utils_posix.c
1081 src/core/lib/iomgr/socket_windows.c
1082 src/core/lib/iomgr/tcp_client_posix.c
1083 src/core/lib/iomgr/tcp_client_windows.c
1084 src/core/lib/iomgr/tcp_posix.c
1085 src/core/lib/iomgr/tcp_server_posix.c
1086 src/core/lib/iomgr/tcp_server_windows.c
1087 src/core/lib/iomgr/tcp_windows.c
1088 src/core/lib/iomgr/time_averaged_stats.c
1089 src/core/lib/iomgr/timer.c
1090 src/core/lib/iomgr/timer_heap.c
1091 src/core/lib/iomgr/udp_server.c
1092 src/core/lib/iomgr/unix_sockets_posix.c
1093 src/core/lib/iomgr/unix_sockets_posix_noop.c
1094 src/core/lib/iomgr/wakeup_fd_eventfd.c
1095 src/core/lib/iomgr/wakeup_fd_nospecial.c
1096 src/core/lib/iomgr/wakeup_fd_pipe.c
1097 src/core/lib/iomgr/wakeup_fd_posix.c
1098 src/core/lib/iomgr/workqueue_posix.c
1099 src/core/lib/iomgr/workqueue_windows.c
1100 src/core/lib/json/json.c
1101 src/core/lib/json/json_reader.c
1102 src/core/lib/json/json_string.c
1103 src/core/lib/json/json_writer.c
1104 src/core/lib/surface/alarm.c
1105 src/core/lib/surface/api_trace.c
1106 src/core/lib/surface/byte_buffer.c
1107 src/core/lib/surface/byte_buffer_reader.c
1108 src/core/lib/surface/call.c
1109 src/core/lib/surface/call_details.c
1110 src/core/lib/surface/call_log_batch.c
1111 src/core/lib/surface/channel.c
1112 src/core/lib/surface/channel_init.c
1113 src/core/lib/surface/channel_ping.c
1114 src/core/lib/surface/channel_stack_type.c
1115 src/core/lib/surface/completion_queue.c
1116 src/core/lib/surface/event_string.c
1117 src/core/lib/surface/lame_client.c
1118 src/core/lib/surface/metadata_array.c
1119 src/core/lib/surface/server.c
1120 src/core/lib/surface/validate_metadata.c
1121 src/core/lib/surface/version.c
1122 src/core/lib/transport/byte_stream.c
1123 src/core/lib/transport/connectivity_state.c
1124 src/core/lib/transport/metadata.c
1125 src/core/lib/transport/metadata_batch.c
1126 src/core/lib/transport/static_metadata.c
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +02001127 src/core/lib/transport/timeout_encoding.c
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001128 src/core/lib/transport/transport.c
1129 src/core/lib/transport/transport_op_string.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001130 src/cpp/codegen/codegen_init.cc
1131)
1132
1133target_include_directories(grpc++
1134 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1135 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1136 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1137 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001138 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001139 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1140)
1141
1142target_link_libraries(grpc++
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001143 ${_gRPC_BASELIB_LIBRARIES}
1144 ${_gRPC_SSL_LIBRARIES}
1145 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001146 grpc
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001147 gpr
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001148)
1149
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001150foreach(_hdr
1151 include/grpc++/alarm.h
1152 include/grpc++/channel.h
1153 include/grpc++/client_context.h
1154 include/grpc++/completion_queue.h
1155 include/grpc++/create_channel.h
1156 include/grpc++/create_channel_posix.h
1157 include/grpc++/generic/async_generic_service.h
1158 include/grpc++/generic/generic_stub.h
1159 include/grpc++/grpc++.h
1160 include/grpc++/impl/call.h
1161 include/grpc++/impl/client_unary_call.h
1162 include/grpc++/impl/codegen/core_codegen.h
1163 include/grpc++/impl/grpc_library.h
1164 include/grpc++/impl/method_handler_impl.h
1165 include/grpc++/impl/rpc_method.h
1166 include/grpc++/impl/rpc_service_method.h
1167 include/grpc++/impl/serialization_traits.h
1168 include/grpc++/impl/server_builder_option.h
1169 include/grpc++/impl/server_builder_plugin.h
1170 include/grpc++/impl/server_initializer.h
1171 include/grpc++/impl/service_type.h
1172 include/grpc++/impl/sync.h
1173 include/grpc++/impl/sync_cxx11.h
1174 include/grpc++/impl/sync_no_cxx11.h
1175 include/grpc++/impl/thd.h
1176 include/grpc++/impl/thd_cxx11.h
1177 include/grpc++/impl/thd_no_cxx11.h
1178 include/grpc++/security/auth_context.h
1179 include/grpc++/security/auth_metadata_processor.h
1180 include/grpc++/security/credentials.h
1181 include/grpc++/security/server_credentials.h
1182 include/grpc++/server.h
1183 include/grpc++/server_builder.h
1184 include/grpc++/server_context.h
1185 include/grpc++/server_posix.h
1186 include/grpc++/support/async_stream.h
1187 include/grpc++/support/async_unary_call.h
1188 include/grpc++/support/byte_buffer.h
1189 include/grpc++/support/channel_arguments.h
1190 include/grpc++/support/config.h
1191 include/grpc++/support/slice.h
1192 include/grpc++/support/status.h
1193 include/grpc++/support/status_code_enum.h
1194 include/grpc++/support/string_ref.h
1195 include/grpc++/support/stub_options.h
1196 include/grpc++/support/sync_stream.h
1197 include/grpc++/support/time.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +02001198 include/grpc/byte_buffer.h
1199 include/grpc/byte_buffer_reader.h
1200 include/grpc/compression.h
1201 include/grpc/grpc.h
1202 include/grpc/grpc_posix.h
1203 include/grpc/grpc_security_constants.h
1204 include/grpc/status.h
1205 include/grpc/impl/codegen/byte_buffer.h
1206 include/grpc/impl/codegen/byte_buffer_reader.h
1207 include/grpc/impl/codegen/compression_types.h
1208 include/grpc/impl/codegen/connectivity_state.h
1209 include/grpc/impl/codegen/grpc_types.h
1210 include/grpc/impl/codegen/propagation_bits.h
1211 include/grpc/impl/codegen/status.h
1212 include/grpc/impl/codegen/alloc.h
1213 include/grpc/impl/codegen/atm.h
1214 include/grpc/impl/codegen/atm_gcc_atomic.h
1215 include/grpc/impl/codegen/atm_gcc_sync.h
1216 include/grpc/impl/codegen/atm_windows.h
1217 include/grpc/impl/codegen/log.h
1218 include/grpc/impl/codegen/port_platform.h
1219 include/grpc/impl/codegen/slice.h
1220 include/grpc/impl/codegen/slice_buffer.h
1221 include/grpc/impl/codegen/sync.h
1222 include/grpc/impl/codegen/sync_generic.h
1223 include/grpc/impl/codegen/sync_posix.h
1224 include/grpc/impl/codegen/sync_windows.h
1225 include/grpc/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001226 include/grpc++/impl/codegen/async_stream.h
1227 include/grpc++/impl/codegen/async_unary_call.h
1228 include/grpc++/impl/codegen/call.h
1229 include/grpc++/impl/codegen/call_hook.h
1230 include/grpc++/impl/codegen/channel_interface.h
1231 include/grpc++/impl/codegen/client_context.h
1232 include/grpc++/impl/codegen/client_unary_call.h
1233 include/grpc++/impl/codegen/completion_queue.h
1234 include/grpc++/impl/codegen/completion_queue_tag.h
1235 include/grpc++/impl/codegen/config.h
1236 include/grpc++/impl/codegen/core_codegen_interface.h
1237 include/grpc++/impl/codegen/create_auth_context.h
1238 include/grpc++/impl/codegen/grpc_library.h
1239 include/grpc++/impl/codegen/method_handler_impl.h
1240 include/grpc++/impl/codegen/rpc_method.h
1241 include/grpc++/impl/codegen/rpc_service_method.h
1242 include/grpc++/impl/codegen/security/auth_context.h
1243 include/grpc++/impl/codegen/serialization_traits.h
1244 include/grpc++/impl/codegen/server_context.h
1245 include/grpc++/impl/codegen/server_interface.h
1246 include/grpc++/impl/codegen/service_type.h
1247 include/grpc++/impl/codegen/status.h
1248 include/grpc++/impl/codegen/status_code_enum.h
1249 include/grpc++/impl/codegen/string_ref.h
1250 include/grpc++/impl/codegen/stub_options.h
1251 include/grpc++/impl/codegen/sync.h
1252 include/grpc++/impl/codegen/sync_cxx11.h
1253 include/grpc++/impl/codegen/sync_no_cxx11.h
1254 include/grpc++/impl/codegen/sync_stream.h
1255 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001256)
1257 string(REPLACE "include/" "" _path ${_hdr})
1258 get_filename_component(_path ${_path} PATH)
1259 install(FILES ${_hdr}
1260 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1261 )
1262endforeach()
1263
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001264
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001265if (gRPC_INSTALL)
1266 install(TARGETS grpc++ EXPORT gRPCTargets
1267 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1268 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1269 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1270 )
1271endif()
1272
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001273
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001274add_library(grpc++_reflection
1275 src/cpp/ext/proto_server_reflection.cc
1276 src/cpp/ext/proto_server_reflection_plugin.cc
1277 src/cpp/ext/reflection.grpc.pb.cc
1278 src/cpp/ext/reflection.pb.cc
1279)
1280
1281target_include_directories(grpc++_reflection
1282 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1283 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1284 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1285 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001286 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001287 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1288)
1289
1290target_link_libraries(grpc++_reflection
1291 grpc++
1292)
1293
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001294foreach(_hdr
1295 include/grpc++/ext/proto_server_reflection_plugin.h
1296 include/grpc++/ext/reflection.grpc.pb.h
1297 include/grpc++/ext/reflection.pb.h
1298 include/grpc++/impl/codegen/proto_utils.h
1299 include/grpc++/impl/codegen/async_stream.h
1300 include/grpc++/impl/codegen/async_unary_call.h
1301 include/grpc++/impl/codegen/call.h
1302 include/grpc++/impl/codegen/call_hook.h
1303 include/grpc++/impl/codegen/channel_interface.h
1304 include/grpc++/impl/codegen/client_context.h
1305 include/grpc++/impl/codegen/client_unary_call.h
1306 include/grpc++/impl/codegen/completion_queue.h
1307 include/grpc++/impl/codegen/completion_queue_tag.h
1308 include/grpc++/impl/codegen/config.h
1309 include/grpc++/impl/codegen/core_codegen_interface.h
1310 include/grpc++/impl/codegen/create_auth_context.h
1311 include/grpc++/impl/codegen/grpc_library.h
1312 include/grpc++/impl/codegen/method_handler_impl.h
1313 include/grpc++/impl/codegen/rpc_method.h
1314 include/grpc++/impl/codegen/rpc_service_method.h
1315 include/grpc++/impl/codegen/security/auth_context.h
1316 include/grpc++/impl/codegen/serialization_traits.h
1317 include/grpc++/impl/codegen/server_context.h
1318 include/grpc++/impl/codegen/server_interface.h
1319 include/grpc++/impl/codegen/service_type.h
1320 include/grpc++/impl/codegen/status.h
1321 include/grpc++/impl/codegen/status_code_enum.h
1322 include/grpc++/impl/codegen/string_ref.h
1323 include/grpc++/impl/codegen/stub_options.h
1324 include/grpc++/impl/codegen/sync.h
1325 include/grpc++/impl/codegen/sync_cxx11.h
1326 include/grpc++/impl/codegen/sync_no_cxx11.h
1327 include/grpc++/impl/codegen/sync_stream.h
1328 include/grpc++/impl/codegen/time.h
1329 include/grpc/impl/codegen/byte_buffer.h
1330 include/grpc/impl/codegen/byte_buffer_reader.h
1331 include/grpc/impl/codegen/compression_types.h
1332 include/grpc/impl/codegen/connectivity_state.h
1333 include/grpc/impl/codegen/grpc_types.h
1334 include/grpc/impl/codegen/propagation_bits.h
1335 include/grpc/impl/codegen/status.h
1336 include/grpc/impl/codegen/alloc.h
1337 include/grpc/impl/codegen/atm.h
1338 include/grpc/impl/codegen/atm_gcc_atomic.h
1339 include/grpc/impl/codegen/atm_gcc_sync.h
1340 include/grpc/impl/codegen/atm_windows.h
1341 include/grpc/impl/codegen/log.h
1342 include/grpc/impl/codegen/port_platform.h
1343 include/grpc/impl/codegen/slice.h
1344 include/grpc/impl/codegen/slice_buffer.h
1345 include/grpc/impl/codegen/sync.h
1346 include/grpc/impl/codegen/sync_generic.h
1347 include/grpc/impl/codegen/sync_posix.h
1348 include/grpc/impl/codegen/sync_windows.h
1349 include/grpc/impl/codegen/time.h
1350 include/grpc++/impl/codegen/config_protobuf.h
1351)
1352 string(REPLACE "include/" "" _path ${_hdr})
1353 get_filename_component(_path ${_path} PATH)
1354 install(FILES ${_hdr}
1355 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1356 )
1357endforeach()
1358
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001359
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001360if (gRPC_INSTALL)
1361 install(TARGETS grpc++_reflection EXPORT gRPCTargets
1362 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1363 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1364 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1365 )
1366endif()
1367
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001368
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001369add_library(grpc++_unsecure
1370 src/cpp/common/insecure_create_auth_context.cc
1371 src/cpp/client/channel.cc
1372 src/cpp/client/client_context.cc
1373 src/cpp/client/create_channel.cc
1374 src/cpp/client/create_channel_internal.cc
1375 src/cpp/client/create_channel_posix.cc
1376 src/cpp/client/credentials.cc
1377 src/cpp/client/generic_stub.cc
1378 src/cpp/client/insecure_credentials.cc
1379 src/cpp/common/channel_arguments.cc
Mark D. Roth4004ac22016-08-02 10:08:27 -07001380 src/cpp/common/channel_filter.cc
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001381 src/cpp/common/completion_queue.cc
1382 src/cpp/common/core_codegen.cc
1383 src/cpp/common/rpc_method.cc
1384 src/cpp/server/async_generic_service.cc
1385 src/cpp/server/create_default_thread_pool.cc
1386 src/cpp/server/dynamic_thread_pool.cc
1387 src/cpp/server/insecure_server_credentials.cc
1388 src/cpp/server/server.cc
1389 src/cpp/server/server_builder.cc
1390 src/cpp/server/server_context.cc
1391 src/cpp/server/server_credentials.cc
1392 src/cpp/server/server_posix.cc
1393 src/cpp/util/byte_buffer.cc
1394 src/cpp/util/slice.cc
1395 src/cpp/util/status.cc
1396 src/cpp/util/string_ref.cc
1397 src/cpp/util/time.cc
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001398 src/core/lib/channel/channel_args.c
1399 src/core/lib/channel/channel_stack.c
1400 src/core/lib/channel/channel_stack_builder.c
1401 src/core/lib/channel/compress_filter.c
1402 src/core/lib/channel/connected_channel.c
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +02001403 src/core/lib/channel/handshaker.c
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001404 src/core/lib/channel/http_client_filter.c
1405 src/core/lib/channel/http_server_filter.c
1406 src/core/lib/compression/compression.c
1407 src/core/lib/compression/message_compress.c
1408 src/core/lib/debug/trace.c
1409 src/core/lib/http/format_request.c
1410 src/core/lib/http/httpcli.c
1411 src/core/lib/http/parser.c
1412 src/core/lib/iomgr/closure.c
1413 src/core/lib/iomgr/endpoint.c
1414 src/core/lib/iomgr/endpoint_pair_posix.c
1415 src/core/lib/iomgr/endpoint_pair_windows.c
1416 src/core/lib/iomgr/error.c
1417 src/core/lib/iomgr/ev_epoll_linux.c
1418 src/core/lib/iomgr/ev_poll_and_epoll_posix.c
1419 src/core/lib/iomgr/ev_poll_posix.c
1420 src/core/lib/iomgr/ev_posix.c
1421 src/core/lib/iomgr/exec_ctx.c
1422 src/core/lib/iomgr/executor.c
1423 src/core/lib/iomgr/iocp_windows.c
1424 src/core/lib/iomgr/iomgr.c
1425 src/core/lib/iomgr/iomgr_posix.c
1426 src/core/lib/iomgr/iomgr_windows.c
1427 src/core/lib/iomgr/load_file.c
1428 src/core/lib/iomgr/network_status_tracker.c
1429 src/core/lib/iomgr/polling_entity.c
1430 src/core/lib/iomgr/pollset_set_windows.c
1431 src/core/lib/iomgr/pollset_windows.c
1432 src/core/lib/iomgr/resolve_address_posix.c
1433 src/core/lib/iomgr/resolve_address_windows.c
1434 src/core/lib/iomgr/sockaddr_utils.c
1435 src/core/lib/iomgr/socket_utils_common_posix.c
1436 src/core/lib/iomgr/socket_utils_linux.c
1437 src/core/lib/iomgr/socket_utils_posix.c
1438 src/core/lib/iomgr/socket_windows.c
1439 src/core/lib/iomgr/tcp_client_posix.c
1440 src/core/lib/iomgr/tcp_client_windows.c
1441 src/core/lib/iomgr/tcp_posix.c
1442 src/core/lib/iomgr/tcp_server_posix.c
1443 src/core/lib/iomgr/tcp_server_windows.c
1444 src/core/lib/iomgr/tcp_windows.c
1445 src/core/lib/iomgr/time_averaged_stats.c
1446 src/core/lib/iomgr/timer.c
1447 src/core/lib/iomgr/timer_heap.c
1448 src/core/lib/iomgr/udp_server.c
1449 src/core/lib/iomgr/unix_sockets_posix.c
1450 src/core/lib/iomgr/unix_sockets_posix_noop.c
1451 src/core/lib/iomgr/wakeup_fd_eventfd.c
1452 src/core/lib/iomgr/wakeup_fd_nospecial.c
1453 src/core/lib/iomgr/wakeup_fd_pipe.c
1454 src/core/lib/iomgr/wakeup_fd_posix.c
1455 src/core/lib/iomgr/workqueue_posix.c
1456 src/core/lib/iomgr/workqueue_windows.c
1457 src/core/lib/json/json.c
1458 src/core/lib/json/json_reader.c
1459 src/core/lib/json/json_string.c
1460 src/core/lib/json/json_writer.c
1461 src/core/lib/surface/alarm.c
1462 src/core/lib/surface/api_trace.c
1463 src/core/lib/surface/byte_buffer.c
1464 src/core/lib/surface/byte_buffer_reader.c
1465 src/core/lib/surface/call.c
1466 src/core/lib/surface/call_details.c
1467 src/core/lib/surface/call_log_batch.c
1468 src/core/lib/surface/channel.c
1469 src/core/lib/surface/channel_init.c
1470 src/core/lib/surface/channel_ping.c
1471 src/core/lib/surface/channel_stack_type.c
1472 src/core/lib/surface/completion_queue.c
1473 src/core/lib/surface/event_string.c
1474 src/core/lib/surface/lame_client.c
1475 src/core/lib/surface/metadata_array.c
1476 src/core/lib/surface/server.c
1477 src/core/lib/surface/validate_metadata.c
1478 src/core/lib/surface/version.c
1479 src/core/lib/transport/byte_stream.c
1480 src/core/lib/transport/connectivity_state.c
1481 src/core/lib/transport/metadata.c
1482 src/core/lib/transport/metadata_batch.c
1483 src/core/lib/transport/static_metadata.c
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +02001484 src/core/lib/transport/timeout_encoding.c
Nicolas "Pixel" Noblea469e5d2016-08-16 22:09:27 +02001485 src/core/lib/transport/transport.c
1486 src/core/lib/transport/transport_op_string.c
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001487 src/cpp/codegen/codegen_init.cc
1488)
1489
1490target_include_directories(grpc++_unsecure
1491 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1492 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1493 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1494 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001495 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001496 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1497)
1498
1499target_link_libraries(grpc++_unsecure
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001500 ${_gRPC_BASELIB_LIBRARIES}
1501 ${_gRPC_PROTOBUF_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001502 gpr
1503 grpc_unsecure
1504)
1505
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001506foreach(_hdr
1507 include/grpc++/alarm.h
1508 include/grpc++/channel.h
1509 include/grpc++/client_context.h
1510 include/grpc++/completion_queue.h
1511 include/grpc++/create_channel.h
1512 include/grpc++/create_channel_posix.h
1513 include/grpc++/generic/async_generic_service.h
1514 include/grpc++/generic/generic_stub.h
1515 include/grpc++/grpc++.h
1516 include/grpc++/impl/call.h
1517 include/grpc++/impl/client_unary_call.h
1518 include/grpc++/impl/codegen/core_codegen.h
1519 include/grpc++/impl/grpc_library.h
1520 include/grpc++/impl/method_handler_impl.h
1521 include/grpc++/impl/rpc_method.h
1522 include/grpc++/impl/rpc_service_method.h
1523 include/grpc++/impl/serialization_traits.h
1524 include/grpc++/impl/server_builder_option.h
1525 include/grpc++/impl/server_builder_plugin.h
1526 include/grpc++/impl/server_initializer.h
1527 include/grpc++/impl/service_type.h
1528 include/grpc++/impl/sync.h
1529 include/grpc++/impl/sync_cxx11.h
1530 include/grpc++/impl/sync_no_cxx11.h
1531 include/grpc++/impl/thd.h
1532 include/grpc++/impl/thd_cxx11.h
1533 include/grpc++/impl/thd_no_cxx11.h
1534 include/grpc++/security/auth_context.h
1535 include/grpc++/security/auth_metadata_processor.h
1536 include/grpc++/security/credentials.h
1537 include/grpc++/security/server_credentials.h
1538 include/grpc++/server.h
1539 include/grpc++/server_builder.h
1540 include/grpc++/server_context.h
1541 include/grpc++/server_posix.h
1542 include/grpc++/support/async_stream.h
1543 include/grpc++/support/async_unary_call.h
1544 include/grpc++/support/byte_buffer.h
1545 include/grpc++/support/channel_arguments.h
1546 include/grpc++/support/config.h
1547 include/grpc++/support/slice.h
1548 include/grpc++/support/status.h
1549 include/grpc++/support/status_code_enum.h
1550 include/grpc++/support/string_ref.h
1551 include/grpc++/support/stub_options.h
1552 include/grpc++/support/sync_stream.h
1553 include/grpc++/support/time.h
Nicolas "Pixel" Noblee3e17d32016-08-20 01:45:32 +02001554 include/grpc/byte_buffer.h
1555 include/grpc/byte_buffer_reader.h
1556 include/grpc/compression.h
1557 include/grpc/grpc.h
1558 include/grpc/grpc_posix.h
1559 include/grpc/grpc_security_constants.h
1560 include/grpc/status.h
1561 include/grpc/impl/codegen/byte_buffer.h
1562 include/grpc/impl/codegen/byte_buffer_reader.h
1563 include/grpc/impl/codegen/compression_types.h
1564 include/grpc/impl/codegen/connectivity_state.h
1565 include/grpc/impl/codegen/grpc_types.h
1566 include/grpc/impl/codegen/propagation_bits.h
1567 include/grpc/impl/codegen/status.h
1568 include/grpc/impl/codegen/alloc.h
1569 include/grpc/impl/codegen/atm.h
1570 include/grpc/impl/codegen/atm_gcc_atomic.h
1571 include/grpc/impl/codegen/atm_gcc_sync.h
1572 include/grpc/impl/codegen/atm_windows.h
1573 include/grpc/impl/codegen/log.h
1574 include/grpc/impl/codegen/port_platform.h
1575 include/grpc/impl/codegen/slice.h
1576 include/grpc/impl/codegen/slice_buffer.h
1577 include/grpc/impl/codegen/sync.h
1578 include/grpc/impl/codegen/sync_generic.h
1579 include/grpc/impl/codegen/sync_posix.h
1580 include/grpc/impl/codegen/sync_windows.h
1581 include/grpc/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001582 include/grpc++/impl/codegen/async_stream.h
1583 include/grpc++/impl/codegen/async_unary_call.h
1584 include/grpc++/impl/codegen/call.h
1585 include/grpc++/impl/codegen/call_hook.h
1586 include/grpc++/impl/codegen/channel_interface.h
1587 include/grpc++/impl/codegen/client_context.h
1588 include/grpc++/impl/codegen/client_unary_call.h
1589 include/grpc++/impl/codegen/completion_queue.h
1590 include/grpc++/impl/codegen/completion_queue_tag.h
1591 include/grpc++/impl/codegen/config.h
1592 include/grpc++/impl/codegen/core_codegen_interface.h
1593 include/grpc++/impl/codegen/create_auth_context.h
1594 include/grpc++/impl/codegen/grpc_library.h
1595 include/grpc++/impl/codegen/method_handler_impl.h
1596 include/grpc++/impl/codegen/rpc_method.h
1597 include/grpc++/impl/codegen/rpc_service_method.h
1598 include/grpc++/impl/codegen/security/auth_context.h
1599 include/grpc++/impl/codegen/serialization_traits.h
1600 include/grpc++/impl/codegen/server_context.h
1601 include/grpc++/impl/codegen/server_interface.h
1602 include/grpc++/impl/codegen/service_type.h
1603 include/grpc++/impl/codegen/status.h
1604 include/grpc++/impl/codegen/status_code_enum.h
1605 include/grpc++/impl/codegen/string_ref.h
1606 include/grpc++/impl/codegen/stub_options.h
1607 include/grpc++/impl/codegen/sync.h
1608 include/grpc++/impl/codegen/sync_cxx11.h
1609 include/grpc++/impl/codegen/sync_no_cxx11.h
1610 include/grpc++/impl/codegen/sync_stream.h
1611 include/grpc++/impl/codegen/time.h
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001612)
1613 string(REPLACE "include/" "" _path ${_hdr})
1614 get_filename_component(_path ${_path} PATH)
1615 install(FILES ${_hdr}
1616 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1617 )
1618endforeach()
1619
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001620
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001621if (gRPC_INSTALL)
1622 install(TARGETS grpc++_unsecure EXPORT gRPCTargets
1623 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1624 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1625 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1626 )
1627endif()
1628
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001629
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001630add_library(grpc_plugin_support
1631 src/compiler/cpp_generator.cc
1632 src/compiler/csharp_generator.cc
1633 src/compiler/node_generator.cc
1634 src/compiler/objective_c_generator.cc
1635 src/compiler/python_generator.cc
1636 src/compiler/ruby_generator.cc
1637)
1638
1639target_include_directories(grpc_plugin_support
1640 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1641 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1642 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1643 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001644 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001645 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1646)
1647
1648target_link_libraries(grpc_plugin_support
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001649 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001650)
1651
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001652foreach(_hdr
1653 include/grpc++/impl/codegen/config_protobuf.h
1654)
1655 string(REPLACE "include/" "" _path ${_hdr})
1656 get_filename_component(_path ${_path} PATH)
1657 install(FILES ${_hdr}
1658 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_path}"
1659 )
1660endforeach()
1661
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001662
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001663if (gRPC_INSTALL)
1664 install(TARGETS grpc_plugin_support EXPORT gRPCTargets
1665 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1666 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1667 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1668 )
1669endif()
1670
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001671
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001672add_library(grpc_csharp_ext
1673 src/csharp/ext/grpc_csharp_ext.c
1674)
1675
1676target_include_directories(grpc_csharp_ext
1677 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1678 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1679 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1680 PRIVATE ${PROTOBUF_ROOT_DIR}/src
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001681 PRIVATE ${ZLIB_INCLUDE_DIR}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001682 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1683)
1684
1685target_link_libraries(grpc_csharp_ext
1686 grpc
1687 gpr
1688)
1689
1690
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001691
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001692if (gRPC_INSTALL)
1693 install(TARGETS grpc_csharp_ext EXPORT gRPCTargets
1694 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1695 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1696 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1697 )
1698endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001699
1700
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001701
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001702add_executable(gen_hpack_tables
1703 tools/codegen/core/gen_hpack_tables.c
1704)
1705
1706target_include_directories(gen_hpack_tables
1707 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1708 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1709 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1710 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1711 PRIVATE ${ZLIB_ROOT_DIR}
1712 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1713)
1714
1715target_link_libraries(gen_hpack_tables
1716 gpr
1717 grpc
1718)
1719
1720
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001721if (gRPC_INSTALL)
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02001722 install(TARGETS gen_hpack_tables EXPORT gRPCTargets
1723 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1724 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1725 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1726 )
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001727endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001728
1729
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001730add_executable(gen_legal_metadata_characters
1731 tools/codegen/core/gen_legal_metadata_characters.c
1732)
1733
1734target_include_directories(gen_legal_metadata_characters
1735 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1736 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1737 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1738 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1739 PRIVATE ${ZLIB_ROOT_DIR}
1740 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1741)
1742
1743
1744
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001745if (gRPC_INSTALL)
1746 install(TARGETS gen_legal_metadata_characters EXPORT gRPCTargets
1747 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1748 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1749 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1750 )
1751endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001752
1753
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001754add_executable(grpc_create_jwt
1755 test/core/security/create_jwt.c
1756)
1757
1758target_include_directories(grpc_create_jwt
1759 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1760 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1761 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1762 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1763 PRIVATE ${ZLIB_ROOT_DIR}
1764 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1765)
1766
1767target_link_libraries(grpc_create_jwt
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001768 ${_gRPC_SSL_LIBRARIES}
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001769 grpc
1770 gpr
1771)
1772
1773
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001774if (gRPC_INSTALL)
1775 install(TARGETS grpc_create_jwt EXPORT gRPCTargets
1776 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1777 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1778 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1779 )
1780endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001781
1782
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001783add_executable(grpc_print_google_default_creds_token
1784 test/core/security/print_google_default_creds_token.c
1785)
1786
1787target_include_directories(grpc_print_google_default_creds_token
1788 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1789 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1790 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1791 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1792 PRIVATE ${ZLIB_ROOT_DIR}
1793 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1794)
1795
1796target_link_libraries(grpc_print_google_default_creds_token
1797 grpc
1798 gpr
1799)
1800
1801
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001802if (gRPC_INSTALL)
1803 install(TARGETS grpc_print_google_default_creds_token EXPORT gRPCTargets
1804 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1805 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1806 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1807 )
1808endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001809
1810
Tamas Berghammerdf6a44c2016-06-22 13:38:55 +01001811add_executable(grpc_verify_jwt
1812 test/core/security/verify_jwt.c
1813)
1814
1815target_include_directories(grpc_verify_jwt
1816 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1817 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1818 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1819 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1820 PRIVATE ${ZLIB_ROOT_DIR}
1821 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1822)
1823
1824target_link_libraries(grpc_verify_jwt
1825 grpc
1826 gpr
1827)
1828
1829
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001830if (gRPC_INSTALL)
1831 install(TARGETS grpc_verify_jwt EXPORT gRPCTargets
1832 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1833 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1834 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1835 )
1836endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001837
1838
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001839add_executable(grpc_cpp_plugin
1840 src/compiler/cpp_plugin.cc
1841)
1842
1843target_include_directories(grpc_cpp_plugin
1844 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1845 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1846 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1847 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1848 PRIVATE ${ZLIB_ROOT_DIR}
1849 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1850)
1851
1852target_link_libraries(grpc_cpp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001853 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001854 grpc_plugin_support
1855)
1856
1857
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001858if (gRPC_INSTALL)
1859 install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
1860 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1861 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1862 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1863 )
1864endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001865
1866
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001867add_executable(grpc_csharp_plugin
1868 src/compiler/csharp_plugin.cc
1869)
1870
1871target_include_directories(grpc_csharp_plugin
1872 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1873 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1874 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1875 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1876 PRIVATE ${ZLIB_ROOT_DIR}
1877 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1878)
1879
1880target_link_libraries(grpc_csharp_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001881 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001882 grpc_plugin_support
1883)
1884
1885
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001886if (gRPC_INSTALL)
1887 install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
1888 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1889 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1890 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1891 )
1892endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001893
1894
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001895add_executable(grpc_node_plugin
1896 src/compiler/node_plugin.cc
1897)
1898
1899target_include_directories(grpc_node_plugin
1900 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1901 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1902 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1903 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1904 PRIVATE ${ZLIB_ROOT_DIR}
1905 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1906)
1907
1908target_link_libraries(grpc_node_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001909 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001910 grpc_plugin_support
1911)
1912
1913
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001914if (gRPC_INSTALL)
1915 install(TARGETS grpc_node_plugin EXPORT gRPCTargets
1916 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1917 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1918 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1919 )
1920endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001921
1922
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001923add_executable(grpc_objective_c_plugin
1924 src/compiler/objective_c_plugin.cc
1925)
1926
1927target_include_directories(grpc_objective_c_plugin
1928 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1929 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1930 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1931 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1932 PRIVATE ${ZLIB_ROOT_DIR}
1933 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1934)
1935
1936target_link_libraries(grpc_objective_c_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001937 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001938 grpc_plugin_support
1939)
1940
1941
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001942if (gRPC_INSTALL)
1943 install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
1944 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1945 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1946 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1947 )
1948endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001949
1950
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001951add_executable(grpc_python_plugin
1952 src/compiler/python_plugin.cc
1953)
1954
1955target_include_directories(grpc_python_plugin
1956 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1957 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1958 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1959 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1960 PRIVATE ${ZLIB_ROOT_DIR}
1961 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1962)
1963
1964target_link_libraries(grpc_python_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001965 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001966 grpc_plugin_support
1967)
1968
1969
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001970if (gRPC_INSTALL)
1971 install(TARGETS grpc_python_plugin EXPORT gRPCTargets
1972 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
1973 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1974 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
1975 )
1976endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03001977
1978
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001979add_executable(grpc_ruby_plugin
1980 src/compiler/ruby_plugin.cc
1981)
1982
1983target_include_directories(grpc_ruby_plugin
1984 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
1985 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
1986 PRIVATE ${BORINGSSL_ROOT_DIR}/include
1987 PRIVATE ${PROTOBUF_ROOT_DIR}/src
1988 PRIVATE ${ZLIB_ROOT_DIR}
1989 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
1990)
1991
1992target_link_libraries(grpc_ruby_plugin
Konstantin Podsvirov5baf7252016-07-27 16:25:37 +03001993 ${_gRPC_PROTOBUF_PROTOC_LIBRARIES}
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01001994 grpc_plugin_support
1995)
1996
1997
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03001998if (gRPC_INSTALL)
1999 install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
2000 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
2001 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
2002 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
2003 )
2004endif()
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01002005
2006
Tamas Berghammerd798a7d2016-06-21 13:58:18 +01002007
2008
2009
Nicolas "Pixel" Noble2069fbc2016-08-18 23:29:56 +02002010
2011
2012
Arkadiy Shapkin40beb372016-08-17 14:42:36 +03002013if (gRPC_INSTALL)
2014 install(EXPORT gRPCTargets
2015 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
2016 NAMESPACE gRPC::
2017 )
2018endif()
Konstantin Podsvirovd2b88302016-07-27 23:43:47 +03002019
2020foreach(_config gRPCConfig gRPCConfigVersion)
2021 configure_file(tools/cmake/${_config}.cmake.in
2022 ${_config}.cmake @ONLY)
2023 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_config}.cmake
2024 DESTINATION ${CMAKE_INSTALL_CMAKEDIR}
2025 )
2026endforeach()