Fri, 21 Feb 2014 17:58:33 +0530
8033745: Reflect upon Nashorn reflection
Reviewed-by: ahgross, attila, jlaskey
1 #
2 # Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # This code is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 # or visit www.oracle.com if you need additional information or have any
21 # questions.
22 #
24 application.title=nashorn
26 # location of JDK embedded ASM sources
27 jdk.asm.src.dir=../jdk/src/share/classes/jdk/internal/org/objectweb/asm
29 # source and target levels
30 build.compiler=modern
31 javac.source=1.7
32 javac.target=1.7
34 # nashorn version information
35 nashorn.version=0.1
36 nashorn.fullversion=0.1
37 nashorn.product.name=Oracle Nashorn
39 # This directory is removed when the project is cleaned:
40 build.dir=build
41 build.classes.dir=${build.dir}/classes
42 build.zip=${build.dir}/nashorn.zip
43 build.gzip=${build.dir}/nashorn.tar.gz
45 # nashorn Shell tool
46 nashorn.shell.tool=jdk.nashorn.tools.Shell
48 # nasgen tool
49 nasgen.tool=jdk.nashorn.internal.tools.nasgen.Main
51 # parallel test runner tool
52 parallel.test.runner=jdk.nashorn.internal.test.framework.ParallelTestRunner
54 # test classes directory
55 build.test.classes.dir=${build.dir}/test/classes
56 # nashorn test jar - internal tests jar and api tests jar
57 nashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar
58 nashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar
60 # test results directory
61 build.test.results.dir=${build.dir}/test/reports
63 # This directory is removed when the project is cleaned:
64 dist.dir=dist
65 dist.jar=${dist.dir}/nashorn.jar
66 dist.javadoc.dir=${dist.dir}/javadoc
68 # nashorn javafx shell
69 fxshell.tool = jdk.nashorn.tools.FXShell
70 fxshell.classes.dir = ${build.dir}/fxshell/classes
71 fxshell.dir = tools/fxshell
72 fxshell.jar = ${dist.dir}/nashornfx.jar
74 # jars refererred
75 file.reference.testng.jar=test/lib/testng.jar
77 # Set testng verbose level
78 # From TestNG docs: "the verbosity level (0 to 10 where 10 is most detailed)
79 # Actually, this is a lie: you can specify -1 and this will put TestNG in
80 # debug mode (no longer slicing off stack traces and all)."
82 testng.verbose=2
84 # TestNG listeners - we want to replace TestNG's own JUnit
85 # reporter, but want everything else provided by default
86 # Unfortunately, we've to clone the other default reporters here.
88 testng.listeners=\
89 org.testng.reporters.SuiteHTMLReporter, \
90 org.testng.reporters.TestHTMLReporter, \
91 org.testng.reporters.jq.Main, \
92 org.testng.reporters.FailedReporter, \
93 org.testng.reporters.XMLReporter \
94 org.testng.reporters.EmailableReporter, \
95 jdk.nashorn.internal.test.framework.JSJUnitReportReporter
97 javac.debug=true
98 javac.encoding=ascii
99 javac.classpath=\
100 ${build.classes.dir}
101 javac.test.classpath=\
102 ${build.classes.dir}:\
103 ${build.test.classes.dir}:\
104 ${file.reference.testng.jar}
106 meta.inf.dir=${src.dir}/META-INF
108 run.classpath=\
109 ${build.classes.dir}
111 # test scripts to run
112 test.dir=test
113 test.script.dir=test/script
114 test.basic.dir=test/script/basic
115 test.error.dir=test/script/error
116 test.sandbox.dir=test/script/sandbox
117 test.trusted.dir=test/script/trusted
118 test.external.dir=test/script/external
119 test262.dir=${test.external.dir}/test262
120 test262.suite.dir=${test262.dir}/test/suite
121 testjfx.dir=${test.script.dir}/jfx
123 test-sys-prop.test.dir=${test.dir}
124 test-sys-prop.test.js.roots=${test.basic.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir}
125 test-sys-prop.test262.suite.dir=${test262.suite.dir}
126 test-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases
127 test-sys-prop.test.basic.dir=${test.basic.dir}
129 # framework root for our script tests
130 test-sys-prop.test.js.framework=${test.script.dir}/assert.js
132 # Control the verbosity of ParserTest
133 test-sys-prop.parsertest.verbose=false
135 # turn on/off scripting mode for parser tests
136 test-sys-prop.parsertest.scripting=true
138 # turn on/off test262 scripts for parser tests
139 test-sys-prop.parsertest.test262=false
141 # Control the verbosity of the CompilerTest
142 test-sys-prop.compilertest.verbose=false
144 # turn on/off scripting mode for compiler tests
145 test-sys-prop.compilertest.scripting=true
147 # turn on/off test262 scripts for compiler tests
148 test-sys-prop.compilertest.test262=false
150 # test directory to be excluded.
151 test-sys-prop.test.js.exclude.dir=${test.script.dir}/currently-failing ${test.external.dir}
153 # run everything that's js in here, without checking file headers for test annotations
154 test-sys-prop.test.js.unchecked.dir=${test262.dir}
156 # test root for octane
157 octane-test-sys-prop.test.js.roots=${test.external.dir}/octane/
159 # run octane benchmars in separate processes?
160 octane-test-sys-prop.separate.process=true
162 # framework root for octane
163 octane-test-sys-prop.test.js.framework=${test.basic.dir}/run-octane.js
165 # list of tests to be excluded
166 # mandreel excluded due to OOM
167 octane-test-sys-prop.test.js.exclude.list=\
168 base.js \
169 run.js \
170 mandreel.js
172 # test root for sunspider
173 sunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0/
175 # framework root for sunspider
176 sunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js
178 # list of tests to be excluded
179 sunspider-test-sys-prop.test.js.exclude.list=
181 # execute our script tests in shared nashorn context or not?
182 test-sys-prop.test.js.shared.context=false
184 # execute test262 tests in shared nashorn context or not?
185 test262-test-sys-prop.test.js.shared.context=true
187 # test262 test root
188 test262-test-sys-prop.test.js.roots=${test262.suite.dir}
189 # test262 enable/disable strict mode tests
190 test262-test-sys-prop.test.js.enable.strict.mode=true
192 # file containing test262 tests to be excluded
193 # test262-test-sys-prop.test.js.excludes.file=${test262.dir}/test/config/excludelist.xml
195 # list of test262 test dirs to be excluded
196 test262-test-sys-prop.test.js.exclude.dir=\
197 ${test262.suite.dir}/intl402/ \
198 ${test262.suite.dir}/bestPractice/
200 test262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests
202 # test262 test frameworks
203 test262-test-sys-prop.test.js.framework=\
204 --class-cache-size=0 \
205 --no-java \
206 --no-typed-arrays \
207 -timezone=PST \
208 ${test.script.dir}/test262.js \
209 ${test262.dir}/test/harness/framework.js \
210 ${test262.dir}/test/harness/sta.js
212 # testjfx test root
213 testjfx-test-sys-prop.test.js.roots=${testjfx.dir}
215 # execute testjfx tests in shared nashorn context or not?
216 testjfx-test-sys-prop.test.js.shared.context=false
218 # framework root for our script tests
219 testjfx-test-sys-prop.test.js.framework=\
220 -fx \
221 ${test.script.dir}${file.separator}jfx.js
223 file.reference.jemmyfx.jar=test${file.separator}lib${file.separator}JemmyFX.jar
224 file.reference.jemmycore.jar=test${file.separator}lib${file.separator}JemmyCore.jar
225 file.reference.jemmyawtinput.jar=test${file.separator}lib${file.separator}JemmyAWTInput.jar
226 file.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar
227 testjfx.run.test.classpath=\
228 ${file.reference.jemmyfx.jar}${path.separator}\
229 ${file.reference.jemmycore.jar}${path.separator}\
230 ${file.reference.jemmyawtinput.jar}${path.separator}\
231 ${file.reference.testng.jar}${path.separator}\
232 ${nashorn.internal.tests.jar}${path.separator}\
233 ${nashorn.api.tests.jar}
235 # testjfx VM options for script tests with @fork option
236 testjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath}
238 run.test.classpath=\
239 ${file.reference.testng.jar}:\
240 ${nashorn.internal.tests.jar}:\
241 ${nashorn.api.tests.jar}
243 src.dir=src
244 test.src.dir=test/src
246 # -Xmx is used for all tests, -Xms only for octane benchmark
247 run.test.xmx=3G
248 run.test.xms=2G
250 run.test.user.language=tr
251 run.test.user.country=TR
253 run.test.jvmargs.common=-server -XX:+TieredCompilation -Dfile.encoding=UTF-8 -Duser.language=${run.test.user.language} -Duser.country=${run.test.user.country} -XX:+HeapDumpOnOutOfMemoryError
255 #-XX:-UseCompressedKlassPointers -XX:+PrintHeapAtGC -XX:ClassMetaspaceSize=300M
256 # -XX:+PrintCompilation -XX:+UnlockDiagnosticVMOptions -XX:+PrintNMethods
258 # turn on assertions for tests
259 run.test.jvmargs.main=${run.test.jvmargs.common} -ea
261 #-XX:-UseCompressedKlassPointers -XX:+PrintHeapAtGC -XX:ClassMetaspaceSize=300M
262 run.test.jvmargs.octane.main=${run.test.jvmargs.common}
264 run.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${basedir}/build/nashorn.policy
266 # VM options for script tests with @fork option
267 test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} ${run.test.jvmsecurityargs}
269 # path of rhino.jar for benchmarks
270 rhino.jar=
272 v8.shell=d8
274 #path to rhino jar file
275 octaneperf-sys-prop.rhino.jar=${rhino.jar}
277 #timeout for performance tests in minutes
278 octaneperf-sys-prop.timeout.value=10
280 ################
281 # codecoverage #
282 ################
283 #enable/disable code coverage; please redifine in the ${user.home}/.nashorn.project.local.properties
284 make.code.coverage=false
285 #type of codecoverage; one of static or dynamic. Now only dynamic is supported
286 jcov=dynamic
287 #naming of CC results
288 #NB directory specified in the cc.dir will be cleaned up!!!
289 cc.dir=${basedir}/../Codecoverage_Nashorn
290 cc.result.file.name=CC_${jcov}_nashorn.xml
291 #dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties
292 jcov2.lib.dir=${basedir}/../jcov2/lib
293 jcov.jar=${jcov2.lib.dir}/jcov.jar
294 cc.include=jdk\.nashorn\.*
295 cc.exclude=jdk\.nashorn\.internal\.scripts\.*
296 cc.dynamic.genereate.template=true
297 cc.template=${cc.dir}/CC_template.xml
298 cc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name}