changeset 62:1ecfbcb08379 tip

update netbeans-based test setup
author jrose
date Wed, 02 May 2012 22:23:57 -0700
parents 24abb608cae9
children
files netbeans/meth/build.xml netbeans/meth/nbproject/build-impl.xml netbeans/meth/nbproject/project.properties netbeans/meth/test/sun/invoke/util/BytecodeNameTest.java
diffstat 4 files changed, 37 insertions(+), 26 deletions(-) [+]
line wrap: on
line diff
--- a/netbeans/meth/build.xml	Thu Mar 01 01:10:02 2012 -0800
+++ b/netbeans/meth/build.xml	Wed May 02 22:23:57 2012 -0700
@@ -6,7 +6,7 @@
     <description>Builds, tests, and runs the project MethodHandle.</description>
 
     <!-- see end of nbproject/project.properties for properties that might need patching here: -->
-    <property name="user.properties.file" value="build.properties"/>
+    <property file="build.properties"/>
 
     <import file="nbproject/build-impl.xml"/>
 
--- a/netbeans/meth/nbproject/build-impl.xml	Thu Mar 01 01:10:02 2012 -0800
+++ b/netbeans/meth/nbproject/build-impl.xml	Wed May 02 22:23:57 2012 -0700
@@ -389,8 +389,8 @@
                     <formatter type="brief" usefile="false"/>
                     <formatter type="xml"/>
                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg line="${run.jvmargs}"/>
                     <jvmarg value="-ea"/>
-                    <jvmarg line="${run.jvmargs}"/>
                 </junit>
             </sequential>
         </macrodef>
--- a/netbeans/meth/nbproject/project.properties	Thu Mar 01 01:10:02 2012 -0800
+++ b/netbeans/meth/nbproject/project.properties	Wed May 02 22:23:57 2012 -0700
@@ -6,7 +6,7 @@
 # Some of these probably need to be pre-defined, in ../build.properties:
 #
 file.reference.projects-folder=${user.home}/Projects
-  file.reference.openjdk-jdk7-folder=${file.reference.projects-folder}/hotspot/jdk7-integration
+  file.reference.openjdk-hsx-folder=${file.reference.projects-folder}/hotspot/hsx-integration
   file.reference.davinci-project-folder=${file.reference.projects-folder}/davinci
 
 # Pull tests from the JDK repository:
@@ -15,10 +15,10 @@
 #test.tests-from-jdk.dir=${file.reference.davinci-project-folder.sources.jdk}/test
 # Reason:  We cannot have tests in java.lang subpackages.  Put them in test.java.lang.
 
-# e.g., ln -s ...davinci/sources/build/bsd-i586/j2sdk-image ~/env/JAVA7X_HOME
+# e.g., ln -s ...davinci/sources/build/bsd-i586/j2sdk-image ~/env/JAVA8X_HOME
 file.reference.env-folder=${user.home}/env
-platforms.JDK_7X.home=${file.reference.env-folder}/JAVA7X_HOME
-platforms.JDK_7X64.home=${file.reference.env-folder}/JAVA7X64_HOME
+platforms.JDK_1.8.home=${file.reference.env-folder}/JAVA8X_HOME
+platforms.JDK_1.8_x64.home=${file.reference.env-folder}/JAVA8X64_HOME
 
 javac.processorpath=\
     ${javac.classpath}
@@ -27,7 +27,7 @@
 mkdist.disabled=false
 
 # Possible overrides:
-#file.reference.davinci-project-folder.sources.jdk=${file.reference.openjdk-jdk7-folder}/jdk/src/share/classes
+#file.reference.davinci-project-folder.sources.jdk=${file.reference.openjdk-hsx-folder}/jdk/src/share/classes
 
 # To inject config-specific tests:
 #src.special-config-test-src.dir=test-special
@@ -59,31 +59,39 @@
 dist.jar=${dist.dir}/meth.jar
 dist.javadoc.dir=${dist.dir}/javadoc
 endorsed.classpath=
