public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/binutils] rawhide: Rebase to the 2.47 GNU Binutils release.
@ 2026-07-27 10:09 Nick Clifton
  0 siblings, 0 replies; only message in thread
From: Nick Clifton @ 2026-07-27 10:09 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/binutils
Branch : rawhide
Commit : 5119f9a9cd87fe6d021b6c959ee7d4812d0cf5c0
Author : Nick Clifton <nickc@redhat.com>
Date   : 2026-07-27T11:06:13+01:00
Stats  : +61/-30 in 3 file(s)
URL    : https://src.fedoraproject.org/rpms/binutils/c/5119f9a9cd87fe6d021b6c959ee7d4812d0cf5c0?branch=rawhide

Log:
Rebase to the 2.47 GNU Binutils release.

---
diff --git a/binutils-gold-s390-configure.patch b/binutils-gold-s390-configure.patch
new file mode 100644
index 0000000..45ddf74
--- /dev/null
+++ b/binutils-gold-s390-configure.patch
@@ -0,0 +1,40 @@
+# The gold linker does not build if the target list includes s390x-linux
+# but does not include s390-linux.  ie it needs the 32-bit target to be
+# enabled in order for the 64-bit target to work.  On the other hand the
+# BFD library does not support the 32-bit s390 target.  So this patch
+# "enhances" the gold configure script so that if s390x is listed, the
+# s390 target will automatically be added to the list as well.
+
+diff -upr orig/gold/configure binutils-2.47/gold/configure
+--- orig/gold/configure	2026-07-27 09:38:54.907192013 +0100
++++ binutils-2.47/gold/configure	2026-07-27 10:12:02.759629540 +0100
+@@ -5223,7 +5223,12 @@ if test -n "$enable_targets"; then
+   for targ in `echo $enable_targets | sed -e 's/,/ /g'`; do
+     result=`$ac_config_sub $targ 2>/dev/null`
+     if test -n "$result"; then
+-      canon_targets="$canon_targets $result"
++      canon_targets="$canon_targets $result" ;
++      case "$result" in
++      s390x-*)
++            canon_targets="$canon_targets s390-gnu-linux"
++	    ;;
++      esac
+     else
+       # Permit unrecognized target names, like "all".
+       canon_targets="$canon_targets $targ"
+diff -upr orig/gold/configure.ac binutils-2.47/gold/configure.ac
+--- orig/gold/configure.ac	2026-07-27 09:38:54.907192013 +0100
++++ binutils-2.47/gold/configure.ac	2026-07-27 10:18:18.480766140 +0100
+@@ -133,6 +133,12 @@ if test -n "$enable_targets"; then
+     result=`$ac_config_sub $targ 2>/dev/null`
+     if test -n "$result"; then
+       canon_targets="$canon_targets $result"
++      # Hack: Enable the s390-linux target if s390x-linux is enabled.
++      case "$result" in
++      s390x-*)
++            canon_targets="$canon_targets s390-gnu-linux"
++	    ;;
++      esac
+     else
+       # Permit unrecognized target names, like "all".
+       canon_targets="$canon_targets $targ"

diff --git a/binutils.spec b/binutils.spec
index e8d3b1f..4eafe2d 100644
--- a/binutils.spec
+++ b/binutils.spec
@@ -6,8 +6,8 @@ Name: binutils%{?_with_debug:-debug}
 # A version number of X.XX.90 is a pre-release snapshot.
 # The variable %%{source} (see below) should be set to indicate which of these
 # origins is being used.
-Version: 2.46.90
-Release: 2%{?dist}
+Version: 2.47
+Release: 1%{?dist}
 License: GPL-3.0-or-later AND (GPL-3.0-or-later WITH Bison-exception-2.2) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND BSD-3-Clause AND GFDL-1.3-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later AND LGPL-2.0-or-later
 URL: https://sourceware.org/binutils
 
@@ -122,9 +122,9 @@ URL: https://sourceware.org/binutils
 # They are a "snapshot" of the about to be released branch sources, rather than
 # a snapshot of the mainline development sources.
 
-# %%define source official-release
+%define source official-release
 # %%define source even-pre-release
-%define source odd-pre-release
+# %%define source odd-pre-release
 # %%define source snapshot
 # %%define source tarball
 
@@ -220,8 +220,8 @@ URL: https://sourceware.org/binutils
 #----------------------------------------------------------------------------
 
 %if "%{source}" == "official-release"
-Source0: https://ftp.gnu.org/gnu/binutils/binutils-with-gold-%{version}.tar.xz
-# Source0: https://ftp.gnu.org/gnu/binutils/binutils-%%{version}.tar.xz
+# Source0: https://ftp.gnu.org/gnu/binutils/binutils-with-gold-%%{version}.tar.xz
+Source0: https://ftp.gnu.org/gnu/binutils/binutils-%{version}.tar.xz
 %elif "%{source}" == "even-pre-release"
 Source0: binutils-with-gold-%{version}.tar.xz
 %elif "%{source}" == "odd-pre-release"
