#!/bin/sh # # Copyright 2017 Google Inc. All Rights Reserved. # # 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. # Use this script to run protoc and swift-proto to generate # support code for gnostic protos. GNOSTIC=$GOPATH/src/github.com/googleapis/gnostic PROTOS=( plugins/plugin.proto OpenAPIv2/OpenAPIv2.proto OpenAPIv3/OpenAPIv3.proto surface/surface.proto discovery/discovery.proto ) # remove old compiled pb files rm -rf Sources/Gnostic/*.pb.swift # remove any prior compilations rm -rf Sources/Gnostic/github.com # compile protos for proto in "${PROTOS[@]}" do echo "COMPILING $proto" protoc $GNOSTIC/$proto \ --swift_opt=Visibility=Public \ --swift_out=Sources/Gnostic \ --proto_path=$GOPATH/src # relocate compiled protos find Sources/Gnostic/github.com -name "*.pb.swift" -exec mv {} Sources/Gnostic \; # remove scaffolding of compilation rm -rf Sources/Gnostic/github.com done