-excludes=**/Unmanaged/**,**/JT*/**,sun/invoke/anon/**/*
+excludes=**/Unmanaged/**,**/JT*/**,sun/invoke/anon/**/*,${exclude.tests}
+exclude.tests=test/java/lang/invoke/CallSiteTest.java
 #excludes=sun/invoke/anon/**
 #file.reference.bsd-i586-classes=../davinci/sources/build/bsd-i586/classes
 file.reference.test-classes=build/test/classes
 file.reference.jdk-tests=${file.reference.davinci-project-folder.sources.jdk}/test
-includes=java/lang/invoke/*.java,sun/invoke/**/*.java,sun/invoke/**/*.java,test/java/lang/invoke/*.java,test/sun/invoke/**/*.java,Test*.java,java/lang/BootstrapMethodError.java,java/lang/ClassValue.java
-jdk.test.includes=test/java/lang/invoke/*.java,test/sun/invoke/**/*.java,
+includes=java/lang/invoke/*.java,sun/invoke/**/*.java,sun/invoke/**/*.java,test/java/lang/invoke/**/*.java,test/sun/invoke/**/*.java,${toplevel-tests},${java-lang-sources},${extra-java-sources}
+#toplevel-tests = Test*.java
+# optional:
+java-lang-sources = java/lang/BootstrapMethodError.java,java/lang/ClassValue.java,java/lang/Class.java
+#java-lang-sources = com/sun/java/util/jar/pack/*.java,sun/util/logging/*.java
+#extra-java-sources = java/dyn/*.java,java/lang/Thread.java,test/java/dyn/*.java
+jdk.test.includes=test/java/lang/invoke/**/*.java,test/sun/invoke/**/*.java,
 #includes=**
 jar.compress=true
 javac.classpath=\
-    ${reference.indify.jar}
+    ${reference.indify.jar}:\
+    ${libs.junit_4.classpath}
 #    ${file.reference.bsd-i586-classes}
 # Space-separated list of extra javac options
-javac.compilerargs= -Xbootclasspath/p:${build.classes.dir} -Xlint:none ${javac.standalone.bcp}
-# assuming full JDK_7X:
+javac.compilerargs= -Xbootclasspath/p:${build.classes.dir} ${javac.lintmode} ${javac.standalone.bcp}
+#javac.lintmode = -Xlint:none
+javac.lintmode = -Xlint:all -Xlint:-path -Xmaxwarns 10000
+# assuming full JDK_8X:
 #javac.standalone.bcp =
 # pulling from a standalone langtools build:
 javac.standalone.bcp = -J-Xbootclasspath/p:${reference.langtools-javac.jar}
 javac.deprecation=false
-javac.source=1.7
-javac.target=1.7
+javac.source=1.8
+javac.target=1.8
 javac.test.classpath=\
     ${javac.classpath}:\
     ${build.classes.dir}:\
-    ${libs.junit.classpath}:\
     ${libs.junit_4.classpath}
 javadoc.additionalparam=-protected
 #javadoc.access=protected
@@ -106,7 +114,7 @@
 jnlp.signed=false
 manifest.file=manifest.mf
 meta.inf.dir=${src.dir}/META-INF
-platform.active=JDK_7X
+platform.active=JDK_1.8_Build
 project.indify=../../../../../Projects/indify
 reference.indify.jar=${project.indify}/dist/indify.jar
 # was on javac.classpath, run.classpath: ${reference.AnonymousClass.jar}
@@ -118,11 +126,13 @@
 # Space-separated list of JVM arguments used when running the project
 # (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value
 # or test-sys-prop.name=value to set system properties for unit tests):
-run.jvmargs=-ea -esa ${meth.extra.jvmargs} -Xbootclasspath/p:"${run.classpath}:${libs.junit_4.classpath}" -Dbuild.test.classes.dir=${build.test.classes.dir} ${config.run.jvmargs}
+run.jvmargs=${config.run.initial.jvmargs} -ea -esa ${meth.extra.jvmargs} -Xbootclasspath/p:"${run.classpath}:${libs.junit_4.classpath}" -Dbuild.test.classes.dir=${build.test.classes.dir} ${config.run.jvmargs}
 #manual hack: override ${config.run.jvmargs} in ${config}.properties
+config.run.initial.jvmargs =
 config.run.jvmargs =
