2017-11-21 17:02:22 -08:00
|
|
|
Pod::Spec.new do |s|
|
|
|
|
|
s.name = 'FirebaseAuth'
|
2023-06-14 07:20:58 -07:00
|
|
|
s.version = '10.12.0'
|
2020-03-31 10:21:48 -07:00
|
|
|
s.summary = 'Apple platform client for Firebase Authentication'
|
2017-11-21 17:02:22 -08:00
|
|
|
|
|
|
|
|
s.description = <<-DESC
|
|
|
|
|
Firebase Authentication allows you to manage your own account system without any backend code. It
|
|
|
|
|
supports email and password accounts, as well as several 3rd party authentication mechanisms.
|
|
|
|
|
DESC
|
|
|
|
|
|
|
|
|
|
s.homepage = 'https://firebase.google.com'
|
2022-05-09 13:23:42 +00:00
|
|
|
s.license = { :type => 'Apache-2.0', :file => 'LICENSE' }
|
2017-11-21 17:02:22 -08:00
|
|
|
s.authors = 'Google, Inc.'
|
|
|
|
|
|
|
|
|
|
s.source = {
|
|
|
|
|
:git => 'https://github.com/firebase/firebase-ios-sdk.git',
|
2020-10-02 12:26:22 -07:00
|
|
|
:tag => 'CocoaPods-' + s.version.to_s
|
2017-11-21 17:02:22 -08:00
|
|
|
}
|
2020-10-02 12:26:22 -07:00
|
|
|
|
2017-11-21 17:02:22 -08:00
|
|
|
s.social_media_url = 'https://twitter.com/Firebase'
|
2021-03-18 12:22:16 -07:00
|
|
|
|
2022-09-21 16:48:11 -04:00
|
|
|
ios_deployment_target = '11.0'
|
|
|
|
|
osx_deployment_target = '10.13'
|
2022-09-24 07:06:20 -04:00
|
|
|
tvos_deployment_target = '12.0'
|
2021-03-18 12:22:16 -07:00
|
|
|
watchos_deployment_target = '6.0'
|
|
|
|
|
|
2022-03-09 16:25:39 -05:00
|
|
|
s.swift_version = '5.3'
|
|
|
|
|
|
2023-02-03 16:09:23 -05:00
|
|
|
s.prepare_command = <<-CMD
|
|
|
|
|
ruby scripts/build_private_module_map.rb FirebaseAuth.podspec
|
|
|
|
|
CMD
|
|
|
|
|
|
2021-03-18 12:22:16 -07:00
|
|
|
s.ios.deployment_target = ios_deployment_target
|
|
|
|
|
s.osx.deployment_target = osx_deployment_target
|
|
|
|
|
s.tvos.deployment_target = tvos_deployment_target
|
|
|
|
|
s.watchos.deployment_target = watchos_deployment_target
|
2017-11-21 17:02:22 -08:00
|
|
|
|
2018-02-16 07:43:20 -08:00
|
|
|
s.cocoapods_version = '>= 1.4.0'
|
2017-11-21 17:02:22 -08:00
|
|
|
s.prefix_header_file = false
|
|
|
|
|
|
2020-04-08 17:52:56 -07:00
|
|
|
source = 'FirebaseAuth/Sources/'
|
2020-06-09 06:09:27 -07:00
|
|
|
s.source_files = [
|
2022-12-29 17:31:49 -08:00
|
|
|
'FirebaseAuth/Sources/Swift/**/*.swift',
|
2020-06-09 06:09:27 -07:00
|
|
|
source + '**/*.[mh]',
|
2022-02-09 13:11:56 -09:00
|
|
|
'FirebaseAuth/Interop/*.h',
|
2023-03-31 17:29:06 -07:00
|
|
|
'FirebaseAppCheck/Interop/*.h',
|
2020-06-09 06:09:27 -07:00
|
|
|
]
|
2020-07-27 15:21:19 -07:00
|
|
|
s.public_header_files = source + 'Public/FirebaseAuth/*.h'
|
2023-02-03 16:09:23 -05:00
|
|
|
|
|
|
|
|
# All headers except the ones in the `Public` should be private.
|
|
|
|
|
s.private_header_files = Dir['FirebaseAuth/Sources/**/*.h']
|
|
|
|
|
.reject{ |f| f['FirebaseAuth/Sources/Public/'] } + [
|
|
|
|
|
'FirebaseAuth/Interop/*.h'
|
|
|
|
|
]
|
|
|
|
|
|
2017-11-21 17:02:22 -08:00
|
|
|
s.preserve_paths = [
|
2020-04-08 17:52:56 -07:00
|
|
|
'FirebaseAuth/README.md',
|
|
|
|
|
'FirebaseAuth/CHANGELOG.md'
|
2017-11-21 17:02:22 -08:00
|
|
|
]
|
|
|
|
|
s.pod_target_xcconfig = {
|
2018-10-24 11:04:00 -07:00
|
|
|
'GCC_C_LANGUAGE_STANDARD' => 'c99',
|
2023-01-11 12:24:28 -09:00
|
|
|
# The second path is to find FirebaseAuth-Swift.h from a pod gen project
|
2023-02-03 16:09:23 -05:00
|
|
|
'HEADER_SEARCH_PATHS' => '"${PODS_TARGET_SRCROOT}" "${OBJECT_FILE_DIR_normal}/${NATIVE_ARCH_ACTUAL}"',
|
|
|
|
|
# Point to the private module map.
|
|
|
|
|
'MODULEMAP_PRIVATE_FILE' =>
|
|
|
|
|
'${PODS_TARGET_SRCROOT}/FirebaseAuth/Sources/FirebaseAuth.private.modulemap'
|
2017-11-21 17:02:22 -08:00
|
|
|
}
|
|
|
|
|
s.framework = 'Security'
|
2018-10-25 09:42:45 -07:00
|
|
|
s.ios.framework = 'SafariServices'
|
2023-03-31 17:29:06 -07:00
|
|
|
s.dependency 'FirebaseAppCheckInterop', '~> 10.0'
|
2022-09-24 07:06:20 -04:00
|
|
|
s.dependency 'FirebaseCore', '~> 10.0'
|
2023-02-15 16:48:48 -05:00
|
|
|
s.dependency 'FirebaseCoreExtension', '~> 10.0'
|
2022-09-24 07:06:20 -04:00
|
|
|
s.dependency 'GoogleUtilities/AppDelegateSwizzler', '~> 7.8'
|
|
|
|
|
s.dependency 'GoogleUtilities/Environment', '~> 7.8'
|
2022-11-08 09:53:52 -08:00
|
|
|
s.dependency 'GTMSessionFetcher/Core', '>= 2.1', '< 4.0'
|
2019-06-05 20:33:21 -07:00
|
|
|
|
2023-02-15 16:36:10 -08:00
|
|
|
s.test_spec 'unit' do |unit_tests|
|
|
|
|
|
unit_tests.scheme = { :code_coverage => true }
|
|
|
|
|
# Unit tests can't run on watchOS.
|
|
|
|
|
unit_tests.platforms = {
|
|
|
|
|
:ios => ios_deployment_target,
|
|
|
|
|
:osx => osx_deployment_target,
|
|
|
|
|
:tvos => tvos_deployment_target
|
|
|
|
|
}
|
|
|
|
|
unit_tests.source_files = 'FirebaseAuth/Tests/Unit/*.{m,h,swift}'
|
|
|
|
|
unit_tests.osx.exclude_files = [
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthAPNSTokenManagerTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthAPNSTokenTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthAppCredentialManagerTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthNotificationManagerTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthURLPresenterTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIREmailLink*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRPhoneAuthProviderTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRSendVerificationCode*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRSignInWithGameCenterTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRVerifyClient*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRVerifyPhoneNumber*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRMultiFactorResolverTests.m',
|
|
|
|
|
]
|
|
|
|
|
unit_tests.tvos.exclude_files = [
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthAPNSTokenManagerTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthNotificationManagerTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRAuthURLPresenterTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIREmailLink*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRPhoneAuthProviderTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRSendVerificationCode*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRSignInWithGameCenterTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRVerifyClient*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRVerifyPhoneNumber*',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m',
|
|
|
|
|
'FirebaseAuth/Tests/Unit/FIRMultiFactorResolverTests.m',
|
|
|
|
|
]
|
|
|
|
|
# app_host is needed for tests with keychain
|
|
|
|
|
unit_tests.requires_app_host = true
|
|
|
|
|
unit_tests.dependency 'OCMock'
|
|
|
|
|
unit_tests.dependency 'HeartbeatLoggingTestUtils'
|
2023-01-31 16:13:35 -05:00
|
|
|
|
2023-02-15 16:36:10 -08:00
|
|
|
# This pre-processor directive is used to selectively disable keychain
|
|
|
|
|
# related code that blocks unit testing on macOS.
|
|
|
|
|
s.osx.pod_target_xcconfig = {
|
2023-02-16 10:46:31 -07:00
|
|
|
'OTHER_SWIFT_FLAGS' => '$(inherited) -D FIREBASE_AUTH_MACOS_TESTING',
|
2023-02-15 16:36:10 -08:00
|
|
|
}
|
2019-06-05 20:33:21 -07:00
|
|
|
end
|
2017-11-21 17:02:22 -08:00
|
|
|
end
|