aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmake/xcodebuild.cmake
Commit message (Collapse)AuthorAge
* 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
* Install FirebaseCore during CMake build (#1462)Gravatar Gil2018-06-26
|
* Build gRPC for Firestore C++ (#652)Gravatar Gil2018-01-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Clean up quoting and other minor issues * Reorganize CMake build output Make it clearer which parts of the output pertain to external projects. * Use a consistent ordering of ExternalProject arguments * Prevent the top-level build from running in parallel This prevents spurious failures when running make -j. * Actually parse arguments in the xcodebuild function * Use ExternalProject features when available * submodule limits from CMake 3.0 * shallow clones from CMake 3.6 * git progress output from CMake 3.8 * Only build the parts of leveldb we need Skip building the tools and other libraries * Avoid installing ExternalProjects Consume build output directly so that we can build just the targets we need. Installing causes all targets to be built. This doesn't matter as much for these targets but the gRPC build includes a ton of stuff we don't need so it's worth adopting this as a general strategy. * Define an external build for grpc * Test that grpc can link successfully. * Add a FindGRPC CMake module * Actually comment ExternalProjext_GitSource
* Build FirebaseCore from CMake (#594)Gravatar Gil2018-01-01
* Don't bother specifying a download directory to CMake ExternalProject * Teach CMake to build pure Xcode projects as dependencies This allows downstream code (like log_apple.mm) to consume this for testing within the CMake build without requiring a CMake-native build for these components. This makes integrating these components into the cmake build essentially free from the point of view of the consumed component. * Get the CMake build semi-working on Linux again Many prebuilt versions of cmake on Linux lack the ability to download over https so use git to get googletest. Don't attempt to build FirebaseCore on Linux; there's no xcodebuild. Note the build is still ultimately broken because we don't yet have an alternative to arc4random on Linux but at least this is no more broken than it was before.