IcedTea bootstrap and OpenJDK build broken with ecj-3.8/4.2

Matthias Klose doko at ubuntu.com
Mon Apr 15 03:54:44 PDT 2013


I'm trying to update the ecj.jar shipped with Debian and Ubuntu, then noticing
build problems not yet reported, and then noticing about the updated version in
Fedora.  Isn't the OpenJDK bootstrap used anymore?

See http://gcc.gnu.org/ml/java-patches/2013-q2/msg00009.html for the ecj updates
(R3_8_2), the jar can be found at http://people.debian.org/~doko/tmp/eclipse-gcj/.

Tried to build the 2.3.x branch with this new javac.

The build fails first in the stamps/rt-class-files.stamp target with some
hundred warnings:

  1. ERROR in .../openjdk-boot/jdk/src/share/classes/java/lang/Thread.java (at
line 1619)
        Map<Thread, StackTraceElement[]> m = new HashMap<>(threads.length);
                                                 ^^^^^^^
  '<>' operator is not allowed for source level below 1.7

Setting IT_LANGUAGE_SOURCE_VERSION=7 and IT_CLASS_TARGET_VERSION=7 fixes this
for me.  Is there anything going wrong when setting this to 7 for the stage1
build?  If not, then these two macros should be set by autoconf depending on the
compiler accepting this operator.


Next the build fails for some java classes (ecj-hacks.diff).  Could somebody
look at these errors? Are these ecj compiler bugs?  My work around was to
comment out the offending lines, and add these hacks to ICEDTEA_BOOT_PATCHES.
The resulting build and jtreg runs look fine to me.

  Matthias
-------------- next part --------------
jaxws:

compile:
    [javac] Compiling 2737 source files to /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/jaxws/build/classes
    [javac] Annotation processing got disabled, since it requires a 1.6 compliant JVM
    [javac] ----------
    [javac] 1. ERROR in /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk-boot/jdk/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java (at line 113)
    [javac] 	params.setSSLParameters (getSSLContext().getDefaultSSLParameters());
    [javac] 	                                         ^^^^^^^^^^^^^^^^^^^^^^^
    [javac] The method getDefaultSSLParameters() is undefined for the type SSLContext
    [javac] ----------
    [javac] ----------
    [javac] 2. ERROR in /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk-boot/jdk/src/share/classes/sun/net/httpserver/SSLStreams.java (at line 81)
    [javac] 	engine.setSSLParameters (sslParams);
    [javac] 	       ^^^^^^^^^^^^^^^^
    [javac] The method setSSLParameters(SSLParameters) is undefined for the type SSLEngine
    [javac] ----------
    [javac] 2 problems (2 errors)

BUILD FAILED
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk-boot/jaxws/build.xml:149: Compile failed; see the compiler error output for details.


jdk/make/java/management:

