gRPC-ProtoRPC.podspec.template 3.3 KB

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