mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
13cefd396c
Summary: Changelog: [iOS] [Fixed] Integrated Flipper in RNTester application and made sure that flipper connects with RNTester application allow-large-files Reviewed By: rickhanlonii Differential Revision: D19813213 fbshipit-source-id: f0c7a5a42ffaccd488582b0f42ce37aea946c636
94 lines
3.0 KiB
Ruby
94 lines
3.0 KiB
Ruby
platform :ios, '9.0'
|
|
|
|
require_relative '../scripts/autolink-ios'
|
|
|
|
if ENV['USE_FRAMEWORKS'] == '1'
|
|
puts "Installing pods with use_frameworks!"
|
|
use_frameworks!
|
|
end
|
|
|
|
def pods()
|
|
project 'RNTesterPods.xcodeproj'
|
|
|
|
# Enable TurboModule
|
|
use_react_native!(path: "..")
|
|
pod 'ReactCommon/turbomodule/samples', :path => '../ReactCommon'
|
|
|
|
# Additional Pods which aren't included in the default Podfile
|
|
pod 'React-ART', :path => '../Libraries/ART'
|
|
pod 'React-RCTPushNotification', :path => '../Libraries/PushNotificationIOS'
|
|
pod 'Yoga',:path => '../ReactCommon/yoga', :modular_headers => true
|
|
# Additional Pods which are classed as unstable
|
|
#
|
|
# To use fabric: add `fabric_enabled` option to the use_react_native method above, like below
|
|
# use_react_native!(path: "..", fabric_enabled: true)
|
|
end
|
|
|
|
|
|
def flipper_pods()
|
|
flipperkit_version = '0.30.1'
|
|
pod 'FlipperKit', '~>' + flipperkit_version, :configuration => 'Debug'
|
|
pod 'FlipperKit/FlipperKitLayoutPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
|
|
pod 'FlipperKit/SKIOSNetworkPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
|
|
pod 'FlipperKit/FlipperKitUserDefaultsPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
|
|
pod 'FlipperKit/FlipperKitReactPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
|
|
|
|
if ENV['USE_FRAMEWORKS'] == '1'
|
|
$static_framework = ['FlipperKit', 'Flipper', 'Flipper-Folly',
|
|
'CocoaAsyncSocket', 'ComponentKit', 'Flipper-DoubleConversion',
|
|
'Flipper-Glog', 'Flipper-PeerTalk', 'Flipper-RSocket',
|
|
'CocoaLibEvent', 'OpenSSL-Universal', 'boost-for-react-native']
|
|
|
|
pre_install do |installer|
|
|
Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}
|
|
installer.pod_targets.each do |pod|
|
|
if $static_framework.include?(pod.name)
|
|
def pod.build_type;
|
|
Pod::Target::BuildType.static_library
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
# Post Install processing for Flipper
|
|
def flipper_post_install(installer)
|
|
file_name = Dir.glob("*.xcodeproj")[0]
|
|
app_project = Xcodeproj::Project.open(file_name)
|
|
app_project.native_targets.each do |target|
|
|
target.build_configurations.each do |config|
|
|
cflags = config.build_settings['OTHER_CFLAGS'] || '$(inherited) '
|
|
unless cflags.include? '-DFB_SONARKIT_ENABLED=1'
|
|
puts 'Adding -DFB_SONARKIT_ENABLED=1 in OTHER_CFLAGS...'
|
|
cflags << ' -DFB_SONARKIT_ENABLED=1 '
|
|
end
|
|
config.build_settings['OTHER_CFLAGS'] = cflags
|
|
end
|
|
app_project.save
|
|
end
|
|
installer.pods_project.save
|
|
end
|
|
|
|
target 'RNTester' do
|
|
pods()
|
|
flipper_pods()
|
|
end
|
|
|
|
target 'RNTesterUnitTests' do
|
|
pods()
|
|
pod 'React-RCTTest', :path => "RCTTest"
|
|
end
|
|
|
|
target 'RNTesterIntegrationTests' do
|
|
pods()
|
|
pod 'React-RCTTest', :path => "RCTTest"
|
|
end
|
|
|
|
post_install do |installer|
|
|
flipper_post_install(installer)
|
|
installer.pods_project.targets.each do |target|
|
|
puts target.name
|
|
end
|
|
end
|