session-ios/Podfile

180 lines
6.2 KiB
Plaintext
Raw Normal View History

2020-04-07 05:22:57 +02:00
platform :ios, '12.0'
source 'https://github.com/CocoaPods/Specs.git'
2014-05-06 19:41:08 +02:00
use_frameworks!
inhibit_all_warnings!
def shared_pods
2018-12-19 23:31:19 +01:00
###
# OWS Pods
2018-12-19 23:31:19 +01:00
###
2019-01-23 18:26:54 +01:00
# Project does not compile with PromiseKit 6.7.1
# see: https://github.com/mxcl/PromiseKit/issues/990
pod 'PromiseKit', "6.5.3"
2018-12-19 23:31:19 +01:00
###
# forked third party pods
###
# Includes some soon to be released "unencrypted header" changes required for the Share Extension
2019-01-10 17:57:54 +01:00
pod 'SQLCipher', ">= 4.0.1"
2018-12-19 23:31:19 +01:00
# Forked for performance optimizations that are not likely to be upstreamed as they are specific
2019-06-17 05:52:17 +02:00
# to our limited use of Mantle
2018-12-19 23:31:19 +01:00
pod 'Mantle', git: 'https://github.com/signalapp/Mantle', branch: 'signal-master'
# pod 'Mantle', path: '../Mantle'
# Forked for compatibily with the ShareExtension, changes have an open PR, but have not been merged.
2019-01-10 21:04:03 +01:00
pod 'YapDatabase/SQLCipher', :git => 'https://github.com/signalapp/YapDatabase.git', branch: 'signal-release'
2018-12-19 23:31:19 +01:00
# pod 'YapDatabase/SQLCipher', path: '../YapDatabase'
2019-05-01 05:00:50 +02:00
pod 'Starscream', git: 'https://github.com/signalapp/Starscream.git', branch: 'signal-release'
2019-01-15 01:04:31 +01:00
# pod 'Starscream', path: '../Starscream'
2018-12-19 23:31:19 +01:00
###
# third party pods
###
2018-12-19 23:31:19 +01:00
2020-06-05 05:43:06 +02:00
pod 'AFNetworking', '~> 3.2.1', inhibit_warnings: true
pod 'PureLayout', '~> 3.1.4', :inhibit_warnings => true
pod 'Reachability', :inhibit_warnings => true
2020-10-29 01:28:13 +01:00
pod 'YYImage', git: 'https://github.com/signalapp/YYImage', :inhibit_warnings => true
2020-09-21 03:50:42 +02:00
pod 'ZXingObjC', '~> 3.6.4', :inhibit_warnings => true
end
target 'Signal' do
2019-05-03 03:21:47 +02:00
project 'Signal'
shared_pods
2018-01-04 21:16:24 +01:00
pod 'SSZipArchive', :inhibit_warnings => true
2019-06-17 05:52:17 +02:00
###
# Loki third party pods
###
2020-06-15 03:23:27 +02:00
pod 'CryptoSwift', '~> 1.3', :inhibit_warnings => true
2020-09-24 07:16:21 +02:00
pod 'FeedKit', '~> 8.1', :inhibit_warnings => true
2019-09-20 07:53:24 +02:00
pod 'NVActivityIndicatorView', '~> 4.7', :inhibit_warnings => true
2020-09-24 07:16:21 +02:00
pod 'Sodium', '~> 0.8.0', :inhibit_warnings => true
end
target 'SignalShareExtension' do
2019-05-03 03:21:47 +02:00
project 'Signal'
shared_pods
end
target 'LokiPushNotificationService' do
project 'Signal'
shared_pods
###
# Loki third party pods
###
2020-06-15 03:23:27 +02:00
pod 'CryptoSwift', '~> 1.3', :inhibit_warnings => true
end
target 'SignalMessaging' do
pod 'AFNetworking', inhibit_warnings: true
pod 'CocoaLumberjack', :inhibit_warnings => true
pod 'CryptoSwift', :inhibit_warnings => true
pod 'Curve25519Kit', :inhibit_warnings => true
pod 'libPhoneNumber-iOS', :inhibit_warnings => true
pod 'Mantle', git: 'https://github.com/signalapp/Mantle', branch: 'signal-master', :inhibit_warnings => true
pod 'PromiseKit', :inhibit_warnings => true
pod 'PureLayout', '~> 3.1.4', :inhibit_warnings => true
pod 'YapDatabase/SQLCipher', :git => 'https://github.com/signalapp/YapDatabase.git', branch: 'signal-release', :inhibit_warnings => true
pod 'YYImage', git: 'https://github.com/signalapp/YYImage', :inhibit_warnings => true
end
2020-11-11 00:58:56 +01:00
target 'SignalUtilitiesKit' do
pod 'AFNetworking', inhibit_warnings: true
pod 'CryptoSwift', :inhibit_warnings => true
pod 'Curve25519Kit', :inhibit_warnings => true
pod 'GRKOpenSSLFramework', :inhibit_warnings => true
pod 'HKDFKit', :inhibit_warnings => true
pod 'libPhoneNumber-iOS', :inhibit_warnings => true
pod 'Mantle', git: 'https://github.com/signalapp/Mantle', branch: 'signal-master', :inhibit_warnings => true
pod 'PromiseKit', :inhibit_warnings => true
pod 'PureLayout', '~> 3.1.4', :inhibit_warnings => true
2020-11-11 00:58:56 +01:00
pod 'Reachability', :inhibit_warnings => true
pod 'SAMKeychain', :inhibit_warnings => true
pod 'Starscream', git: 'https://github.com/signalapp/Starscream.git', branch: 'signal-release', :inhibit_warnings => true
pod 'SwiftProtobuf', '~> 1.5.0', :inhibit_warnings => true
pod 'YapDatabase/SQLCipher', :git => 'https://github.com/signalapp/YapDatabase.git', branch: 'signal-release', :inhibit_warnings => true
pod 'YYImage', git: 'https://github.com/signalapp/YYImage', :inhibit_warnings => true
2020-11-11 00:58:56 +01:00
end
target 'SessionUIKit' do
end
2020-11-05 04:16:45 +01:00
target 'SessionMessagingKit' do
pod 'AFNetworking', inhibit_warnings: true
2020-11-06 03:56:26 +01:00
pod 'CryptoSwift', :inhibit_warnings => true
pod 'Curve25519Kit', :inhibit_warnings => true
2020-11-05 04:16:45 +01:00
pod 'PromiseKit', :inhibit_warnings => true
2020-11-05 04:56:15 +01:00
pod 'SwiftProtobuf', '~> 1.5.0', :inhibit_warnings => true
2020-11-05 04:16:45 +01:00
end
2020-11-05 06:10:49 +01:00
target 'SessionProtocolKit' do
pod 'CocoaLumberjack', :inhibit_warnings => true
2020-11-05 07:04:39 +01:00
pod 'CryptoSwift', :inhibit_warnings => true
2020-11-05 06:10:49 +01:00
pod 'Curve25519Kit', :inhibit_warnings => true
pod 'GRKOpenSSLFramework', :inhibit_warnings => true
pod 'HKDFKit', :inhibit_warnings => true
2020-11-05 07:04:39 +01:00
pod 'PromiseKit', :inhibit_warnings => true
2020-11-05 06:10:49 +01:00
pod 'SwiftProtobuf', '~> 1.5.0', :inhibit_warnings => true
end
2020-11-05 02:07:21 +01:00
target 'SessionSnodeKit' do
pod 'CryptoSwift', :inhibit_warnings => true
pod 'Curve25519Kit', :inhibit_warnings => true
pod 'PromiseKit', :inhibit_warnings => true
end
2020-11-09 00:58:47 +01:00
target 'SessionUtilitiesKit' do
pod 'CryptoSwift', :inhibit_warnings => true
pod 'Curve25519Kit', :inhibit_warnings => true
2020-11-05 02:15:57 +01:00
pod 'PromiseKit', :inhibit_warnings => true
end
post_install do |installer|
2020-07-24 03:42:28 +02:00
enable_whole_module_optimization_for_cryptoswift(installer)
enable_extension_support_for_purelayout(installer)
2020-11-05 02:07:21 +01:00
set_minimum_deployment_target(installer)
end
2020-07-24 03:42:28 +02:00
def enable_whole_module_optimization_for_cryptoswift(installer)
installer.pods_project.targets.each do |target|
if target.name.end_with? "CryptoSwift"
target.build_configurations.each do |config|
config.build_settings['GCC_OPTIMIZATION_LEVEL'] = 'fast'
config.build_settings['SWIFT_OPTIMIZATION_LEVEL'] = '-O'
end
end
end
end
# PureLayout by default makes use of UIApplication, and must be configured to be built for an extension.
def enable_extension_support_for_purelayout(installer)
installer.pods_project.targets.each do |target|
if target.name.end_with? "PureLayout"
target.build_configurations.each do |build_configuration|
if build_configuration.build_settings['APPLICATION_EXTENSION_API_ONLY'] == 'YES'
2020-11-05 04:16:45 +01:00
build_configuration.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = [ '$(inherited)', 'PURELAYOUT_APP_EXTENSIONS=1' ]
end
end
end
end
end
2020-11-05 02:07:21 +01:00
def set_minimum_deployment_target(installer)
installer.pods_project.targets.each do |target|
target.build_configurations.each do |build_configuration|
build_configuration.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
end
end
end