aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmake/external/nanopb.cmake
Commit message (Collapse)AuthorAge
* Convert googletest and nanopb CMake builds to add_subdirectory (#1522)Gravatar Gil2018-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | * Add a download-only boringssl ExternalProject Match boringssl version to grpc submodule version Note: not yet in use * Split grpc into separate download and build tasks This allows other external targets to download into the gRPC source tree before grpc is actually built. * Convert grpc to an http download * Build googletest with add_subdirectory Also: * Revert library-name modifications in the abseil-cpp build * Move abseil-cpp add_subdirectory build into place * Build nanopb with add_subdirectory * Force nanopb first to work around ODR violations This is a temporary work-around for b/111328563.
* Firestore CMake cleanup (#1510)Gravatar Gil2018-07-11
| | | | | | | | | | | | | | | * Pull out sanitizer options into a separate file * Reorder packages * Remove the extra "external/$target" directory from PREFIX Instead of BINARY_DIR/external/foo/src/foo the contents will be in BINARY_DIR/src/foo. * Make libprotobuf-nanopb targets line up with nanopb's CMakeLists.txt * Fix CMake style
* Reorganize cmake dependencies (#1508)Gravatar Gil2018-07-10
| | | | | | | | * Add cmake dependencies where required ... instead of relying on a topological sort in the top-level CMakeLists.txt. * Add early exits to external project builds
* Add a CMake external build for c-ares (#1472)Gravatar Gil2018-06-28
| | | | | | | | | | | * Add an external build for c-ares * Use installed c-ares package configuration * Adjust protobuf configuration to use the standard Protobuf_DIR variable. * Have grpc depend on c-ares * Drop UPDATE_COMMAND where it doesn't matter
* Install protobuf during CMake build (#1460)Gravatar Gil2018-06-26
| | | | | | | | | | | | | | * Install protobuf * Use the built-in FindProtobuf.cmake * Add additional build configuration flags * Preserve generator configuration in the protobuf sub-build Without this, the build fails on Win64 because the default configuration builds a Win32 libprotobuf and the Win64 build rejects it. * Wire the installed protobuf into the gRPC build. * Install nanopb
* Prepare for installed sub-projects (#1459)Gravatar Gil2018-06-26
| | | | | | | | | | | | | | | * Ignore vim backup files * Prepare for installed subprojects This adds FIREBASE_BINARY_DIR to point to the out-of-source build directory (which previously was passed around as FIREBASE_INSTALL_DIR). This repurposes FIREBASE_INSTALL_DIR to point to ${FIREBASE_BINARY_DIR}/opt, and installation root for subprojects that have an install step. * Allow download directory to be specified
* Fix protobuf/nanopb builds on Windows (#1392)Gravatar Gil2018-06-12
| | | | | | | | | | | | | | | | | | | | | | * Build protobuf with CMake for compatibility with Windows. Fixes b/74067357 * Update to nanopb 0.3.9.1 This release includes functional CMake support for building the protoc plugin. * Fix license * Build nanopb out-of-source This is possible now that the build is CMake-based. * Find protoc on windows * Define CMAKE_ARGS in a more straightforward way * Adjust libprotobuf locations to account for CMake build
* Convert cmake build to (mostly) use urls rather than git clones (#852)Gravatar rsgowman2018-02-27
| | | | | | | Exception: grpc. Due to it's use of git submodules, it's not completely trivial to convert it (though probably wouldn't be too much more work.) This helps address our build being throttled. (Maybe. This assumes github allows more fetching of tgz's than clones.) It should also speed up our build times. The downloaded tarballs are placed into ${PROJECT_BINARY_DIR}/downloads. This allows for eventual caching in travis.
* cmake build fixes (#770)Gravatar rsgowman2018-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix nanopb (in cmake build) Look for binaries in the src dir (since that's where we build now.) This error would be masked if a previous build had completed prior to switching nanopb to build out of src. Also, don't patch the protoc path multiple times. This could be triggered by (eg) 'make && make clean && make'. * Add resource_path.{h,cc} to the cmake build * Fix signed/unsigned int comparison warnings * Ensure FieldValue tag_ is initialized during cp/mv ctor. Otherwise, the assignment operator attempts to deallocate based on the (uninitialized) tag_ variable, posssibly leading to segfaults. * Fix tests that throw exceptions. The (previous) tests checked to ensure that an abort() occurs, but if ABSL_HAVE_EXCEPTIONS is defined on non-macos (which is currently the default) then the assertions will throw a std::logic_error rather than abort()ing. On macos, an exception is thrown too, but the exception doesn't derrive from std::exception, so ASSERT_DEATH_* doesn't catch it (hence why ASSERT_DEATH_* actually works.) To resolve this, I've switched to ASSERT_ANY_THROW.
* Minor refactoringGravatar Rich Gowman2018-02-06
|
* Downgrade nanopb from 0.4.0-dev to 0.3.8.Gravatar Rich Gowman2018-02-06
| | | | Also regenerate the protos
* Add ability to build nanopb and protobufGravatar Rich Gowman2018-02-06