gRPC.podspec 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. # This file has been automatically generated from a template file.
  2. # Please make modifications to `templates/gRPC.podspec.template`
  3. # instead. This file can be regenerated from the template by running
  4. # `tools/buildgen/generate_projects.sh`.
  5. # Copyright 2015 gRPC authors.
  6. #
  7. # Licensed under the Apache License, Version 2.0 (the "License");
  8. # you may not use this file except in compliance with the License.
  9. # You may obtain a copy of the License at
  10. #
  11. # http://www.apache.org/licenses/LICENSE-2.0
  12. #
  13. # Unless required by applicable law or agreed to in writing, software
  14. # distributed under the License is distributed on an "AS IS" BASIS,
  15. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  16. # See the License for the specific language governing permissions and
  17. # limitations under the License.
  18. Pod::Spec.new do |s|
  19. s.name = 'gRPC'
  20. version = '1.45.2'
  21. s.version = version
  22. s.summary = 'gRPC client library for iOS/OSX'
  23. s.homepage = 'https://grpc.io'
  24. s.license = 'Apache License, Version 2.0'
  25. s.authors = { 'The gRPC contributors' => 'grpc-packages@google.com' }
  26. s.source = {
  27. :git => 'https://github.com/grpc/grpc.git',
  28. :tag => "v#{version}",
  29. }
  30. name = 'GRPCClient'
  31. s.module_name = name
  32. s.header_dir = name
  33. s.default_subspec = 'Interface', 'GRPCCore', 'Interface-Legacy'
  34. s.pod_target_xcconfig = {
  35. # This is needed by all pods that depend on gRPC-RxLibrary:
  36. 'CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES' => 'YES',
  37. 'CLANG_WARN_STRICT_PROTOTYPES' => 'NO',
  38. }
  39. s.ios.deployment_target = '9.0'
  40. s.osx.deployment_target = '10.10'
  41. s.tvos.deployment_target = '10.0'
  42. s.watchos.deployment_target = '4.0'
  43. s.subspec 'Interface-Legacy' do |ss|
  44. ss.header_mappings_dir = 'src/objective-c/GRPCClient'
  45. ss.public_header_files = "src/objective-c/GRPCClient/GRPCCall+ChannelArg.h",
  46. "src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h",
  47. "src/objective-c/GRPCClient/GRPCCall+Cronet.h",
  48. "src/objective-c/GRPCClient/GRPCCall+OAuth2.h",
  49. "src/objective-c/GRPCClient/GRPCCall+Tests.h",
  50. "src/objective-c/GRPCClient/GRPCCallLegacy.h",
  51. "src/objective-c/GRPCClient/GRPCTypes.h"
  52. ss.source_files = "src/objective-c/GRPCClient/GRPCCall+ChannelArg.h",
  53. "src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h",
  54. "src/objective-c/GRPCClient/GRPCCall+Cronet.h",
  55. "src/objective-c/GRPCClient/GRPCCall+OAuth2.h",
  56. "src/objective-c/GRPCClient/GRPCCall+Tests.h",
  57. "src/objective-c/GRPCClient/GRPCCallLegacy.h",
  58. "src/objective-c/GRPCClient/GRPCTypes.h",
  59. "src/objective-c/GRPCClient/GRPCTypes.m"
  60. ss.dependency "gRPC-RxLibrary/Interface", version
  61. ss.ios.deployment_target = '9.0'
  62. ss.osx.deployment_target = '10.10'
  63. ss.tvos.deployment_target = '10.0'
  64. ss.watchos.deployment_target = '4.0'
  65. end
  66. s.subspec 'Interface' do |ss|
  67. ss.header_mappings_dir = 'src/objective-c/GRPCClient'
  68. ss.public_header_files = 'src/objective-c/GRPCClient/GRPCCall.h',
  69. 'src/objective-c/GRPCClient/GRPCCall+Interceptor.h',
  70. 'src/objective-c/GRPCClient/GRPCCallOptions.h',
  71. 'src/objective-c/GRPCClient/GRPCInterceptor.h',
  72. 'src/objective-c/GRPCClient/GRPCTransport.h',
  73. 'src/objective-c/GRPCClient/GRPCDispatchable.h',
  74. 'src/objective-c/GRPCClient/version.h'
  75. ss.source_files = 'src/objective-c/GRPCClient/GRPCCall.h',
  76. 'src/objective-c/GRPCClient/GRPCCall.m',
  77. 'src/objective-c/GRPCClient/GRPCCall+Interceptor.h',
  78. 'src/objective-c/GRPCClient/GRPCCall+Interceptor.m',
  79. 'src/objective-c/GRPCClient/GRPCCallOptions.h',
  80. 'src/objective-c/GRPCClient/GRPCCallOptions.m',
  81. 'src/objective-c/GRPCClient/GRPCDispatchable.h',
  82. 'src/objective-c/GRPCClient/GRPCInterceptor.h',
  83. 'src/objective-c/GRPCClient/GRPCInterceptor.m',
  84. 'src/objective-c/GRPCClient/GRPCTransport.h',
  85. 'src/objective-c/GRPCClient/GRPCTransport.m',
  86. 'src/objective-c/GRPCClient/internal/*.h',
  87. 'src/objective-c/GRPCClient/private/GRPCTransport+Private.h',
  88. 'src/objective-c/GRPCClient/private/GRPCTransport+Private.m',
  89. 'src/objective-c/GRPCClient/version.h'
  90. ss.dependency "#{s.name}/Interface-Legacy", version
  91. ss.ios.deployment_target = '9.0'
  92. ss.osx.deployment_target = '10.10'
  93. ss.tvos.deployment_target = '10.0'
  94. ss.watchos.deployment_target = '4.0'
  95. end
  96. s.subspec 'GRPCCore' do |ss|
  97. ss.header_mappings_dir = 'src/objective-c/GRPCClient'
  98. ss.public_header_files = 'src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h',
  99. 'src/objective-c/GRPCClient/GRPCCall+Cronet.h',
  100. 'src/objective-c/GRPCClient/GRPCCall+OAuth2.h',
  101. 'src/objective-c/GRPCClient/GRPCCall+Tests.h',
  102. 'src/objective-c/GRPCClient/GRPCCall+ChannelArg.h'
  103. ss.private_header_files = 'src/objective-c/GRPCClient/private/GRPCCore/*.h'
  104. ss.source_files = 'src/objective-c/GRPCClient/private/GRPCCore/*.{h,m}',
  105. 'src/objective-c/GRPCClient/GRPCCall+ChannelArg.h',
  106. 'src/objective-c/GRPCClient/GRPCCall+ChannelArg.m',
  107. 'src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h',
  108. 'src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.m',
  109. 'src/objective-c/GRPCClient/GRPCCall+Cronet.h',
  110. 'src/objective-c/GRPCClient/GRPCCall+Cronet.m',
  111. 'src/objective-c/GRPCClient/GRPCCall+OAuth2.h',
  112. 'src/objective-c/GRPCClient/GRPCCall+OAuth2.m',
  113. 'src/objective-c/GRPCClient/GRPCCall+Tests.h',
  114. 'src/objective-c/GRPCClient/GRPCCall+Tests.m',
  115. 'src/objective-c/GRPCClient/GRPCCallLegacy.m'
  116. # Certificates, to be able to establish TLS connections:
  117. ss.resource_bundles = { 'gRPCCertificates' => ['etc/roots.pem'] }
  118. ss.dependency "#{s.name}/Interface-Legacy", version
  119. ss.dependency "#{s.name}/Interface", version
  120. ss.dependency 'gRPC-Core', version
  121. ss.dependency 'gRPC-RxLibrary', version
  122. ss.ios.deployment_target = '9.0'
  123. ss.osx.deployment_target = '10.10'
  124. ss.tvos.deployment_target = '10.0'
  125. ss.watchos.deployment_target = '4.0'
  126. end
  127. s.subspec 'GRPCCoreCronet' do |ss|
  128. ss.header_mappings_dir = 'src/objective-c/GRPCClient'
  129. ss.source_files = 'src/objective-c/GRPCClient/GRPCCall+Cronet.h',
  130. 'src/objective-c/GRPCClient/GRPCCall+Cronet.m',
  131. 'src/objective-c/GRPCClient/private/GRPCCore/GRPCCoreCronet/*.{h,m}'
  132. ss.dependency "#{s.name}/GRPCCore", version
  133. ss.dependency 'gRPC-Core/Cronet-Implementation', version
  134. ss.dependency 'CronetFramework'
  135. ss.ios.deployment_target = '9.0'
  136. end
  137. # CFStream is now default. Leaving this subspec only for compatibility purpose.
  138. s.subspec 'CFStream' do |ss|
  139. ss.dependency "#{s.name}/GRPCCore", version
  140. ss.ios.deployment_target = '9.0'
  141. ss.osx.deployment_target = '10.10'
  142. ss.tvos.deployment_target = '10.0'
  143. ss.watchos.deployment_target = '4.0'
  144. end
  145. s.subspec 'InternalTesting' do |ss|
  146. ss.dependency "#{s.name}/GRPCCore", version
  147. ss.public_header_files = 'src/objective-c/GRPCClient/internal_testing/*.h'
  148. ss.source_files = 'src/objective-c/GRPCClient/internal_testing/*.{h,m}'
  149. ss.header_mappings_dir = 'src/objective-c/GRPCClient'
  150. ss.ios.deployment_target = '9.0'
  151. ss.osx.deployment_target = '10.10'
  152. ss.tvos.deployment_target = '10.0'
  153. ss.watchos.deployment_target = '4.0'
  154. end
  155. end