changeset 1777:44972a4d3e90

Fix issues with ecj build and make full bootstrap the default again. 2009-05-19 Andrew John Hughes <ahughes@redhat.com> * HACKING: Updated with new ecj patches. * Makefile.am: Move JIBX_DEPS_DIR definition to top level, remove jibx.stamp from ecj build. * acinclude.m4: (IT_JAVAH): Renamed from IT_CP39408_JAVAH. Add test for PR40188. * configure.ac: Make full bootstrap the default again. Rename IT_CP39408_JAVAH to IT_JAVAH. * patches/ecj/icedtea-dyn.patch: New patch to disable building of java.dyn when using ecj (needs javac 1.7). * patches/ecj/icedtea-pr40188.patch: New patch for when bug PR40188 is present in javah (incorrect naming of constants).
author Andrew John Hughes <ahughes@redhat.com>
date Tue, 19 May 2009 00:20:40 +0100
parents 58c1bf70c801
children 8cf23c220172
files ChangeLog HACKING Makefile.am acinclude.m4 configure.ac patches/ecj/icedtea-dyn.patch patches/ecj/icedtea-pr40188.patch
diffstat 7 files changed, 74 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Thu May 14 21:27:31 2009 +0100
+++ b/ChangeLog	Tue May 19 00:20:40 2009 +0100
@@ -1,3 +1,21 @@
+2009-05-19  Andrew John Hughes  <ahughes@redhat.com>
+
+	* HACKING: Updated with new ecj patches.
+	* Makefile.am: Move JIBX_DEPS_DIR definition
+	to top level, remove jibx.stamp from ecj build.
+	* acinclude.m4:
+	(IT_JAVAH): Renamed from IT_CP39408_JAVAH.
+	Add test for PR40188.
+	* configure.ac:
+	Make full bootstrap the default again.  Rename
+	IT_CP39408_JAVAH to IT_JAVAH.
+	* patches/ecj/icedtea-dyn.patch:
+	New patch to disable building of java.dyn
+	when using ecj (needs javac 1.7).
+	* patches/ecj/icedtea-pr40188.patch:
+	New patch for when bug PR40188 is present
+	in javah (incorrect naming of constants).
+	
 2009-05-14  Andrew John Hughes  <ahughes@redhat.com>
 
 	* configure.ac:
--- a/HACKING	Thu May 14 21:27:31 2009 +0100
+++ b/HACKING	Tue May 19 00:20:40 2009 +0100
@@ -121,6 +121,9 @@
 
 The following patches are only applied to the icedtea-ecj bootstrap tree in IcedTea:
 
+* ecj/icedtea-dyn.patch: Don't build java.dyn (needs javac 1.7)
+* ecj/icedtea-pr39408.patch: Add missing constants from superclass not generated by gjavah
+* ecj/icedtea-pr40188.patch: Fix names to refer to constants generated by gjavah.
 * ecj/icedtea-sbcs.patch: Fixes GenerateSBCS.java to not use java.util.Scanner.
 
 The following patches are only applied for IcedTea builds using the zero-assembler:
--- a/Makefile.am	Thu May 14 21:27:31 2009 +0100
+++ b/Makefile.am	Tue May 19 00:20:40 2009 +0100
@@ -49,6 +49,10 @@
 PULSE_JAVA_CLASS_DIR =
 endif
 
+if ENABLE_NIMBUS
+JIBX_DEPS_DIR=$(abs_top_builddir)/jibx
+endif
+
 # Top-Level Targets
 # =================
 
@@ -2338,17 +2342,22 @@
 	mkdir -p stamps
 	touch stamps/ports-ecj.stamp
 
-# Patch OpenJDK for plug replacements and ecj.
+# Patch OpenJDK for ecj/gcj builds.
 ICEDTEA_ECJ_PATCHES = patches/ecj/icedtea.patch \
 	patches/ecj/icedtea-hotspot-$(HSBUILD).patch \
 	patches/ecj/icedtea-spp.patch \
 	patches/ecj/icedtea-jopt.patch \
-	patches/ecj/icedtea-sbcs.patch
+	patches/ecj/icedtea-sbcs.patch \
+	patches/ecj/icedtea-dyn.patch
 
 if CP39408_JAVAH
 ICEDTEA_ECJ_PATCHES += patches/ecj/icedtea-pr39408.patch
 endif
 
+if CP40188_JAVAH
+ICEDTEA_ECJ_PATCHES += patches/ecj/icedtea-pr40188.patch
+endif
+
 stamps/patch-ecj.stamp: stamps/clone-ecj.stamp
 	mkdir -p stamps; \
 	rm -f stamps/patch-ecj.stamp.tmp ; \
@@ -2684,7 +2693,7 @@
 	touch stamps/native-ecj.stamp
 
 stamps/icedtea-ecj.stamp: stamps/bootstrap-directory-symlink-ecj.stamp \
