changeset 2585:acb85bf39e53

PR1140: Unnecessary diz files should not be installed 2012-08-22 Andrew John Hughes <gnu_andrew@member.fsf.org> PR1140: Unnecessary diz files should not be installed * Makefile.am: (ICEDTEA_PATCHES): Add new patch from IcedTea7 HEAD. * NEWS: Updated. * patches/no_diz_files.patch: Backported from IcedTea7 HEAD. Make sure jdk doesn't create diz files when building with no_strip.
author Andrew John Hughes <gnu_andrew@member.fsf.org>
date Fri, 24 Aug 2012 00:48:55 +0100
parents 7c4551c5d837
children 60c41b88775a
files ChangeLog Makefile.am NEWS patches/no_diz_files.patch
diffstat 4 files changed, 157 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed Aug 22 23:40:32 2012 +0100
+++ b/ChangeLog	Fri Aug 24 00:48:55 2012 +0100
@@ -1,3 +1,14 @@
+2012-08-22  Andrew John Hughes  <gnu_andrew@member.fsf.org>
+
+	PR1140: Unnecessary diz files should not be installed
+	* Makefile.am:
+	(ICEDTEA_PATCHES): Add new patch from
+	IcedTea7 HEAD.
+	* NEWS: Updated.
+	* patches/no_diz_files.patch: Backported
+	from IcedTea7 HEAD.  Make sure jdk doesn't
+	create diz files when building with no_strip.
+
 2012-08-22  Andrew John Hughes  <gnu_andrew@member.fsf.org>
 
 	* INSTALL: Update with new options.
--- a/Makefile.am	Wed Aug 22 23:40:32 2012 +0100
+++ b/Makefile.am	Fri Aug 24 00:48:55 2012 +0100
@@ -243,7 +243,8 @@
 ICEDTEA_PATCHES = \
 	patches/werror-jdk.patch \
 	patches/werror-langtools.patch \
-	patches/werror-hotspot.patch
+	patches/werror-hotspot.patch \
+	patches/no_diz_files.patch
 
 # Conditional patches
 
--- a/NEWS	Wed Aug 22 23:40:32 2012 +0100
+++ b/NEWS	Fri Aug 24 00:48:55 2012 +0100
@@ -20,6 +20,7 @@
     are actually missing from the boot JDK
   - PR1095: Add configure option for -Werror
   - PR1137: Allow JARs to be optionally compressed by setting COMPRESS_JARS
