forked from jruby/jruby
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Rakefile
47 lines (39 loc) · 1.23 KB
/
Rakefile
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
47
#
# Rakefile for JRuby.
#
# At this time, most JRuby build tasks still use build.xml and Apache
# Ant. This Rakefile has some additional tasks. We hope to migrate
# more out of build.xml and into Rake in the future.
#
# See also rakelib/*.rake for more tasks and details.
require File.dirname(__FILE__) + '/rakelib/helpers.rb'
# Suppress .java lines from non-traced backtrace
begin
Rake.application.options.suppress_backtrace_pattern =
/(#{Rake::Backtrace::SUPPRESS_PATTERN})|(^org\/jruby)/
rescue
end
task :default => [:build]
desc "Build JRuby"
task :build do
ant "jar"
end
task :jar => :build
desc "Clean all built output"
task :clean do
delete_files = FileList.new do |fl|
fl.
include("#{BUILD_DIR}/**").
exclude("#{BUILD_DIR}/rubyspec").
include(DIST_DIR).
include(API_DOCS_DIR)
end
delete_files.each {|files| rm_rf files, :verbose => true}
end
desc "Generate sources, compile and add to jar file"
task :gen do
mkdir_p 'build/src_gen'
system 'apt -nocompile -cp lib/jruby.jar:build_lib/asm-4.0.jar:build_lib/asm-util-4.0.jar -factory org.jruby.anno.AnnotationBinder src/org/jruby/*.java'
system 'javac -cp lib/jruby.jar build/src_gen/*.java'
system 'jar -uf lib/jruby.jar -C build/src_gen .'
end