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