project.properties revision 808:185501198f64
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#
23
24application.title=nashorn
25
26# location of JDK embedded ASM sources
27jdk.asm.src.dir=../jdk/src/share/classes/jdk/internal/org/objectweb/asm
28
29# source and target levels
30build.compiler=modern
31javac.source=1.7
32javac.target=1.7
33
34# nashorn version information
35nashorn.version=0.1
36nashorn.fullversion=0.1
37nashorn.product.name=Oracle Nashorn
38
39# This directory is removed when the project is cleaned:
40build.dir=build
41build.classes.dir=${build.dir}/classes
42build.zip=${build.dir}/nashorn.zip
43build.gzip=${build.dir}/nashorn.tar.gz
44
45# nashorn Shell tool
46nashorn.shell.tool=jdk.nashorn.tools.Shell
47
48# nasgen tool
49nasgen.tool=jdk.nashorn.internal.tools.nasgen.Main
50
51# parallel test runner tool
52parallel.test.runner=jdk.nashorn.internal.test.framework.ParallelTestRunner
53
54# test classes directory
55build.test.classes.dir=${build.dir}/test/classes
56# nashorn test jar - internal tests jar and api tests jar
57nashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar
58nashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar
59
60# test results directory
61build.test.results.dir=${build.dir}/test/reports
62build.nosecurity.test.results.dir=${build.dir}/test/nosecurity/reports
63
64# This directory is removed when the project is cleaned:
65dist.dir=dist
66dist.jar=${dist.dir}/nashorn.jar
67dist.javadoc.dir=${dist.dir}/javadoc
68
69# nashorn javafx shell
70fxshell.tool = jdk.nashorn.tools.FXShell
71fxshell.classes.dir = ${build.dir}/fxshell/classes
72fxshell.dir = tools/fxshell
73fxshell.jar = ${dist.dir}/nashornfx.jar
74
75# configuration for java flight recorder
76run.test.jvmargs.jfr=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=${build.dir},stackdepth=128
77
78# jars refererred
79file.reference.testng.jar=test/lib/testng.jar
80
81# Set testng verbose level
82# From TestNG docs: "the verbosity level (0 to 10 where 10 is most detailed) 
83# Actually, this is a lie: you can specify -1 and this will put TestNG in 
84# debug mode (no longer slicing off stack traces and all)."
85
86testng.verbose=2
87
88# TestNG listeners - we want to replace TestNG's own JUnit
89# reporter, but want everything else provided by default
90# Unfortunately, we've to clone the other default reporters here.
91
92testng.listeners=\
93 org.testng.reporters.SuiteHTMLReporter, \
94 org.testng.reporters.TestHTMLReporter, \
95 org.testng.reporters.jq.Main, \
96 org.testng.reporters.FailedReporter, \
97 org.testng.reporters.XMLReporter \
98 org.testng.reporters.EmailableReporter, \
99 jdk.nashorn.internal.test.framework.JSJUnitReportReporter
100
101javac.debug=true
102javac.encoding=ascii
103javac.classpath=\
104    ${build.classes.dir}
105javac.test.classpath=\
106    ${build.classes.dir}:\
107    ${build.test.classes.dir}:\
108    ${file.reference.testng.jar}
109
110meta.inf.dir=${src.dir}/META-INF
111
112run.classpath=\
113    ${build.classes.dir}
114
115# test scripts to run
116test.dir=test
117test.nosecurity.dir=test/script/nosecurity
118test.script.dir=test/script
119test.basic.dir=test/script/basic
120test.maptests.dir=test/script/maptests
121test.error.dir=test/script/error
122test.sandbox.dir=test/script/sandbox
123test.trusted.dir=test/script/trusted
124test.external.dir=test/script/external
125test262.dir=${test.external.dir}/test262
126test262.suite.dir=${test262.dir}/test/suite
127testjfx.dir=${test.script.dir}/jfx
128testmarkdown.dir=${test.script.dir}/markdown
129
130test-sys-prop.test.dir=${test.dir}
131test-sys-prop.test.js.roots=${test.basic.dir} ${test.maptests.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir}
132test-sys-prop.test262.suite.dir=${test262.suite.dir}
133test-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases
134test-sys-prop.test.basic.dir=${test.basic.dir}
135
136test-sys-prop-no-security.test.dir=${test.dir}
137test-sys-prop-no-security.test.js.roots=${test.nosecurity.dir}
138
139# framework root for our script tests
140test-sys-prop.test.js.framework=${test.script.dir}/assert.js
141test-sys-prop-no-security.test.js.framework=${test.script.dir}/assert.js
142
143# Control the verbosity of ParserTest
144test-sys-prop.parsertest.verbose=false
145
146# turn on/off scripting mode for parser tests
147test-sys-prop.parsertest.scripting=true
148
149# turn on/off test262 scripts for parser tests
150test-sys-prop.parsertest.test262=false
151
152# Control the verbosity of the CompilerTest
153test-sys-prop.compilertest.verbose=false
154
155# turn on/off scripting mode for compiler tests
156test-sys-prop.compilertest.scripting=true
157
158# turn on/off test262 scripts for compiler tests
159test-sys-prop.compilertest.test262=false
160
161# test directory to be excluded.
162test-sys-prop.test.js.exclude.dir=${test.script.dir}/currently-failing ${test.external.dir}
163
164# run everything that's js in here, without checking file headers for test annotations
165test-sys-prop.test.js.unchecked.dir=${test262.dir}
166
167# test root for octane
168octane-test-sys-prop.test.js.roots=${test.external.dir}/octane/
169
170# run octane benchmars in separate processes?
171octane-test-sys-prop.separate.process=true
172
173# framework root for octane
174octane-test-sys-prop.test.js.framework=${test.basic.dir}/run-octane.js
175
176# list of tests to be excluded
177# mandreel excluded due to OOM
178octane-test-sys-prop.test.js.exclude.list=\
179    base.js \
180    run.js  \
181    mandreel.js
182
183# test root for sunspider
184sunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0/
185
186# framework root for sunspider
187sunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js
188
189# list of tests to be excluded
190sunspider-test-sys-prop.test.js.exclude.list=
191
192# execute our script tests in shared nashorn context or not?
193test-sys-prop.test.js.shared.context=false
194
195# execute test262 tests in shared nashorn context or not?
196test262-test-sys-prop.test.js.shared.context=true
197
198# test262 test root
199test262-test-sys-prop.test.js.roots=${test262.suite.dir}
200# test262 enable/disable strict mode tests
201test262-test-sys-prop.test.js.enable.strict.mode=true
202
203# file containing test262 tests to be excluded
204# test262-test-sys-prop.test.js.excludes.file=${test262.dir}/test/config/excludelist.xml
205
206# list of test262 test dirs to be excluded
207test262-test-sys-prop.test.js.exclude.dir=\
208    ${test262.suite.dir}/intl402/ \
209    ${test262.suite.dir}/bestPractice/ 
210
211test262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests
212
213# test262 test frameworks
214test262-test-sys-prop.test.js.framework=\
215    --class-cache-size=10 \
216    --no-java \
217    --no-typed-arrays \
218    -timezone=PST \
219    ${test.script.dir}/test262.js \
220    ${test262.dir}/test/harness/framework.js \
221    ${test262.dir}/test/harness/sta.js
222
223# testmarkdown test root
224testmarkdown-test-sys-prop.test.js.roots=${testmarkdown.dir}    
225
226# execute testmarkdown tests in shared nashorn context or not?
227testmarkdown-test-sys-prop.test.js.shared.context=false
228
229# framework root for markdown script tests
230testmarkdown-test-sys-prop.test.js.framework=\
231    ${test.script.dir}${file.separator}markdown.js
232
233# testjfx test root
234testjfx-test-sys-prop.test.js.roots=${testjfx.dir}   
235
236# execute testjfx tests in shared nashorn context or not?
237testjfx-test-sys-prop.test.js.shared.context=false
238
239# framework root for our script tests
240testjfx-test-sys-prop.test.js.framework=\
241    -fx \
242    ${test.script.dir}${file.separator}jfx.js
243
244file.reference.jemmyfx.jar=test${file.separator}lib${file.separator}JemmyFX.jar
245file.reference.jemmycore.jar=test${file.separator}lib${file.separator}JemmyCore.jar
246file.reference.jemmyawtinput.jar=test${file.separator}lib${file.separator}JemmyAWTInput.jar
247file.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar
248testjfx.run.test.classpath=\
249    ${file.reference.jemmyfx.jar}${path.separator}\
250    ${file.reference.jemmycore.jar}${path.separator}\
251    ${file.reference.jemmyawtinput.jar}${path.separator}\
252    ${file.reference.testng.jar}${path.separator}\
253    ${nashorn.internal.tests.jar}${path.separator}\
254    ${nashorn.api.tests.jar}
255
256# testjfx VM options for script tests with @fork option
257testjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath}
258
259run.test.classpath=\
260    ${file.reference.testng.jar}:\
261    ${nashorn.internal.tests.jar}:\
262    ${nashorn.api.tests.jar}
263
264src.dir=src
265test.src.dir=test/src
266
267# -Xmx is used for all tests, -Xms only for octane benchmark
268run.test.xmx=3G
269run.test.xms=2G
270
271run.test.user.language=tr
272run.test.user.country=TR
273
274run.test.jvmargs.common=-server -XX:+TieredCompilation -Dfile.encoding=UTF-8 -Duser.language=${run.test.user.language} -Duser.country=${run.test.user.country} -XX:+HeapDumpOnOutOfMemoryError
275
276#-XX:-UseCompressedKlassPointers -XX:+PrintHeapAtGC -XX:ClassMetaspaceSize=300M
277# -XX:+PrintCompilation -XX:+UnlockDiagnosticVMOptions -XX:+PrintNMethods
278
279# turn on assertions for tests
280run.test.jvmargs.main=${run.test.jvmargs.common} -ea
281
282#-XX:-UseCompressedKlassPointers -XX:+PrintHeapAtGC -XX:ClassMetaspaceSize=300M  
283run.test.jvmargs.octane.main=${run.test.jvmargs.common}
284
285run.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${basedir}/build/nashorn.policy
286
287# VM options for script tests with @fork option
288test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} ${run.test.jvmsecurityargs} -cp ${run.test.classpath}
289
290# path of rhino.jar for benchmarks
291rhino.jar=
292
293v8.shell=d8
294
295#path to rhino jar file
296octaneperf-sys-prop.rhino.jar=${rhino.jar}
297
298#timeout for performance tests in minutes
299octaneperf-sys-prop.timeout.value=10
300
301################
302# codecoverage #
303################
304	#enable/disable code coverage; please redifine in the ${user.home}/.nashorn.project.local.properties
305make.code.coverage=false
306	#type of codecoverage; one of static or dynamic. Now only dynamic is supported
307jcov=dynamic
308	#naming of CC results
309	#NB directory specified in the cc.dir will be cleaned up!!!
310cc.dir=${basedir}/../Codecoverage_Nashorn
311cc.result.file.name=CC_${jcov}_nashorn.xml
312	#dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties
313jcov2.lib.dir=${basedir}/../jcov2/lib
314jcov.jar=${jcov2.lib.dir}/jcov.jar
315cc.include=jdk\.nashorn\.*
316cc.exclude=jdk\.nashorn\.internal\.scripts\.*
317cc.dynamic.genereate.template=true
318cc.template=${cc.dir}/CC_template.xml
319cc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name}
320