tasks/gem.rake in bones-1.3.2 vs tasks/gem.rake in bones-1.3.3

- old
+ new

@@ -1,6 +1,6 @@ -# $Id$ +# $Id: gem.rake 536 2008-02-18 23:07:49Z tim_pease $ require 'rake/gempackagetask' namespace :gem do @@ -10,10 +10,11 @@ s.summary = PROJ.summary s.authors = Array(PROJ.authors) s.email = PROJ.email s.homepage = Array(PROJ.url).first s.rubyforge_project = PROJ.rubyforge_name + s.post_install_message = PROJ.post_install_message s.description = PROJ.description PROJ.dependencies.each do |dep| s.add_dependency(*dep) @@ -60,12 +61,32 @@ desc 'Show information about the gem' task :debug do puts PROJ.spec.to_ruby end - Rake::GemPackageTask.new(PROJ.spec) do |pkg| + pkg = Rake::PackageTask.new(PROJ.name, PROJ.version) do |pkg| pkg.need_tar = PROJ.need_tar pkg.need_zip = PROJ.need_zip + pkg.package_files += PROJ.spec.files + end + Rake::Task['gem:package'].instance_variable_set(:@full_comment, nil) + + gem_file = if PROJ.spec.platform == Gem::Platform::RUBY + "#{pkg.package_name}.gem" + else + "#{pkg.package_name}-#{PROJ.spec.platform}.gem" + end + + desc "Build the gem file #{gem_file}" + task :package => "#{pkg.package_dir}/#{gem_file}" + + file "#{pkg.package_dir}/#{gem_file}" => [pkg.package_dir] + PROJ.spec.files do + when_writing("Creating GEM") { + Gem::Builder.new(PROJ.spec).build + verbose(true) { + mv gem_file, "#{pkg.package_dir}/#{gem_file}" + } + } end desc 'Install the gem' task :install => [:clobber, :package] do sh "#{SUDO} #{GEM} install pkg/#{PROJ.spec.full_name}"