gnu: binutils: Update to 2.37.

* gnu/packages/patches/binutils-loongson-workaround.patch: Adjust for upstream
changes.
* gnu/packages/patches/binutils-libiberty-endianness-bug.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (binutils): Update to 2.37.
[source](patches): Remove obsolete patch.
This commit is contained in:
Marius Bakke 2021-07-19 20:44:27 +02:00
parent e045fd7ce2
commit 2fa26446a1
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
4 changed files with 10 additions and 48 deletions

View file

@ -878,7 +878,6 @@ dist_patch_DATA = \
%D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/bidiv-update-fribidi.patch \
%D%/packages/patches/binutils-boot-2.20.1a.patch \
%D%/packages/patches/binutils-libiberty-endianness-bug.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/binutils-mingw-w64-timestamp.patch \
%D%/packages/patches/binutils-mingw-w64-deterministic.patch \

View file

@ -508,16 +508,15 @@ (define-public gnu-make-4.2
(define-public binutils
(package
(name "binutils")
(version "2.36.1")
(version "2.37")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/binutils/binutils-"
version ".tar.bz2"))
(sha256
(base32
"18ypqr5y48vxqg9mkz1c47798jp1xb1d4vfpmfq8vkihkvkx4jsv"))
(patches (search-patches "binutils-libiberty-endianness-bug.patch"
"binutils-loongson-workaround.patch"))))
"1m3b2rdfv1dmdpd0bzg1hy7i8a2qng53szc6livyi3nh6101mz37"))
(patches (search-patches "binutils-loongson-workaround.patch"))))
(build-system gnu-build-system)
;; TODO: Add dependency on zlib + those for Gold.

View file

@ -1,36 +0,0 @@
This patch fixes a bug exposed when running the libiberty test suite on
big-endian machines.
Original bug report:
https://sourceware.org/bugzilla/show_bug.cgi?id=27751
Follow-ups:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100177
https://gcc.gnu.org/pipermail/gcc-patches/2021-April/568314.html
---
libiberty/rust-demangle.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/libiberty/rust-demangle.c b/libiberty/rust-demangle.c
index 6fd8f6a4db0..848563fa3c3 100644
--- a/libiberty/rust-demangle.c
+++ b/libiberty/rust-demangle.c
@@ -1253,9 +1253,12 @@ demangle_const_char (struct rust_demangler *rdm)
else if (value == '\n')
PRINT ("\\n");
else if (value > ' ' && value < '~')
- /* Rust also considers many non-ASCII codepoints to be printable, but
- that logic is not easily ported to C. */
- print_str (rdm, (char *) &value, 1);
+ {
+ /* Rust also considers many non-ASCII codepoints to be printable, but
+ that logic is not easily ported to C. */
+ char c = value;
+ print_str (rdm, &c, 1);
+ }
else
{
PRINT ("\\u{");
--
2.31.1

View file

@ -4,22 +4,22 @@ Patch by Mark H Weaver <mhw@netris.org>.
--- binutils/gas/config/tc-mips.c.orig 2012-09-04 10:21:03.000000000 -0400
+++ binutils/gas/config/tc-mips.c 2013-10-06 02:23:21.651983768 -0400
@@ -910,10 +910,10 @@
@@ -934,10 +934,10 @@ enum fix_vr4120_class
};
/* ...likewise -mfix-loongson2f-jump. */
-static bfd_boolean mips_fix_loongson2f_jump;
+static bfd_boolean mips_fix_loongson2f_jump = FALSE;
-static bool mips_fix_loongson2f_jump;
+static bool mips_fix_loongson2f_jump = FALSE;
/* ...likewise -mfix-loongson2f-nop. */
-static bfd_boolean mips_fix_loongson2f_nop;
+static bfd_boolean mips_fix_loongson2f_nop = TRUE;
-static bool mips_fix_loongson2f_nop;
+static bool mips_fix_loongson2f_nop = FALSE;
/* True if -mfix-loongson2f-nop or -mfix-loongson2f-jump passed. */
static bfd_boolean mips_fix_loongson2f;
static bool mips_fix_loongson2f;
--- binutils/gas/testsuite/gas/mips/mips.exp.orig 2012-09-04 10:17:13.000000000 -0400
+++ binutils/gas/testsuite/gas/mips/mips.exp 2013-10-06 02:23:21.663983768 -0400
@@ -91,6 +91,12 @@
@@ -110,6 +110,12 @@ proc mips_arch_init {} {
# Catch because the variable won't be set the first time through.
catch {unset mips_arches}