/Rakefile
Rakefile | 87 lines | 72 code | 15 blank | 0 comment | 1 complexity | 7a08d75f70feb0cc619454fc69d164ac MD5 | raw file
Possible License(s): 0BSD
- require 'rubygems'
- require 'rake'
- begin
- require 'jeweler'
- Jeweler::Tasks.new do |gem|
- gem.name = "tidy-ext"
- gem.summary = "W3C HTML Tidy library implemented as a Ruby native extension."
- gem.description = "Tidy up web pages."
- gem.email = "carl.douglas@gmail.com"
- gem.homepage = "https://bitbucket.org/carldouglas/tidy"
- gem.rubyforge_project = "tidy-ext"
- gem.authors = ["A. Carl Douglas"]
- gem.extensions = FileList["ext/**/extconf.rb"]
- end
- Jeweler::GemcutterTasks.new
- task :spec => :check_dependencies
- rescue LoadError
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
- end
- desc "Launch an IRB session with the environment loaded"
- task :console do
- exec("irb -I lib -r tidy/alone")
- end
- begin
- require 'spec/rake/spectask'
- Spec::Rake::SpecTask.new(:spec) do |spec|
- spec.libs << 'lib' << 'spec'
- spec.spec_files = FileList['spec/**/*_spec.rb']
- end
- Spec::Rake::SpecTask.new(:rcov) do |spec|
- spec.libs << 'lib' << 'spec'
- spec.pattern = 'spec/**/*_spec.rb'
- spec.rcov = true
- end
- task :default => :spec
- rescue LoadError
- puts "RSpec (or a dependency) not available. Install it with: gem install rspec"
- end
- require 'rdoc/task'
- Rake::RDocTask.new do |rdoc|
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
- rdoc.rdoc_dir = 'rdoc'
- rdoc.title = "tidy #{version}"
- rdoc.rdoc_files.include('README*')
- rdoc.rdoc_files.include('lib/**/*.rb')
- end
- begin
- require 'rake/extensiontask'
- Rake::ExtensionTask.new do |ext|
- ext.name = 'tidy'
- ext.ext_dir = 'ext/tidy'
- ext.config_options << '--with-coverage' if ENV['COV']
- end
- rescue LoadError
- puts "rake-compiler not available. Install it with: gem install rake-compiler"
- end
- namespace :gcov do
- desc "Recompile with gcc coverage options"
- task :compile do |t|
- ENV['COV'] = '1'
- Rake::Task["compile"].invoke
- end
- desc "Run specs and output gcov info"
- task :spec do |t|
- Rake::Task[:spec].invoke
- obj = Dir.glob('**/ruby-tidy.o').first
- puts %x{cd #{File.dirname(obj)} && gcov -b --object-file #{File.basename(obj)} ruby-tidy.c}
- end
- desc "Clean, compile with gcc coverage and run specs"
- task :all => ["clean", :compile, :spec] do |t|
- end
- end