Gil cda87fa3af Convert grpc and protobuf CMake builds to add_subdirectory (#1537) před 7 roky
..
FrameworkMaker.xcodeproj 09e4eddd82 Rebuild proto artifacts from existing sources and update README.md instructions. (#1058) před 8 roky
cpp ce61f4e0e6 Rename nanopb generated headers from foo.pb.h to foo.nanopb.h (#1371) před 7 roky
nanopb ce61f4e0e6 Rename nanopb generated headers from foo.pb.h to foo.nanopb.h (#1371) před 7 roky
objc 6f2ef7d389 Update protos. (#1075) před 8 roky
protos 6f2ef7d389 Update protos. (#1075) před 8 roky
CMakeLists.txt cda87fa3af Convert grpc and protobuf CMake builds to add_subdirectory (#1537) před 7 roky
Podfile bde743ed25 Release 4.3.0 (#327) před 8 roky
README.md 09e4eddd82 Rebuild proto artifacts from existing sources and update README.md instructions. (#1058) před 8 roky
build-protos.sh ce61f4e0e6 Rename nanopb generated headers from foo.pb.h to foo.nanopb.h (#1371) před 7 roky
strip-registry.py bde743ed25 Release 4.3.0 (#327) před 8 roky

README.md

Usage

First, make sure you have necessary prereqs for building:

brew install automake libtool protobuf

Take a nap while that completes. Then, build protobuf and nanopb:

cd firebase-ios-sdk
mkdir -p build
cd build
cmake ..
make -j protobuf nanopb

Next, build the protos:

cd firebase-ios-sdk/Firestore/Protos
./build-protos.sh

Verify diffs (you'll likely need to re-add copyright notices, etc.), make sure tests still pass, and create a PR.

Script Details

Get the protoc and the gRPC plugin. See here. The easiest way I found was to add pod '!ProtoCompiler-gRPCPlugin' to a Podfile and do pod update.

After running the protoc, shell commands run to fix up the generated code:

  • Flatten import paths for CocoaPods library build.
  • Remove unneeded extensionRegistry functions.
  • Remove non-buildable code from Annotations.pbobjc.*.