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