1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
# -*- ruby -*-
require 'rubygems'
require 'hoe'
gem 'rake-compiler', '>= 0.4.1'
require "rake/extensiontask"
Hoe.plugin :debugging, :doofus, :git, :isolate
Hoe.spec 'racc' do
developer 'Aaron Patterson', 'aaron@tenderlovemaking.com'
self.extra_rdoc_files = Dir['*.rdoc']
self.history_file = 'ChangeLog'
self.readme_file = 'README.rdoc'
self.testlib = :minitest
extra_dev_deps << ['rake-compiler', '>= 0.4.1']
self.spec_extras = {
:extensions => ["ext/racc/extconf.rb"]
}
Rake::ExtensionTask.new "cparse", spec do |ext|
ext.lib_dir = File.join 'lib', 'racc'
ext.ext_dir = File.join 'ext', 'racc'
end
end
file 'lib/racc/parser-text.rb' => ['lib/racc/parser.rb'] do |t|
file = 'lib/racc/parser.rb'
File.open(t.name, 'wb') { |file|
file.write(<<-eorb)
module Racc
PARSER_TEXT = <<'__end_of_file__'
#{File.read(file)}"
__end_of_file__
end
eorb
}
end
Hoe.add_include_dirs('.:lib/psych')
task :compile => 'lib/racc/parser-text.rb'
|