+  - PR1140: Unnecessary diz files should not be installed
 * JamVM
   - ARMv6 armhf: Changes for Raspbian (Raspberry Pi)
   - PPC: Don't use lwsync if it isn't supported
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/no_diz_files.patch	Fri Aug 24 00:48:55 2012 +0100
@@ -0,0 +1,143 @@
+diff --git a/make/common/Library.gmk b/make/common/Library.gmk
+--- openjdk/jdk/make/common/Library.gmk
++++ openjdk/jdk/make/common/Library.gmk
+@@ -269,6 +269,7 @@
+   ifneq ($(PLATFORM), macosx)
+     ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+       ifeq ($(LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS),1)
++      ifneq ($(STRIP_POLICY),no_strip)
+         ifeq ($(PLATFORM), solaris)
+ # gobjcopy crashes on "empty" section headers with the SHF_ALLOC flag set.
+ # Use $(FIX_EMPTY_SEC_HDR_FLAGS) to clear the SHF_ALLOC flag (if set) from
+@@ -279,19 +280,20 @@
+ #
+ # $(OBJCOPY) --add-gnu-debuglink=... corrupts SUNW_* sections.
+ # Use $(ADD_GNU_DEBUGLINK) until a fixed $(OBJCOPY) is available.
+-	(set -e ; \
+-	 $(CD) $(@D) ; \
+-	 $(FIX_EMPTY_SEC_HDR_FLAGS) $(@F) ; \
+-	 $(OBJCOPY) --only-keep-debug $(@F) $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
+-         $(ADD_GNU_DEBUGLINK) $(LIB_PREFIX)$(LIBRARY).debuginfo $(@F) ; \
+-	)
++	  (set -e ; \
++	   $(CD) $(@D) ; \
++	   $(FIX_EMPTY_SEC_HDR_FLAGS) $(@F) ; \
++	   $(OBJCOPY) --only-keep-debug $(@F) $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
++           $(ADD_GNU_DEBUGLINK) $(LIB_PREFIX)$(LIBRARY).debuginfo $(@F) ; \
++	  )
+         else # PLATFORM != solaris
+-	(set -e ; \
+-	 $(CD) $(@D) ; \
+-	 $(OBJCOPY) --only-keep-debug $(@F) $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
+-	 $(OBJCOPY) --add-gnu-debuglink=$(LIB_PREFIX)$(LIBRARY).debuginfo $(@F) ; \
+-	)
+-        endif # PLATFORM == solaris
++	  (set -e ; \
++	   $(CD) $(@D) ; \
++	   $(OBJCOPY) --only-keep-debug $(@F) $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
++	   $(OBJCOPY) --add-gnu-debuglink=$(LIB_PREFIX)$(LIBRARY).debuginfo $(@F) ; \
++	  )
++          endif # PLATFORM == solaris
++        endif # STRIP_POLICY != no_strip
+         ifeq ($(STRIP_POLICY),all_strip)
+ 	  $(STRIP) $@
+         else
+@@ -305,12 +307,14 @@
+           # implied else here is no stripping at all
+           endif
+         endif
+-        ifeq ($(ZIP_DEBUGINFO_FILES),1)
+-	  (set -e ; \
+-	   $(CD) $(@D) ; \
+-	   $(ZIPEXE) -q $(LIB_PREFIX)$(LIBRARY).diz $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
+-	   $(RM) $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
+-	  )
++        ifneq ($(STRIP_POLICY),no_strip)
++          ifeq ($(ZIP_DEBUGINFO_FILES),1)
++	    (set -e ; \
++	     $(CD) $(@D) ; \
++	     $(ZIPEXE) -q $(LIB_PREFIX)$(LIBRARY).diz $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
++	     $(RM) $(LIB_PREFIX)$(LIBRARY).debuginfo ; \
++	    )
++          endif
+         endif
+       endif # LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
+     endif # ENABLE_FULL_DEBUG_SYMBOLS
+diff --git a/make/common/Program.gmk b/make/common/Program.gmk
+--- openjdk/jdk/make/common/Program.gmk
++++ openjdk/jdk/make/common/Program.gmk
+@@ -276,7 +276,8 @@
+   ifneq ($(PLATFORM), macosx)
+     ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+       ifeq ($(PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS),1)
+-        ifeq ($(PLATFORM), solaris)
++        ifneq ($(STRIP_POLICY),no_strip)
++          ifeq ($(PLATFORM), solaris)
+ # gobjcopy crashes on "empty" section headers with the SHF_ALLOC flag set.
+ # Use $(FIX_EMPTY_SEC_HDR_FLAGS) to clear the SHF_ALLOC flag (if set) from
+ # empty section headers until a fixed $(OBJCOPY) is available.
+@@ -286,19 +287,20 @@
+ #
+ # $(OBJCOPY) --add-gnu-debuglink=... corrupts SUNW_* sections.
+ # Use $(ADD_GNU_DEBUGLINK) until a fixed $(OBJCOPY) is available.
+-	(set -e ; \
+-	 $(CD) $(@D) ; \
+-	 $(FIX_EMPTY_SEC_HDR_FLAGS) $(@F) ; \
+-	 $(OBJCOPY) --only-keep-debug $(@F) $(@F).debuginfo ; \
+-         $(ADD_GNU_DEBUGLINK) $(@F).debuginfo $(@F) ; \
+-	)
+-        else # PLATFORM != solaris
+-	(set -e ; \
+-	 $(CD) $(@D) ; \
+-	 $(OBJCOPY) --only-keep-debug $(@F) $(@F).debuginfo ; \
+-	 $(OBJCOPY) --add-gnu-debuglink=$(@F).debuginfo $(@F) ; \
+-	)
+-        endif # PLATFORM == solaris
++	  (set -e ; \
++	   $(CD) $(@D) ; \
++	   $(FIX_EMPTY_SEC_HDR_FLAGS) $(@F) ; \
++	   $(OBJCOPY) --only-keep-debug $(@F) $(@F).debuginfo ; \
++           $(ADD_GNU_DEBUGLINK) $(@F).debuginfo $(@F) ; \
++	  )
++          else # PLATFORM != solaris
++	  (set -e ; \
++	   $(CD) $(@D) ; \
++	   $(OBJCOPY) --only-keep-debug $(@F) $(@F).debuginfo ; \
++	   $(OBJCOPY) --add-gnu-debuglink=$(@F).debuginfo $(@F) ; \
++	  )
++          endif # PLATFORM == solaris
++        endif
+         ifeq ($(STRIP_POLICY),all_strip)
+ 	  $(STRIP) $@
+         else
+@@ -312,17 +314,19 @@
+           # implied else here is no stripping at all
+           endif
+         endif
+-        ifeq ($(ZIP_DEBUGINFO_FILES),1)
+-	  (set -e ; \
+-	   $(CD) $(@D) ; \
+-	   $(ZIPEXE) -q $(@F).diz $(@F).debuginfo ; \
+-	   $(RM) $(@F).debuginfo ; \
+-	  )
+-          # save ZIP'ed debug info with rest of the program's build artifacts
+-	  $(MV) $@.diz $(OBJDIR)
+-        else
+-          # save debug info with rest of the program's build artifacts
+-	  $(MV) $@.debuginfo $(OBJDIR)
++        ifneq ($(STRIP_POLICY),no_strip)
++          ifeq ($(ZIP_DEBUGINFO_FILES),1)
++	    (set -e ; \
++	     $(CD) $(@D) ; \
++	     $(ZIPEXE) -q $(@F).diz $(@F).debuginfo ; \
++	     $(RM) $(@F).debuginfo ; \
++	    )
++            # save ZIP'ed debug info with rest of the program's build artifacts
++	    $(MV) $@.diz $(OBJDIR)
++          else
++            # save debug info with rest of the program's build artifacts
++	    $(MV) $@.debuginfo $(OBJDIR)
++          endif
+         endif
+       endif # PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS
+     endif # ENABLE_FULL_DEBUG_SYMBOLS