Sha256: 791c8e07546c61d6518bfe90ddf8cec34f16aaa74c4e6a286c1ed59a013abfa1

Contents?: true

Size: 1.75 KB

Versions: 1

Compression:

Stored size: 1.75 KB

Contents

#sys.ignore ".svn", /^\..*\.swp$/ 

NAME = "mspire"

ENV["OS"] == "Windows_NT" ? WIN32 = true : WIN32 = false
gemcmd = "gem"
if WIN32
  unless ENV["TERM"] == "cygwin"
    gemcmd << ".cmd"
  end
end


import %w(rubytest rubydoc rubypackage clean autoclean subfile)

lib_files = sys["lib/**/*"]
dist_files = lib_files + sys["INSTALL", "README", "Rantfile", "LICENSE", "{test,bin,script,tutorial}/**/*"]

desc "Run unit tests."
gen RubyTest do |t|
  t.test_dir = "test"
  t.pattern = "tc_*.rb"
end


#desc "Run all tests"
#task :test do
#  sys.cd "test"
#  sys["tc_*.rb"].each do |file|
#    sys "ruby #{file}"
#  end
#  sys.cd ".."
#end

task :tutorial => [] do
  sys.cd 'tutorial' do sys "ruby ./gen_database_searching.rb" end
end

tutorial_files = %w(cat_db_search database_searching two_db_search).map {|f| "tutorial/#{f}"}

gen RubyDoc, :api do |t|
  t.opts = ['--title', NAME, '--main', 'README', 'README', 'INSTALL']
  t.opts.push(*(sys["tutorial/**/*"].to_a))
end

desc "Generate html documentation"
task :doc => [:tutorial, :api]

desc "Create packages."
gen RubyPackage, NAME do |t|
  t.version = "0.1.3"
  t.summary = "Mass Spectrometry Proteomics Objects, Scripts, and Executables"
  t.files = dist_files
  t.bindir = "bin"
  t.executable = sys["bin/*"].collect {|file| File.basename(file) }
  t.test_files = sys["test/tc_*.rb"]
  t.package_task
end

task :install => [:reinstall]

desc "uninstalls the package, packages a fresh one, and installs"
task :reinstall => [:clean, :package] do
  reply = `#{gemcmd} list -l #{NAME}`
  if reply.include? NAME + " ("
    sys "#{gemcmd} uninstall -x #{NAME}"
  end
  sys.cd "pkg"
  sys "#{gemcmd} install #{NAME}"
  sys.cd ".."
end

desc "Remove autogenerated and backup files."
gen Clean
var[:clean].include "doc", "pkg", "*~", tutorial_files

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mspire-0.1.3 Rantfile