changeset 2717:b68a0fe00baa

PR1765: Boot JDK on ppc64le uses differently named arch directory to final build 2014-05-14 Andrew John Hughes <gnu.andrew@member.fsf.org> PR1765: Boot JDK on ppc64le uses differently named arch directory to final build * Makefile.am: (bootstrap-directory-stage1): Handle ppc64le boot JDK using a different arch directory to the final build. Make output more verbose. * NEWS: Updated.
author Andrew John Hughes <gnu_andrew@member.fsf.org>
date Thu, 05 Jun 2014 16:45:51 +0100
parents 3c98e219395e
children 68fba62e38ab
files ChangeLog Makefile.am NEWS
diffstat 3 files changed, 31 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Thu Jun 05 16:44:44 2014 +0100
+++ b/ChangeLog	Thu Jun 05 16:45:51 2014 +0100
@@ -1,3 +1,13 @@
+2014-05-14  Andrew John Hughes  <gnu.andrew@member.fsf.org>
+
+	PR1765: Boot JDK on ppc64le uses differently named
+	arch directory to final build
+	* Makefile.am:
+	(bootstrap-directory-stage1): Handle ppc64le boot
+	JDK using a different arch directory to the final
+	build. Make output more verbose.
+	* NEWS: Updated.
+
 2014-05-13  Andrew John Hughes  <gnu.andrew@member.fsf.org>
 
 	PR1763: ppc64 JIT doesn't support class data sharing
--- a/Makefile.am	Thu Jun 05 16:44:44 2014 +0100
+++ b/Makefile.am	Thu Jun 05 16:45:51 2014 +0100
@@ -1620,32 +1620,38 @@
 # bootstrap/stage1
 stamps/bootstrap-directory-stage1.stamp: stamps/native-ecj.stamp
 	mkdir -p $(STAGE1_BOOT_DIR)/bin stamps/
-	ln -sf $(JAVA) $(STAGE1_BOOT_DIR)/bin/java
+	ln -sfv $(JAVA) $(STAGE1_BOOT_DIR)/bin/java
 if JAVAH_SUPPORTS_X_OPTIONS
-	ln -sf $(JAVAH) $(STAGE1_BOOT_DIR)/bin/javah
+	ln -sfv $(JAVAH) $(STAGE1_BOOT_DIR)/bin/javah
 else
-	ln -sf ../../../javah $(STAGE1_BOOT_DIR)/bin/javah
+	ln -sfv ../../../javah $(STAGE1_BOOT_DIR)/bin/javah
 endif
-	ln -sf $(RMIC) $(STAGE1_BOOT_DIR)/bin/rmic
-	ln -sf $(JAR) $(STAGE1_BOOT_DIR)/bin/jar
-	ln -sf $(NATIVE2ASCII) $(STAGE1_BOOT_DIR)/bin/native2ascii
-	ln -sf ../../../javac $(STAGE1_BOOT_DIR)/bin/javac
-	ln -sf ../../../javap $(STAGE1_BOOT_DIR)/bin/javap
+	ln -sfv $(RMIC) $(STAGE1_BOOT_DIR)/bin/rmic
+	ln -sfv $(JAR) $(STAGE1_BOOT_DIR)/bin/jar
+	ln -sfv $(NATIVE2ASCII) $(STAGE1_BOOT_DIR)/bin/native2ascii
+	ln -sfv ../../../javac $(STAGE1_BOOT_DIR)/bin/javac
+	ln -sfv ../../../javap $(STAGE1_BOOT_DIR)/bin/javap
 	mkdir -p $(STAGE1_BOOT_DIR)/lib/modules
 	mkdir -p $(STAGE1_BOOT_DIR)/jre/lib && \
 	cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar $(STAGE1_BOOT_RUNTIME) && \
 	chmod u+w $(STAGE1_BOOT_RUNTIME)
 	mkdir -p $(STAGE1_BOOT_DIR)/lib && \
 	if [ -e $(SYSTEM_JDK_DIR)/lib/tools.jar ] ; then \
-	  ln -sf $(SYSTEM_JDK_DIR)/lib/tools.jar $(STAGE1_BOOT_DIR)/lib/tools.jar ; \
+	  ln -sfv $(SYSTEM_JDK_DIR)/lib/tools.jar $(STAGE1_BOOT_DIR)/lib/tools.jar ; \
 	else \
-	  ln -sf $(STAGE1_BOOT_RUNTIME) $(STAGE1_BOOT_DIR)/lib/tools.jar ; \
+	  ln -sfv $(STAGE1_BOOT_RUNTIME) $(STAGE1_BOOT_DIR)/lib/tools.jar ; \
 	fi
-	ln -sf $(SYSTEM_JDK_DIR)/jre/lib/$(JRE_ARCH_DIR) \
-	  $(STAGE1_BOOT_DIR)/jre/lib/ && \
+# Workaround some older ppc64le builds installing to 'ppc64le' rather than 'ppc64'
+	if test -d $(SYSTEM_JDK_DIR)/jre/lib/ppc64le ; then \
+	  ln -sfv $(SYSTEM_JDK_DIR)/jre/lib/ppc64le \
+	    $(STAGE1_BOOT_DIR)/jre/lib/$(JRE_ARCH_DIR) ; \
+	else \
+	  ln -sfv $(SYSTEM_JDK_DIR)/jre/lib/$(JRE_ARCH_DIR) \
+	    $(STAGE1_BOOT_DIR)/jre/lib/ ; \
+	fi
 	if ! test -d $(STAGE1_BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
 	  then \
-	  ln -sf ./$(JRE_ARCH_DIR) \
+	  ln -sfv ./$(JRE_ARCH_DIR) \
 	    $(STAGE1_BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
 	fi
 	mkdir -p $(STAGE1_BOOT_DIR)/include && \
@@ -1653,7 +1659,7 @@
 	  test -r $$i | continue; \
 	  i=`basename $$i`; \
 	  rm -f $(STAGE1_BOOT_DIR)/include/$$i; \
-	  ln -s $(SYSTEM_JDK_DIR)/include/$$i $(STAGE1_BOOT_DIR)/include/$$i; \
+	  ln -sv $(SYSTEM_JDK_DIR)/include/$$i $(STAGE1_BOOT_DIR)/include/$$i; \
 	done;
 	mkdir -p stamps
 	touch $@
--- a/NEWS	Thu Jun 05 16:44:44 2014 +0100
+++ b/NEWS	Thu Jun 05 16:45:51 2014 +0100
@@ -275,6 +275,7 @@
   - PR1756: Bootstrap with IcedTea broken
   - PR1758: Support PPC64 JIT on ppc64le
   - PR1763: ppc64 JIT doesn't support class data sharing
+  - PR1765: Boot JDK on ppc64le uses differently named arch directory to final build
 * PPC & AIX port
   - Add AIX-specific build instructions to README-ppc.html
   - Added AIX as testing platform for more jtreg tests written in shell-script