1*cc02d7e2SAndroid Build Coastguard Worker# This file has been automatically generated from a template file. 2*cc02d7e2SAndroid Build Coastguard Worker# Please make modifications to 3*cc02d7e2SAndroid Build Coastguard Worker# `templates/src/objective-c/!ProtoCompiler-gRPCPlugin.podspec.template` 4*cc02d7e2SAndroid Build Coastguard Worker# instead. This file can be regenerated from the template by running 5*cc02d7e2SAndroid Build Coastguard Worker# `tools/buildgen/generate_projects.sh`. 6*cc02d7e2SAndroid Build Coastguard Worker 7*cc02d7e2SAndroid Build Coastguard Worker# CocoaPods podspec for the gRPC Proto Compiler Plugin 8*cc02d7e2SAndroid Build Coastguard Worker# 9*cc02d7e2SAndroid Build Coastguard Worker# Copyright 2016, Google Inc. 10*cc02d7e2SAndroid Build Coastguard Worker# All rights reserved. 11*cc02d7e2SAndroid Build Coastguard Worker# 12*cc02d7e2SAndroid Build Coastguard Worker# Redistribution and use in source and binary forms, with or without 13*cc02d7e2SAndroid Build Coastguard Worker# modification, are permitted provided that the following conditions are 14*cc02d7e2SAndroid Build Coastguard Worker# met: 15*cc02d7e2SAndroid Build Coastguard Worker# 16*cc02d7e2SAndroid Build Coastguard Worker# * Redistributions of source code must retain the above copyright 17*cc02d7e2SAndroid Build Coastguard Worker# notice, this list of conditions and the following disclaimer. 18*cc02d7e2SAndroid Build Coastguard Worker# * Redistributions in binary form must reproduce the above 19*cc02d7e2SAndroid Build Coastguard Worker# copyright notice, this list of conditions and the following disclaimer 20*cc02d7e2SAndroid Build Coastguard Worker# in the documentation and/or other materials provided with the 21*cc02d7e2SAndroid Build Coastguard Worker# distribution. 22*cc02d7e2SAndroid Build Coastguard Worker# * Neither the name of Google Inc. nor the names of its 23*cc02d7e2SAndroid Build Coastguard Worker# contributors may be used to endorse or promote products derived from 24*cc02d7e2SAndroid Build Coastguard Worker# this software without specific prior written permission. 25*cc02d7e2SAndroid Build Coastguard Worker# 26*cc02d7e2SAndroid Build Coastguard Worker# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 27*cc02d7e2SAndroid Build Coastguard Worker# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 28*cc02d7e2SAndroid Build Coastguard Worker# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 29*cc02d7e2SAndroid Build Coastguard Worker# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 30*cc02d7e2SAndroid Build Coastguard Worker# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 31*cc02d7e2SAndroid Build Coastguard Worker# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 32*cc02d7e2SAndroid Build Coastguard Worker# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 33*cc02d7e2SAndroid Build Coastguard Worker# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 34*cc02d7e2SAndroid Build Coastguard Worker# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 35*cc02d7e2SAndroid Build Coastguard Worker# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 36*cc02d7e2SAndroid Build Coastguard Worker# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 37*cc02d7e2SAndroid Build Coastguard Worker 38*cc02d7e2SAndroid Build Coastguard WorkerPod::Spec.new do |s| 39*cc02d7e2SAndroid Build Coastguard Worker # This pod is only a utility that will be used by other pods _at install time_ (not at compile 40*cc02d7e2SAndroid Build Coastguard Worker # time). Other pods can access it in their `prepare_command` script, under <pods_root>/<pod name>. 41*cc02d7e2SAndroid Build Coastguard Worker # Because CocoaPods installs pods in alphabetical order, beginning this pod's name with an 42*cc02d7e2SAndroid Build Coastguard Worker # exclamation mark ensures that other "regular" pods will be able to find it as it'll be installed 43*cc02d7e2SAndroid Build Coastguard Worker # before them. 44*cc02d7e2SAndroid Build Coastguard Worker s.name = '!ProtoCompiler-gRPCPlugin' 45*cc02d7e2SAndroid Build Coastguard Worker v = '1.63.1' 46*cc02d7e2SAndroid Build Coastguard Worker s.version = v 47*cc02d7e2SAndroid Build Coastguard Worker s.summary = 'The gRPC ProtoC plugin generates Objective-C files from .proto services.' 48*cc02d7e2SAndroid Build Coastguard Worker s.description = <<-DESC 49*cc02d7e2SAndroid Build Coastguard Worker This podspec only downloads the gRPC protoc plugin so that local pods generating protos can use 50*cc02d7e2SAndroid Build Coastguard Worker it in their invocation of protoc, as part of their prepare_command. 51*cc02d7e2SAndroid Build Coastguard Worker The generated code will have a dependency on the gRPC Objective-C Proto runtime of the same 52*cc02d7e2SAndroid Build Coastguard Worker version. The runtime can be obtained as the "gRPC-ProtoRPC" pod. 53*cc02d7e2SAndroid Build Coastguard Worker DESC 54*cc02d7e2SAndroid Build Coastguard Worker s.homepage = 'https://grpc.io' 55*cc02d7e2SAndroid Build Coastguard Worker s.license = { 56*cc02d7e2SAndroid Build Coastguard Worker :type => 'Apache License, Version 2.0', 57*cc02d7e2SAndroid Build Coastguard Worker :text => <<-LICENSE 58*cc02d7e2SAndroid Build Coastguard Worker Copyright 2015, Google Inc. 59*cc02d7e2SAndroid Build Coastguard Worker All rights reserved. 60*cc02d7e2SAndroid Build Coastguard Worker 61*cc02d7e2SAndroid Build Coastguard Worker Redistribution and use in source and binary forms, with or without 62*cc02d7e2SAndroid Build Coastguard Worker modification, are permitted provided that the following conditions are 63*cc02d7e2SAndroid Build Coastguard Worker met: 64*cc02d7e2SAndroid Build Coastguard Worker 65*cc02d7e2SAndroid Build Coastguard Worker * Redistributions of source code must retain the above copyright 66*cc02d7e2SAndroid Build Coastguard Worker notice, this list of conditions and the following disclaimer. 67*cc02d7e2SAndroid Build Coastguard Worker * Redistributions in binary form must reproduce the above 68*cc02d7e2SAndroid Build Coastguard Worker copyright notice, this list of conditions and the following disclaimer 69*cc02d7e2SAndroid Build Coastguard Worker in the documentation and/or other materials provided with the 70*cc02d7e2SAndroid Build Coastguard Worker distribution. 71*cc02d7e2SAndroid Build Coastguard Worker * Neither the name of Google Inc. nor the names of its 72*cc02d7e2SAndroid Build Coastguard Worker contributors may be used to endorse or promote products derived from 73*cc02d7e2SAndroid Build Coastguard Worker this software without specific prior written permission. 74*cc02d7e2SAndroid Build Coastguard Worker 75*cc02d7e2SAndroid Build Coastguard Worker THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 76*cc02d7e2SAndroid Build Coastguard Worker "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 77*cc02d7e2SAndroid Build Coastguard Worker LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 78*cc02d7e2SAndroid Build Coastguard Worker A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 79*cc02d7e2SAndroid Build Coastguard Worker OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 80*cc02d7e2SAndroid Build Coastguard Worker SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 81*cc02d7e2SAndroid Build Coastguard Worker LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 82*cc02d7e2SAndroid Build Coastguard Worker DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 83*cc02d7e2SAndroid Build Coastguard Worker THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 84*cc02d7e2SAndroid Build Coastguard Worker (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 85*cc02d7e2SAndroid Build Coastguard Worker OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 86*cc02d7e2SAndroid Build Coastguard Worker LICENSE 87*cc02d7e2SAndroid Build Coastguard Worker } 88*cc02d7e2SAndroid Build Coastguard Worker s.authors = { 'The gRPC contributors' => '[email protected]' } 89*cc02d7e2SAndroid Build Coastguard Worker 90*cc02d7e2SAndroid Build Coastguard Worker repo = 'grpc/grpc' 91*cc02d7e2SAndroid Build Coastguard Worker file = "grpc_objective_c_plugin-#{v}-macos-x86_64.zip" 92*cc02d7e2SAndroid Build Coastguard Worker s.source = { 93*cc02d7e2SAndroid Build Coastguard Worker :http => "https://github.com/#{repo}/releases/download/v#{v}/#{file}", 94*cc02d7e2SAndroid Build Coastguard Worker # TODO(jcanizales): Add sha1 or sha256 95*cc02d7e2SAndroid Build Coastguard Worker # :sha1 => '??', 96*cc02d7e2SAndroid Build Coastguard Worker } 97*cc02d7e2SAndroid Build Coastguard Worker 98*cc02d7e2SAndroid Build Coastguard Worker repo_root = '../..' 99*cc02d7e2SAndroid Build Coastguard Worker bazel = "#{repo_root}/tools/bazel" 100*cc02d7e2SAndroid Build Coastguard Worker plugin = 'grpc_objective_c_plugin' 101*cc02d7e2SAndroid Build Coastguard Worker 102*cc02d7e2SAndroid Build Coastguard Worker s.preserve_paths = plugin 103*cc02d7e2SAndroid Build Coastguard Worker 104*cc02d7e2SAndroid Build Coastguard Worker # Restrict the protoc version to the one supported by this plugin. 105*cc02d7e2SAndroid Build Coastguard Worker s.dependency '!ProtoCompiler', '3.26.1' 106*cc02d7e2SAndroid Build Coastguard Worker 107*cc02d7e2SAndroid Build Coastguard Worker s.ios.deployment_target = '10.0' 108*cc02d7e2SAndroid Build Coastguard Worker s.osx.deployment_target = '10.12' 109*cc02d7e2SAndroid Build Coastguard Worker s.tvos.deployment_target = '12.0' 110*cc02d7e2SAndroid Build Coastguard Worker s.watchos.deployment_target = '6.0' 111*cc02d7e2SAndroid Build Coastguard Worker 112*cc02d7e2SAndroid Build Coastguard Worker # Restrict the gRPC runtime version to the one supported by this plugin. 113*cc02d7e2SAndroid Build Coastguard Worker s.dependency 'gRPC-ProtoRPC', v 114*cc02d7e2SAndroid Build Coastguard Worker 115*cc02d7e2SAndroid Build Coastguard Worker # This is only for local development of the plugin: If the Podfile brings this pod from a local 116*cc02d7e2SAndroid Build Coastguard Worker # directory using `:path`, CocoaPods won't download the zip file and so the plugin won't be 117*cc02d7e2SAndroid Build Coastguard Worker # present in this pod's directory. We use that knowledge to check for the existence of the file 118*cc02d7e2SAndroid Build Coastguard Worker # and, if absent, compile the plugin from the local sources. 119*cc02d7e2SAndroid Build Coastguard Worker s.prepare_command = <<-CMD 120*cc02d7e2SAndroid Build Coastguard Worker set -e 121*cc02d7e2SAndroid Build Coastguard Worker if [ ! -f #{plugin} ]; then 122*cc02d7e2SAndroid Build Coastguard Worker #{bazel} build //src/compiler:grpc_objective_c_plugin 123*cc02d7e2SAndroid Build Coastguard Worker fi 124*cc02d7e2SAndroid Build Coastguard Worker CMD 125*cc02d7e2SAndroid Build Coastguard Workerend 126