make[5]: Entering directory `/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk-boot/jdk/make/java/management'
rm -f /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_pt_BR.java
# Adding to compile properties list: ../../../src/share/classes/sun/management/resources/agent_pt_BR.properties -> /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_pt_BR.java
/bin/echo -e "-compile ../../../src/share/classes/sun/management/resources/agent_pt_BR.properties /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_pt_BR.java ListResourceBundle" >> /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/tmp/java/java.lang.management/management/compile_prop_options
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/bootstrap/jdk1.6.0/bin/java -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput -Xmx512m -Xms512m -XX:PermSize=32m -XX:MaxPermSize=160m -jar /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/btjars/compileproperties.jar -optionsfile /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/tmp/java/java.lang.management/management/compile_prop_options
parsing: ../../../src/share/classes/sun/management/resources/agent_pt_BR.properties
inferred package name: sun.management.resources
wrote: /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_pt_BR.java
# Java sources to be compiled: (listed in file /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/tmp/java/java.lang.management/management/.classes.list)
../../../src/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java
../../../src/share/classes/com/sun/management/GarbageCollectorMXBean.java
../../../src/share/classes/com/sun/management/GcInfo.java
../../../src/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java
../../../src/share/classes/com/sun/management/OperatingSystemMXBean.java
../../../src/share/classes/com/sun/management/ThreadMXBean.java
../../../src/share/classes/com/sun/management/UnixOperatingSystemMXBean.java
../../../src/share/classes/com/sun/management/VMOption.java
../../../src/share/classes/java/lang/management/BufferPoolMXBean.java
../../../src/share/classes/java/lang/management/PlatformComponent.java
../../../src/share/classes/java/lang/management/PlatformLoggingMXBean.java
../../../src/share/classes/java/lang/management/PlatformManagedObject.java
../../../src/share/classes/sun/management/Agent.java
../../../src/share/classes/sun/management/AgentConfigurationError.java
../../../src/share/classes/sun/management/ClassLoadingImpl.java
../../../src/share/classes/sun/management/CompilationImpl.java
../../../src/share/classes/sun/management/CompilerThreadStat.java
../../../src/share/classes/sun/management/ConnectorAddressLink.java
../../../src/share/classes/sun/management/FileSystem.java
../../../src/share/classes/sun/management/Flag.java
../../../src/share/classes/sun/management/GarbageCollectionNotifInfoCompositeData.java
../../../src/share/classes/sun/management/GarbageCollectorImpl.java
../../../src/share/classes/sun/management/GcInfoBuilder.java
../../../src/share/classes/sun/management/GcInfoCompositeData.java
../../../src/share/classes/sun/management/HotSpotDiagnostic.java
../../../src/share/classes/sun/management/HotspotClassLoading.java
../../../src/share/classes/sun/management/HotspotClassLoadingMBean.java
../../../src/share/classes/sun/management/HotspotCompilation.java
../../../src/share/classes/sun/management/HotspotCompilationMBean.java
../../../src/share/classes/sun/management/HotspotInternal.java
../../../src/share/classes/sun/management/HotspotInternalMBean.java
../../../src/share/classes/sun/management/HotspotMemory.java
../../../src/share/classes/sun/management/HotspotMemoryMBean.java
../../../src/share/classes/sun/management/HotspotRuntime.java
../../../src/share/classes/sun/management/HotspotRuntimeMBean.java
../../../src/share/classes/sun/management/HotspotThread.java
../../../src/share/classes/sun/management/HotspotThreadMBean.java
../../../src/share/classes/sun/management/LazyCompositeData.java
../../../src/share/classes/sun/management/LockDataConverter.java
../../../src/share/classes/sun/management/LockDataConverterMXBean.java
../../../src/share/classes/sun/management/ManagementFactory.java
../../../src/share/classes/sun/management/ManagementFactoryHelper.java
../../../src/share/classes/sun/management/MappedMXBeanType.java
../../../src/share/classes/sun/management/MemoryImpl.java
../../../src/share/classes/sun/management/MemoryManagerImpl.java
../../../src/share/classes/sun/management/MemoryNotifInfoCompositeData.java
../../../src/share/classes/sun/management/MemoryPoolImpl.java
../../../src/share/classes/sun/management/MemoryUsageCompositeData.java
../../../src/share/classes/sun/management/MethodInfo.java
../../../src/share/classes/sun/management/MonitorInfoCompositeData.java
../../../src/share/classes/sun/management/NotificationEmitterSupport.java
../../../src/share/classes/sun/management/OperatingSystemImpl.java
../../../src/share/classes/sun/management/RuntimeImpl.java
../../../src/share/classes/sun/management/Sensor.java
../../../src/share/classes/sun/management/StackTraceElementCompositeData.java
../../../src/share/classes/sun/management/ThreadImpl.java
../../../src/share/classes/sun/management/ThreadInfoCompositeData.java
../../../src/share/classes/sun/management/Util.java
../../../src/share/classes/sun/management/VMManagement.java
../../../src/share/classes/sun/management/VMManagementImpl.java
../../../src/share/classes/sun/management/VMOptionCompositeData.java
../../../src/share/classes/sun/management/counter/AbstractCounter.java
../../../src/share/classes/sun/management/counter/ByteArrayCounter.java
../../../src/share/classes/sun/management/counter/Counter.java
../../../src/share/classes/sun/management/counter/LongArrayCounter.java
../../../src/share/classes/sun/management/counter/LongCounter.java
../../../src/share/classes/sun/management/counter/StringCounter.java
../../../src/share/classes/sun/management/counter/Units.java
../../../src/share/classes/sun/management/counter/Variability.java
../../../src/share/classes/sun/management/counter/perf/ByteArrayCounterSnapshot.java
../../../src/share/classes/sun/management/counter/perf/InstrumentationException.java
../../../src/share/classes/sun/management/counter/perf/LongArrayCounterSnapshot.java
../../../src/share/classes/sun/management/counter/perf/LongCounterSnapshot.java
../../../src/share/classes/sun/management/counter/perf/PerfByteArrayCounter.java
../../../src/share/classes/sun/management/counter/perf/PerfDataEntry.java
../../../src/share/classes/sun/management/counter/perf/PerfDataType.java
../../../src/share/classes/sun/management/counter/perf/PerfInstrumentation.java
../../../src/share/classes/sun/management/counter/perf/PerfLongArrayCounter.java
../../../src/share/classes/sun/management/counter/perf/PerfLongCounter.java
../../../src/share/classes/sun/management/counter/perf/PerfStringCounter.java
../../../src/share/classes/sun/management/counter/perf/Prologue.java
../../../src/share/classes/sun/management/counter/perf/StringCounterSnapshot.java
../../../src/share/classes/sun/management/jmxremote/ConnectorBootstrap.java
../../../src/share/classes/sun/management/jmxremote/LocalRMIServerSocketFactory.java
../../../src/share/classes/sun/management/jmxremote/SingleEntryRegistry.java
../../../src/solaris/classes/com/sun/management/OSMBeanFactory.java
../../../src/solaris/classes/com/sun/management/UnixOperatingSystem.java
../../../src/solaris/classes/sun/management/FileSystemImpl.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_de.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_es.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_fr.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_it.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_ja.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_ko.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_pt_BR.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_sv.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_zh_CN.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_zh_HK.java
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build/sun/management/resources/agent_zh_TW.java
# Running javac:
/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/bootstrap/jdk1.6.0/bin/javac -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -g -Xlint:-path -source 7 -target 7 -encoding ascii -Xbootclasspath:/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/classes -sourcepath /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/generated.build:../../../src/solaris/classes:../../../src/share/classes -bootclasspath /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/classes:/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/bootstrap/jdk1.6.0/jre/lib/rt.jar -d /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/classes @/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk.build-boot/tmp/java/java.lang.management/management/.classes.list
Annotation processing got disabled, since it requires a 1.6 compliant JVM
----------
1. ERROR in /scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk-boot/jdk/src/share/classes/sun/management/jmxremote/ConnectorBootstrap.java (at line 700)
	return new SslRMIServerSocketFactory(
                        ctx,
                        enabledCipherSuites,
                        enabledProtocols,
                        sslNeedClientAuth);
	       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The constructor SslRMIServerSocketFactory(SSLContext, String[], String[], boolean) is undefined
----------
1 problem (1 error)make[5]: *** [.compile.classlist] Error 255
make[5]: Leaving directory `/scratch/packages/openjdk/7u15/openjdk-7-7u17-2.3.8/build/openjdk-boot/jdk/make/java/management'
make[4]: *** [all] Error 1

