project.properties revision 1272:063ed2f959e4
1157841Sflz#
298186Sgordon# Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
378344Sobrien# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4157473Sflz#
578344Sobrien# This code is free software; you can redistribute it and/or modify it
678344Sobrien# under the terms of the GNU General Public License version 2 only, as
778344Sobrien# published by the Free Software Foundation.
878344Sobrien#
978344Sobrien# This code is distributed in the hope that it will be useful, but WITHOUT
1078344Sobrien# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1178344Sobrien# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1278344Sobrien# version 2 for more details (a copy is included in the LICENSE file that
1378344Sobrien# accompanied this code).
1478344Sobrien#
1578344Sobrien# You should have received a copy of the GNU General Public License version
1678344Sobrien# 2 along with this work; if not, write to the Free Software Foundation,
1778344Sobrien# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
1878344Sobrien#
1978344Sobrien# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2078344Sobrien# or visit www.oracle.com if you need additional information or have any
2178344Sobrien# questions.
2278344Sobrien#
2378344Sobrien
2478344Sobrienapplication.title=nashorn
2578344Sobrien
2678344Sobrien# location of JDK embedded ASM sources
2778344Sobrienjdk.asm.src.dir=../jdk/src/java.base/share/classes/jdk/internal/org/objectweb/asm
2878344Sobrien
2978344Sobrien# source and target levels
3078344Sobrienbuild.compiler=modern
3178344Sobrienjavac.source=1.8
3278344Sobrienjavac.target=1.8
3378344Sobrien
3478344Sobrien# nashorn version information
3578344Sobriennashorn.version=0.1
3678344Sobriennashorn.fullversion=0.1
3778344Sobriennashorn.product.name=Oracle Nashorn
3878344Sobrien
3978344Sobrien# This directory is removed when the project is cleaned:
4078344Sobrienbuild.dir=build
4178344Sobrienbuild.classes.dir=${build.dir}/classes
42157473Sflzbuild.zip=${build.dir}/nashorn.zip
43157473Sflzbuild.gzip=${build.dir}/nashorn.tar.gz
4478344Sobrien
4598186Sgordon# nashorn Shell tool
4698186Sgordonnashorn.shell.tool=jdk.nashorn.tools.Shell
4798186Sgordon
48131550Scperciva# nasgen tool
49131550Scpercivanasgen.tool=jdk.nashorn.internal.tools.nasgen.Main
50131550Scperciva
51131550Scperciva# parallel test runner tool
5298186Sgordonparallel.test.runner=jdk.nashorn.internal.test.framework.ParallelTestRunner
5398186Sgordon
5498186Sgordon# test classes directory
55103018Sgordonbuild.test.classes.dir=${build.dir}/test/classes
56124832Smtm
57124832Smtm# nashorn test jar - internal tests jar and api tests jar
58161435Syarnashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar
59161435Syarnashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar
6098186Sgordon
61103018Sgordon# test results directory
6298186Sgordonbuild.test.results.dir=${build.dir}/test/reports
6398186Sgordonbuild.nosecurity.test.results.dir=${build.dir}/test/nosecurity/reports
6498186Sgordonbuild.nooptimistic.test.results.dir=${build.dir}/test/nooptimistic/reports
6598186Sgordon
6698186Sgordon# This directory is removed when the project is cleaned:
6798186Sgordondist.dir=dist
6898186Sgordondist.jar=${dist.dir}/nashorn.jar
6998186Sgordondist.javadoc.dir=${dist.dir}/javadoc
7098186Sgordon
7178344Sobrien# nashorn javafx shell
7278344Sobrienfxshell.tool = jdk.nashorn.tools.FXShell
7378344Sobrienfxshell.classes.dir = ${build.dir}/fxshell/classes
7478344Sobrienfxshell.dir = tools/fxshell
7598186Sgordonfxshell.jar = ${dist.dir}/nashornfx.jar
7698186Sgordon
7798186Sgordon# configuration for java flight recorder
7898186Sgordonrun.test.jvmargs.jfr=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=${build.dir},stackdepth=128
7998186Sgordon
8098186Sgordon# jars refererred
8198186Sgordonfile.reference.testng.jar=test/lib/testng.jar
8298186Sgordon
8398186Sgordon# Set testng verbose level
8498186Sgordon# From TestNG docs: "the verbosity level (0 to 10 where 10 is most detailed)
8598186Sgordon# Actually, this is a lie: you can specify -1 and this will put TestNG in
8698186Sgordon# debug mode (no longer slicing off stack traces and all)."
8798186Sgordon
8898186Sgordontestng.verbose=2
8998186Sgordon
9098186Sgordon# TestNG listeners - we want to replace TestNG's own JUnit
9198186Sgordon# reporter, but want everything else provided by default
92103018Sgordon# Unfortunately, we've to clone the other default reporters here.
9398186Sgordon
9498186Sgordontestng.listeners=\
9598186Sgordon org.testng.reporters.SuiteHTMLReporter, \
9698186Sgordon org.testng.reporters.TestHTMLReporter, \
9798186Sgordon org.testng.reporters.jq.Main, \
9898186Sgordon org.testng.reporters.FailedReporter, \
9998186Sgordon org.testng.reporters.XMLReporter \
10098186Sgordon org.testng.reporters.EmailableReporter, \
10198186Sgordon jdk.nashorn.internal.test.framework.JSJUnitReportReporter
10298186Sgordon
10398186Sgordonjavac.debug=true
10498186Sgordonjavac.encoding=ascii
10598186Sgordonjavac.classpath=\
10698186Sgordon    ${build.classes.dir}
10798186Sgordonjavac.test.classpath=\
10898186Sgordon    ${build.classes.dir}${path.separator}\
10998186Sgordon    ${build.test.classes.dir}${path.separator}\
11098186Sgordon    ${file.reference.testng.jar}
11198186Sgordon
11298186Sgordonmeta.inf.dir=${src.dir}/META-INF
11398186Sgordon
11498186Sgordonrun.classpath=\
11598186Sgordon    ${build.classes.dir}
11698186Sgordon
117146490Sschweikh# test scripts to run
11898186Sgordontest.dir=test
11998186Sgordontest.nosecurity.dir=test/script/nosecurity
12098186Sgordontest.script.dir=test/script
12198186Sgordontest.basic.dir=test/script/basic
12298186Sgordontest.maptests.dir=test/script/maptests
12398186Sgordontest.error.dir=test/script/error
12498186Sgordontest.sandbox.dir=test/script/sandbox
12578344Sobrientest.trusted.dir=test/script/trusted
12678344Sobrientest.external.dir=test/script/external
12778344Sobrientest262.dir=${test.external.dir}/test262
12878344Sobrientest262.suite.dir=${test262.dir}/test/suite
12978344Sobrientestjfx.dir=${test.script.dir}/jfx
13078344Sobrientestmarkdown.dir=${test.script.dir}/markdown
13178344Sobrien
13298186Sgordontest-sys-prop.test.dir=${test.dir}
13378344Sobrientest-sys-prop.test.js.roots=${test.basic.dir} ${test.maptests.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir}
13478344Sobrientest-sys-prop.test262.suite.dir=${test262.suite.dir}
13578344Sobrientest-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases
13678344Sobrientest-sys-prop.test.basic.dir=${test.basic.dir}
13778344Sobrientest-sys-prop.test.external.dir=${test.external.dir}
13878344Sobrientest-sys-prop.test.maptests.dir=${test.maptests.dir}
13978344Sobrientest-sys-prop.test.sandbox.dir=${test.sandbox.dir}
14078344Sobrientest-sys-prop.test.trusted.dir=${test.trusted.dir}
14178344Sobrien
14278344Sobrientest-sys-prop-no-security.test.dir=${test.dir}
14378344Sobrientest-sys-prop-no-security.test.js.roots=${test.nosecurity.dir}
14478344Sobrien
145157473Sflz# framework root for our script tests
14678344Sobrientest-sys-prop.test.js.framework=${test.script.dir}/assert.js
14778344Sobrientest-sys-prop-no-security.test.js.framework=${test.script.dir}/assert.js
14878344Sobrien
14978344Sobrien# Control the verbosity of ParserTest
15078344Sobrientest-sys-prop.parsertest.verbose=false
151157473Sflz
15298186Sgordon# turn on/off scripting mode for parser tests
15398186Sgordontest-sys-prop.parsertest.scripting=true
15478344Sobrientest-sys-prop.parserapitest.verbose=false
15598186Sgordon
15698186Sgordon# turn on/off test262 scripts for parser tests
15798186Sgordontest-sys-prop.parsertest.test262=false
158126286Smtmtest-sys-prop.parserapitest.test262=false
15998186Sgordon
16098186Sgordon# Control the verbosity of the CompilerTest
16198186Sgordontest-sys-prop.compilertest.verbose=false
16298186Sgordon
16398186Sgordon# turn on/off scripting mode for compiler tests
16478344Sobrientest-sys-prop.compilertest.scripting=true
16598186Sgordon
16698186Sgordon# turn on/off test262 scripts for compiler tests
16798186Sgordontest-sys-prop.compilertest.test262=false
16898186Sgordon
16998186Sgordon# test directory to be excluded.
17078344Sobrientest-sys-prop.test.js.exclude.dir=${test.script.dir}/currently-failing ${test.external.dir}
17178344Sobrien
17298186Sgordon# run everything that's js in here, without checking file headers for test annotations
17378344Sobrientest-sys-prop.test.js.unchecked.dir=${test262.dir}
17478344Sobrien
175126285Smtm# test root for octane
17678344Sobrienoctane-test-sys-prop.test.js.roots=${test.external.dir}/octane/
17778344Sobrien
178126285Smtm# run octane benchmars in separate processes? (recommended)
17978344Sobrienoctane-test-sys-prop.separate.process=true
18078344Sobrien
181126285Smtm# framework root for octane
182126285Smtmoctane-test-sys-prop.test.js.framework=${test.basic.dir}/run-octane.js
183126285Smtm
18478344Sobrien# test root for sunspider
18578344Sobriensunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0.2/
18698186Sgordon
18778344Sobrien# framework root for sunspider
18878344Sobriensunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js
18978344Sobrien
19078344Sobrien# list of tests to be excluded
19198186Sgordonsunspider-test-sys-prop.test.js.exclude.list=
19298186Sgordon
19378344Sobrien# execute our script tests in shared nashorn context or not?
19498186Sgordontest-sys-prop.test.js.shared.context=false
19598186Sgordon
19678344Sobrien# execute test262 tests in shared nashorn context or not?
19778344Sobrientest262-test-sys-prop.test.js.shared.context=true
19878344Sobrien
19978344Sobrien# test262 test root
20078344Sobrientest262-test-sys-prop.test.js.roots=${test262.suite.dir}
20198186Sgordon
20278344Sobrien# test262 enable/disable strict mode tests
20398186Sgordontest262-test-sys-prop.test.js.enable.strict.mode=true
20478344Sobrien
20578344Sobrien# file containing test262 tests to be excluded
206131061Smtm# test262-test-sys-prop.test.js.excludes.file=${test262.dir}/test/config/excludelist.xml
20778344Sobrien
20878344Sobrien# list of test262 test dirs to be excluded
20978344Sobrientest262-test-sys-prop.test.js.exclude.dir=\
21078344Sobrien    ${test262.suite.dir}/intl402/ \
211139949Skeramida    ${test262.suite.dir}/bestPractice/
21278344Sobrien
21378344Sobrientest262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests
21498186Sgordon
21578344Sobrien# test262 test frameworks
21678344Sobrientest262-test-sys-prop.test.js.framework=\
21778344Sobrien    --class-cache-size=10 \
21898186Sgordon    --no-java \
21978344Sobrien    --no-typed-arrays \
22098186Sgordon    -timezone=PST \
22198186Sgordon    ${test.script.dir}/test262.js \
22278344Sobrien    ${test262.dir}/test/harness/framework.js \
22378344Sobrien    ${test262.dir}/test/harness/sta.js
22478344Sobrien
22578344Sobrien# testmarkdown test root
22698186Sgordontestmarkdown-test-sys-prop.test.js.roots=${testmarkdown.dir}
22778344Sobrien
22898186Sgordon# execute testmarkdown tests in shared nashorn context or not?
22978344Sobrientestmarkdown-test-sys-prop.test.js.shared.context=false
23098186Sgordon
23198186Sgordon# framework root for markdown script tests
23298186Sgordontestmarkdown-test-sys-prop.test.js.framework=\
23398186Sgordon    ${test.script.dir}${file.separator}markdown.js
23498186Sgordon
23598186Sgordon# testjfx test root
23698186Sgordontestjfx-test-sys-prop.test.js.roots=${testjfx.dir}
23798186Sgordon
23898186Sgordon# execute testjfx tests in shared nashorn context or not?
23998186Sgordontestjfx-test-sys-prop.test.js.shared.context=false
24098186Sgordon
24198186Sgordon# framework root for our script tests
24298186Sgordontestjfx-test-sys-prop.test.js.framework=\
24398186Sgordon    -fx \
244155719Sceri    ${test.script.dir}${file.separator}jfx.js
24598186Sgordon
24698186Sgordonfile.reference.jemmyfx.jar=test${file.separator}lib${file.separator}JemmyFX.jar
24798186Sgordonfile.reference.jemmycore.jar=test${file.separator}lib${file.separator}JemmyCore.jar
24898186Sgordonfile.reference.jemmyawtinput.jar=test${file.separator}lib${file.separator}JemmyAWTInput.jar
249157841Sflzfile.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar
250157841Sflztestjfx.run.test.classpath=\
251157841Sflz    ${file.reference.jemmyfx.jar}${path.separator}\
25298186Sgordon    ${file.reference.jemmycore.jar}${path.separator}\
25398186Sgordon    ${file.reference.jemmyawtinput.jar}${path.separator}\
25498186Sgordon    ${file.reference.testng.jar}${path.separator}\
25598186Sgordon    ${nashorn.internal.tests.jar}${path.separator}\
25698186Sgordon    ${nashorn.api.tests.jar}
25798186Sgordon
25898186Sgordon# testjfx VM options for script tests with @fork option
25998186Sgordontestjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath}
26098186Sgordon
26198186Sgordonrun.test.classpath=\
26278344Sobrien    ${file.reference.testng.jar}${path.separator}\
26398186Sgordon    ${nashorn.internal.tests.jar}${path.separator}\
26498186Sgordon    ${nashorn.api.tests.jar}
26598186Sgordon
26698186Sgordonsrc.dir=src/jdk.scripting.nashorn/share/classes
26798186Sgordontest.src.dir=test/src
26898186Sgordon
26978344Sobrien# -Xmx is used for all tests, -Xms only for octane benchmark
27098186Sgordonrun.test.xmx=2G
271157841Sflzrun.test.xms=2G
27298186Sgordon
27398186Sgordon# uncomment this jfr.args to enable light recordings. the stack needs to be cranked up to 1024 frames,
274157841Sflz# or everything will as of the now drown in lambda forms and be cut off.
27598186Sgordon#
27698186Sgordon#jfr.args=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath="test_suite.jfr",stackdepth=1024 \
27798186Sgordon
27898186Sgordonjfr.args=
279151426Sjhb
28098186Sgordonrun.test.user.language=tr
28198186Sgordonrun.test.user.country=TR
282161435Syar
283161436Syarrun.test.jvmargs.common=\
284157657Sflz  -server \
285161436Syar  -Dfile.encoding=UTF-8 \
286157657Sflz  -Duser.language=${run.test.user.language} \
287157657Sflz  -Duser.country=${run.test.user.country} \
288157657Sflz  -Dnashorn.typeInfo.cacheDir=${build.dir}${file.separator}test${file.separator}type_info_cache \
289157657Sflz  ${jfr.args} \
29098186Sgordon  -XX:+HeapDumpOnOutOfMemoryError
29198186Sgordon
29298186Sgordon# turn on assertions for tests
29398186Sgordonrun.test.jvmargs.main=${run.test.jvmargs.common} -esa -ea
294114272Smtm
29598186Sgordon# Extra jvmargs that might be useful for debugging
29698186Sgordon# and performance improvements/monitoring
29798186Sgordon#
29898186Sgordon# -XX:+UnlockDiagnosticVMOptions
29998186Sgordon#
30098186Sgordon# turn off compressed class pointers in metaspace
30198186Sgordon# -XX:-UseCompressedKlassPointers
30298186Sgordon#
30398186Sgordon# dump the heap after every GC
304126286Smtm# -XX:+PrintHeapAtGC
30598186Sgordon#
30698186Sgordon# manually set a metaspace size for class data
30798186Sgordon# -XX:ClassMetaspaceSize=300M
30898186Sgordon#
30998186Sgordon# print out methods compiled
31098186Sgordon# -XX:+PrintCompilation
31198186Sgordon#
31298186Sgordon# print all compiled nmethods with oopmaps and lots of other info
31398186Sgordon# -XX:+PrintNMethods
31498186Sgordon#
31598186Sgordon# activate the generic "UseNewCode" flag to test whatever functionality
31698186Sgordon# lies behind it. This is the preferred way to test a, yet flagless,
31798186Sgordon# feature in HotSpot - for example, the uncommon trap placement fix
31878344Sobrien# was hidden behind this flag before it became the default
31998186Sgordon#
32098186Sgordon# -XX:+UnlockDiagnosticVMOptions -XX:+UseNewCode
32198186Sgordon#
32298186Sgordon# Crank up the type profile level to 222, which has some warmup
32378344Sobrien# penalties, but produces much better code for JavaScript, where better
32498186Sgordon# and more intrusive type profiling is required to get rid of
32598186Sgordon# a large amount of unnecessary guard code, that could not otherwise
32698186Sgordon# be eliminated
32778344Sobrien#
32878344Sobrien# -XX:TypeProfileLevel=222
32978344Sobrien#
33098186Sgordon
33198186Sgordon# Use best known performance options for octane
33298186Sgordonrun.test.jvmargs.octane.main=${run.test.jvmargs.common} -XX:TypeProfileLevel=222
33398186Sgordon
33498186Sgordon# Security manager args - make sure that we run with the nashorn.policy that the build creates
33578344Sobrienrun.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${build.dir}/nashorn.policy
33698186Sgordon
33798186Sgordon# VM options for script tests with @fork option
33878344Sobrientest-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} ${run.test.jvmsecurityargs} -cp ${run.test.classpath}
33998186Sgordon# VM options for no-security script tests with @fork option - same as above but without jvmsecurityargs
34098186Sgordontest-sys-prop-no-security.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${run.test.classpath}
341126303Smtm
34278344Sobrien# path of rhino.jar for benchmarks
34378344Sobrienrhino.dir=
34478344Sobrienrhino.jar=${rhino.dir}/js.jar
34598186Sgordon
34698186Sgordonv8.shell=d8
34778344Sobrien
34878344Sobrien# How many iterations should 'ant octane' run for each
34978344Sobrien# benchmark
35098186Sgordonoctane.iterations=25
35178344Sobrien
35278344Sobrien# List of octane tests to run, as properties prefixed with
35378344Sobrien# "octane.benchmark." mapping to the benchmark name in
35478344Sobrien# the test harness
35598186Sgordon#
35698186Sgordon# Octane tests that are disabled should have their entire line
35798186Sgordon# commented out  Tests may be disabled for functionality reasons when
35878344Sobrien# they have bugs or when the runtime doesn't handle them (yet)
35978344Sobrienoctane.benchmark.box2d=box2d
36098186Sgordon#octane.benchmark.code-load=code-load
36198186Sgordonoctane.benchmark.crypto=crypto
36298186Sgordonoctane.benchmark.deltablue=deltablue
36378344Sobrienoctane.benchmark.earley-boyer=earley-boyer
36498186Sgordonoctane.benchmark.gbemu=gbemu
36598186Sgordonoctane.benchmark.navier-stokes=navier-stokes
36678344Sobrienoctane.benchmark.mandreel=mandreel
36778344Sobrienoctane.benchmark.pdfjs=pdfjs
36878344Sobrienoctane.benchmark.raytrace=raytrace
369157653Sflzoctane.benchmark.regexp=regexp
370157653Sflzoctane.benchmark.richards=richards
371157653Sflzoctane.benchmark.splay=splay
372157653Sflz#octane.benchmark.typescript=typescript
37378344Sobrien#octane.benchmark.zlib=zlib
37498186Sgordon
37578344Sobrien#path to rhino jar file
37678344Sobrienoctaneperf-sys-prop.rhino.jar=${rhino.jar}
37778344Sobrien
37878344Sobrien#timeout for performance tests in minutes
37978344Sobrienoctaneperf-sys-prop.timeout.value=10
38078344Sobrien
38178344Sobrien#how many iterations to run sunspider after warmup
38278344Sobriensunspider.iterations=3000
38378344Sobrien
38478344Sobrien#################
38578344Sobrien# code coverage #
38678344Sobrien#################
38798186Sgordon
38878344Sobrien#enable/disable code coverage; please redifine in the ${user.home}/.nashorn.project.local.properties
38978344Sobrienmake.code.coverage=false
39098186Sgordon
39178344Sobrien#type of codecoverage; one of static or dynamic. Now only dynamic is supported
39298186Sgordonjcov=dynamic
39398186Sgordon
39498186Sgordon#naming of CC results
39578344Sobrien#NB directory specified in the cc.dir will be cleaned up!!!
39698186Sgordoncc.dir=${basedir}/../Codecoverage_Nashorn
39778344Sobriencc.result.file.name=CC_${jcov}_nashorn.xml
39878344Sobrien
39998186Sgordon#dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties
40098186Sgordonjcov2.lib.dir=${basedir}/../jcov2/lib
40198186Sgordonjcov.jar=${jcov2.lib.dir}/jcov.jar
40298186Sgordoncc.include=jdk\.nashorn\.*
40378344Sobriencc.exclude=jdk\.nashorn\.internal\.scripts\.*
40498186Sgordoncc.dynamic.genereate.template=true
40578344Sobriencc.template=${cc.dir}/CC_template.xml
40698186Sgordoncc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name}
40798186Sgordon