Hello community,

here is the log from the commit of package gdb for openSUSE:Factory checked in 
at 2019-05-25 13:16:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gdb (Old)
 and      /work/SRC/openSUSE:Factory/.gdb.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gdb"

Sat May 25 13:16:31 2019 rev:125 rq:704721 version:8.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/gdb/gdb.changes  2019-01-26 22:21:16.622910966 
+0100
+++ /work/SRC/openSUSE:Factory/.gdb.new.5148/gdb.changes        2019-05-25 
13:16:33.880418443 +0200
@@ -1,0 +2,7 @@
+Wed May 22 08:44:01 UTC 2019 - Martin Liška <mli...@suse.cz>
+
+- Add gdb-gcc9-fix-build-with-latest-GCC-9.0-tree.patch and
+  gdb-gcc9-warning-on-elf32-arm.c-elf32_arm_final_link.patch
+  in order to fix build with GCC9.
+
+-------------------------------------------------------------------

New:
----
  gdb-gcc9-fix-build-with-latest-GCC-9.0-tree.patch
  gdb-gcc9-warning-on-elf32-arm.c-elf32_arm_final_link.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gdb.spec ++++++
--- /var/tmp/diff_new_pack.c2Q3aS/_old  2019-05-25 13:16:45.084414277 +0200
+++ /var/tmp/diff_new_pack.c2Q3aS/_new  2019-05-25 13:16:45.088414275 +0200
@@ -13,7 +13,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -244,6 +244,8 @@
 Patch1004:      gdb-fix-buf-overflow.diff
 Patch1005:      gdb-7.10-swo18929.patch
 Patch1007:      gdb-fix-s390-build.diff
+Patch1008:      gdb-gcc9-fix-build-with-latest-GCC-9.0-tree.patch
+Patch1009:      gdb-gcc9-warning-on-elf32-arm.c-elf32_arm_final_link.patch
 
 # Backports from master
 Patch2000:      gdb-fix-crash-when-reading-core.patch
@@ -570,6 +572,8 @@
 %patch1004 -p1
 %patch1005 -p1
 %patch1007 -p1
+%patch1008 -p1
+%patch1009 -p1
 
 %patch2000 -p1
 %patch2001 -p1

++++++ gdb-gcc9-fix-build-with-latest-GCC-9.0-tree.patch ++++++
>From 7406a50077773e78282a495cb32ef5b8179f6a33 Mon Sep 17 00:00:00 2001
From: Dimitar Dimitrov <dimi...@dinux.eu>
Date: Mon, 17 Dec 2018 21:30:52 +0200
Subject: [PATCH] Fix build with latest GCC 9.0 tree

A recent patch [1] to fix a GCC PR [2] actually broke the GDB build.
To fix, remove the stack pointer clobber. GCC will ignore the clobber
marker, and will not save or restore the stack pointer.

I ran "make check-gdb" on x86_64 to ensure there are no regressions.

gdb/ChangeLog:

2018-12-17  Dimitar Dimitrov  <dimi...@dinux.eu>

        * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove sp clobbers.

[1] https://gcc.gnu.org/ml/gcc-patches/2018-12/msg00532.html
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813

Signed-off-by: Dimitar Dimitrov <dimi...@dinux.eu>
---
 gdb/ChangeLog          | 5 +++++
 gdb/nat/linux-ptrace.c | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/gdb/nat/linux-ptrace.c b/gdb/nat/linux-ptrace.c
index d4c1b8f9fd..187cfeb9bc 100644
--- a/gdb/nat/linux-ptrace.c
+++ b/gdb/nat/linux-ptrace.c
@@ -161,14 +161,14 @@ linux_ptrace_test_ret_to_nx (void)
                        ".globl linux_ptrace_test_ret_to_nx_instr;"
                        "linux_ptrace_test_ret_to_nx_instr:"
                        "ret"
-                       : : "r" (return_address) : "%esp", "memory");
+                       : : "r" (return_address) : "memory");
 #elif defined __x86_64__
          asm volatile ("pushq %0;"
                        ".globl linux_ptrace_test_ret_to_nx_instr;"
                        "linux_ptrace_test_ret_to_nx_instr:"
                        "ret"
                        : : "r" ((uint64_t) (uintptr_t) return_address)
-                       : "%rsp", "memory");
+                       : "memory");
 #else
 # error "!__i386__ && !__x86_64__"
 #endif
-- 
2.21.0

++++++ gdb-gcc9-warning-on-elf32-arm.c-elf32_arm_final_link.patch ++++++
>From 453f8e1e4918171bc12e4d03aab7ee8360dfcfef Mon Sep 17 00:00:00 2001
From: Sergio Durigan Junior <sergi...@redhat.com>
Date: Mon, 21 Jan 2019 15:36:41 -0500
Subject: [PATCH] Fix GCC9 warning on elf32-arm.c:elf32_arm_final_link_relocate

Fedora Rawhide has just switched to GCC9, and now GDB doesn't compile
because of a BFD warning:

  BUILDSTDERR: ../../bfd/elf32-arm.c: In function 
'elf32_arm_final_link_relocate':
  BUILDSTDERR: ../../bfd/elf32-arm.c:10907:10: error: absolute value function 
'labs' given an argument of type 'bfd_signed_vma' {aka 'long long int'} but has 
parameter of type 'long int' which may cause truncation of value 
[-Werror=absolute-value]
  BUILDSTDERR: 10907 |  value = labs (relocation);
  BUILDSTDERR:       |          ^~~~

You can take a look at the full build log here:

  https://kojipkgs.fedoraproject.org//work/tasks/4828/32174828/build.log

The fix is (apparently) simple: instead of using 'labs', we should use
'llabs', since we're passing a 'bfd_signed_vma' to it, which is at
least a 'long long int', as far as I have checked.  This is what this
patch does.

bfd/ChangeLog:
2019-01-25  Sergio Durigan Junior  <sergi...@redhat.com>

        * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
        of 'labs' (and fix GCC warning).
---
 bfd/ChangeLog   | 5 +++++
 bfd/elf32-arm.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index 53baea269b..28ee9d55a8 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -10904,7 +10904,7 @@ elf32_arm_final_link_relocate (reloc_howto_type *       
    howto,
 
        /* PR 21523: Use an absolute value.  The user of this reloc will
           have already selected an ADD or SUB insn appropriately.  */
-       value = labs (relocation);
+       value = llabs (relocation);
 
        if (value >= 0x1000)
          return bfd_reloc_overflow;
-- 
2.21.0


Reply via email to