aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Thomas Van Lenten <thomasvl@google.com>2016-02-25 16:04:15 -0500
committerGravatar Thomas Van Lenten <thomasvl@google.com>2016-02-25 16:04:15 -0500
commit1dc2f31a665871ba5889c121ce2fbe24174f297d (patch)
tree17b57eee9f0b1b0116f95f0b0acc0de95dd27b1a
parent0e9fdcf103b9e5fbb897ae5b83e6d25dcdc6ed7c (diff)
parent32f719d555ebe3015cf77cc47914c436f607b340 (diff)
Merge pull request #111 from perotinus/master
Add a Podspec for GTM.
-rw-r--r--BuildingAndUsing.txt8
-rw-r--r--GoogleToolboxForMac.podspec220
2 files changed, 227 insertions, 1 deletions
diff --git a/BuildingAndUsing.txt b/BuildingAndUsing.txt
index 67bbd79..ad92951 100644
--- a/BuildingAndUsing.txt
+++ b/BuildingAndUsing.txt
@@ -1,4 +1,5 @@
-The GTM project provides a Framework target and Unit Testing targets.
+The GTM project provides a Framework target and Unit Testing targets, as
+well as a CocoaPod.
Unit Testing Targets -
@@ -16,3 +17,8 @@ to their own project to start using it or playing around with it. However,
the intent is for a developer to manually add the sources to their project in
the end to reduce the total size of their product (since they only have to
include the parts of GTM they need).
+
+CocoaPods -
+
+The GTM project provides a Podspec for some of the more commonly-used parts of
+GTM. See https://cocoapods.org/pods/GoogleToolboxForMac for more info.
diff --git a/GoogleToolboxForMac.podspec b/GoogleToolboxForMac.podspec
new file mode 100644
index 0000000..b357265
--- /dev/null
+++ b/GoogleToolboxForMac.podspec
@@ -0,0 +1,220 @@
+Pod::Spec.new do |s|
+ s.name = 'GoogleToolboxForMac'
+ s.version = '2.0.0'
+ s.author = 'Google Inc.'
+ s.license = { :type => 'Apache', :file => 'LICENSE' }
+ s.homepage = 'https://github.com/google/google-toolbox-for-mac'
+ s.source = { :git => 'https://github.com/google/google-toolbox-for-mac.git',
+ :tag => "v#{s.version}" }
+ s.summary = 'Google utilities for iOS and OSX development.'
+ s.description = <<-DESC
+ A collection of source from different Google projects that may be of use
+ to developers working on iOS or OS X projects.
+ DESC
+
+ s.osx.deployment_target = '10.6'
+ s.ios.deployment_target = '5.0'
+ s.requires_arc = false
+
+ s.subspec 'Defines' do |sp|
+ sp.public_header_files = 'GTMDefines.h'
+ sp.source_files = 'GTMDefines.h'
+ end
+
+ s.subspec 'Core' do |sp|
+ sp.source_files =
+ 'DebugUtils/GTMTypeCasting.h',
+ 'Foundation/GTMLocalizedString.h',
+ 'Foundation/GTMLogger.h'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+
+ s.subspec 'AddressBook' do |sp|
+ sp.source_files = 'AddressBook/GTMABAddressBook.{h,m}'
+ sp.frameworks = 'AddressBook'
+ sp.dependency 'GoogleToolboxForMac/Core', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'DebugUtils' do |sp|
+ sp.source_files =
+ 'DebugUtils/GTMDebugSelectorValidation.{h,m}',
+ 'DebugUtils/GTMDebugThreadValidation.h',
+ 'DebugUtils/GTMMethodCheck.{h,m}'
+ sp.requires_arc = 'DebugUtils/GTMMethodCheck.m'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Runtime', "#{s.version}"
+ end
+
+ s.subspec 'GeometryUtils' do |sp|
+ sp.source_files = 'Foundation/GTMGeometryUtils.{h,m}'
+ sp.frameworks = 'CoreGraphics'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'KVO' do |sp|
+ sp.source_files =
+ 'Foundation/GTMNSObject+KeyValueObserving.{h,m}',
+ # The symbol in this file is hidden by default, and so
+ # must be directly included here where it's needed,
+ # even though it's already included in DebugUtils
+ 'DebugUtils/GTMMethodCheck.m'
+ sp.dependency 'GoogleToolboxForMac/Core', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/DebugUtils', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Runtime', "#{s.version}"
+ end
+
+ s.subspec 'Logger' do |sp|
+ sp.source_files = 'Foundation/GTMLogger.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ # We cannot add a target for Foundaat/GTMLogger+ASL.{h,m}.
+ # asl.h is not a modular header, and so cannot be imported
+ # in a modulemap, which CocoaPods does by default when it
+ # creates frameworks.
+
+ s.subspec 'Regex' do |sp|
+ sp.source_files = 'Foundation/GTMRegex.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'Runtime' do |sp|
+ sp.source_files = 'Foundation/GTMObjC2Runtime.{h,m}'
+ sp.requires_arc = 'Foundation/GTMObjC2Runtime.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ # We cannot add a target for Foundation/GTMSQLite.{h,m}.
+ # sqlite3.h is not a modular header, and so cannot be imported
+ # in a modulemap, which CocoaPods does by default when it
+ # creates frameworks.
+
+ s.subspec 'StackTrace' do |sp|
+ sp.source_files = 'Foundation/GTMStackTrace.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Runtime', "#{s.version}"
+ end
+
+ s.subspec 'StringEncoding' do |sp|
+ sp.source_files = 'Foundation/GTMStringEncoding.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'SystemVersion' do |sp|
+ sp.source_files = 'Foundation/GTMSystemVersion.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Runtime', "#{s.version}"
+ end
+
+ s.subspec 'URLBuilder' do |sp|
+ sp.source_files = 'Foundation/GTMURLBuilder.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Core', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/NSDictionary+URLArguments', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/NSString+URLArguments', "#{s.version}"
+ end
+
+
+ s.subspec 'NSData+zlib' do |sp|
+ sp.source_files = 'Foundation/GTMNSData+zlib.{h,m}'
+ sp.requires_arc = 'Foundation/GTMNSData+zlib.{h,m}'
+ sp.libraries = 'z'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'NSDictionary+URLArguments' do |sp|
+ sp.source_files = 'Foundation/GTMNSDictionary+URLArguments.{h,m}'
+ sp.requires_arc = 'Foundation/GTMNSDictionary+URLArguments.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/DebugUtils', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/NSString+URLArguments', "#{s.version}"
+ end
+
+ s.subspec 'NSFileHandle+UniqueName' do |sp|
+ sp.source_files = 'Foundation/GTMNSFileHandle+UniqueName.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'NSScanner+JSON' do |sp|
+ sp.source_files = 'Foundation/GTMNSScanner+JSON.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'NSString+HTML' do |sp|
+ sp.source_files = 'Foundation/GTMNSString+HTML.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Core', "#{s.version}"
+ end
+
+ s.subspec 'NSString+URLArguments' do |sp|
+ sp.source_files = 'Foundation/GTMNSString+URLArguments.{h,m}'
+ end
+
+ s.subspec 'NSString+XML' do |sp|
+ sp.source_files = 'Foundation/GTMNSString+XML.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'NSThread+Blocks' do |sp|
+ sp.source_files = 'Foundation/GTMNSThread+Blocks.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+
+ s.subspec 'iPhone' do |sp|
+ sp.platform = :ios, '5.0'
+ sp.source_files =
+ 'iPhone/GTMFadeTruncatingLabel.{h,m}',
+ 'iPhone/GTMUIImage+Resize.{h,m}',
+ 'iPhone/GTMUILocalizer.{h,m}',
+ 'iPhone/GTMUIView+SubtreeDescription.{h,m}'
+ sp.requires_arc = 'iPhone/GTMUIImage+Resize.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'RoundedRectPath' do |sp|
+ sp.platform = :ios, '5.0'
+ sp.source_files = 'iPhone/GTMRoundedRectPath.{h,m}'
+ sp.requires_arc = 'iPhone/GTMRoundedRectPath.{h,m}'
+ sp.frameworks = 'CoreGraphics'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ end
+
+ s.subspec 'UIFont+LineHeight' do |sp|
+ sp.platform = :ios, '5.0'
+ sp.source_files = 'iPhone/GTMUIFont+LineHeight.{h,m}'
+ sp.requires_arc = 'iPhone/GTMUIFont+LineHeight.{h,m}'
+ end
+
+
+ s.subspec 'UnitTesting' do |sp|
+ sp.platform = :ios, '5.0'
+ sp.requires_arc = 'UnitTesting/GTMDevLogUnitTestingBridge.m'
+ sp.source_files =
+ 'UnitTesting/GTMCALayer+UnitTesting.{h,m}',
+ 'UnitTesting/GTMDevLogUnitTestingBridge.m',
+ 'UnitTesting/GTMFoundationUnitTestingUtilities.{h,m}',
+ 'UnitTesting/GTMNSObject+UnitTesting.{h,m}',
+ 'UnitTesting/GTMSenTestCase.{h,m}',
+ 'UnitTesting/GTMTestTimer.h',
+ 'UnitTesting/GTMUIKit+UnitTesting.{h,m}',
+ 'UnitTesting/GTMUnitTestDevLog.{h,m}'
+ sp.requires_arc = 'UnitTesting/GTMDevLogUnitTestingBridge.m'
+ sp.frameworks = 'CoreGraphics', 'QuartzCore'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Regex', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/Runtime', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/SystemVersion', "#{s.version}"
+ end
+
+ s.subspec 'UnitTestingAppLib' do |sp|
+ sp.platform = :ios, '5.0'
+ sp.source_files =
+ 'UnitTesting/GTMCodeCoverageApp.h',
+ 'UnitTesting/GTMIPhoneUnitTestDelegate.{h,m}'
+ sp.dependency 'GoogleToolboxForMac/Defines', "#{s.version}"
+ sp.dependency 'GoogleToolboxForMac/UnitTesting', "#{s.version}"
+ end
+
+end