Class: Xcodeproj::Project
- Inherits:
-
Object
- Object
- Xcodeproj::Project
- Defined in:
- lib/cocoapods/xcodeproj_ext.rb
Defined Under Namespace
Classes: PBXCopyFilesBuildPhase
Class Method Summary collapse
Instance Method Summary collapse
-
#add_pod_group(name) ⇒ Object
Adds a group as child to the ‘Pods’ group.
-
#pods ⇒ Object
Shortcut access to the ‘Pods’ PBXGroup.
Class Method Details
.for_platform(platform) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/cocoapods/xcodeproj_ext.rb', line 24 def self.for_platform(platform) project = Xcodeproj::Project.new project.main_group << project.groups.new({ 'name' => 'Pods' }) framework = project.add_system_framework(platform == :ios ? 'Foundation' : 'Cocoa') framework.group = project.groups.new({ 'name' => 'Frameworks' }) project.main_group << framework.group products = project.groups.new({ 'name' => 'Products' }) project.main_group << products project.root_object.products = products project.root_object.attributes['buildConfigurationList'] = project.objects.add(Xcodeproj::Project::XCConfigurationList, { 'defaultConfigurationIsVisible' => '0', 'defaultConfigurationName' => 'Release', 'buildConfigurations' => [ project.objects.add(Xcodeproj::Project::XCBuildConfiguration, { 'name' => 'Debug', 'buildSettings' => build_settings(platform, :debug) }), project.objects.add(Xcodeproj::Project::XCBuildConfiguration, { 'name' => 'Release', 'buildSettings' => build_settings(platform, :release) }) ].map(&:uuid) }).uuid project end |
Instance Method Details
#add_pod_group(name) ⇒ Object
Adds a group as child to the ‘Pods’ group.
11 12 13 |
# File 'lib/cocoapods/xcodeproj_ext.rb', line 11 def add_pod_group(name) pods.groups.new('name' => name) end |
#pods ⇒ Object
Shortcut access to the ‘Pods’ PBXGroup.
6 7 8 |
# File 'lib/cocoapods/xcodeproj_ext.rb', line 6 def pods groups.find { |g| g.name == 'Pods' } || groups.new({ 'name' => 'Pods' }) end |