changeset 2916:ebb668a814fc

Avoid referring to the bootstrap runtime library when compiling the JDK, so as to avoid version conflicts. 2013-07-09 Andrew John Hughes <gnu.andrew@redhat.com> * Makefile.am: (ICEDTEA_ECJ_PATCHES): Add new patch. * patches/ecj/jcp-importsources.patch: Include imported JAXP sources in sourcepath when building org.jcp code. 2013-07-09 Omair Majid <omajid@redhat.com> * patches/ecj/needs-6.patch: Build additional code using -source 6. 2013-05-15 Andrew John Hughes <gnu.andrew@member.fsf.org> * Makefile.am: (ICEDTEA_BOOTSTRAP_CLASSES): Add java.sql.SQLException. (ICEDTEA_ECJ_PATCHES): Split out fphexconstants, no-sun-classes, bootstrap-tools and xbootclasspath patches from icedtea.patch. Make the latter two conditional. * javac.in: Handle -Xbootclasspath/p, -Xbootclasspath and -Xbootclasspath/a by prepending, setting or appending its value to the bootclasspath option used to ecj, respectively. * patches/ecj/icedtea.patch: Drop addition of ICEDTEA_RT in common/Rules.gmk in JDK altogether. * patches/ecj/needs-6.patch: Add java.awt Makefile.
author Andrew John Hughes <gnu.andrew@redhat.com>
date Wed, 10 Jul 2013 12:31:16 +0100
parents 8ccc2d062ef2
children eca411657872
files ChangeLog Makefile.am javac.in patches/ecj/icedtea.patch patches/ecj/jcp-importsources.patch patches/ecj/needs-6.patch
diffstat 6 files changed, 92 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Jul 09 19:32:39 2013 +0100
+++ b/ChangeLog	Wed Jul 10 12:31:16 2013 +0100
@@ -1,3 +1,34 @@
+2013-07-09  Andrew John Hughes  <gnu.andrew@redhat.com>
+
+	* Makefile.am:
+	(ICEDTEA_ECJ_PATCHES): Add new patch.
+	* patches/ecj/jcp-importsources.patch:
+	Include imported JAXP sources in sourcepath
+	when building org.jcp code.
+
+2013-07-09  Omair Majid  <omajid@redhat.com>
+
+	* patches/ecj/needs-6.patch: Build additional code
+	using -source 6.
+
+2013-05-15  Andrew John Hughes  <gnu.andrew@member.fsf.org>
+
+	* Makefile.am:
+	(ICEDTEA_BOOTSTRAP_CLASSES): Add java.sql.SQLException.
+	(ICEDTEA_ECJ_PATCHES): Split out fphexconstants,
+	no-sun-classes, bootstrap-tools and xbootclasspath
+	patches from icedtea.patch.  Make the latter two
+	conditional.
+	* javac.in: Handle -Xbootclasspath/p, -Xbootclasspath
+	and -Xbootclasspath/a by prepending, setting or appending
+	its value to the bootclasspath option used to ecj,
+	respectively.
+	* patches/ecj/icedtea.patch:
+	Drop addition of ICEDTEA_RT in common/Rules.gmk in JDK
+	altogether.
+	* patches/ecj/needs-6.patch:
+	Add java.awt Makefile.
+
 2013-07-09  Andrew John Hughes  <gnu.andrew@redhat.com>
 
 	* configure.ac: Bump to 1.11.12.
--- a/Makefile.am	Tue Jul 09 19:32:39 2013 +0100
+++ b/Makefile.am	Wed Jul 10 12:31:16 2013 +0100
@@ -77,7 +77,8 @@
 ICEDTEA_BOOTSTRAP_CLASSES = \
 	$(SHARE)/javax/swing/plaf/basic/BasicDirectoryModel.java \
 	$(SHARE)/javax/management/StandardMBean.java \
-	$(SHARE)/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java
+	$(SHARE)/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java \
+	$(SHARE)/java/sql/SQLException.java
 
 # Flags
 IT_CFLAGS=$(CFLAGS) $(ARCHFLAG)
@@ -710,7 +711,8 @@
 	patches/ecj/bootver.patch \
 	patches/ecj/getannotation-cast.patch \
 	patches/ecj/override.patch \
-	patches/ecj/xsltproc.patch
+	patches/ecj/xsltproc.patch \
+	patches/ecj/jcp-importsources.patch
 
 if DTDTYPE_QNAME
 ICEDTEA_ECJ_PATCHES += \
--- a/javac.in	Tue Jul 09 19:32:39 2013 +0100
+++ b/javac.in	Wed Jul 10 12:31:16 2013 +0100
@@ -6,7 +6,29 @@
 my $ECJ_WARNINGS="-nowarn";
 
 my @bcoption;
