diff options
author | Gil <mcg@google.com> | 2018-07-16 08:50:53 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-16 08:50:53 -0700 |
commit | cda87fa3afdacf20a097cf6ed90c5c2ef64e0437 (patch) | |
tree | aeda6e64b1b925b7bb8a5dc8189d3c35efa31c4a /cmake/external/c-ares.cmake | |
parent | e963b606f3e90033086e08c1b989153467015ecd (diff) |
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}
Diffstat (limited to 'cmake/external/c-ares.cmake')
-rw-r--r-- | cmake/external/c-ares.cmake | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/cmake/external/c-ares.cmake b/cmake/external/c-ares.cmake index dbe0eb0..01e1a79 100644 --- a/cmake/external/c-ares.cmake +++ b/cmake/external/c-ares.cmake @@ -18,21 +18,26 @@ if(TARGET c-ares) return() endif() +# The gRPC build fails if c-ares is not present in its expected location so +# this ExternalProject unpacks itself inside the gRPC source tree. CMake clears +# the SOURCE_DIR when unpacking so this must come after the grpc +# ExternalProject. + ExternalProject_Add( c-ares + DEPENDS + grpc-download + DOWNLOAD_DIR ${FIREBASE_DOWNLOAD_DIR} URL https://github.com/c-ares/c-ares/archive/cares-1_14_0.tar.gz URL_HASH SHA256=62dd12f0557918f89ad6f5b759f0bf4727174ae9979499f5452c02be38d9d3e8 PREFIX ${PROJECT_BINARY_DIR} + SOURCE_DIR ${PROJECT_BINARY_DIR}/src/grpc/third_party/cares/cares - CMAKE_ARGS - -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} - -DCMAKE_INSTALL_PREFIX:STRING=${FIREBASE_INSTALL_DIR} - -DCARES_STATIC:BOOL=ON - -DCARES_SHARED:BOOL=OFF - -DCARES_STATIC_PIC:BOOL=ON - - TEST_COMMAND "" + CONFIGURE_COMMAND "" + BUILD_COMMAND "" + INSTALL_COMMAND "" + TEST_COMMAND "" ) |