76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
# File 'lib/burke/tasks/gems.rb', line 76
def self.add_task conf
gemspec = conf.gemspec
name = conf.task_name
pkg_dir = conf.package_dir
unless Rake::Task.tasks.find {|t| t.name == 'gems'}
desc "Build gems for all targets"
end
task(:gems => name)
unless Rake::Task.tasks.find {|t| t.name == name}
desc "Build gem for target '#{gemspec.platform}'"
end
task(name) do |t|
conf.before_build.call gemspec unless conf.before_build.nil?
builder = Gem::Builder.new(gemspec)
builder.build
verbose true do
mkdir pkg_dir unless File.exists? pkg_dir
mv conf.gem_file, File.join(pkg_dir, conf.gem_file)
end
conf.after_build.call gemspec unless conf.after_build.nil?
end
TASKS[gemspec.platform.to_s] = conf
end
|