-push @bcoption, '-bootclasspath', glob '@abs_top_builddir@/bootstrap/jdk1.6.0/jre/lib/rt.jar'
+my @bcoptionsp = grep {$_ =~ '^-Xbootclasspath/p:' } @ARGV;
+my @bcoptions = grep {$_ =~ '^-Xbootclasspath:' } @ARGV;
+my @bcoptionsa = grep {$_ =~ '^-Xbootclasspath/a:' } @ARGV;
+my $bcp = $bcoptionsp[0];
+my $bc = $bcoptions[0];
+my $bca = $bcoptionsa[0];
+my $systembc = glob '@abs_top_builddir@/bootstrap/jdk1.6.0/jre/lib/rt.jar';
+if ($bcp)
+{
+    $bcp =~ s/^[^:]*://;
+    $systembc = join ":", $bcp, $systembc;
+}
+if ($bc)
+{
+    $bc =~ s/^[^:]*://;
+    $systembc = $bc;
+}
+if ($bca)
+{
+    $bca =~ s/^[^:]*://;
+    $systembc = join ":", $systembc, $bca;
+}
+push @bcoption, '-bootclasspath', $systembc
     unless grep {$_ eq '-bootclasspath'} @ARGV;
 my @ecj_parms = ($ECJ_WARNINGS, @bcoption);
 
--- a/patches/ecj/icedtea.patch	Tue Jul 09 19:32:39 2013 +0100
+++ b/patches/ecj/icedtea.patch	Wed Jul 10 12:31:16 2013 +0100
@@ -613,18 +613,6 @@
 diff -Nru openjdk-ecj.orig/jdk/make/common/Rules.gmk openjdk-ecj/jdk/make/common/Rules.gmk
 --- openjdk-ecj.orig/jdk/make/common/Rules.gmk	2010-05-26 09:32:35.000000000 +0100
 +++ openjdk-ecj/jdk/make/common/Rules.gmk	2010-05-26 15:02:51.000000000 +0100
-@@ -235,8 +235,9 @@
- 	  $(ECHO) "# Java sources to be compiled: (listed in file $(JAVA_SOURCE_LIST))"; \
- 	  $(CAT) $(JAVA_SOURCE_LIST); \
- 	  $(ECHO) "# Running javac:"; \
--	  $(ECHO) $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \
--	  $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \
-+	   $(ECHO) $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -bootclasspath "$(ICEDTEA_RT):$(ICEDTEA_JCE):$(CLASSDESTDIR)" \
-+         -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \
-+         $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -bootclasspath "$(ICEDTEA_RT):$(ICEDTEA_JCE):$(CLASSDESTDIR)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \
- 	fi
- 	@$(java-vm-cleanup)
- 
 @@ -302,6 +303,8 @@
  	$(JAVAH_CMD) -d $(CLASSHDRDIR)/ \
  		$(CLASSES.export) $(subst $$,\$$,$(EXPORTED_inner))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/ecj/jcp-importsources.patch	Wed Jul 10 12:31:16 2013 +0100
@@ -0,0 +1,10 @@
+--- openjdk-ecj/jdk/make/org/jcp/Makefile.orig	2013-07-10 10:02:13.715336690 +0100
++++ openjdk-ecj/jdk/make/org/jcp/Makefile	2013-07-10 10:02:55.359996584 +0100
+@@ -31,6 +31,7 @@
+ PACKAGE = org.jcp
+ PRODUCT = jcp
+ include $(BUILDDIR)/common/Defs.gmk
++SOURCEPATH = $(IMPORTSRCDIR)$(CLASSPATH_SEPARATOR)$(VPATH0.java)
+ 
+ #
+ # Files to compile
--- a/patches/ecj/needs-6.patch	Tue Jul 09 19:32:39 2013 +0100
+++ b/patches/ecj/needs-6.patch	Wed Jul 10 12:31:16 2013 +0100
@@ -46,3 +46,27 @@
  
  #
  # Files to compile
+diff --git a/make/java/awt/Makefile b/make/java/awt/Makefile
+--- openjdk-ecj/jdk/make/java/awt/Makefile
++++ openjdk-ecj/jdk/make/java/awt/Makefile
+@@ -27,6 +27,8 @@
+ PACKAGE = java.awt
+ PRODUCT = sun
+ include $(BUILDDIR)/common/Defs.gmk
++LANGUAGE_VERSION = -source 6
++CLASS_VERSION = -target 6
+ 
+ 
+ #
+diff -ruN openjdk-ecj.orig/jdk/make/java/java/Makefile openjdk-ecj/jdk/make/java/java/Makefile
+--- openjdk-ecj.orig/jdk/make/java/java/Makefile	2012-10-26 14:25:40.000000000 -0400
++++ openjdk-ecj/jdk/make/java/java/Makefile	2013-07-09 15:46:52.421633685 -0400
+@@ -33,6 +33,8 @@
+ LIBRARY = java
+ PRODUCT = java
+ include $(BUILDDIR)/common/Defs.gmk
++LANGUAGE_VERSION = -source 6
++CLASS_VERSION = -target 6
+ 
+ # windows compiler flags
+ ifeq ($(PLATFORM),windows)