FirebaseInstanceID.podspec 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. Pod::Spec.new do |s|
  2. s.name = 'FirebaseInstanceID'
  3. s.version = '7.10.0'
  4. s.summary = 'Firebase InstanceID'
  5. s.description = <<-DESC
  6. Instance ID provides a unique ID per instance of your iOS apps. In addition to providing
  7. unique IDs for authentication, Instance ID can generate security tokens for use with other
  8. services.
  9. DESC
  10. s.homepage = 'https://firebase.google.com'
  11. s.license = { :type => 'Apache', :file => 'LICENSE' }
  12. s.authors = 'Google, Inc.'
  13. s.source = {
  14. :git => 'https://github.com/firebase/firebase-ios-sdk.git',
  15. :tag => 'CocoaPods-' + s.version.to_s
  16. }
  17. s.social_media_url = 'https://twitter.com/Firebase'
  18. ios_deployment_target = '10.0'
  19. osx_deployment_target = '10.12'
  20. tvos_deployment_target = '10.0'
  21. watchos_deployment_target = '6.0'
  22. s.ios.deployment_target = ios_deployment_target
  23. s.osx.deployment_target = osx_deployment_target
  24. s.tvos.deployment_target = tvos_deployment_target
  25. s.watchos.deployment_target = watchos_deployment_target
  26. s.cocoapods_version = '>= 1.4.0'
  27. s.prefix_header_file = false
  28. base_dir = "Firebase/InstanceID/"
  29. s.source_files = [
  30. base_dir + '**/*.[mh]',
  31. 'FirebaseCore/Sources/Private/*.h',
  32. 'FirebaseInstallations/Source/Library/Private/*.h',
  33. ]
  34. s.requires_arc = base_dir + '*.m'
  35. s.public_header_files = base_dir + 'Public/*.h'
  36. s.pod_target_xcconfig = {
  37. 'GCC_C_LANGUAGE_STANDARD' => 'c99',
  38. 'HEADER_SEARCH_PATHS' => '"${PODS_TARGET_SRCROOT}"'
  39. }
  40. s.framework = 'Security'
  41. s.dependency 'FirebaseCore', '~> 7.0'
  42. s.dependency 'FirebaseInstallations', '~> 7.0'
  43. s.dependency 'GoogleUtilities/UserDefaults', '~> 7.0'
  44. s.dependency 'GoogleUtilities/Environment', '~> 7.0'
  45. s.test_spec 'unit' do |unit_tests|
  46. unit_tests.scheme = { :code_coverage => true }
  47. unit_tests.platforms = {
  48. :ios => ios_deployment_target,
  49. :osx => osx_deployment_target,
  50. :tvos => tvos_deployment_target
  51. }
  52. unit_tests.source_files = 'Example/InstanceID/Tests/*.[mh]'
  53. unit_tests.requires_app_host = true
  54. unit_tests.dependency 'OCMock'
  55. unit_tests.pod_target_xcconfig = {
  56. # Unit tests do library imports using repo-root relative paths.
  57. 'HEADER_SEARCH_PATHS' => '"${PODS_TARGET_SRCROOT}"',
  58. # Prevent linker warning for test category override of
  59. # store:didDeleteFCMScopedTokensForCheckin:
  60. 'OTHER_LDFLAGS' => '-Xlinker -no_objc_category_merging',
  61. 'CLANG_ENABLE_OBJC_WEAK' => 'YES'
  62. }
  63. end
  64. s.test_spec 'integration' do |int_tests|
  65. int_tests.scheme = { :code_coverage => true }
  66. int_tests.platforms = {
  67. :ios => ios_deployment_target,
  68. :osx => osx_deployment_target,
  69. :tvos => tvos_deployment_target
  70. }
  71. int_tests.source_files = 'Example/InstanceID/IntegrationTests/*.[mh]'
  72. int_tests.resources = 'Example/InstanceID/Resources/**/*'
  73. int_tests.requires_app_host = true
  74. if ENV['FIR_IID_INTEGRATION_TESTS_REQUIRED'] && ENV['FIR_IID_INTEGRATION_TESTS_REQUIRED'] == '1' then
  75. int_tests.pod_target_xcconfig = {
  76. 'GCC_PREPROCESSOR_DEFINITIONS' =>
  77. 'FIR_IID_INTEGRATION_TESTS_REQUIRED=1'
  78. }
  79. end
  80. end
  81. end