forked from kstenerud/KSCrash
-
Notifications
You must be signed in to change notification settings - Fork 0
/
KSCrash.podspec
136 lines (115 loc) · 6.09 KB
/
KSCrash.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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
Pod::Spec.new do |s|
IOS_DEPLOYMENT_TARGET = '6.0' unless defined? IOS_DEPLOYMENT_TARGET
s.name = "KSCrash"
s.version = "1.15.25"
s.summary = "The Ultimate iOS Crash Reporter"
s.homepage = "https://github.com/kstenerud/KSCrash"
s.license = { :type => 'KSCrash license agreement', :file => 'LICENSE' }
s.author = { "Karl Stenerud" => "[email protected]" }
s.ios.deployment_target = IOS_DEPLOYMENT_TARGET
s.osx.deployment_target = '10.8'
s.tvos.deployment_target = '9.0'
s.watchos.deployment_target = '2.0'
s.source = { :git => "https://github.com/kstenerud/KSCrash.git", :tag=>s.version.to_s }
s.frameworks = 'Foundation'
s.libraries = 'c++', 'z'
s.xcconfig = { 'GCC_ENABLE_CPP_EXCEPTIONS' => 'YES' }
s.default_subspecs = 'Installations'
s.subspec 'Recording' do |recording|
recording.compiler_flags = '-fno-optimize-sibling-calls'
recording.source_files = 'Source/KSCrash/Recording/**/*.{h,m,mm,c,cpp}',
'Source/KSCrash/llvm/**/*.{h,m,mm,c,cpp}',
'Source/KSCrash/swift/**/*.{h,m,mm,c,cpp,def}',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilter.h'
recording.public_header_files = 'Source/KSCrash/Recording/KSCrash.h',
'Source/KSCrash/Recording/KSCrashC.h',
'Source/KSCrash/Recording/KSCrashReportWriter.h',
'Source/KSCrash/Recording/KSCrashReportFields.h',
'Source/KSCrash/Recording/Monitors/KSCrashMonitorType.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilter.h'
recording.subspec 'Tools' do |tools|
tools.source_files = 'Source/KSCrash/Recording/Tools/*.h'
tools.compiler_flags = '-fno-optimize-sibling-calls'
end
end
s.subspec 'Reporting' do |reporting|
reporting.dependency 'KSCrash/Recording'
reporting.subspec 'Filters' do |filters|
filters.subspec 'Base' do |base|
base.source_files = 'Source/KSCrash/Reporting/Filters/Tools/**/*.{h,m,mm,c,cpp}',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilter.h'
base.public_header_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilter.h'
end
filters.subspec 'Alert' do |alert|
alert.dependency 'KSCrash/Reporting/Filters/Base'
alert.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterAlert.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterAlert.m'
end
filters.subspec 'AppleFmt' do |applefmt|
applefmt.dependency 'KSCrash/Reporting/Filters/Base'
applefmt.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterAppleFmt.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterAppleFmt.m'
end
filters.subspec 'Basic' do |basic|
basic.dependency 'KSCrash/Reporting/Filters/Base'
basic.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterBasic.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterBasic.m'
end
filters.subspec 'Stringify' do |stringify|
stringify.dependency 'KSCrash/Reporting/Filters/Base'
stringify.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterStringify.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterStringify.m'
end
filters.subspec 'GZip' do |gzip|
gzip.dependency 'KSCrash/Reporting/Filters/Base'
gzip.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterGZip.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterGZip.m'
end
filters.subspec 'JSON' do |json|
json.dependency 'KSCrash/Reporting/Filters/Base'
json.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterJSON.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterJSON.m'
end
filters.subspec 'Sets' do |sets|
sets.dependency 'KSCrash/Reporting/Filters/Base'
sets.dependency 'KSCrash/Reporting/Filters/AppleFmt'
sets.dependency 'KSCrash/Reporting/Filters/Basic'
sets.dependency 'KSCrash/Reporting/Filters/Stringify'
sets.dependency 'KSCrash/Reporting/Filters/GZip'
sets.dependency 'KSCrash/Reporting/Filters/JSON'
sets.source_files = 'Source/KSCrash/Reporting/Filters/KSCrashReportFilterSets.h',
'Source/KSCrash/Reporting/Filters/KSCrashReportFilterSets.m'
end
filters.subspec 'Tools' do |tools|
tools.source_files = 'Source/KSCrash/Reporting/Filters/Tools/**/*.{h,m,mm,c,cpp}'
end
end
reporting.subspec 'Tools' do |tools|
tools.ios.frameworks = 'SystemConfiguration'
tools.tvos.frameworks = 'SystemConfiguration'
tools.osx.frameworks = 'SystemConfiguration'
tools.source_files = 'Source/KSCrash/Reporting/Tools/**/*.{h,m,mm,c,cpp}',
'Source/KSCrash/Recording/KSSystemCapabilities.h'
end
reporting.subspec 'MessageUI' do |messageui|
end
reporting.subspec 'Sinks' do |sinks|
sinks.ios.frameworks = 'MessageUI'
sinks.dependency 'KSCrash/Reporting/Filters'
sinks.dependency 'KSCrash/Reporting/Tools'
sinks.source_files = 'Source/KSCrash/Reporting/Sinks/**/*.{h,m,mm,c,cpp}'
end
end
s.subspec 'Installations' do |installations|
installations.dependency 'KSCrash/Recording'
installations.dependency 'KSCrash/Reporting'
installations.source_files = 'Source/KSCrash/Installations/**/*.{h,m,mm,c,cpp}'
end
s.subspec 'Core' do |core|
core.dependency 'KSCrash/Reporting/Filters/Basic'
core.source_files = 'Source/KSCrash/Installations/KSCrashInstallation.h',
'Source/KSCrash/Installations/KSCrashInstallation.m',
'Source/KSCrash/Installations/KSCrashInstallation+Private.h',
'Source/KSCrash/Reporting/Tools/KSCString.{h,m}'
end
end