xref: /aosp_15_r20/external/grpc-grpc/templates/gRPC-ProtoRPC.podspec.template (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1*cc02d7e2SAndroid Build Coastguard Worker%YAML 1.2
2*cc02d7e2SAndroid Build Coastguard Worker--- |
3*cc02d7e2SAndroid Build Coastguard Worker  # This file has been automatically generated from a template file.
4*cc02d7e2SAndroid Build Coastguard Worker  # Please make modifications to
5*cc02d7e2SAndroid Build Coastguard Worker  # `templates/gRPC-ProtoRPC.podspec.template` instead. This file can be
6*cc02d7e2SAndroid Build Coastguard Worker  # regenerated from the template by running
7*cc02d7e2SAndroid Build Coastguard Worker  # `tools/buildgen/generate_projects.sh`.
8*cc02d7e2SAndroid Build Coastguard Worker
9*cc02d7e2SAndroid Build Coastguard Worker  # Copyright 2015 gRPC authors.
10*cc02d7e2SAndroid Build Coastguard Worker  #
11*cc02d7e2SAndroid Build Coastguard Worker  # Licensed under the Apache License, Version 2.0 (the "License");
12*cc02d7e2SAndroid Build Coastguard Worker  # you may not use this file except in compliance with the License.
13*cc02d7e2SAndroid Build Coastguard Worker  # You may obtain a copy of the License at
14*cc02d7e2SAndroid Build Coastguard Worker  #
15*cc02d7e2SAndroid Build Coastguard Worker  #     http://www.apache.org/licenses/LICENSE-2.0
16*cc02d7e2SAndroid Build Coastguard Worker  #
17*cc02d7e2SAndroid Build Coastguard Worker  # Unless required by applicable law or agreed to in writing, software
18*cc02d7e2SAndroid Build Coastguard Worker  # distributed under the License is distributed on an "AS IS" BASIS,
19*cc02d7e2SAndroid Build Coastguard Worker  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20*cc02d7e2SAndroid Build Coastguard Worker  # See the License for the specific language governing permissions and
21*cc02d7e2SAndroid Build Coastguard Worker  # limitations under the License.
22*cc02d7e2SAndroid Build Coastguard Worker
23*cc02d7e2SAndroid Build Coastguard Worker
24*cc02d7e2SAndroid Build Coastguard Worker  Pod::Spec.new do |s|
25*cc02d7e2SAndroid Build Coastguard Worker    s.name     = 'gRPC-ProtoRPC'
26*cc02d7e2SAndroid Build Coastguard Worker    version = '${settings.version}'
27*cc02d7e2SAndroid Build Coastguard Worker    s.version  = version
28*cc02d7e2SAndroid Build Coastguard Worker    s.summary  = 'RPC library for Protocol Buffers, based on gRPC'
29*cc02d7e2SAndroid Build Coastguard Worker    s.homepage = 'https://grpc.io'
30*cc02d7e2SAndroid Build Coastguard Worker    s.license  = 'Apache License, Version 2.0'
31*cc02d7e2SAndroid Build Coastguard Worker    s.authors  = { 'The gRPC contributors' => '[email protected]' }
32*cc02d7e2SAndroid Build Coastguard Worker
33*cc02d7e2SAndroid Build Coastguard Worker    s.source = {
34*cc02d7e2SAndroid Build Coastguard Worker      :git => 'https://github.com/grpc/grpc.git',
35*cc02d7e2SAndroid Build Coastguard Worker      :tag => "v#{version}",
36*cc02d7e2SAndroid Build Coastguard Worker    }
37*cc02d7e2SAndroid Build Coastguard Worker
38*cc02d7e2SAndroid Build Coastguard Worker    s.ios.deployment_target = '10.0'
39*cc02d7e2SAndroid Build Coastguard Worker    s.osx.deployment_target = '10.12'
40*cc02d7e2SAndroid Build Coastguard Worker    s.tvos.deployment_target = '12.0'
41*cc02d7e2SAndroid Build Coastguard Worker    s.watchos.deployment_target = '6.0'
42*cc02d7e2SAndroid Build Coastguard Worker
43*cc02d7e2SAndroid Build Coastguard Worker    name = 'ProtoRPC'
44*cc02d7e2SAndroid Build Coastguard Worker    s.module_name = name
45*cc02d7e2SAndroid Build Coastguard Worker    s.header_dir = name
46*cc02d7e2SAndroid Build Coastguard Worker
47*cc02d7e2SAndroid Build Coastguard Worker    s.default_subspec = 'Main', 'Legacy', 'Legacy-Header'
48*cc02d7e2SAndroid Build Coastguard Worker
49*cc02d7e2SAndroid Build Coastguard Worker    s.subspec 'Legacy-Header' do |ss|
50*cc02d7e2SAndroid Build Coastguard Worker      ss.header_mappings_dir = "src/objective-c/ProtoRPC"
51*cc02d7e2SAndroid Build Coastguard Worker      ss.public_header_files = "src/objective-c/ProtoRPC/ProtoRPCLegacy.h"
52*cc02d7e2SAndroid Build Coastguard Worker      ss.source_files = "src/objective-c/ProtoRPC/ProtoRPCLegacy.h"
53*cc02d7e2SAndroid Build Coastguard Worker    end
54*cc02d7e2SAndroid Build Coastguard Worker
55*cc02d7e2SAndroid Build Coastguard Worker    s.subspec 'Main' do |ss|
56*cc02d7e2SAndroid Build Coastguard Worker      ss.header_mappings_dir = "src/objective-c/ProtoRPC"
57*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency "#{s.name}/Legacy-Header", version
58*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency 'gRPC/Interface', version
59*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency 'Protobuf', '~> 3.0'
60*cc02d7e2SAndroid Build Coastguard Worker
61*cc02d7e2SAndroid Build Coastguard Worker      ss.source_files = "src/objective-c/ProtoRPC/ProtoMethod.{h,m}",
62*cc02d7e2SAndroid Build Coastguard Worker                        "src/objective-c/ProtoRPC/ProtoRPC.{h,m}",
63*cc02d7e2SAndroid Build Coastguard Worker                        "src/objective-c/ProtoRPC/ProtoService.{h,m}"
64*cc02d7e2SAndroid Build Coastguard Worker    end
65*cc02d7e2SAndroid Build Coastguard Worker
66*cc02d7e2SAndroid Build Coastguard Worker    s.subspec 'Legacy' do |ss|
67*cc02d7e2SAndroid Build Coastguard Worker      ss.header_mappings_dir = "src/objective-c/ProtoRPC"
68*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency "#{s.name}/Main", version
69*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency "#{s.name}/Legacy-Header", version
70*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency 'gRPC/GRPCCore', version
71*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency 'gRPC-RxLibrary', version
72*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency 'Protobuf', '~> 3.0'
73*cc02d7e2SAndroid Build Coastguard Worker
74*cc02d7e2SAndroid Build Coastguard Worker      ss.source_files = "src/objective-c/ProtoRPC/ProtoRPCLegacy.m",
75*cc02d7e2SAndroid Build Coastguard Worker                        "src/objective-c/ProtoRPC/ProtoServiceLegacy.m"
76*cc02d7e2SAndroid Build Coastguard Worker    end
77*cc02d7e2SAndroid Build Coastguard Worker
78*cc02d7e2SAndroid Build Coastguard Worker    # CFStream is now default. Leaving this subspec only for compatibility purpose.
79*cc02d7e2SAndroid Build Coastguard Worker    s.subspec 'CFStream' do |ss|
80*cc02d7e2SAndroid Build Coastguard Worker      ss.dependency "#{s.name}/Legacy", version
81*cc02d7e2SAndroid Build Coastguard Worker    end
82*cc02d7e2SAndroid Build Coastguard Worker
83*cc02d7e2SAndroid Build Coastguard Worker    s.pod_target_xcconfig = {
84*cc02d7e2SAndroid Build Coastguard Worker      # This is needed by all pods that depend on Protobuf:
85*cc02d7e2SAndroid Build Coastguard Worker      'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1',
86*cc02d7e2SAndroid Build Coastguard Worker      # This is needed by all pods that depend on gRPC-RxLibrary:
87*cc02d7e2SAndroid Build Coastguard Worker      'CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES' => 'YES',
88*cc02d7e2SAndroid Build Coastguard Worker      'CLANG_WARN_STRICT_PROTOTYPES' => 'NO',
89*cc02d7e2SAndroid Build Coastguard Worker      'CLANG_CXX_LANGUAGE_STANDARD' => 'c++14',
90*cc02d7e2SAndroid Build Coastguard Worker    }
91*cc02d7e2SAndroid Build Coastguard Worker  end
92