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 
  24 application.title=nashorn
  25 
  26 # location of JDK embedded ASM sources
  27 jdk.asm.src.dir=../jdk/src/share/classes/jdk/internal/org/objectweb/asm
  28 
  29 # source and target levels
  30 build.compiler=modern
  31 javac.source=1.7
  32 javac.target=1.7
  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 # nashorn test jar - internal tests jar and api tests jar
  57 nashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar
  58 nashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar
  59 
  60 # test results directory
  61 build.test.results.dir=${build.dir}/test/reports
  62 build.nosecurity.test.results.dir=${build.dir}/test/nosecurity/reports
  63 
  64 # This directory is removed when the project is cleaned:
  65 dist.dir=dist
  66 dist.jar=${dist.dir}/nashorn.jar
  67 dist.javadoc.dir=${dist.dir}/javadoc
  68 
  69 # nashorn javafx shell
  70 fxshell.tool = jdk.nashorn.tools.FXShell
  71 fxshell.classes.dir = ${build.dir}/fxshell/classes
  72 fxshell.dir = tools/fxshell
  73 fxshell.jar = ${dist.dir}/nashornfx.jar
  74 
  75 # configuration for java flight recorder
  76 run.test.jvmargs.jfr=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=${build.dir},stackdepth=128
  77 
  78 # jars refererred
  79 file.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 
  86 testng.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 
  92 testng.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 
 101 javac.debug=true
 102 javac.encoding=ascii
 103 javac.classpath=\
 104     ${build.classes.dir}
 105 javac.test.classpath=\
 106     ${build.classes.dir}:\
 107     ${build.test.classes.dir}:\
 108     ${file.reference.testng.jar}
 109 
 110 meta.inf.dir=${src.dir}/META-INF
 111 
 112 run.classpath=\
 113     ${build.classes.dir}
 114 
 115 # test scripts to run
 116 test.dir=test
 117 test.nosecurity.dir=test/script/nosecurity
 118 test.script.dir=test/script
 119 test.basic.dir=test/script/basic
 120 test.maptests.dir=test/script/maptests
 121 test.error.dir=test/script/error
 122 test.sandbox.dir=test/script/sandbox
 123 test.trusted.dir=test/script/trusted
 124 test.external.dir=test/script/external
 125 test262.dir=${test.external.dir}/test262
 126 test262.suite.dir=${test262.dir}/test/suite
 127 testjfx.dir=${test.script.dir}/jfx
 128 testmarkdown.dir=${test.script.dir}/markdown
 129 
 130 test-sys-prop.test.dir=${test.dir}
 131 test-sys-prop.test.js.roots=${test.basic.dir} ${test.maptests.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir}
 132 test-sys-prop.test262.suite.dir=${test262.suite.dir}
 133 test-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases
 134 test-sys-prop.test.basic.dir=${test.basic.dir}
 135 
 136 test-sys-prop-no-security.test.dir=${test.dir}
 137 test-sys-prop-no-security.test.js.roots=${test.nosecurity.dir}
 138 
 139 # framework root for our script tests
 140 test-sys-prop.test.js.framework=${test.script.dir}/assert.js
 141 test-sys-prop-no-security.test.js.framework=${test.script.dir}/assert.js
 142 
 143 # Control the verbosity of ParserTest
 144 test-sys-prop.parsertest.verbose=false
 145 
 146 # turn on/off scripting mode for parser tests
 147 test-sys-prop.parsertest.scripting=true
 148 
 149 # turn on/off test262 scripts for parser tests
 150 test-sys-prop.parsertest.test262=false
 151 
 152 # Control the verbosity of the CompilerTest
 153 test-sys-prop.compilertest.verbose=false
 154 
 155 # turn on/off scripting mode for compiler tests
 156 test-sys-prop.compilertest.scripting=true
 157 
 158 # turn on/off test262 scripts for compiler tests
 159 test-sys-prop.compilertest.test262=false
 160 
 161 # test directory to be excluded.
 162 test-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
 165 test-sys-prop.test.js.unchecked.dir=${test262.dir}
 166 
 167 # test root for octane
 168 octane-test-sys-prop.test.js.roots=${test.external.dir}/octane/
 169 
 170 # run octane benchmars in separate processes?
 171 octane-test-sys-prop.separate.process=true
 172 
 173 # framework root for octane
 174 octane-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
 178 octane-test-sys-prop.test.js.exclude.list=\
 179     base.js \
 180     run.js  \
 181     mandreel.js
 182 
 183 # test root for sunspider
 184 sunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0/
 185 
 186 # framework root for sunspider
 187 sunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js
 188 
 189 # list of tests to be excluded
 190 sunspider-test-sys-prop.test.js.exclude.list=
 191 
 192 # execute our script tests in shared nashorn context or not?
 193 test-sys-prop.test.js.shared.context=false
 194 
 195 # execute test262 tests in shared nashorn context or not?
 196 test262-test-sys-prop.test.js.shared.context=true
 197 
 198 # test262 test root
 199 test262-test-sys-prop.test.js.roots=${test262.suite.dir}
 200 # test262 enable/disable strict mode tests
 201 test262-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
 207 test262-test-sys-prop.test.js.exclude.dir=\
 208     ${test262.suite.dir}/intl402/ \
 209     ${test262.suite.dir}/bestPractice/ 
 210 
 211 test262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests
 212 
 213 # test262 test frameworks
 214 test262-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
 224 testmarkdown-test-sys-prop.test.js.roots=${testmarkdown.dir}    
 225 
 226 # execute testmarkdown tests in shared nashorn context or not?
 227 testmarkdown-test-sys-prop.test.js.shared.context=false
 228 
 229 # framework root for markdown script tests
 230 testmarkdown-test-sys-prop.test.js.framework=\
 231     ${test.script.dir}${file.separator}markdown.js
 232 
 233 # testjfx test root
 234 testjfx-test-sys-prop.test.js.roots=${testjfx.dir}   
 235 
 236 # execute testjfx tests in shared nashorn context or not?
 237 testjfx-test-sys-prop.test.js.shared.context=false
 238 
 239 # framework root for our script tests
 240 testjfx-test-sys-prop.test.js.framework=\
 241     -fx \
 242     ${test.script.dir}${file.separator}jfx.js
 243 
 244 file.reference.jemmyfx.jar=test${file.separator}lib${file.separator}JemmyFX.jar
 245 file.reference.jemmycore.jar=test${file.separator}lib${file.separator}JemmyCore.jar
 246 file.reference.jemmyawtinput.jar=test${file.separator}lib${file.separator}JemmyAWTInput.jar
 247 file.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar
 248 testjfx.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
 257 testjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath}
 258 
 259 run.test.classpath=\
 260     ${file.reference.testng.jar}:\
 261     ${nashorn.internal.tests.jar}:\
 262     ${nashorn.api.tests.jar}
 263 
 264 src.dir=src
 265 test.src.dir=test/src
 266 
 267 # -Xmx is used for all tests, -Xms only for octane benchmark
 268 run.test.xmx=3G
 269 run.test.xms=2G
 270 
 271 run.test.user.language=tr
 272 run.test.user.country=TR
 273 
 274 run.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
 280 run.test.jvmargs.main=${run.test.jvmargs.common} -ea
 281 
 282 #-XX:-UseCompressedKlassPointers -XX:+PrintHeapAtGC -XX:ClassMetaspaceSize=300M  
 283 run.test.jvmargs.octane.main=${run.test.jvmargs.common}
 284 
 285 run.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${basedir}/build/nashorn.policy
 286 
 287 # VM options for script tests with @fork option
 288 test-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
 291 rhino.jar=
 292 
 293 v8.shell=d8
 294 
 295 #path to rhino jar file
 296 octaneperf-sys-prop.rhino.jar=${rhino.jar}
 297 
 298 #timeout for performance tests in minutes
 299 octaneperf-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
 305 make.code.coverage=false
 306         #type of codecoverage; one of static or dynamic. Now only dynamic is supported
 307 jcov=dynamic
 308         #naming of CC results
 309         #NB directory specified in the cc.dir will be cleaned up!!!
 310 cc.dir=${basedir}/../Codecoverage_Nashorn
 311 cc.result.file.name=CC_${jcov}_nashorn.xml
 312         #dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties
 313 jcov2.lib.dir=${basedir}/../jcov2/lib
 314 jcov.jar=${jcov2.lib.dir}/jcov.jar
 315 cc.include=jdk\.nashorn\.*
 316 cc.exclude=jdk\.nashorn\.internal\.scripts\.*
 317 cc.dynamic.genereate.template=true
 318 cc.template=${cc.dir}/CC_template.xml
 319 cc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name}