IcedTea6 build failed for 92ce3a01d889

Omair Majid omajid at redhat.com
Fri Apr 22 07:57:43 PDT 2011


On 04/21/2011 08:41 PM, Mark Wielaard wrote:
> The current IcedTea build fails.
>
> More info at http://builder.wildebeest.org/icedtea/icedtea6/
>
> Possibly, but not necessarily, because of one of these changes:
>

Sorry about breaking the build. I was _not_ expecting this to happen - I 
had grepped through OpenJDK code to make sure that clearMark() was not 
being used.

> rev:  92ce3a01d889
> user: Omair Majid<omajid at redhat.com>
> date: Thu Apr 21 19:59:32 2011 -0400
>
> Drop bytebuffer-compact.patch
>
> The bytebuffer-compact patch adds a (package-private) method clearMark to reset
> the mark.  Upstream already addressed this problem:
> 6593946: (bf) X-Buffer.compact() does not discard mark as specified.
> The upstream fix adds a method discardMark(), and updates the rest of the JDK
> to use that method. The clearMark() method added by this patch is not used
> anywhere and can be dropped safely.
>
>
> Last part of build log:
>
> patching file openjdk-ecj/hotspot/make/linux/Makefile
> for dir in openjdk-ecj/jdk/src/share/classes/com/sun/jdi openjdk-ecj/jdk/src/share/classes/com/sun/net/httpserver openjdk-ecj/jdk/src/share/classes/com/sun/tools/jdi openjdk-ecj/jdk/src/share/classes/java/io openjdk-ecj/jdk/src/share/classes/java/security/cert openjdk-ecj/jdk/src/share/classes/java/util openjdk-ecj/jdk/src/share/classes/java/rmi openjdk-ecj/jdk/src/share/classes/sun/awt/ openjdk-ecj/jdk/src/share/classes/sun/nio/cs openjdk-ecj/jdk/src/share/classes/sun/rmi/rmic openjdk-ecj/jdk/src/share/classes/sun/tools/java openjdk-ecj/jdk/src/share/classes/javax/net/ssl openjdk-ecj/jdk/src/share/classes/javax/script openjdk-ecj/jdk/src/share/classes/javax/security/auth/kerberos openjdk-ecj/jdk/src/share/classes/javax/security/sasl openjdk-ecj/langtools/src/share/classes/com/sun/mirror openjdk-ecj/langtools/src/share/classes/com/sun/tools/apt ; \
> 	do \
> 	  /usr/bin/find /usr/local/build/icedtea6-build/$dir -name '*.java'>>  rt-source-files.txt; \
> 	done
> for files in openjdk-ecj/jdk/src/share/classes/javax/swing/plaf/basic/BasicDirectoryModel.java openjdk-ecj/jdk/src/share/classes/javax/management/StandardMBean.java openjdk-ecj/jdk/src/share/classes/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java ; \
> 	do \
> 	  echo $files>>  rt-source-files.txt ; \
> 	done
> mkdir -p lib/rt
> /usr/local/build/icedtea6-build/bootstrap/jdk1.6.0/bin/javac -g -encoding utf-8    -source 6 -target 6 -d lib/rt \
>            -sourcepath /usr/local/build/icedtea6/generated:openjdk-ecj/jdk/src/share/classes:openjdk-ecj/jdk/src/solaris/classes:openjdk-ecj/langtools/src/share/classes:openjdk-ecj/corba/src/share/classes -bootclasspath \'\' \
>            -classpath /usr/lib/jvm/java-gcj/jre/lib/rt.jar \
> 	  @rt-source-files.txt ;
> incorrect classpath: ''
> Annotation processing got disabled, since it requires a 1.6 compliant JVM
> ----------
> 1. ERROR in /usr/local/build/icedtea6/generated/java/nio/HeapCharBuffer.java (at line 225)
> 	clearMark();
> 	^^^^^^^^^
> The method clearMark() is undefined for the type HeapCharBuffer
> ----------

I am quite confused about the purpose of the generated/java/nio 
directory. It contains java classes. Looking at the OpenJDK6's 
makefiles, it generates all these classes already. For example generated 
contains generated/java/nio/HeapCharBuffer.java. OpenJDK6 generates the 
class HeapCharBuffer.java anyway:

(jdk/make/java/nio/Makefile)

$(BUF_GEN)/HeapCharBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java 
$(GEN_BUFFER_SH)
     $(prep-target)
     @$(RM) $@.temp
     TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
     $(MV) $@.temp $@

In fact, I just tried out a new build after rm -rf'ing 
generated/java/nio. The build completed successfully. The rt.jar 
produced in the new build contains all the classes contained in rt.jar 
from an older IcedTea6 build. All the java.nio.* jtreg tests pass. This 
makes it seem like generated/java/nio/ is redundant. Does anyone have a 
clue on why generated/java/nio is present in IcedTea6? Should it be dropped?

Meanwhile, should I add back the bytebuffer-compact patch to un-break 
the build? Sorry about the breakage.

Thanks,
Omair



More information about the distro-pkg-dev mailing list