@@ -342,11 +342,16 @@ Patch18: binutils-gold-i386-gnu-property-notes.patch
 # Purpose:  Stop an abort when using dwp to process a file with no dwo links.
 # Lifetime: Fixed in 2.46 (maybe)
 Patch19: binutils-gold-empty-dwp.patch
+
+# Purpose:  Enable building the gold linker with the target is s390x-linux.
+# Lifetime: Fixed in 2.48 (maybe)
+Patch20: binutils-gold-s390-configure.patch
+
 %endif
 
 # Purpose:  Fix ld testsuite failures when enable_textrel is set.
 # Lifetime: Permanent.
-Patch20: binutils-ld-default-z-text.patch
+Patch21: binutils-ld-default-z-text.patch
 
 #----------------------------------------------------------------------------
 
@@ -435,15 +440,6 @@ Requires(preun): %{_sbindir}/alternatives
 # We also need rm.
 Requires(post): coreutils
 
-# %%if %%{with gold}
-# # For now we make the binutils package require the gold sub-package.
-# # That way other packages that have a requirement on "binutils" but
-# # actually want gold will not have to be changed.  In the future, if
-# # we decide to deprecate gold, we can remove this requirement, and
-# # then update other packages as necessary.
-# Requires: binutils-gold >= %%{version}
-# %%endif
-
 # On ARM EABI systems, we do want -gnueabi to be part of the
 # target triple.
 %ifnarch %{arm}
@@ -806,16 +802,12 @@ compute_global_configuration()
     CARGS="$CARGS --enable-textrel-check=error"
 %endif
 
-%if "%{source}" != "official-release"
-# Since non official release tarballs are created directly from development
-# sources they will have "development=true" set in the bfd/development.sh file.
-# This enables -Werror by default, which is a problem because there is a
-# known issue with the libiberty library:
+# The binutils build system enables -Werror by default, which is a problem
+# because there is a known issue with the libiberty library sources:
 #   libiberty/cp-demangle.c: In function 'd_demangle_callback.constprop':
 #   libiberty/cp-demangle.c:6794:1: error: stack usage might be unbounded [-Werror=stack-usage=]
-# So we explicitly disable werror for builds from these tarballs.
+# So we explicitly disable werror for builds.
     CARGS="$CARGS --enable-werror=no"
-%endif
 }
 
 # run_target_configuration()
@@ -880,12 +872,8 @@ run_target_configuration()
         #
         # Also enable the BPF target so that strip will work on BPF files.
         case $target in
-        s390*)
-            # Note - The s390-linux target is there so that the GOLD linker will
-            # build.  By default, if configured for just s390x-linux, the GOLD
-            # configure system will only include support for 64-bit targets, but
-            # the s390x gold backend uses both 32-bit and 64-bit templates.
-            TARGS="--enable-targets=s390-linux,s390x-linux,x86_64-pep,bpf-unknown-none --enable-obsolete"
+        s390x*)
+            TARGS="--enable-targets=s390x-linux,x86_64-pep,bpf-unknown-none"
             ;;
         ia64*)
             TARGS="--enable-targets=ia64-linux,x86_64-pep,bpf-unknown-none"
@@ -1509,6 +1497,9 @@ exit 0
 
 #----------------------------------------------------------------------------
 %changelog
+* Mon Jul 27 2026 Nick Clifton <nickc@redhat.com> - 2.47-1
+- Rebase to 2.47 release.
+
 * Wed Jul 15 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.46.90-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
 

diff --git a/sources b/sources
index 576a0ad..191b73d 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (binutils-2.46.90.tar.xz) = 9127deef3457b067640f3d210eca7dd7332016b2d7994d81d32e9fe3bcc85f04a26c8a3e5b97c67c01063c862a3785eec703a13cef6e3e72c140b3a92f549ca3
+SHA512 (binutils-2.47.tar.xz) = 3126a1064374d8da40d4d70630c204ed1e75d542c447d53fca9778c7ceff095c28e9b445e15a313fef9729082d7966471ee6b5b715d479aa6d568528743e1d98
 SHA512 (binutils-2.19.50.0.1-output-format.sed) = 2f8686b0c8af13c98cda056824c2820416f6e2d003f70b78ccf5314525b9ee3684d421dfa83e638a2d42d06ea4d4bdaf5226b64d6ec26f7ff59c44ffb2a23dd2
 SHA512 (binutils-with-gold-2.46.50-f85ff0c4bce.tar.xz) = 8dd6f2dcb7d097c5e26793957f62f6209090fe037eb481e29ad6d3757aa75d4cabab662f13ec6238282c930b37df0492ae0495c5956c57140c826678d1977400

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-07-27 10:09 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-27 10:09 [rpms/binutils] rawhide: Rebase to the 2.47 GNU Binutils release Nick Clifton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox