project.properties revision 1658:4fbf7a66d49b
1# 2# Copyright (c) 2010, 2015, 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/java.base/share/classes/jdk/internal/org/objectweb/asm 28 29# location of JDK embedded jline sources 30jdk.jline.src.dir=../jdk/src/jdk.internal.le/share/classes 31 32# source and target levels 33build.compiler=modern 34javac.source=1.9 35javac.target=1.9 36 37javadoc.option=-tag "implSpec:a:Implementation Requirements:" 38 39# nashorn version information 40nashorn.version=0.1 41nashorn.fullversion=0.1 42nashorn.product.name=Oracle Nashorn 43 44# This directory is removed when the project is cleaned: 45build.dir=build 46build.classes.dir=${build.dir}/classes 47build.zip=${build.dir}/nashorn.zip 48build.gzip=${build.dir}/nashorn.tar.gz 49 50# project directory of <nashorn> ant task 51nashorntask.dir=buildtools/nashorntask 52 53# nashorn Shell tool 54nashorn.shell.tool=jdk.nashorn.tools.Shell 55 56# nasgen tool 57nasgen.tool=jdk.nashorn.internal.tools.nasgen.Main 58 59nasgen.module.imports=\ 60 java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED,\ 61 java.base/jdk.internal.org.objectweb.asm.util=ALL-UNNAMED 62 63# parallel test runner tool 64parallel.test.runner=jdk.nashorn.internal.test.framework.ParallelTestRunner 65 66# test classes directory 67build.test.classes.dir=${build.dir}/test/classes 68 69# nashorn test jar - internal tests jar and api tests jar 70nashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar 71nashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar 72 73# test results directory 74build.test.results.dir=${build.dir}/test/reports 75build.nosecurity.test.results.dir=${build.dir}/test/nosecurity/reports 76build.nooptimistic.test.results.dir=${build.dir}/test/nooptimistic/reports 77 78# This directory is removed when the project is cleaned: 79dist.dir=dist 80dynalink.jar=${dist.dir}/dynalink.jar 81nashorn.jar=${dist.dir}/nashorn.jar 82jjs.jar=${dist.dir}/jjs.jar 83dist.javadoc.dir=${dist.dir}/javadoc 84 85# configuration for java flight recorder 86run.test.jvmargs.jfr=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=${build.dir},stackdepth=128 87 88# test library location 89test.lib=${basedir}${file.separator}test${file.separator}lib 90 91# jars refererred 92file.reference.testng.jar=${test.lib}${file.separator}testng-6.8.jar 93file.reference.jcommander.jar=${test.lib}${file.separator}jcommander-1.27.jar 94file.reference.bsh.jar=${test.lib}${file.separator}bsh-2.0b4.jar 95file.reference.snakeyaml.jar=${test.lib}${file.separator}snakeyaml-1.6.jar 96file.reference.asmtools.jar=${test.lib}${file.separator}asmtools-60.jar 97 98# TestNG ant task classpath 99testng.ant.classpath=\ 100 ${file.reference.testng.jar}${path.separator}\ 101 ${file.reference.jcommander.jar}${path.separator}\ 102 ${file.reference.bsh.jar}${path.separator}\ 103 ${file.reference.snakeyaml.jar}${path.separator} 104 105# Set testng verbose level 106# From TestNG docs: "the verbosity level (0 to 10 where 10 is most detailed) 107# Actually, this is a lie: you can specify -1 and this will put TestNG in 108# debug mode (no longer slicing off stack traces and all)." 109 110testng.verbose=2 111 112# TestNG listeners - we want to replace TestNG's own JUnit 113# reporter, but want everything else provided by default 114# Unfortunately, we've to clone the other default reporters here. 115 116testng.listeners=\ 117 org.testng.reporters.SuiteHTMLReporter, \ 118 org.testng.reporters.TestHTMLReporter, \ 119 org.testng.reporters.jq.Main, \ 120 org.testng.reporters.FailedReporter, \ 121 org.testng.reporters.XMLReporter \ 122 org.testng.reporters.EmailableReporter, \ 123 jdk.nashorn.internal.test.framework.JSJUnitReportReporter 124 125javac.debug=true 126javac.encoding=ascii 127javac.test.classpath=\ 128 ${build.test.classes.dir}${path.separator}\ 129 ${file.reference.testng.jar}${path.separator}\ 130 ${file.reference.jcommander.jar}${path.separator}\ 131 ${file.reference.bsh.jar}${path.separator}\ 132 ${file.reference.snakeyaml.jar} 133 134test.module.imports=\ 135 jdk.scripting.nashorn/jdk.nashorn.internal.ir=ALL-UNNAMED,\ 136 jdk.scripting.nashorn/jdk.nashorn.internal.codegen=ALL-UNNAMED,\ 137 jdk.scripting.nashorn/jdk.nashorn.internal.parser=ALL-UNNAMED,\ 138 jdk.scripting.nashorn/jdk.nashorn.internal.objects=ALL-UNNAMED,\ 139 jdk.scripting.nashorn/jdk.nashorn.internal.runtime=ALL-UNNAMED,\ 140 jdk.scripting.nashorn/jdk.nashorn.internal.runtime.doubleconv=ALL-UNNAMED,\ 141 jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker=ALL-UNNAMED,\ 142 jdk.scripting.nashorn/jdk.nashorn.internal.runtime.events=ALL-UNNAMED,\ 143 jdk.scripting.nashorn/jdk.nashorn.internal.runtime.options=ALL-UNNAMED,\ 144 jdk.scripting.nashorn/jdk.nashorn.internal.runtime.regexp=ALL-UNNAMED,\ 145 jdk.scripting.nashorn/jdk.nashorn.internal.runtime.regexp.joni=ALL-UNNAMED,\ 146 jdk.scripting.nashorn/jdk.nashorn.tools=ALL-UNNAMED,\ 147 java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED 148 149meta.inf.dir=${nashorn.module.src.dir}/META-INF 150 151run.classpath=\ 152 ${build.classes.dir} 153 154# test scripts to run 155test.dir=test 156test.nosecurity.dir=test/script/nosecurity 157test.script.dir=test/script 158test.basic.dir=test/script/basic 159test.maptests.dir=test/script/maptests 160test.error.dir=test/script/error 161test.sandbox.dir=test/script/sandbox 162test.trusted.dir=test/script/trusted 163test.external.dir=test/script/external 164test262.dir=${test.external.dir}/test262 165test262.suite.dir=${test262.dir}/test/suite 166testjfx.dir=${test.script.dir}/jfx 167testmarkdown.dir=${test.script.dir}/markdown 168 169test-sys-prop.test.dir=${test.dir} 170test-sys-prop.test.js.roots=${test.basic.dir} ${test.maptests.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir} 171test-sys-prop.test262.suite.dir=${test262.suite.dir} 172test-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases 173test-sys-prop.test.basic.dir=${test.basic.dir} 174test-sys-prop.test.external.dir=${test.external.dir} 175test-sys-prop.test.maptests.dir=${test.maptests.dir} 176test-sys-prop.test.sandbox.dir=${test.sandbox.dir} 177test-sys-prop.test.trusted.dir=${test.trusted.dir} 178 179test-sys-prop-no-security.test.dir=${test.dir} 180test-sys-prop-no-security.test.js.roots=${test.nosecurity.dir} 181 182# framework root for our script tests 183test-sys-prop.test.js.framework=${test.script.dir}/assert.js 184test-sys-prop-no-security.test.js.framework=${test.script.dir}/assert.js 185 186# Control the verbosity of ParserTest 187test-sys-prop.parsertest.verbose=false 188 189# turn on/off scripting mode for parser tests 190test-sys-prop.parsertest.scripting=true 191test-sys-prop.parserapitest.verbose=false 192 193# turn on/off test262 scripts for parser tests 194test-sys-prop.parsertest.test262=false 195test-sys-prop.parserapitest.test262=false 196 197# Control the verbosity of the CompilerTest 198test-sys-prop.compilertest.verbose=false 199 200# turn on/off scripting mode for compiler tests 201test-sys-prop.compilertest.scripting=true 202 203# turn on/off test262 scripts for compiler tests 204test-sys-prop.compilertest.test262=false 205 206# test directory to be excluded. 207test-sys-prop.test.js.exclude.dir=${test.script.dir}/currently-failing ${test.external.dir} 208 209# run everything that's js in here, without checking file headers for test annotations 210test-sys-prop.test.js.unchecked.dir=${test262.dir} 211 212# test root for octane 213octane-test-sys-prop.test.js.roots=${test.external.dir}/octane/ 214 215# run octane benchmars in separate processes? (recommended) 216octane-test-sys-prop.separate.process=true 217 218# framework root for octane 219octane-test-sys-prop.test.js.framework=${test.basic.dir}/run-octane.js 220 221# test root for sunspider 222sunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0.2/ 223 224# framework root for sunspider 225sunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js 226 227# list of tests to be excluded 228sunspider-test-sys-prop.test.js.exclude.list= 229 230# execute our script tests in shared nashorn context or not? 231test-sys-prop.test.js.shared.context=false 232 233# execute test262 tests in shared nashorn context or not? 234test262-test-sys-prop.test.js.shared.context=true 235 236# test262 test root 237test262-test-sys-prop.test.js.roots=${test262.suite.dir} 238 239# test262 enable/disable strict mode tests 240test262-test-sys-prop.test.js.enable.strict.mode=true 241 242# file containing test262 tests to be excluded 243# test262-test-sys-prop.test.js.excludes.file=${test262.dir}/test/config/excludelist.xml 244 245# list of test262 files to be excluded 246test262-test-sys-prop.test.js.exclude.list=\ 247 ${test262.suite.dir}/ch07/7.4/S7.4_A6.js \ 248 ${test262.suite.dir}/ch07/7.8/7.8.5/S7.8.5_A1.4_T2.js \ 249 ${test262.suite.dir}/ch15/15.2/15.2.3/15.2.3.6/15.2.3.6-4-170.js 250 251# list of test262 test dirs to be excluded 252test262-test-sys-prop.test.js.exclude.dir=\ 253 ${test262.suite.dir}/intl402/ \ 254 ${test262.suite.dir}/bestPractice/ 255 256test262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests 257 258# test262 test frameworks 259test262-test-sys-prop.test.js.framework=\ 260 --class-cache-size=10 \ 261 --no-java \ 262 --no-typed-arrays \ 263 -timezone=PST \ 264 ${test.script.dir}/test262.js \ 265 ${test262.dir}/test/harness/framework.js \ 266 ${test262.dir}/test/harness/sta.js 267 268# testmarkdown test root 269testmarkdown-test-sys-prop.test.js.roots=${testmarkdown.dir} 270 271# execute testmarkdown tests in shared nashorn context or not? 272testmarkdown-test-sys-prop.test.js.shared.context=false 273 274# framework root for markdown script tests 275testmarkdown-test-sys-prop.test.js.framework=\ 276 ${test.script.dir}${file.separator}markdown.js 277 278# testjfx test root 279testjfx-test-sys-prop.test.js.roots=${testjfx.dir} 280 281# execute testjfx tests in shared nashorn context or not? 282testjfx-test-sys-prop.test.js.shared.context=false 283 284# framework root for our script tests 285testjfx-test-sys-prop.test.js.framework=\ 286 -fx \ 287 ${test.script.dir}${file.separator}jfx.js 288 289file.reference.jemmyfx.jar=${test.lib}${file.separator}JemmyFX.jar 290file.reference.jemmycore.jar=${test.lib}${file.separator}JemmyCore.jar 291file.reference.jemmyawtinput.jar=${test.lib}${file.separator}JemmyAWTInput.jar 292file.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar 293testjfx.run.test.classpath=\ 294 ${file.reference.jemmyfx.jar}${path.separator}\ 295 ${file.reference.jemmycore.jar}${path.separator}\ 296 ${file.reference.jemmyawtinput.jar}${path.separator}\ 297 ${file.reference.testng.jar}${path.separator}\ 298 ${file.reference.jcommander.jar}${path.separator}\ 299 ${file.reference.bsh.jar}${path.separator}\ 300 ${file.reference.snakeyaml.jar}${path.separator}\ 301 ${nashorn.internal.tests.jar}${path.separator}\ 302 ${nashorn.api.tests.jar} 303 304# testjfx VM options for script tests with @fork option 305testjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath} 306 307run.test.classpath=\ 308 ${file.reference.testng.jar}${path.separator}\ 309 ${file.reference.jcommander.jar}${path.separator}\ 310 ${file.reference.bsh.jar}${path.separator}\ 311 ${file.reference.snakeyaml.jar}${path.separator}\ 312 ${nashorn.internal.tests.jar}${path.separator}\ 313 ${nashorn.api.tests.jar} 314 315dynalink.module.src.dir=src/jdk.dynalink/share/classes 316dynalink.module.classes.dir=${build.classes.dir}/jdk.dynalink 317nashorn.module.src.dir=src/jdk.scripting.nashorn/share/classes 318nashorn.module.classes.dir=${build.classes.dir}/jdk.scripting.nashorn 319nashorn.shell.module.src.dir=src/jdk.scripting.nashorn.shell/share/classes 320nashorn.shell.module.classes.dir=${build.classes.dir}/jdk.scripting.nashorn.shell 321 322src.dir=${dynalink.module.src.dir}${path.separator}\ 323 ${nashorn.module.src.dir}${path.separator}\ 324 ${nashorn.shell.module.src.dir}${path.separator}\ 325 ${jdk.jline.src.dir} 326 327test.src.dir=test/src 328 329# -Xmx is used for all tests, -Xms only for octane benchmark 330run.test.xmx=2G 331run.test.xms=2G 332 333# uncomment this jfr.args to enable light recordings. the stack needs to be cranked up to 1024 frames, 334# or everything will as of the now drown in lambda forms and be cut off. 335# 336#jfr.args=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath="test_suite.jfr",stackdepth=1024 \ 337 338jfr.args= 339 340run.test.user.language=tr 341run.test.user.country=TR 342 343run.test.jvmargs.common=\ 344 -server \ 345 -XaddExports:${test.module.imports} \ 346 -Xpatch:${build.classes.dir} \ 347 -Dfile.encoding=UTF-8 \ 348 -Duser.language=${run.test.user.language} \ 349 -Duser.country=${run.test.user.country} \ 350 -Dnashorn.typeInfo.cacheDir=${build.dir}${file.separator}test${file.separator}type_info_cache \ 351 ${jfr.args} \ 352 -XX:+HeapDumpOnOutOfMemoryError 353 354# turn on assertions for tests 355run.test.jvmargs.main=${run.test.jvmargs.common} -esa -ea 356 357# Extra jvmargs that might be useful for debugging 358# and performance improvements/monitoring 359# 360# -XX:+UnlockDiagnosticVMOptions 361# 362# turn off compressed class pointers in metaspace 363# -XX:-UseCompressedKlassPointers 364# 365# dump the heap after every GC 366# -XX:+PrintHeapAtGC 367# 368# manually set a metaspace size for class data 369# -XX:ClassMetaspaceSize=300M 370# 371# print out methods compiled 372# -XX:+PrintCompilation 373# 374# print all compiled nmethods with oopmaps and lots of other info 375# -XX:+PrintNMethods 376# 377# activate the generic "UseNewCode" flag to test whatever functionality 378# lies behind it. This is the preferred way to test a, yet flagless, 379# feature in HotSpot - for example, the uncommon trap placement fix 380# was hidden behind this flag before it became the default 381# 382# -XX:+UnlockDiagnosticVMOptions -XX:+UseNewCode 383# 384# Crank up the type profile level to 222, which has some warmup 385# penalties, but produces much better code for JavaScript, where better 386# and more intrusive type profiling is required to get rid of 387# a large amount of unnecessary guard code, that could not otherwise 388# be eliminated 389# 390# -XX:TypeProfileLevel=222 391# 392 393# Use best known performance options for octane 394run.test.jvmargs.octane.main=${run.test.jvmargs.common} -XX:TypeProfileLevel=222 395 396# Security manager args - make sure that we run with the nashorn.policy that the build creates 397run.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${build.dir}/nashorn.policy 398 399# VM options for script tests with @fork option 400test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} ${run.test.jvmsecurityargs} -cp ${run.test.classpath} 401# VM options for no-security script tests with @fork option - same as above but without jvmsecurityargs 402test-sys-prop-no-security.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${run.test.classpath} 403 404# path of rhino.jar for benchmarks 405rhino.dir= 406rhino.jar=${rhino.dir}/js.jar 407 408v8.shell=d8 409 410# How many iterations should 'ant octane' run for each 411# benchmark 412octane.iterations=25 413 414# List of octane tests to run, as properties prefixed with 415# "octane.benchmark." mapping to the benchmark name in 416# the test harness 417# 418# Octane tests that are disabled should have their entire line 419# commented out Tests may be disabled for functionality reasons when 420# they have bugs or when the runtime doesn't handle them (yet) 421octane.benchmark.box2d=box2d 422#octane.benchmark.code-load=code-load 423octane.benchmark.crypto=crypto 424octane.benchmark.deltablue=deltablue 425octane.benchmark.earley-boyer=earley-boyer 426octane.benchmark.gbemu=gbemu 427octane.benchmark.navier-stokes=navier-stokes 428octane.benchmark.mandreel=mandreel 429octane.benchmark.pdfjs=pdfjs 430octane.benchmark.raytrace=raytrace 431octane.benchmark.regexp=regexp 432octane.benchmark.richards=richards 433octane.benchmark.splay=splay 434#octane.benchmark.typescript=typescript 435#octane.benchmark.zlib=zlib 436 437#path to rhino jar file 438octaneperf-sys-prop.rhino.jar=${rhino.jar} 439 440#timeout for performance tests in minutes 441octaneperf-sys-prop.timeout.value=10 442 443#how many iterations to run sunspider after warmup 444sunspider.iterations=3000 445 446################# 447# code coverage # 448################# 449 450#enable/disable code coverage; please redifine in the ${user.home}/.nashorn.project.local.properties 451make.code.coverage=false 452 453#type of codecoverage; one of static or dynamic. Now only dynamic is supported 454jcov=dynamic 455 456#naming of CC results 457#NB directory specified in the cc.dir will be cleaned up!!! 458cc.dir=${basedir}/../Codecoverage_Nashorn 459cc.result.file.name=CC_${jcov}_nashorn.xml 460 461#dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties 462jcov2.lib.dir=${basedir}/../jcov2/lib 463jcov.jar=${jcov2.lib.dir}/jcov.jar 464cc.include=jdk\.nashorn\.* 465cc.exclude=jdk\.nashorn\.internal\.scripts\.* 466cc.dynamic.genereate.template=true 467cc.template=${cc.dir}/CC_template.xml 468cc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name} 469