1require "json" 2 3package = JSON.parse(File.read(File.join(__dir__, "package.json"))) 4 5Pod::Spec.new do |s| 6 s.name = 'expo-dev-launcher' 7 s.version = package['version'] 8 s.summary = package['description'] 9 s.description = package['description'] 10 s.license = package['license'] 11 s.author = package['author'] 12 s.homepage = package['homepage'] 13 s.platform = :ios, '12.0' 14 s.swift_version = '5.2' 15 s.source = { :git => 'https://github.com/github_account/expo-development-client.git', :tag => "#{s.version}" } 16 s.static_framework = true 17 s.source_files = 'ios/**/*.{h,m,swift,cpp}' 18 s.preserve_paths = 'ios/**/*.{h,m,swift}' 19 s.exclude_files = 'ios/Unsafe/**/*.{h,m,mm,swift,cpp}', 'ios/Tests/**/*.{h,m,swift}' 20 s.requires_arc = true 21 s.header_dir = 'EXDevLauncher' 22 23 s.resource_bundles = { 24 'EXDevLauncher' => [ 25 'ios/assets', 26 'ios/main.jsbundle', 27 'ios/Views/EXDevLauncherErrorView.storyboard' 28 ] 29 } 30 31 s.xcconfig = { 32 'GCC_PREPROCESSOR_DEFINITIONS' => "EX_DEV_LAUNCHER_VERSION=#{s.version}" 33 } 34 35 # Swift/Objective-C compatibility 36 s.pod_target_xcconfig = { "DEFINES_MODULE" => "YES" } 37 s.user_target_xcconfig = { 38 "HEADER_SEARCH_PATHS" => "\"${PODS_CONFIGURATION_BUILD_DIR}/expo-dev-launcher/Swift Compatibility Header\"", 39 } 40 41 s.dependency "React-Core" 42 s.dependency "expo-dev-menu-interface" 43 s.dependency "EXManifests" 44 s.dependency "EXUpdatesInterface" 45 s.dependency "expo-dev-menu" 46 s.dependency "ExpoModulesCore" 47 48 s.subspec 'Unsafe' do |unsafe| 49 unsafe.source_files = 'ios/Unsafe/**/*.{h,m,mm,swift,cpp}' 50 unsafe.compiler_flags = '-x objective-c++ -std=c++1z -fno-objc-arc' # Disable Automatic Reference Counting 51 end 52 53 s.subspec 'Main' do |main| 54 main.dependency "expo-dev-launcher/Unsafe" 55 end 56 57 s.test_spec 'Tests' do |test_spec| 58 test_spec.source_files = 'ios/Tests/**/*.{h,m,swift}' 59 test_spec.dependency 'Quick' 60 test_spec.dependency 'Nimble' 61 test_spec.dependency "React-CoreModules" 62 test_spec.dependency "OHHTTPStubs" 63 # `hermes_enabled` should be enabled for test integrations 64 test_spec.dependency 'React-hermes' 65 test_spec.dependency 'hermes-engine' 66 end 67 68 s.default_subspec = 'Main' 69end 70