project.properties revision 1259:811bbe3c6959
1229159Sadrian#
2229159Sadrian# Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
3229159Sadrian# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4229159Sadrian#
5229159Sadrian# This code is free software; you can redistribute it and/or modify it
6229159Sadrian# under the terms of the GNU General Public License version 2 only, as
7229159Sadrian# published by the Free Software Foundation.
8229159Sadrian#
9229159Sadrian# This code is distributed in the hope that it will be useful, but WITHOUT
10229159Sadrian# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11229159Sadrian# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12229159Sadrian# version 2 for more details (a copy is included in the LICENSE file that
13229159Sadrian# accompanied this code).
14229159Sadrian#
15229159Sadrian# You should have received a copy of the GNU General Public License version
16229159Sadrian# 2 along with this work; if not, write to the Free Software Foundation,
17229159Sadrian# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18229159Sadrian#
19229159Sadrian# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20229159Sadrian# or visit www.oracle.com if you need additional information or have any
21229159Sadrian# questions.
22229159Sadrian#
23229159Sadrian
24229159Sadrianapplication.title=nashorn
25229159Sadrian
26229159Sadrian# location of JDK embedded ASM sources
27229159Sadrianjdk.asm.src.dir=../jdk/src/java.base/share/classes/jdk/internal/org/objectweb/asm
28229159Sadrian
29229159Sadrian# source and target levels
30229159Sadrianbuild.compiler=modern
31229159Sadrianjavac.source=1.8
32229159Sadrianjavac.target=1.8
33229159Sadrian
34229159Sadrian# nashorn version information
35229159Sadriannashorn.version=0.1
36229159Sadriannashorn.fullversion=0.1
37229159Sadriannashorn.product.name=Oracle Nashorn
38229159Sadrian
39229159Sadrian# This directory is removed when the project is cleaned:
40229159Sadrianbuild.dir=build
41229159Sadrianbuild.classes.dir=${build.dir}/classes
42229159Sadrianbuild.zip=${build.dir}/nashorn.zip
43229159Sadrianbuild.gzip=${build.dir}/nashorn.tar.gz
44229159Sadrian
45229159Sadrian# nashorn Shell tool
46229159Sadriannashorn.shell.tool=jdk.nashorn.tools.Shell
47229159Sadrian
48229159Sadrian# nasgen tool
49229159Sadriannasgen.tool=jdk.nashorn.internal.tools.nasgen.Main
50229159Sadrian
51229159Sadrian# parallel test runner tool
52229159Sadrianparallel.test.runner=jdk.nashorn.internal.test.framework.ParallelTestRunner
53229159Sadrian
54229159Sadrian# test classes directory
55229159Sadrianbuild.test.classes.dir=${build.dir}/test/classes
56229159Sadrian
57229159Sadrian# nashorn test jar - internal tests jar and api tests jar
58229159Sadriannashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar
59229159Sadriannashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar
60229159Sadrian
61229159Sadrian# test results directory
62229159Sadrianbuild.test.results.dir=${build.dir}/test/reports
63229159Sadrianbuild.nosecurity.test.results.dir=${build.dir}/test/nosecurity/reports
64229159Sadrianbuild.nooptimistic.test.results.dir=${build.dir}/test/nooptimistic/reports
65229159Sadrian
66229159Sadrian# This directory is removed when the project is cleaned:
67229159Sadriandist.dir=dist
68229159Sadriandist.jar=${dist.dir}/nashorn.jar
69229159Sadriandist.javadoc.dir=${dist.dir}/javadoc
70229159Sadrian
71229159Sadrian# nashorn javafx shell
72229159Sadrianfxshell.tool = jdk.nashorn.tools.FXShell
73229159Sadrianfxshell.classes.dir = ${build.dir}/fxshell/classes
74229159Sadrianfxshell.dir = tools/fxshell
75229159Sadrianfxshell.jar = ${dist.dir}/nashornfx.jar
76229159Sadrian
77229159Sadrian# configuration for java flight recorder
78229159Sadrianrun.test.jvmargs.jfr=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=${build.dir},stackdepth=128
79229159Sadrian
80229159Sadrian# jars refererred
81229159Sadrianfile.reference.testng.jar=test/lib/testng.jar
82229159Sadrian
83229159Sadrian# Set testng verbose level
84229159Sadrian# From TestNG docs: "the verbosity level (0 to 10 where 10 is most detailed)
85229159Sadrian# Actually, this is a lie: you can specify -1 and this will put TestNG in
86229159Sadrian# debug mode (no longer slicing off stack traces and all)."
87229159Sadrian
88229159Sadriantestng.verbose=2
89229159Sadrian
90229159Sadrian# TestNG listeners - we want to replace TestNG's own JUnit
91229159Sadrian# reporter, but want everything else provided by default
92229159Sadrian# Unfortunately, we've to clone the other default reporters here.
93229159Sadrian
94229159Sadriantestng.listeners=\
95229159Sadrian org.testng.reporters.SuiteHTMLReporter, \
96229159Sadrian org.testng.reporters.TestHTMLReporter, \
97229159Sadrian org.testng.reporters.jq.Main, \
98229159Sadrian org.testng.reporters.FailedReporter, \
99229159Sadrian org.testng.reporters.XMLReporter \
100229159Sadrian org.testng.reporters.EmailableReporter, \
101229159Sadrian jdk.nashorn.internal.test.framework.JSJUnitReportReporter
102229159Sadrian
103229159Sadrianjavac.debug=true
104229159Sadrianjavac.encoding=ascii
105229159Sadrianjavac.classpath=\
106229159Sadrian    ${build.classes.dir}
107229159Sadrianjavac.test.classpath=\
108229159Sadrian    ${build.classes.dir}:\
109229159Sadrian    ${build.test.classes.dir}:\
110229159Sadrian    ${file.reference.testng.jar}
111229159Sadrian
112229159Sadrianmeta.inf.dir=${src.dir}/META-INF
113229159Sadrian
114229159Sadrianrun.classpath=\
115229159Sadrian    ${build.classes.dir}
116229159Sadrian
117229159Sadrian# test scripts to run
118229159Sadriantest.dir=test
119229159Sadriantest.nosecurity.dir=test/script/nosecurity
120229159Sadriantest.script.dir=test/script
121229159Sadriantest.basic.dir=test/script/basic
122229159Sadriantest.maptests.dir=test/script/maptests
123229159Sadriantest.error.dir=test/script/error
124229159Sadriantest.sandbox.dir=test/script/sandbox
125229159Sadriantest.trusted.dir=test/script/trusted
126229159Sadriantest.external.dir=test/script/external
127229159Sadriantest262.dir=${test.external.dir}/test262
128229159Sadriantest262.suite.dir=${test262.dir}/test/suite
129229159Sadriantestjfx.dir=${test.script.dir}/jfx
130229159Sadriantestmarkdown.dir=${test.script.dir}/markdown
131229159Sadrian
132229159Sadriantest-sys-prop.test.dir=${test.dir}
133229159Sadriantest-sys-prop.test.js.roots=${test.basic.dir} ${test.maptests.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir}
134229159Sadriantest-sys-prop.test262.suite.dir=${test262.suite.dir}
135229159Sadriantest-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases
136229159Sadriantest-sys-prop.test.basic.dir=${test.basic.dir}
137229159Sadriantest-sys-prop.test.external.dir=${test.external.dir}
138229159Sadriantest-sys-prop.test.maptests.dir=${test.maptests.dir}
139229159Sadriantest-sys-prop.test.sandbox.dir=${test.sandbox.dir}
140229159Sadriantest-sys-prop.test.trusted.dir=${test.trusted.dir}
141229159Sadrian
142229159Sadriantest-sys-prop-no-security.test.dir=${test.dir}
143229159Sadriantest-sys-prop-no-security.test.js.roots=${test.nosecurity.dir}
144229159Sadrian
145229159Sadrian# framework root for our script tests
146229159Sadriantest-sys-prop.test.js.framework=${test.script.dir}/assert.js
147229159Sadriantest-sys-prop-no-security.test.js.framework=${test.script.dir}/assert.js
148229159Sadrian
149229159Sadrian# Control the verbosity of ParserTest
150229159Sadriantest-sys-prop.parsertest.verbose=false
151229159Sadrian
152229159Sadrian# turn on/off scripting mode for parser tests
153229159Sadriantest-sys-prop.parsertest.scripting=true
154229159Sadriantest-sys-prop.parserapitest.verbose=false
155229159Sadrian
156229159Sadrian# turn on/off test262 scripts for parser tests
157229159Sadriantest-sys-prop.parsertest.test262=false
158229159Sadriantest-sys-prop.parserapitest.test262=false
159229159Sadrian
160229159Sadrian# Control the verbosity of the CompilerTest
161229159Sadriantest-sys-prop.compilertest.verbose=false
162229159Sadrian
163229159Sadrian# turn on/off scripting mode for compiler tests
164229159Sadriantest-sys-prop.compilertest.scripting=true
165229159Sadrian
166229159Sadrian# turn on/off test262 scripts for compiler tests
167229159Sadriantest-sys-prop.compilertest.test262=false
168229159Sadrian
169229159Sadrian# test directory to be excluded.
170229159Sadriantest-sys-prop.test.js.exclude.dir=${test.script.dir}/currently-failing ${test.external.dir}
171229159Sadrian
172229159Sadrian# run everything that's js in here, without checking file headers for test annotations
173229159Sadriantest-sys-prop.test.js.unchecked.dir=${test262.dir}
174229159Sadrian
175229159Sadrian# test root for octane
176229159Sadrianoctane-test-sys-prop.test.js.roots=${test.external.dir}/octane/
177229159Sadrian
178229159Sadrian# run octane benchmars in separate processes? (recommended)
179229159Sadrianoctane-test-sys-prop.separate.process=true
180229159Sadrian
181229159Sadrian# framework root for octane
182229159Sadrianoctane-test-sys-prop.test.js.framework=${test.basic.dir}/run-octane.js
183229159Sadrian
184229159Sadrian# test root for sunspider
185229159Sadriansunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0.2/
186229159Sadrian
187229159Sadrian# framework root for sunspider
188229159Sadriansunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js
189229159Sadrian
190229159Sadrian# list of tests to be excluded
191229159Sadriansunspider-test-sys-prop.test.js.exclude.list=
192229159Sadrian
193229159Sadrian# execute our script tests in shared nashorn context or not?
194229159Sadriantest-sys-prop.test.js.shared.context=false
195229159Sadrian
196229159Sadrian# execute test262 tests in shared nashorn context or not?
197229159Sadriantest262-test-sys-prop.test.js.shared.context=true
198229159Sadrian
199229159Sadrian# test262 test root
200229159Sadriantest262-test-sys-prop.test.js.roots=${test262.suite.dir}
201229159Sadrian
202229159Sadrian# test262 enable/disable strict mode tests
203229159Sadriantest262-test-sys-prop.test.js.enable.strict.mode=true
204229159Sadrian
205229159Sadrian# file containing test262 tests to be excluded
206229159Sadrian# test262-test-sys-prop.test.js.excludes.file=${test262.dir}/test/config/excludelist.xml
207229159Sadrian
208229159Sadrian# list of test262 test dirs to be excluded
209229159Sadriantest262-test-sys-prop.test.js.exclude.dir=\
210229159Sadrian    ${test262.suite.dir}/intl402/ \
211229159Sadrian    ${test262.suite.dir}/bestPractice/
212229159Sadrian
213229159Sadriantest262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests
214229159Sadrian
215229159Sadrian# test262 test frameworks
216229159Sadriantest262-test-sys-prop.test.js.framework=\
217229159Sadrian    --class-cache-size=10 \
218229159Sadrian    --no-java \
219229159Sadrian    --no-typed-arrays \
220229159Sadrian    -timezone=PST \
221229159Sadrian    ${test.script.dir}/test262.js \
222229159Sadrian    ${test262.dir}/test/harness/framework.js \
223229159Sadrian    ${test262.dir}/test/harness/sta.js
224229159Sadrian
225229159Sadrian# testmarkdown test root
226229159Sadriantestmarkdown-test-sys-prop.test.js.roots=${testmarkdown.dir}
227229159Sadrian
228229159Sadrian# execute testmarkdown tests in shared nashorn context or not?
229229159Sadriantestmarkdown-test-sys-prop.test.js.shared.context=false
230229159Sadrian
231229159Sadrian# framework root for markdown script tests
232229159Sadriantestmarkdown-test-sys-prop.test.js.framework=\
233229159Sadrian    ${test.script.dir}${file.separator}markdown.js
234229159Sadrian
235229159Sadrian# testjfx test root
236229159Sadriantestjfx-test-sys-prop.test.js.roots=${testjfx.dir}
237229159Sadrian
238229159Sadrian# execute testjfx tests in shared nashorn context or not?
239229159Sadriantestjfx-test-sys-prop.test.js.shared.context=false
240229159Sadrian
241229159Sadrian# framework root for our script tests
242229159Sadriantestjfx-test-sys-prop.test.js.framework=\
243229159Sadrian    -fx \
244229159Sadrian    ${test.script.dir}${file.separator}jfx.js
245229159Sadrian
246229159Sadrianfile.reference.jemmyfx.jar=test${file.separator}lib${file.separator}JemmyFX.jar
247229159Sadrianfile.reference.jemmycore.jar=test${file.separator}lib${file.separator}JemmyCore.jar
248229159Sadrianfile.reference.jemmyawtinput.jar=test${file.separator}lib${file.separator}JemmyAWTInput.jar
249229159Sadrianfile.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar
250229159Sadriantestjfx.run.test.classpath=\
251229159Sadrian    ${file.reference.jemmyfx.jar}${path.separator}\
252229159Sadrian    ${file.reference.jemmycore.jar}${path.separator}\
253229159Sadrian    ${file.reference.jemmyawtinput.jar}${path.separator}\
254229159Sadrian    ${file.reference.testng.jar}${path.separator}\
255229159Sadrian    ${nashorn.internal.tests.jar}${path.separator}\
256229159Sadrian    ${nashorn.api.tests.jar}
257229159Sadrian
258229159Sadrian# testjfx VM options for script tests with @fork option
259229159Sadriantestjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath}
260229159Sadrian
261229159Sadrianrun.test.classpath=\
262229159Sadrian    ${file.reference.testng.jar}:\
263229159Sadrian    ${nashorn.internal.tests.jar}:\
264229159Sadrian    ${nashorn.api.tests.jar}
265229159Sadrian
266229159Sadriansrc.dir=src/jdk.scripting.nashorn/share/classes
267229159Sadriantest.src.dir=test/src
268229159Sadrian
269229159Sadrian# -Xmx is used for all tests, -Xms only for octane benchmark
270229159Sadrianrun.test.xmx=2G
271229159Sadrianrun.test.xms=2G
272229159Sadrian
273229159Sadrian# uncomment this jfr.args to enable light recordings. the stack needs to be cranked up to 1024 frames,
274229159Sadrian# or everything will as of the now drown in lambda forms and be cut off.
275229159Sadrian#
276229159Sadrian#jfr.args=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath="test_suite.jfr",stackdepth=1024 \
277229159Sadrian
278229159Sadrianjfr.args=
279229159Sadrian
280229159Sadrianrun.test.user.language=tr
281229159Sadrianrun.test.user.country=TR
282229159Sadrian
283229159Sadrianrun.test.jvmargs.common=\
284229159Sadrian  -server \
285229159Sadrian  -Dfile.encoding=UTF-8 \
286229159Sadrian  -Duser.language=${run.test.user.language} \
287229159Sadrian  -Duser.country=${run.test.user.country} \
288229159Sadrian  -Dnashorn.typeInfo.cacheDir=${build.dir}${file.separator}test${file.separator}type_info_cache \
289229159Sadrian  ${jfr.args} \
290229159Sadrian  -XX:+HeapDumpOnOutOfMemoryError
291229159Sadrian
292229159Sadrian# turn on assertions for tests
293229159Sadrianrun.test.jvmargs.main=${run.test.jvmargs.common} -esa -ea
294229159Sadrian
295229159Sadrian# Extra jvmargs that might be useful for debugging
296229159Sadrian# and performance improvements/monitoring
297229159Sadrian#
298229159Sadrian# -XX:+UnlockDiagnosticVMOptions
299229159Sadrian#
300229159Sadrian# turn off compressed class pointers in metaspace
301229159Sadrian# -XX:-UseCompressedKlassPointers
302229159Sadrian#
303229159Sadrian# dump the heap after every GC
304229159Sadrian# -XX:+PrintHeapAtGC
305229159Sadrian#
306229159Sadrian# manually set a metaspace size for class data
307229159Sadrian# -XX:ClassMetaspaceSize=300M
308229159Sadrian#
309229159Sadrian# print out methods compiled
310229159Sadrian# -XX:+PrintCompilation
311229159Sadrian#
312229159Sadrian# print all compiled nmethods with oopmaps and lots of other info
313229159Sadrian# -XX:+PrintNMethods
314229159Sadrian#
315229159Sadrian# activate the generic "UseNewCode" flag to test whatever functionality
316229159Sadrian# lies behind it. This is the preferred way to test a, yet flagless,
317229159Sadrian# feature in HotSpot - for example, the uncommon trap placement fix
318229159Sadrian# was hidden behind this flag before it became the default
319229159Sadrian#
320229159Sadrian# -XX:+UnlockDiagnosticVMOptions -XX:+UseNewCode
321229159Sadrian#
322229159Sadrian# Crank up the type profile level to 222, which has some warmup
323229159Sadrian# penalties, but produces much better code for JavaScript, where better
324229159Sadrian# and more intrusive type profiling is required to get rid of
325229159Sadrian# a large amount of unnecessary guard code, that could not otherwise
326229159Sadrian# be eliminated
327229159Sadrian#
328229159Sadrian# -XX:TypeProfileLevel=222
329229159Sadrian#
330229159Sadrian
331229159Sadrian# Use best known performance options for octane
332229159Sadrianrun.test.jvmargs.octane.main=${run.test.jvmargs.common} -XX:TypeProfileLevel=222
333229159Sadrian
334229159Sadrian# Security manager args - make sure that we run with the nashorn.policy that the build creates
335229159Sadrianrun.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${build.dir}/nashorn.policy
336229159Sadrian
337229159Sadrian# VM options for script tests with @fork option
338229159Sadriantest-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} ${run.test.jvmsecurityargs} -cp ${run.test.classpath}
339229159Sadrian# VM options for no-security script tests with @fork option - same as above but without jvmsecurityargs
340229159Sadriantest-sys-prop-no-security.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${run.test.classpath}
341229159Sadrian
342229159Sadrian# path of rhino.jar for benchmarks
343229159Sadrianrhino.dir=
344229159Sadrianrhino.jar=${rhino.dir}/js.jar
345229159Sadrian
346229159Sadrianv8.shell=d8
347229159Sadrian
348229159Sadrian# How many iterations should 'ant octane' run for each
349229159Sadrian# benchmark
350229159Sadrianoctane.iterations=25
351229159Sadrian
352229159Sadrian# List of octane tests to run, as properties prefixed with
353229159Sadrian# "octane.benchmark." mapping to the benchmark name in
354229159Sadrian# the test harness
355229159Sadrian#
356229159Sadrian# Octane tests that are disabled should have their entire line
357229159Sadrian# commented out  Tests may be disabled for functionality reasons when
358229159Sadrian# they have bugs or when the runtime doesn't handle them (yet)
359229159Sadrianoctane.benchmark.box2d=box2d
360229159Sadrian#octane.benchmark.code-load=code-load
361229159Sadrianoctane.benchmark.crypto=crypto
362229159Sadrianoctane.benchmark.deltablue=deltablue
363229159Sadrianoctane.benchmark.earley-boyer=earley-boyer
364229159Sadrianoctane.benchmark.gbemu=gbemu
365229159Sadrianoctane.benchmark.navier-stokes=navier-stokes
366229159Sadrianoctane.benchmark.mandreel=mandreel
367229159Sadrianoctane.benchmark.pdfjs=pdfjs
368229159Sadrianoctane.benchmark.raytrace=raytrace
369229159Sadrianoctane.benchmark.regexp=regexp
370229159Sadrianoctane.benchmark.richards=richards
371229159Sadrianoctane.benchmark.splay=splay
372229159Sadrian#octane.benchmark.typescript=typescript
373229159Sadrian#octane.benchmark.zlib=zlib
374229159Sadrian
375229159Sadrian#path to rhino jar file
376229159Sadrianoctaneperf-sys-prop.rhino.jar=${rhino.jar}
377229159Sadrian
378229159Sadrian#timeout for performance tests in minutes
379229159Sadrianoctaneperf-sys-prop.timeout.value=10
380229159Sadrian
381229159Sadrian#how many iterations to run sunspider after warmup
382229159Sadriansunspider.iterations=3000
383229159Sadrian
384229159Sadrian#################
385229159Sadrian# code coverage #
386229159Sadrian#################
387229159Sadrian
388229159Sadrian#enable/disable code coverage; please redifine in the ${user.home}/.nashorn.project.local.properties
389229159Sadrianmake.code.coverage=false
390229159Sadrian
391229159Sadrian#type of codecoverage; one of static or dynamic. Now only dynamic is supported
392229159Sadrianjcov=dynamic
393229159Sadrian
394229159Sadrian#naming of CC results
395229159Sadrian#NB directory specified in the cc.dir will be cleaned up!!!
396229159Sadriancc.dir=${basedir}/../Codecoverage_Nashorn
397229159Sadriancc.result.file.name=CC_${jcov}_nashorn.xml
398
399#dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties
400jcov2.lib.dir=${basedir}/../jcov2/lib
401jcov.jar=${jcov2.lib.dir}/jcov.jar
402cc.include=jdk\.nashorn\.*
403cc.exclude=jdk\.nashorn\.internal\.scripts\.*
404cc.dynamic.genereate.template=true
405cc.template=${cc.dir}/CC_template.xml
406cc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name}
407