Sha256: f7d7f665f154777223f5a75250a2c8f04696f1d23400d9477210e8115eb69bf0
Contents?: true
Size: 1.95 KB
Versions: 2
Compression:
Stored size: 1.95 KB
Contents
class IB::Project def write app_path = "app", resources_path = "resources", pods_headers_path = "vendor/Pods/Headers" project = Xcodeproj::Project.new target = project.targets.new_static_library(:ios, 'ui') resources = project.groups.new('path' => resources_path, 'name' => 'Resources') support = project.groups.new('name' => 'Supporting Files', 'path' => 'ib.xcodeproj') pods = project.groups.new('name' => 'Pods') IB::Generator.new.write(app_path, "ib.xcodeproj") support.files.new 'path' => 'Stubs.h', 'sourceTree' => '<group>' path = Pathname.new("Stubs.m") desc = Xcodeproj::Project::PBXNativeTarget::SourceFileDescription.new(path, nil, nil) file = target.add_source_files([desc]).first file.source_tree = '<group>' support.files << file resource_exts = %W{xcdatamodeld png jpg jpeg storyboard xib lproj} Dir.glob("#{resources_path}/**/*.{#{resource_exts.join(",")}}") do |file| file = file.gsub(/^#{resources_path}\//, '') if file.end_with? ".xcdatamodeld" obj = resources.groups.new('isa' => 'XCVersionGroup', 'path' => file, 'sourceTree' => '<group>', 'versionGroupType' => 'wrapper.xcdatamodel') file = obj.files.new('path' => file.gsub(/xcdatamodeld$/, 'xcdatamodel'), 'sourceTree' => '<group>', 'lastKnownFileType' => 'wrapper.xcdatamodel') obj.attributes['currentVersion'] = file.uuid else resources.files.new('path' => file, 'sourceTree' => '<group>') end end Dir.glob("#{pods_headers_path}/**/*.h") do |file| pods.files.new('path' => file) end # Add Basic System Frameworks # frameworks = ["UIKit", "QuartzCore", "CoreGraphics", "CoreData"] # doesn't work with UIKit frameworks = ["QuartzCore", "CoreGraphics", "CoreData"] frameworks.each do |framework| file = project.add_system_framework framework target.frameworks_build_phases.first << file end project.save_as("ib.xcodeproj") end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ib-0.2.1 | lib/ib/project.rb |
ib-0.2.0 | lib/ib/project.rb |