diff options
Diffstat (limited to 'Firestore/Protos/build-protos.sh')
-rwxr-xr-x | Firestore/Protos/build-protos.sh | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Firestore/Protos/build-protos.sh b/Firestore/Protos/build-protos.sh new file mode 100755 index 0000000..4cfb12e --- /dev/null +++ b/Firestore/Protos/build-protos.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +# Copyright 2017 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. + +# Run this script from firebase-ios-sdk/Firestore/Protos to regnenerate the +# Objective C files from the protos. + +# pod update to install protoc and the gRPC plugin compiler. +rm -rf Pods +rm Podfile.lock +pod update + +# Generate the objective C files from the protos. +./Pods/!ProtoCompiler/protoc --plugin=protoc-gen-grpc=Pods/\!ProtoCompiler-gRPCPlugin/grpc_objective_c_plugin -I protos --objc_out=objc --grpc_out=objc `find protos -name *.proto -print | xargs` + +# CocoaPods does not like paths in library imports, flatten them. + +for i in `find objc -name "*.[mh]"` ; do + perl -i -pe 's#import ".*/#import "#' $i; +done + +# Remove the unnecessary extensionRegistry functions. + +for i in `find objc -name "*.[m]" ` ; do + ./strip-registry.py $i +done + +# Remove non-buildable code from Annotations.pbobjc.*. + +echo "static int annotations_stub __attribute__((unused,used)) = 0;" > objc/google/api/Annotations.pbobjc.m +echo "// Empty stub file" > objc/google/api/Annotations.pbobjc.h |