Skip to content

Commit

Permalink
Improved podspec
Browse files Browse the repository at this point in the history
  • Loading branch information
jeanregisser committed Jul 20, 2012
1 parent 6ab17fd commit ac7f9c4
Showing 1 changed file with 132 additions and 10 deletions.
142 changes: 132 additions & 10 deletions Three20.podspec
@@ -1,4 +1,3 @@
# TODO CocoaPods needs a way to easily define overrides for each subspec.
overrides = Module.new do
require 'set'

Expand Down Expand Up @@ -41,17 +40,85 @@ Pod::Spec.new do |s|
s.version = '1.0.11'
s.summary = 'Three20 is an Objective-C library for iPhone developers.'
s.homepage = 'http://three20.info/'
s.author = { }
s.source = { :git => 'git@github.com:jeanregisser/three20.git', :commit => '48180db6d0ffc8e3b3cbab507af447eb2894ded9' }
s.author = {
'Alessandro Zummo' => 'a.zummo@towertech.it',
'Alexander Saltanov' => 'a@nearbird.ru',
'Adar Porat' => 'adar.porat@gmail.com',
'aporat' => 'adar.porat@me.com',
'Amit Snyderman' => 'amit@amitsnyderman.com',
'andy.porat' => 'andy.porat@me.com',
'Benedikt Meurer' => 'benedikt.meurer@googlemail.com',
'beng' => 'beng@facebook.com',
'Blake Watters' => 'blakewatters@gmail.com',
'Brandon Walkin' => 'bwalkin@facebook.com',
'Brian Chapados' => 'chapados@sciencegeeks.org',
'clozach' => 'clozach+github@gmail.com',
'crino' => 'cseverini@gmail.com',
'David J. Hu' => 'davidjhu@gmail.com',
'uprise78' => 'desaro@gmail.com',
'Justin DeWind' => 'dewind@atomicobject.com',
'Dima Berastau' => 'dima.berastau@gmail.com',
'Holtwick' => 'dirk.holtwick@gmail.com',
'Chih-Wei Lee' => 'dlackty@gmail.com',
'Dan Morrow' => 'dmorrow@maned.com',
'Doug Barth' => 'dougbarth@gmail.com',
'drewmca' => 'drew@unitdev.com',
'Emil Palm' => 'emil@x86.nu',
'Eelco Lempsink' => 'eml@tupil.com',
'Eric Wolfe' => 'eric.r.wolfe@gmail.com',
'Eric Chamberlain' => 'eric@rf.com',
'Drync Wine' => 'github@drync.com',
'Greg Haines' => 'gresrun@gmail.com',
'Hwee-Boon Yar' => 'hboon@motionobj.com',
'Cemal Eker' => 'hello@cemaleker.com',
'Jeroen Houtzager' => 'houtzager@gmail.com',
'Jarno Antikainen' => 'jarno.antikainen@iki.fi',
'Jason Cabot' => 'jasoncabot@gmail.com',
'Jean Regisser' => 'jean.regisser@gmail.com',
'Joe Hewitt' => 'joe@joehewitt.com',
'Jeff Verkoeyen' => 'jverkoey@gmail.com',
'John Wang' => 'jwang392@gmail.com',
'Matt Crocker' => 'matt@rd.io',
'Matt Newberry' => 'matt@shopify.com',
'Brian Donovan' => 'me@brian-donovan.com',
'Peter Steinberger' => 'me@petersteinberger.com',
'Mike Morearty' => 'mike@morearty.com',
'NanoTech' => 'nanotech008@gmail.com',
'Joachim Bengtsson' => 'nevyn@spotify.com',
'Oleguer Huguet' => 'olegueret@gmail.com',
'Owen Yamauchi' => 'oyamauchi@fb.com',
'Paulo Oliveira' => 'paulo@seqoy.com',
'Pavel Bocharov' => 'pavel@wheely.com',
'Petr Reichl' => 'petr@tapmates.com',
'PEZ' => 'pez@pezius.com',
'Pavel Repin' => 'prepin@gmail.com',
'alexleutgoeb' => 'privat@alexleutgoeb.com',
'Phillip Verheyden' => 'pverheyden@gmail.com',
'Rafael Alba' => 'ralba@socialcast.com',
'Rodrigo Mazzilli' => 'rodrigo@wellknown.as',
'Roger Chapman' => 'roger@stormid.com',
'Rusty Zarse' => 'rusty@levo.us',
'Savanah Cummings' => 'savanah.cummings@gmail.com',
'Shaheen Gandhi' => 'shaheen@devrs109.snc1.facebook.com',
'Skotch Vail' => 'skotch.git@brushthedog.com',
'Stephan Diederich' => 'stephan.diederich@googlemail.com',
'Sumeru Chatterjee' => 'sumeru@ufl.edu',
'Thomas Weisbach' => 'tee.aye.w@gmail.com',
'Tobias Klonk' => 'tobias.klonk@tklonk.net',
'Tobias Rundström' => 'tobias.rundstrom@purplescout.se',
'Tony Lewis' => 'tonylewis@dailytest.portland.4tellsolutions.com',
'vguerci' => 'vguerci@gmail.com',
'wbailey' => 'wi11.bai1ey@facebook.com',
'Wiley Kestner' => 'wiley.kestner@gmail.com',
}
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE' }
s.source = { :git => 'git@github.com:jeanregisser/three20.git' }
s.platform = :ios

