require 'rake' require 'rake/testtask' require 'rake/rdoctask' begin gem 'jeweler', '>= 0.11.0' require 'jeweler' Jeweler::Tasks.new do |s| s.name = "jekyll" s.summary = %Q{Jekyll is a simple, blog aware, static site generator.} s.email = "tom@mojombo.com" s.homepage = "http://github.com/mojombo/jekyll" s.description = "Jekyll is a simple, blog aware, static site generator." s.authors = ["Tom Preston-Werner"] s.rubyforge_project = "jekyll" s.files.exclude 'test/dest' s.test_files.exclude 'test/dest' s.add_dependency('RedCloth', '= 4.1.0') s.add_dependency('liquid', '>= 1.9.0') s.add_dependency('classifier', '>= 1.3.1') s.add_dependency('maruku', '>= 0.5.9') s.add_dependency('directory_watcher', '>= 1.1.1') s.add_dependency('open4', '>= 0.9.6') end rescue LoadError puts "Jeweler not available. Install it with: sudo gem install jeweler --version '>= 0.11.0'" exit(1) end Rake::TestTask.new do |t| t.libs << 'lib' t.pattern = 'test/**/test_*.rb' t.verbose = false end Rake::RDocTask.new do |rdoc| rdoc.rdoc_dir = 'rdoc' rdoc.title = 'jekyll' rdoc.options << '--line-numbers' << '--inline-source' rdoc.rdoc_files.include('README*') rdoc.rdoc_files.include('lib/**/*.rb') end begin require 'rcov/rcovtask' Rcov::RcovTask.new do |t| t.libs << 'test' t.test_files = FileList['test/**/test_*.rb'] t.verbose = true end rescue LoadError end task :default => [:test, :features] # console desc "Open an irb session preloaded with this library" task :console do sh "irb -rubygems -I lib -r jekyll.rb" end # converters namespace :convert do desc "Migrate from mephisto in the current directory" task :mephisto do sh %q(ruby -r './lib/jekyll/converters/mephisto' -e 'Jekyll::Mephisto.postgres(:database => "#{ENV["DB"]}")') end desc "Migrate from Movable Type in the current directory" task :mt do sh %q(ruby -r './lib/jekyll/converters/mt' -e 'Jekyll::MT.process("#{ENV["DB"]}", "#{ENV["USER"]}", "#{ENV["PASS"]}")') end desc "Migrate from Typo in the current directory" task :typo do sh %q(ruby -r './lib/jekyll/converters/typo' -e 'Jekyll::Typo.process("#{ENV["DB"]}", "#{ENV["USER"]}", "#{ENV["PASS"]}")') end end begin require 'cucumber/rake/task' Cucumber::Rake::Task.new(:features) do |t| t.cucumber_opts = "--format pretty" end rescue LoadError desc 'Cucumber rake task not available' task :features do abort 'Cucumber rake task is not available. Be sure to install cucumber as a gem or plugin' end end