Fix BuildRequires for non-gold architectures

bison is only brought in for gold architectures right now, but
non-gold architectures need it too. Make the dependency
unconditional, which makes it possible to build on riscv64.

While at it, clean up a few related things.

A BuildRequires on gcc-c++ already exists a few lines below
for the non-clang case, and obviously we don't need it when
building with clang.

m4 is not used directly by us, but rather by bison. Luckily
the bison package correctly depends on m4, so we don't need
to bring it in ourselves.

Resolves: RHEL-85855

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
This commit is contained in:
Andrea Bolognani 2025-03-21 15:17:59 +01:00
parent dff9bfc5c8
commit 6171205299

View File

@ -2,7 +2,7 @@
Summary: A GNU collection of binary utilities Summary: A GNU collection of binary utilities
Name: binutils%{?_with_debug:-debug} Name: binutils%{?_with_debug:-debug}
Version: 2.41 Version: 2.41
Release: 53%{?dist} Release: 54%{?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 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 URL: https://sourceware.org/binutils
@ -400,6 +400,10 @@ Provides: bundled(libiberty)
# Perl, sed and touch are all used in the %%prep section of this spec file. # Perl, sed and touch are all used in the %%prep section of this spec file.
BuildRequires: autoconf, automake, perl, sed, coreutils, make BuildRequires: autoconf, automake, perl, sed, coreutils, make
# bison is used to generate either gold/yyscript.c or ld/ldgram.c depending
# on the build architecture.
BuildRequires: bison
%if %{with clang} %if %{with clang}
BuildRequires: clang compiler-rt BuildRequires: clang compiler-rt
%else %else
@ -407,8 +411,8 @@ BuildRequires: gcc
%endif %endif
%if %{with gold} %if %{with gold}
# Gold needs bison in order to build gold/yyscript.c. The GOLD testsuite needs a static libc++ # The GOLD testsuite needs a static libc++
BuildRequires: bison, m4, gcc-c++, libstdc++-static BuildRequires: libstdc++-static
%if ! %{with clang} %if ! %{with clang}
BuildRequires: gcc-c++ BuildRequires: gcc-c++
@ -1416,6 +1420,9 @@ exit 0
#---------------------------------------------------------------------------- #----------------------------------------------------------------------------
%changelog %changelog
* Wed Apr 02 2025 Andrea Bolognani <abologna@redhat.com> - 2.41-54
- Fix BuildRequires for non-gold architectures. (RHEL-85855)
* Fri Feb 07 2025 Nick Clifton <nickc@redhat.com> - 2.41-53 * Fri Feb 07 2025 Nick Clifton <nickc@redhat.com> - 2.41-53
- Fix seg-fault in AArch64 linker when building u-boot. (RHEL-78233) - Fix seg-fault in AArch64 linker when building u-boot. (RHEL-78233)