From cda87fa3afdacf20a097cf6ed90c5c2ef64e0437 Mon Sep 17 00:00:00 2001 From: Gil Date: Mon, 16 Jul 2018 08:50:53 -0700 Subject: Convert grpc and protobuf CMake builds to add_subdirectory (#1537) * Build zlib with grpc's add_subdirectory * Build grpc and its children with add_subdirectory. * Build c-ares with grpc's add_subdirectory * Convert protobuf to a download-only ExternalProject * Temporarily break protobuf within grpc This works because libgrpc has no actual dependency on protobuf * Update boringssl to master@{2018-07-10} --- cmake/FindGRPC.cmake | 130 --------------------------------------------------- 1 file changed, 130 deletions(-) delete mode 100644 cmake/FindGRPC.cmake (limited to 'cmake/FindGRPC.cmake') diff --git a/cmake/FindGRPC.cmake b/cmake/FindGRPC.cmake deleted file mode 100644 index 1e5fcf2..0000000 --- a/cmake/FindGRPC.cmake +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 2018 Google -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -include(FindPackageHandleStandardArgs) -include(FindZLIB) - -## ZLIB - -# the grpc ExternalProject already figures out if zlib should be built or -# referenced from its installed location. If it elected to allow grpc to build -# zlib then it will be available at this location. -find_library( - ZLIB_LIBRARY - NAMES z - HINTS ${FIREBASE_BINARY_DIR}/src/grpc-build/third_party/zlib -) - -# If found above, the standard package will honor the ZLIB_LIBRARY variable. -find_package(ZLIB REQUIRED) - - -## BoringSSL/OpenSSL - -find_path( - OPENSSL_INCLUDE_DIR openssl/ssl.h - HINTS ${FIREBASE_BINARY_DIR}/src/grpc/third_party/boringssl/include -) - -find_library( - OPENSSL_SSL_LIBRARY - NAMES ssl - HINTS ${FIREBASE_BINARY_DIR}/src/grpc-build/third_party/boringssl/ssl -) - -find_library( - OPENSSL_CRYPTO_LIBRARY - NAMES crypto - HINTS ${FIREBASE_BINARY_DIR}/src/grpc-build/third_party/boringssl/crypto -) - -find_package(OpenSSL REQUIRED) - - -## C-Ares - -if(NOT c-ares_DIR) - set(c-ares_DIR ${FIREBASE_INSTALL_DIR}/lib/cmake/c-ares) -endif() -find_package(c-ares CONFIG REQUIRED) - - -## GRPC - -find_path( - GRPC_INCLUDE_DIR grpc/grpc.h - HINTS - $ENV{GRPC_ROOT}/include - ${GRPC_ROOT}/include - ${FIREBASE_BINARY_DIR}/src/grpc/include -) - -find_library( - GPR_LIBRARY - NAMES gpr - HINTS - $ENV{GRPC_ROOT}/lib - ${GRPC_ROOT}/lib - ${FIREBASE_BINARY_DIR}/src/grpc-build -) - -find_library( - GRPC_LIBRARY - NAMES grpc - HINTS - $ENV{GRPC_ROOT}/lib - ${GRPC_ROOT}/lib - ${FIREBASE_BINARY_DIR}/src/grpc-build -) - -find_package_handle_standard_args( - gRPC - DEFAULT_MSG - GRPC_INCLUDE_DIR - GRPC_LIBRARY - GPR_LIBRARY -) - -if(GRPC_FOUND) - set(GRPC_INCLUDE_DIRS ${GRPC_INCLUDE_DIR}) - set(GRPC_LIBRARIES ${GRPC_LIBRARY}) - - if (NOT TARGET grpc::gpr) - add_library(grpc::gpr UNKNOWN IMPORTED) - set_target_properties( - grpc::gpr PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES ${GRPC_INCLUDE_DIR} - IMPORTED_LOCATION ${GPR_LIBRARY} - ) - endif() - - if (NOT TARGET grpc::grpc) - set( - GRPC_LINK_LIBRARIES - c-ares::cares - grpc::gpr - OpenSSL::SSL - OpenSSL::Crypto - ZLIB::ZLIB - ) - - add_library(grpc::grpc UNKNOWN IMPORTED) - set_target_properties( - grpc::grpc PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES ${GRPC_INCLUDE_DIR} - INTERFACE_LINK_LIBRARIES "${GRPC_LINK_LIBRARIES}" - IMPORTED_LOCATION ${GRPC_LIBRARY} - ) - endif() -endif(GRPC_FOUND) -- cgit v1.2.3