Peter 9bc996374f Add 'submodules/AsyncDisplayKit/' from commit '02bedc12816e251ad71777f9d2578329b6d2bef6'
git-subtree-dir: submodules/AsyncDisplayKit
git-subtree-mainline: d06f423e0ed3df1fed9bd10d79ee312a9179b632
git-subtree-split: 02bedc12816e251ad71777f9d2578329b6d2bef6
2019-06-11 18:42:43 +01:00

100 lines
3.5 KiB
Ruby

Pod::Spec.new do |spec|
spec.name = 'Texture'
spec.version = '2.8'
spec.license = { :type => 'Apache 2', }
spec.homepage = 'http://texturegroup.org'
spec.authors = { 'Huy Nguyen' => 'hi@huytnguyen.me', 'Garrett Moon' => 'garrett@excitedpixel.com', 'Scott Goodson' => 'scottgoodson@gmail.com', 'Michael Schneider' => 'mischneider1@gmail.com', 'Adlai Holler' => 'adlai@icloud.com' }
spec.summary = 'Smooth asynchronous user interfaces for iOS apps.'
spec.source = { :git => 'https://github.com/TextureGroup/Texture.git', :tag => spec.version.to_s }
spec.module_name = 'AsyncDisplayKit'
spec.header_dir = 'AsyncDisplayKit'
spec.documentation_url = 'http://texturegroup.org/appledoc/'
spec.ios.deployment_target = '9.0'
spec.tvos.deployment_target = '9.0'
# Subspecs
spec.subspec 'Core' do |core|
core.compiler_flags = '-fno-exceptions -Wno-implicit-retain-self'
core.public_header_files = [
'Source/*.h',
'Source/Details/**/*.h',
'Source/Layout/**/*.h',
'Source/Base/*.h',
'Source/Debug/**/*.h',
'Source/TextKit/ASTextNodeTypes.h',
'Source/TextKit/ASTextKitComponents.h'
]
core.source_files = [
'Source/**/*.{h,mm}',
# Most TextKit components are not public because the C++ content
# in the headers will cause build errors when using
# `use_frameworks!` on 0.39.0 & Swift 2.1.
# See https://github.com/facebook/AsyncDisplayKit/issues/1153
'Source/TextKit/*.h',
]
end
spec.subspec 'PINRemoteImage' do |pin|
pin.dependency 'PINRemoteImage/iOS', '= 3.0.0-beta.14'
pin.dependency 'PINRemoteImage/PINCache'
pin.dependency 'Texture/Core'
end
spec.subspec 'IGListKit' do |igl|
igl.dependency 'IGListKit', '~> 3.0'
igl.dependency 'Texture/Core'
end
spec.subspec 'Yoga' do |yoga|
yoga.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) YOGA=1' }
yoga.dependency 'Yoga', '1.6.0'
yoga.dependency 'Texture/Core'
end
# If flag is enabled the old TextNode with all dependencies will be compiled out
spec.subspec 'TextNode2' do |text_node|
text_node.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) AS_ENABLE_TEXTNODE=0' }
text_node.dependency 'Texture/Core'
end
spec.subspec 'Video' do |video|
video.frameworks = ['AVFoundation', 'CoreMedia']
video.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) AS_USE_VIDEO=1' }
video.dependency 'Texture/Core'
end
spec.subspec 'MapKit' do |map|
map.frameworks = ['CoreLocation', 'MapKit']
map.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) AS_USE_MAPKIT=1' }
map.dependency 'Texture/Core'
end
spec.subspec 'Photos' do |photos|
photos.frameworks = 'Photos'
photos.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) AS_USE_PHOTOS=1' }
photos.dependency 'Texture/Core'
end
spec.subspec 'AssetsLibrary' do |assetslib|
assetslib.frameworks = 'AssetsLibrary'
assetslib.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) AS_USE_ASSETS_LIBRARY=1' }
assetslib.dependency 'Texture/Core'
end
# Include these by default for backwards compatibility.
# This will change in 3.0.
spec.default_subspecs = 'Core', 'PINRemoteImage', 'Video', 'MapKit', 'AssetsLibrary', 'Photos'
spec.social_media_url = 'https://twitter.com/TextureiOS'
spec.library = 'c++'
spec.pod_target_xcconfig = {
'CLANG_CXX_LANGUAGE_STANDARD' => 'c++11',
'CLANG_CXX_LIBRARY' => 'libc++'
}
end