-meth.extra.jvmargs = 
-#meth.extra.jvmargs = -XX:+UnlockExperimentalVMOptions -XX:-AllowInvokeGeneric
+#meth.extra.jvmargs = 
+#meth.extra.jvmargs = -XX:+UnlockDiagnosticVMOptions -XX:+VerifyMethodHandles
+meth.extra.jvmargs = -XX:-TieredCompilation
 run.test.classpath=\
     ${javac.test.classpath}:\
     ${build.test.classes.dir}
@@ -130,8 +140,8 @@
 # One or more refs might still need fixing:
 file.reference.davinci-project-folder.sources.jdk=${file.reference.davinci-project-folder}/sources/jdk
 file.reference.davinci-project-folder.sources.langtools=${file.reference.davinci-project-folder}/sources/langtools
-reference.langtools-javac.jar=${platforms.JDK_7X.home}/lib/tools.jar
-#reference.langtools-javac.jar=${file.reference.openjdk-jdk7-folder}/langtools/dist/lib/javac.jar
+#reference.langtools-javac.jar=${platforms.JDK_8X.home}/lib/tools.jar
+#reference.langtools-javac.jar=${file.reference.openjdk-hsx-folder}/langtools/dist/lib/javac.jar
 #reference.langtools-javac.jar=${file.reference.davinci-project-folder.sources.langtools}/dist/lib/javac.jar
 src.src.dir=${file.reference.davinci-project-folder.sources.jdk}/src/share/classes
 src.tests-from-jdk.dir=tests-from-jdk
@@ -139,8 +149,8 @@
 test.src.dir=test
 project.license=openjdk
 davinci.patch.name=meth
-# JDK_7X = an mlvm build, including JSR 292 javac from langtools, libjvm from hotspot, and rt.jar from jvm
+# JDK_8X = an mlvm build, including JSR 292 javac from langtools, libjvm from hotspot, and rt.jar from jvm
 # these should be globally defined in most setups, but are given here locally for completeness:
-platforms.JDK_7X.bootclasspath=${platforms.JDK_7X.home}/jre/lib/resources.jar:${platforms.JDK_7X.home}/jre/lib/rt.jar:${platforms.JDK_7X.home}/jre/lib/sunrsasign.jar:${platforms.JDK_7X.home}/jre/lib/jsse.jar:${platforms.JDK_7X.home}/jre/lib/jce.jar:${platforms.JDK_7X.home}/jre/lib/charsets.jar:${platforms.JDK_7X.home}/jre/classes:${platforms.JDK_7X.home}/jre/lib/ext/dnsns.jar:${platforms.JDK_7X.home}/jre/lib/ext/localedata.jar:${platforms.JDK_7X.home}/jre/lib/ext/sunjce_provider.jar:${platforms.JDK_7X.home}/jre/lib/ext/sunpkcs11.jar
-platforms.JDK_7X.compiler=modern
-platform.java=${platforms.JDK_7X.home}/bin/java
+#platforms.JDK_8X.bootclasspath=${platforms.JDK_8X.home}/jre/lib/resources.jar:${platforms.JDK_8X.home}/jre/lib/rt.jar:${platforms.JDK_8X.home}/jre/lib/sunrsasign.jar:${platforms.JDK_8X.home}/jre/lib/jsse.jar:${platforms.JDK_8X.home}/jre/lib/jce.jar:${platforms.JDK_8X.home}/jre/lib/charsets.jar:${platforms.JDK_8X.home}/jre/classes:${platforms.JDK_8X.home}/jre/lib/ext/dnsns.jar:${platforms.JDK_8X.home}/jre/lib/ext/localedata.jar:${platforms.JDK_8X.home}/jre/lib/ext/sunjce_provider.jar:${platforms.JDK_8X.home}/jre/lib/ext/sunpkcs11.jar
+#platforms.JDK_8X.compiler=modern
+#platform.java=${platforms.JDK_8X.home}/bin/java
--- a/netbeans/meth/test/sun/invoke/util/BytecodeNameTest.java	Thu Mar 01 01:10:02 2012 -0800
+++ b/netbeans/meth/test/sun/invoke/util/BytecodeNameTest.java	Wed May 02 22:23:57 2012 -0700
@@ -236,6 +236,7 @@
     }
 
     // optional test driver
+    @SuppressWarnings("fallthrough")
     static void main(String[] av) {
         // If verbose is enabled, quietly check everything.
         // Otherwise, print the output for the user to check.