@@ -15,8 +15,8 @@ end rescue nil
15
15
JAVA_DIR = "java/src/json/ext"
16
16
JAVA_RAGEL_PATH = "#{ JAVA_DIR } /ParserConfig.rl"
17
17
JAVA_PARSER_SRC = "#{ JAVA_DIR } /ParserConfig.java"
18
- JAVA_SOURCES = FileList [ "#{ JAVA_DIR } /*.java" ]
19
- JAVA_VEC_SOURCES = FileList [ "#{ JAVA_DIR } /vectorized/ *.java" ]
18
+ JAVA_SOURCES = FileList [ "#{ JAVA_DIR } /*.java" ] . exclude ( " #{ JAVA_DIR } /Vectorized*.java" )
19
+ JAVA_VEC_SOURCES = FileList [ "#{ JAVA_DIR } /Vectorized *.java" ]
20
20
JAVA_CLASSES = [ ]
21
21
JRUBY_PARSER_JAR = File . expand_path ( "lib/json/ext/parser.jar" )
22
22
JRUBY_GENERATOR_JAR = File . expand_path ( "lib/json/ext/generator.jar" )
@@ -65,12 +65,26 @@ if defined?(RUBY_ENGINE) and RUBY_ENGINE == 'jruby'
65
65
66
66
JRUBY_JAR = File . join ( CONFIG [ "libdir" ] , "jruby.jar" )
67
67
if File . exist? ( JRUBY_JAR )
68
+ classpath = ( Dir [ 'java/lib/*.jar' ] << 'java/src' << JRUBY_JAR ) * ':'
68
69
JAVA_SOURCES . each do |src |
69
- classpath = ( Dir [ 'java/lib/*.jar' ] << 'java/src' << JRUBY_JAR ) * ':'
70
70
obj = src . sub ( /\. java\Z / , '.class' )
71
71
file obj => src do
72
- sh 'javac' , '-classpath' , classpath , '-source' , '1.8' , '-target' , '1.8' , src
73
- # '--enable-preview', '--add-modules', 'jdk.incubator.vector',
72
+ sh 'javac' , '-classpath' , classpath , '-source' , '1.8' , '-target' , '1.8' , src
73
+ # '--enable-preview',
74
+ end
75
+ JAVA_CLASSES << obj
76
+ end
77
+
78
+ JAVA_VEC_SOURCES . each do |src |
79
+ obj = src . sub ( /\. java\Z / , '.class' )
80
+ file obj => src do
81
+ sh 'javac' , '--add-modules' , 'jdk.incubator.vector' , '-classpath' , classpath , '--release' , '16' , src do |success , status |
82
+ if success
83
+ puts "*** 'jdk.incubator.vector' support enabled ***"
84
+ else
85
+ puts "*** 'jdk.incubator.vector' support disabled ***"
86
+ end
87
+ end
74
88
end
75
89
JAVA_CLASSES << obj
76
90
end
0 commit comments