aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/codegen/core/gen_upb_api.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/codegen/core/gen_upb_api.sh')
-rwxr-xr-xtools/codegen/core/gen_upb_api.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/tools/codegen/core/gen_upb_api.sh b/tools/codegen/core/gen_upb_api.sh
new file mode 100755
index 0000000000..9457e06f12
--- /dev/null
+++ b/tools/codegen/core/gen_upb_api.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+# Copyright 2016 gRPC authors.
+#
+# 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.
+
+# REQUIRES: Bazel
+set -ex
+rm -rf src/core/ext/upb-generated
+mkdir src/core/ext/upb-generated
+cd third_party
+cd upb
+bazel build :protoc-gen-upb
+
+cd ../..
+
+proto_files=( \
+ "google/protobuf/any.proto" \
+ "google/protobuf/struct.proto" \
+ "google/protobuf/wrappers.proto" \
+ "google/protobuf/descriptor.proto" \
+ "google/protobuf/duration.proto" \
+ "google/protobuf/timestamp.proto" )
+
+for i in "${proto_files[@]}"
+do
+ protoc -I=$PWD/third_party/data-plane-api -I=$PWD/third_party/googleapis -I=$PWD/third_party/protobuf -I=$PWD/third_party/protoc-gen-validate $i --upb_out=./src/core/ext/upb-generated --plugin=protoc-gen-upb=third_party/upb/bazel-bin/protoc-gen-upb
+done