Blame SOURCES/hotspot-remove-debuglink.patch

045ef6
Remove unnecessary .gnu_debuglink sections from libjvm
045ef6
045ef6
The .gnu_debuglink section indicates which file contains the debuginfo. This
045ef6
is not needed if we not stripping the shared object.
045ef6
045ef6
RPM's debuginfo extraction code will add the right file links automatically. As
045ef6
it is, RPM copies over the .gnu_debuglink link to the debug info file. Without
045ef6
this patch, the debug info file also ends up containing the .gnu_debuglink
045ef6
section pointing to a missing (and not needed) file.
045ef6
045ef6
diff --git a/make/linux/makefiles/jsig.make b/make/linux/makefiles/jsig.make
045ef6
--- openjdk/hotspot/make/linux/makefiles/jsig.make
045ef6
+++ openjdk/hotspot/make/linux/makefiles/jsig.make
045ef6
@@ -57,14 +57,15 @@
045ef6
                          $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) $(EXTRA_CFLAGS) -o $@ $< -ldl
045ef6
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
045ef6
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
045ef6
+  ifeq ($(STRIP_POLICY),all_strip)
045ef6
 	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
045ef6
-  ifeq ($(STRIP_POLICY),all_strip)
045ef6
 	$(QUIETLY) $(STRIP) $@
045ef6
   else
045ef6
     ifeq ($(STRIP_POLICY),min_strip)
045ef6
+	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
045ef6
 	$(QUIETLY) $(STRIP) -g $@
045ef6
+    endif
045ef6
     # implied else here is no stripping at all
045ef6
-    endif
045ef6
   endif
045ef6
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
045ef6
 	$(ZIPEXE) -q -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO)
045ef6
diff --git a/make/linux/makefiles/saproc.make b/make/linux/makefiles/saproc.make
045ef6
--- openjdk/hotspot/make/linux/makefiles/saproc.make
045ef6
+++ openjdk/hotspot/make/linux/makefiles/saproc.make
045ef6
@@ -99,14 +99,15 @@
045ef6
 	           -lthread_db
045ef6
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
045ef6
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO)
045ef6
+  ifeq ($(STRIP_POLICY),all_strip)
045ef6
 	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@
045ef6
-  ifeq ($(STRIP_POLICY),all_strip)
045ef6
 	$(QUIETLY) $(STRIP) $@
045ef6
   else
045ef6
     ifeq ($(STRIP_POLICY),min_strip)
045ef6
+	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@
045ef6
 	$(QUIETLY) $(STRIP) -g $@
045ef6
+    endif
045ef6
     # implied else here is no stripping at all
045ef6
-    endif
045ef6
   endif
045ef6
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
045ef6
 	$(ZIPEXE) -q -y $(LIBSAPROC_DIZ) $(LIBSAPROC_DEBUGINFO)
045ef6
diff --git a/make/linux/makefiles/vm.make b/make/linux/makefiles/vm.make
045ef6
--- openjdk/hotspot/make/linux/makefiles/vm.make
045ef6
+++ openjdk/hotspot/make/linux/makefiles/vm.make
045ef6
@@ -358,14 +358,15 @@
045ef6
 
045ef6
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
045ef6
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO)
045ef6
-	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
045ef6
   ifeq ($(STRIP_POLICY),all_strip)
045ef6
 	$(QUIETLY) $(STRIP) $@
045ef6
+	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
045ef6
   else
045ef6
     ifeq ($(STRIP_POLICY),min_strip)
045ef6
 	$(QUIETLY) $(STRIP) -g $@
045ef6
+	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
045ef6
+    endif
045ef6
     # implied else here is no stripping at all
045ef6
-    endif
045ef6
   endif
045ef6
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
045ef6
 	$(ZIPEXE) -q -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO)