forked from react/react-native
- Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathReact-Core.podspec
More file actions
Latest commit
101 lines (89 loc) · 4.19 KB
/
Copy pathReact-Core.podspec
File metadata and controls
101 lines (89 loc) · 4.19 KB
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
# coding: utf-8
# Copyright (c) Facebook, Inc. and its affiliates.
#
# This source code is licensed under the MIT license found in the
# LICENSE file in the root directory of this source tree.
require"json"
package=JSON.parse(File.read(File.join(__dir__,"package.json")))
version=package['version']
source={:git=>'https://github.com/facebook/react-native.git'}
ifversion == '1000.0.0'
# This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
source[:commit]=`git rev-parse HEAD`.strip
else
source[:tag]="v#{version}"
end
folly_compiler_flags='-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32'
folly_version='2018.10.22.00'
boost_compiler_flags='-Wno-documentation'
header_subspecs={
'ARTHeaders'=>'Libraries/ART/**/*.h',
'CoreModulesHeaders'=>'React/CoreModules/**/*.h',
'RCTActionSheetHeaders'=>'Libraries/ActionSheetIOS/*.h',
'RCTAnimationHeaders'=>'Libraries/NativeAnimation/{Drivers/*,Nodes/*,*}.{h}',
'RCTBlobHeaders'=>'Libraries/Blob/{RCTBlobManager,RCTFileReaderModule}.h',
'RCTImageHeaders'=>'Libraries/Image/*.h',
'RCTLinkingHeaders'=>'Libraries/LinkingIOS/*.h',
'RCTNetworkHeaders'=>'Libraries/Network/*.h',
'RCTPushNotificationHeaders'=>'Libraries/PushNotificationIOS/*.h',
'RCTSettingsHeaders'=>'Libraries/Settings/*.h',
'RCTTextHeaders'=>'Libraries/Text/**/*.h',
'RCTVibrationHeaders'=>'Libraries/Vibration/*.h',
}
Pod::Spec.newdo |s|
s.name="React-Core"
s.version=version
s.summary="The core of React Native."
s.homepage="http://facebook.github.io/react-native/"
s.license=package["license"]
s.author="Facebook, Inc. and its affiliates"
s.platforms={:ios=>"9.0",:tvos=>"9.2"}
s.source=source
s.compiler_flags=folly_compiler_flags + ' ' + boost_compiler_flags
s.header_dir="React"
s.framework="JavaScriptCore"
s.library="stdc++"
s.pod_target_xcconfig={"HEADER_SEARCH_PATHS"=>"\"$(PODS_TARGET_SRCROOT)/ReactCommon\"\"$(PODS_ROOT)/boost-for-react-native\"\"$(PODS_ROOT)/DoubleConversion\"\"$(PODS_ROOT)/Folly\""}
s.user_target_xcconfig={"HEADER_SEARCH_PATHS"=>"\"$(PODS_ROOT)/Headers/Private/React-Core\""}
s.default_subspec="Default"
s.subspec"Default"do |ss|
ss.source_files="React/**/*.{c,h,m,mm,S,cpp}"
ss.exclude_files="React/CoreModules/**/*",
"React/DevSupport/**/*",
"React/Fabric/**/*",
"React/Inspector/**/*"
ss.ios.exclude_files="React/**/RCTTV*.*"
ss.tvos.exclude_files="React/Modules/RCTClipboard*",
"React/Views/RCTDatePicker*",
"React/Views/RCTPicker*",
"React/Views/RCTRefreshControl*",
"React/Views/RCTSlider*",
"React/Views/RCTSwitch*",
ss.private_header_files="React/Cxx*/*.h"
end
s.subspec"DevSupport"do |ss|
ss.source_files="React/DevSupport/*.{h,mm,m}",
"React/Inspector/*.{h,mm,m}"
ss.dependency"React-Core/Default",version
ss.dependency"React-Core/RCTWebSocket",version
ss.dependency"React-jsinspector",version
end
s.subspec"RCTWebSocket"do |ss|
ss.source_files="Libraries/WebSocket/*.{h,m}"
ss.dependency"React-Core/Default",version
end
# Add a subspec containing just the headers for each
# pod that should live under <React/*.h>
header_subspecs.eachdo |name,headers|
s.subspecnamedo |ss|
ss.source_files=headers
ss.dependency"React-Core/Default"
end
end
s.dependency"Folly",folly_version
s.dependency"React-cxxreact",version
s.dependency"React-jsi",version
s.dependency"React-jsiexecutor",version
s.dependency"Yoga"
s.dependency"glog"
end