--- openjdk-boot/jdk/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java~	2013-03-04 22:51:01.000000000 +0100
+++ openjdk-boot/jdk/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java	2013-04-15 11:27:51.301325575 +0200
@@ -110,7 +110,8 @@
     * @since 1.6
     */
     public void configure (HttpsParameters params) {
-        params.setSSLParameters (getSSLContext().getDefaultSSLParameters());
+	// FIXME: ecj 3.8 compiler error
+        // params.setSSLParameters (getSSLContext().getDefaultSSLParameters());
     }
 //END_TIGER_EXCLUDE
 }
--- openjdk-boot/jdk/src/share/classes/sun/net/httpserver/SSLStreams.java~	2013-03-04 22:51:01.000000000 +0100
+++ openjdk-boot/jdk/src/share/classes/sun/net/httpserver/SSLStreams.java	2013-04-15 11:30:07.986236354 +0200
@@ -78,7 +78,8 @@
             cfg.configure (params);
             SSLParameters sslParams = params.getSSLParameters();
             if (sslParams != null) {
-                engine.setSSLParameters (sslParams);
+		// FIXME: ecj 3.8 compiler error
+                // engine.setSSLParameters (sslParams);
             } else
 //END_TIGER_EXCLUDE
             {
--- openjdk-boot/jdk/src/share/classes/sun/management/jmxremote/ConnectorBootstrap.java~	2013-03-04 22:51:01.000000000 +0100
+++ openjdk-boot/jdk/src/share/classes/sun/management/jmxremote/ConnectorBootstrap.java	2013-04-15 11:44:22.643900980 +0200
@@ -697,8 +697,9 @@
                 SSLContext ctx = SSLContext.getInstance("SSL");
                 ctx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
 
+		// FIXME: ecj 3.8 compiler error
                 return new SslRMIServerSocketFactory(
-                        ctx,
+                //        ctx,
                         enabledCipherSuites,
                         enabledProtocols,
                         sslNeedClientAuth);


More information about the distro-pkg-dev mailing list