X-Git-Url: http://git.code-monkey.de/?p=redact.git;a=blobdiff_plain;f=Rakefile;h=4a17865ab8e4e7e1d0579ffbeda8052a0afc6032;hp=13968f721d3846af936790da774502235ceb50d4;hb=65d027a0b57b6d97cc73e55ea703e17aae623da3;hpb=7d89841550b3838d5924d56069cad51c8fbe1c69 diff --git a/Rakefile b/Rakefile index 13968f7..4a17865 100644 --- a/Rakefile +++ b/Rakefile @@ -1,27 +1,42 @@ -# $Id: Rakefile 10 2005-03-28 20:55:18Z tilman $ - require "rake/clean" require "rake/testtask" require "rake/rdoctask" +require "rake/packagetask" +require "rake/contrib/compositepublisher.rb" +require "rake/contrib/sshpublisher" + +# make sure we run at least Rake 0.5.0 +if (RAKEVERSION.split(".").map { |p| p.to_i } <=> [0, 5, 0]) < 0 + raise("Rake 0.5.0 or greater required") +end -CLOBBER.include(FileList["test/*.edj"]) +PKG_NAME = "redact" +PKG_VERSION = File.read("lib/redact/redact.rb"). + match(/^\s*VERSION = \"(.*)\"\s*$/).captures.first +PKG_FILES = FileList[ + "AUTHORS", "COPYING", "ChangeLog", "NEWS", "README", "Rakefile", + "TODO", + "bin/redact", "lib/redact/app.rb", "lib/redact/part.rb", + "lib/redact/program.rb", "lib/redact/redact.rb", + "lib/redact/source.rb", + "test/crossfade.rb", "test/red_rect.rb", "test/test_basic.rb" +] -sitelibdir = Config::CONFIG["sitelibdir"] -destdir = "#{ENV["DESTDIR"]}" -prefix = ENV["PREFIX"] || "/usr/local" +CLOBBER.include("test/*.edj") task :install do |t| + sitelibdir = Config::CONFIG["sitelibdir"] + destdir = "#{ENV["DESTDIR"]}" + prefix = ENV["PREFIX"] || "/usr/local" + ddir = destdir + prefix + "/bin" FileUtils::Verbose.install("bin/redact", ddir, :mode => 0755) ddir = destdir + sitelibdir + "/redact" - FileUtils::Verbose.mkdir(ddir) unless File.directory?(ddir) - - ["app", "part", "program", "redact"].each do |file| - FileUtils::Verbose.install("lib/redact/#{file}.rb", ddir, - :mode => 0644) - end + FileUtils::Verbose.mkdir_p(ddir) unless File.directory?(ddir) + FileUtils::Verbose.install(Dir["lib/redact/*.rb"], ddir, + :mode => 0644) end task :test @@ -36,7 +51,29 @@ Rake::RDocTask.new do |t| t.rdoc_dir = "doc" t.title = "Redact - An Edje Compiler written in Ruby" t.options = ["--line-numbers", "--inline-source", "--main", "README"] - t.rdoc_files.include("README", "COPYING", "AUTHORS", "ChangeLog", - "TODO", "lib/redact/redact.rb", + t.rdoc_files.include("README", "COPYING", "AUTHORS", + "TODO", "NEWS", "lib/redact/redact.rb", "lib/redact/part.rb", "lib/redact/program.rb") end + +CLOBBER.include("ChangeLog") + +file "ChangeLog" do + `git log > ChangeLog` +end + +Rake::PackageTask.new(PKG_NAME, PKG_VERSION) do |t| + t.need_tar_gz = true + t.package_files = PKG_FILES +end + +task :publish => [:rdoc, :package] do + p = Rake::CompositePublisher.new + p.add(Rake::SshFreshDirPublisher.new("code-monkey.de", + "public_docs/" + + PKG_NAME, "doc")) + p.add(Rake::SshFilePublisher.new("code-monkey.de", + ".", "pkg", + "#{PKG_NAME}-#{PKG_VERSION}.tar.gz")) + p.upload +end