2009-12-15 00:35:55 -05:00
|
|
|
require 'rubygems'
|
2010-02-11 17:39:51 -05:00
|
|
|
|
|
|
|
UPSTREAM = "ext/v8/upstream"
|
|
|
|
SCONS = "#{UPSTREAM}/scons"
|
|
|
|
V8_SRC = "#{UPSTREAM}/2.0.6"
|
|
|
|
|
2010-03-22 21:57:09 -04:00
|
|
|
manifest = Rake::FileList.new("**/*")
|
|
|
|
manifest.exclude "ext/**/test/*", "ext/**/test/*", "ext/**/samples/*", "ext/**/benchmarks/*", "#{UPSTREAM}/build", "tmp", "tmp/**/*", "**/*.gem"
|
|
|
|
Gem::Specification.new do |gemspec|
|
|
|
|
$gemspec = gemspec
|
|
|
|
gemspec.name = gemspec.rubyforge_project = "therubyracer"
|
2010-05-02 16:56:11 -04:00
|
|
|
gemspec.version = "0.6.1"
|
2010-03-22 21:57:09 -04:00
|
|
|
gemspec.summary = "Embed the V8 Javascript interpreter into Ruby"
|
|
|
|
gemspec.description = "Call javascript code and manipulate javascript objects from ruby. Call ruby code and manipulate ruby objects from javascript."
|
|
|
|
gemspec.email = "cowboyd@thefrontside.net"
|
|
|
|
gemspec.homepage = "http://github.com/cowboyd/therubyracer"
|
|
|
|
gemspec.authors = ["Charles Lowell", "Bill Robertson"]
|
|
|
|
gemspec.extra_rdoc_files = ["README.rdoc"]
|
|
|
|
gemspec.executables = ["therubyracer", "v8"]
|
|
|
|
gemspec.extensions = ["ext/v8/extconf.rb"]
|
|
|
|
gemspec.require_paths = ["lib", "ext"]
|
|
|
|
gemspec.files = manifest.to_a
|
2009-12-16 01:40:19 -05:00
|
|
|
end
|
2009-12-15 00:35:55 -05:00
|
|
|
|
2010-02-11 17:39:51 -05:00
|
|
|
desc "Build gem"
|
2010-05-08 13:21:40 -04:00
|
|
|
task :gem => :gemspec do
|
2010-03-22 21:57:09 -04:00
|
|
|
Gem::Builder.new($gemspec).build
|
|
|
|
end
|
2010-01-28 22:37:03 -05:00
|
|
|
|
2010-03-22 21:57:09 -04:00
|
|
|
desc "build the gemspec"
|
2010-05-08 13:21:40 -04:00
|
|
|
task :gemspec => :clean do
|
2010-03-22 21:57:09 -04:00
|
|
|
File.open("#{$gemspec.name}.gemspec", "w") do |f|
|
|
|
|
f.write($gemspec.to_ruby)
|
|
|
|
end
|
2010-01-28 22:37:03 -05:00
|
|
|
end
|
|
|
|
|
2010-02-08 12:23:57 -05:00
|
|
|
task :clean do
|
|
|
|
sh "rm -f ext/v8/Makefile"
|
2010-02-11 17:39:51 -05:00
|
|
|
sh "rm -rf pkg"
|
2010-03-23 00:15:59 -04:00
|
|
|
sh "rm -rf *.gem"
|
2010-05-08 13:21:40 -04:00
|
|
|
sh "rm -rf lib/v8/*.bundle lib/v8/*.so"
|
2010-02-08 12:23:57 -05:00
|
|
|
end
|
2010-03-22 21:57:09 -04:00
|
|
|
|
|
|
|
namespace :clean do
|
|
|
|
desc "remove all built v8 objects"
|
|
|
|
task "v8" => "clean" do
|
|
|
|
sh "cd #{UPSTREAM} && make clean"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2010-03-22 23:37:23 -04:00
|
|
|
for file in Dir['tasks/*.rake']
|
|
|
|
load file
|
|
|
|
end
|
|
|
|
|
2010-03-22 21:57:09 -04:00
|
|
|
|