forked from NOUIY/firebase-ios-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
FirebaseMessaging.podspec
96 lines (87 loc) · 3.49 KB
/
FirebaseMessaging.podspec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Pod::Spec.new do |s|
s.name = 'FirebaseMessaging'
s.version = '8.12.0'
s.summary = 'Firebase Messaging'
s.description = <<-DESC
Firebase Messaging is a service that allows you to send data from your server to your users'
iOS device, and also to receive messages from devices on the same connection. The service handles
all aspects of queueing of messages and delivery to the target application running on the target
device, and it is completely free.
DESC
s.homepage = 'https://firebase.google.com'
s.license = { :type => 'Apache', :file => 'LICENSE' }
s.authors = 'Google, Inc.'
s.source = {
:git => 'https://github.com/firebase/firebase-ios-sdk.git',
:tag => 'CocoaPods-' + s.version.to_s
}
s.social_media_url = 'https://twitter.com/Firebase'
ios_deployment_target = '10.0'
osx_deployment_target = '10.12'
tvos_deployment_target = '10.0'
watchos_deployment_target = '6.0'
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
s.cocoapods_version = '>= 1.4.0'
s.prefix_header_file = false
base_dir = "FirebaseMessaging/"
s.source_files = [
base_dir + 'Sources/**/*',
base_dir + 'Sources/Protogen/nanopb/*.h',
'Interop/Analytics/Public/*.h',
'FirebaseCore/Sources/Private/*.h',
'FirebaseInstallations/Source/Library/Private/*.h',
]
s.public_header_files = base_dir + 'Sources/Public/FirebaseMessaging/*.h'
s.library = 'sqlite3'
s.pod_target_xcconfig = {
'GCC_C_LANGUAGE_STANDARD' => 'c99',
'GCC_PREPROCESSOR_DEFINITIONS' =>
# for nanopb:
'PB_FIELD_32BIT=1 PB_NO_PACKED_STRUCTS=1 PB_ENABLE_MALLOC=1',
# Unit tests do library imports using repo-root relative paths.
'HEADER_SEARCH_PATHS' => '"${PODS_TARGET_SRCROOT}"',
}
s.ios.framework = 'SystemConfiguration'
s.tvos.framework = 'SystemConfiguration'
s.osx.framework = 'SystemConfiguration'
s.weak_framework = 'UserNotifications'
s.dependency 'FirebaseInstallations', '~> 8.0'
s.dependency 'FirebaseCore', '~> 8.0'
s.dependency 'GoogleUtilities/AppDelegateSwizzler', '~> 7.7'
s.dependency 'GoogleUtilities/Reachability', '~> 7.7'
s.dependency 'GoogleUtilities/Environment', '~> 7.7'
s.dependency 'GoogleUtilities/UserDefaults', '~> 7.7'
s.dependency 'GoogleDataTransport', '~> 9.1'
s.dependency 'nanopb', '~> 2.30908.0'
s.test_spec 'unit' do |unit_tests|
unit_tests.scheme = { :code_coverage => true }
unit_tests.platforms = {
:ios => ios_deployment_target,
:osx => osx_deployment_target,
:tvos => tvos_deployment_target
}
unit_tests.source_files = [
'FirebaseMessaging/Tests/UnitTests*/*.{m,h,swift}',
'SharedTestUtilities/URLSession/*.[mh]',
]
unit_tests.requires_app_host = true
unit_tests.pod_target_xcconfig = {
'CLANG_ENABLE_OBJC_WEAK' => 'YES'
}
unit_tests.dependency 'OCMock'
end
s.test_spec 'integration' do |int_tests|
int_tests.scheme = { :code_coverage => true }
int_tests.platforms = {
:ios => ios_deployment_target,
:osx => osx_deployment_target,
:tvos => tvos_deployment_target
}
int_tests.source_files = 'FirebaseMessaging/Tests/IntegrationTests/*.swift'
int_tests.requires_app_host = true
int_tests.resources = 'FirebaseMessaging/Tests/IntegrationTests/Resources/GoogleService-Info.plist'
end
end