-	stamps/hotspot-tools.stamp stamps/plugs.stamp stamps/jibx.stamp \
+	stamps/hotspot-tools.stamp stamps/plugs.stamp \
 	stamps/ports-ecj.stamp stamps/patch-ecj.stamp stamps/cacao.stamp
 	$(ARCH_PREFIX) $(MAKE) \
 	  $(ICEDTEA_ENV_ECJ) \
@@ -2965,7 +2974,6 @@
 
 stamps/jibx.stamp: extra-lib/about.jar
 if ENABLE_NIMBUS
-	JIBX_DEPS_DIR=$(abs_top_builddir)/jibx
 	mkdir $(JIBX_DEPS_DIR)
 	ln -s $(BCEL_JAR) $(JIBX_DEPS_DIR)
 	ln -s $(XPP3_JAR) $(JIBX_DEPS_DIR)
--- a/acinclude.m4	Thu May 14 21:27:31 2009 +0100
+++ b/acinclude.m4	Tue May 19 00:20:40 2009 +0100
@@ -1264,7 +1264,7 @@
   AC_SUBST(SYSTEM_ICEDTEA_DIR)
 ])
 
-AC_DEFUN([IT_CP39408_JAVAH],[
+AC_DEFUN([IT_JAVAH],[
 AC_CACHE_CHECK([if $JAVAH exhibits Classpath bug 39408], it_cv_cp39408_javah, [
 SUPERCLASS=Test.java
 SUBCLASS=TestImpl.java
@@ -1305,11 +1305,21 @@
   echo "configure: failed program was:" >&AC_FD_CC
   cat $SUBCLASS >&AC_FD_CC
 fi
+])
+AC_CACHE_CHECK([if $JAVAH exhibits Classpath bug 40188], it_cv_cp40188_javah, [
+  if test -e $SUBHEADER ; then
+    if cat $SUBHEADER | grep TestImpl_POTATO > /dev/null 2>&1; then
+      it_cv_cp40188_javah=no;
+    else
+      it_cv_cp40188_javah=yes;
+    fi
+  fi
+])
 rm -f $SUBCLASS $SUPERCLASS $SUBHEADER *.class
 cd ..
 rmdir tmp.$$
-])
 AM_CONDITIONAL([CP39408_JAVAH], test x"${it_cv_cp39408_javah}" = "xyes")
+AM_CONDITIONAL([CP40188_JAVAH], test x"${it_cv_cp40188_javah}" = "xyes")
 AC_PROVIDE([$0])dnl
 ])
 
--- a/configure.ac	Thu May 14 21:27:31 2009 +0100
+++ b/configure.ac	Tue May 19 00:20:40 2009 +0100
@@ -50,7 +50,7 @@
           fi
         ],
         [
-          with_icedtea=true
+          with_icedtea=false
         ])
 AM_CONDITIONAL(WITH_ICEDTEA, test "${with_icedtea}" = true)
 AC_MSG_RESULT(${with_icedtea})
@@ -269,7 +269,7 @@
   AC_CONFIG_FILES([javap], [chmod +x javap])
 fi
 fi
-IT_CP39408_JAVAH
+IT_JAVAH
 FIND_RHINO_JAR
 WITH_OPENJDK_SRC_ZIP
 WITH_HOTSPOT_SRC_ZIP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/ecj/icedtea-dyn.patch	Tue May 19 00:20:40 2009 +0100
@@ -0,0 +1,12 @@
+diff -Nru openjdk-ecj.orig/jdk/make/java/Makefile openjdk-ecj/jdk/make/java/Makefile
+--- openjdk-ecj.orig/jdk/make/java/Makefile	2009-05-12 15:54:22.000000000 +0100
++++ openjdk-ecj/jdk/make/java/Makefile	2009-05-18 20:54:22.000000000 +0100
+@@ -39,7 +39,7 @@
+ # Others
+ #    Note: java_crw_demo java_hprof_demo are demos but must be delivered built in sdk
+ SUBDIRS += security npt java_crw_demo java_hprof_demo \
+-	    math awt util text applet net nio dyn \
++	    math awt util text applet net nio \
+ 	    sql rmi jar beans logging management instrument
+ 
+ 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/ecj/icedtea-pr40188.patch	Tue May 19 00:20:40 2009 +0100
@@ -0,0 +1,15 @@
+diff -Nru openjdk-ecj.orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c openjdk-ecj/jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c
+--- openjdk-ecj.orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c	2009-03-30 17:23:08.000000000 +0100
++++ openjdk-ecj/jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c	2009-05-18 19:58:36.000000000 +0100
+@@ -192,9 +192,9 @@
+     lockResult = fcntl(fd, cmd, &fl);
+     if (lockResult < 0) {
+         if ((cmd == F_SETLK64) && (errno == EAGAIN))
+-            return sun_nio_ch_FileDispatcherImpl_NO_LOCK;
++            return sun_nio_ch_FileDispatcher_NO_LOCK;
+         if (errno == EINTR)
+-            return sun_nio_ch_FileDispatcherImpl_INTERRUPTED;
++            return sun_nio_ch_FileDispatcher_INTERRUPTED;
+         JNU_ThrowIOExceptionWithLastError(env, "Lock failed");
+     }
+     return 0;