2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
# File 'lib/ib/project.rb', line 2
def write app_path = "app", resources_path = "resources", = "vendor/Pods/Headers"
project = Xcodeproj::Project.new
target = project.new_target(:static_library, 'ib', :ios)
resources = project.new_group("Resources")
resources.path = resources_path
support = project.new_group("Supporting Files")
support.path = "ib.xcodeproj"
pods = project.new_group("Pods")
pods.path =
IB::Generator.new.write(Motion::Project::App.config.files, "ib.xcodeproj")
support.new_file "ib.xcodeproj/Stubs.h"
file = support.new_file "ib.xcodeproj/Stubs.m"
target.add_file_references([ file ])
resource_exts = %W{xcdatamodeld png jpg jpeg storyboard xib lproj}
Dir.glob("#{resources_path}/**/*.{#{resource_exts.join(",")}}") do |file|
if file.end_with? ".xcdatamodeld"
relative_file_path = file.split("/").last
obj = resources.new_xcdatamodel_group(relative_file_path)
internal_file = obj.files.first
internal_file.path = relative_file_path.gsub(/xcdatamodeld$/, 'xcdatamodel')
internal_file.source_tree = "<group>"
resources.children << obj
else
resources.new_file(file)
end
end
Dir.glob("#{}/**/*.h") do |file|
pods.new_file(file)
end
%W{QuartzCore CoreGraphics CoreData}.each do |framework|
project.add_system_framework framework
end
project.save_as("ib.xcodeproj")
end
|