s.source_files = 'src/Three20/{Sources,Headers}/*.{h,m}'
s.dependency 'Three20/Core'
s.dependency 'Three20/Network'
s.dependency 'Three20/Style'
s.dependency 'Three20/UICommon'
s.dependency 'Three20/UINavigator'
s.dependency 'Three20/UI'
s.resources = 'src/Three20.bundle'

s.preferred_dependency = 'UI'

# Workaround for a CocoaPods bug. It deletes everything at the root!
s.preserve_paths = 'src'
Expand All @@ -62,7 +129,6 @@ Pod::Spec.new do |s|
cs.source_files = 'src/Three20Core/{Sources,Headers}/*.{h,m}'
cs.private_header_files = 'src/Three20Core/Headers/TTExtensionInfoPrivate.h'
cs.header_dir = 'Three20Core'
cs.resources = 'src/Three20.bundle'
end

# Full name: Three20/Network
Expand Down Expand Up @@ -122,4 +188,60 @@ Pod::Spec.new do |s|
us.dependency 'Three20/UINavigator'
end

# Extensions
s.subspec 'ext' do |ext|
# Full name: Three20/ext/CSSStyle
ext.subspec 'CSSStyle' do |css|
css.extend(overrides)
css.source_files = 'src/extThree20CSSStyle/{Sources,Headers,ThirdPart}/*.{h,m}'
css.private_header_files = 'src/extThree20CSSStyle/Headers/CssTokens.h'
css.header_dir = 'extThree20CSSStyle'
css.resources = 'src/extThree20CSSStyle/Resources/extThree20CSSStyle.bundle'
css.dependency 'Three20/Core'
css.dependency 'Three20/Network'
css.dependency 'Three20/Style'
end

# Full name: Three20/ext/JSON
ext.subspec 'JSON' do |js|
js.extend(overrides)
js.source_files = 'src/extThree20JSON/{Sources,Headers}/*.{h,m}'
js.header_dir = 'extThree20JSON'
js.dependency 'Three20/Core'
js.dependency 'Three20/Network'
end

# Full name: Three20/ext/SBJSON
# This extension cannot be used with Three20/ext/YAJL
ext.subspec 'SBJSON' do |sbs|
sbs.extend(overrides)
sbs.source_files = 'src/extThree20JSON/Vendors/JSON/*.{h,m}'
sbs.header_dir = 'extThree20JSON'
sbs.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => 'EXTJSON_SBJSON' }
sbs.dependency 'Three20/ext/JSON'
end

# Full name: Three20/ext/YAJL
# This extension cannot be used with Three20/ext/SBJSON
ext.subspec 'YAJL' do |ys|
ys.extend(overrides)
ys.source_files = 'src/extThree20JSON/Vendors/YAJL/*.{h,m}',
'src/extThree20JSON/Vendors/YAJL/{GHKit,GTM}/*.{h,m}',
'src/extThree20JSON/Vendors/YAJL/yajl/src/**/*.{h,c}'
ys.private_header_files = 'src/extThree20JSON/Vendors/YAJL/{GHKit,GTM}/*.h',
'src/extThree20JSON/Vendors/YAJL/yajl/src/*.h'
ys.header_dir = 'extThree20JSON'
ys.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => 'EXTJSON_YAJL' }
ys.dependency 'Three20/ext/JSON'
end

# Full name: Three20/ext/XML
ext.subspec 'XML' do |xs|
xs.extend(overrides)
xs.source_files = 'src/extThree20XML/{Sources,Headers}/*.{h,m}'
xs.header_dir = 'extThree20XML'
xs.dependency 'Three20/Core'
xs.dependency 'Three20/Network'
end
end
end

0 comments on commit ac7f9c4

Please sign in to comment.