public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/cross-binutils] rawhide: 2.47
@ 2026-09-08 8:53 Peter Robinson
0 siblings, 0 replies; only message in thread
From: Peter Robinson @ 2026-09-08 8:53 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/cross-binutils
Branch : rawhide
Commit : 783d7f7f496af2c24dbef2ee2c9bbd2caf0512f3
Author : Peter Robinson <pbrobinson@gmail.com>
Date : 2026-09-08T09:53:27+01:00
Stats : +113/-546 in 7 file(s)
URL : https://src.fedoraproject.org/rpms/cross-binutils/c/783d7f7f496af2c24dbef2ee2c9bbd2caf0512f3?branch=rawhide
Log:
2.47
---
diff --git a/binutils-LTO-restore-wrapper-symbol.patch b/binutils-LTO-restore-wrapper-symbol.patch
deleted file mode 100644
index 946e114..0000000
--- a/binutils-LTO-restore-wrapper-symbol.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-From 3221c470f0765886a49a1a3d2ec602e4104a377b Mon Sep 17 00:00:00 2001
-From: "H.J. Lu" <hjl.tools@gmail.com>
-Date: Fri, 2 Aug 2024 19:52:00 -0700
-Subject: [PATCH] LTO: Restore the wrapper symbol check for standard function
-
-Call unwrap_hash_lookup to restore the wrapper symbol check for standard
-function since reference to standard function may not show up in LTO
-symbol table:
-
-[hjl@gnu-tgl-3 pr31956-3]$ nm foo.o
-00000000 T main
- U __real_malloc
-00000000 T __wrap_malloc
-[hjl@gnu-tgl-3 pr31956-3]$ lto-dump -list foo.o
-Type Visibility Size Name
-function default 0 malloc
-function default 0 __real_malloc
-function default 3 main
-function default 5 __wrap_malloc
-[hjl@gnu-tgl-3 pr31956-3]$ make
-gcc -O2 -flto -Wall -c -o foo.o foo.c
-gcc -Wl,--wrap=malloc -O2 -flto -Wall -o x foo.o
-/usr/local/bin/ld: /tmp/ccsPW0a9.ltrans0.ltrans.o: in function `main':
-<artificial>:(.text.startup+0xa): undefined reference to `__wrap_malloc'
-collect2: error: ld returned 1 exit status
-make: *** [Makefile:22: x] Error 1
-[hjl@gnu-tgl-3 pr31956-3]$
-
-Also add a test to verify that the unused wrapper is removed.
-
- PR ld/31956
- * plugin.c (get_symbols): Restore the wrapper symbol check for
- standard function.
- * testsuite/ld-plugin/lto.exp: Run the malloc test and the
- unused test.
- * testsuite/ld-plugin/pr31956c.c: New file.
- * testsuite/ld-plugin/pr31956d.c: New file.
- * testsuite/ld-plugin/pr31956d.d: New file.
-
-Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
----
- ld/plugin.c | 14 ++++++++++++--
- ld/testsuite/ld-plugin/lto.exp | 16 ++++++++++++++++
- ld/testsuite/ld-plugin/pr31956c.c | 19 +++++++++++++++++++
- ld/testsuite/ld-plugin/pr31956d.c | 7 +++++++
- ld/testsuite/ld-plugin/pr31956d.d | 4 ++++
- 5 files changed, 58 insertions(+), 2 deletions(-)
- create mode 100644 ld/testsuite/ld-plugin/pr31956c.c
- create mode 100644 ld/testsuite/ld-plugin/pr31956d.c
- create mode 100644 ld/testsuite/ld-plugin/pr31956d.d
-
-diff --git a/ld/plugin.c b/ld/plugin.c
-index 03ee9880d10..51c4765cc5b 100644
---- a/ld/plugin.c
-+++ b/ld/plugin.c
-@@ -778,8 +778,18 @@ get_symbols (const void *handle, int nsyms, struct ld_plugin_symbol *syms,
- {
- blhe = h;
- /* Check if a symbol is a wrapper symbol. */
-- if (blhe && blhe->wrapper_symbol)
-- wrap_status = wrapper;
-+ if (blhe)
-+ {
-+ if (blhe->wrapper_symbol)
-+ wrap_status = wrapper;
-+ else if (link_info.wrap_hash != NULL)
-+ {
-+ struct bfd_link_hash_entry *unwrap
-+ = unwrap_hash_lookup (&link_info, (bfd *) abfd, blhe);
-+ if (unwrap != NULL && unwrap != h)
-+ wrap_status = wrapper;
-+ }
-+ }
- }
- else
- {
-diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp
-index ad59e2abd61..1a8c3736307 100644
---- a/ld/testsuite/ld-plugin/lto.exp
-+++ b/ld/testsuite/ld-plugin/lto.exp
-@@ -546,6 +546,22 @@ set lto_link_elf_tests [list \
- {} \
- "pr31956b" \
- ] \
-+ [list \
-+ "PR ld/31956 (malloc)" \
-+ "-Wl,--wrap=malloc" \
-+ "-O2 -flto" \
-+ {pr31956c.c} \
-+ {} \
-+ "pr31956c" \
-+ ] \
-+ [list \
-+ "PR ld/31956 (unused)" \
-+ "-Wl,--wrap=parse_line" \
-+ "-O2 -flto" \
-+ {pr31956d.c} \
-+ {{"nm" {} "pr31956d.d"}} \
-+ "pr31956d" \
-+ ] \
- [list \
- "Build pr30281.so" \
- "-shared -Wl,--version-script,pr30281.t \
-diff --git a/ld/testsuite/ld-plugin/pr31956c.c b/ld/testsuite/ld-plugin/pr31956c.c
-new file mode 100644
-index 00000000000..4a46b2b49a8
---- /dev/null
-+++ b/ld/testsuite/ld-plugin/pr31956c.c
-@@ -0,0 +1,19 @@
-+#include <stdlib.h>
-+
-+extern void *__real_malloc (size_t);
-+
-+void *
-+__wrap_malloc (size_t n)
-+{
-+ if (n == 0)
-+ return NULL;
-+ else
-+ return __real_malloc (n);
-+};
-+
-+int
-+main (void)
-+{
-+ void *ptr = malloc (30);
-+ return ptr == NULL ? 1 : 0;
-+}
-diff --git a/ld/testsuite/ld-plugin/pr31956d.c b/ld/testsuite/ld-plugin/pr31956d.c
-new file mode 100644
-index 00000000000..cb7f2d50643
---- /dev/null
-+++ b/ld/testsuite/ld-plugin/pr31956d.c
-@@ -0,0 +1,7 @@
-+void __wrap_parse_line(void) {};
-+
-+int
-+main (void)
-+{
-+ return 0;
-+}
-diff --git a/ld/testsuite/ld-plugin/pr31956d.d b/ld/testsuite/ld-plugin/pr31956d.d
-new file mode 100644
-index 00000000000..b579cdc7353
---- /dev/null
-+++ b/ld/testsuite/ld-plugin/pr31956d.d
-@@ -0,0 +1,4 @@
-+#failif
-+#...
-+[0-9a-f]+ T .*parse_line
-+#...
---
-2.45.2
-
diff --git a/binutils-gcc-10-fixes.patch b/binutils-gcc-10-fixes.patch
deleted file mode 100644
index 4233279..0000000
--- a/binutils-gcc-10-fixes.patch
+++ /dev/null
@@ -1,180 +0,0 @@
-diff -rup binutils.orig/gold/gdb-index.cc binutils-2.34.0/gold/gdb-index.cc
---- binutils.orig/gold/gdb-index.cc 2020-07-24 09:12:29.241306445 +0100
-+++ binutils-2.34.0/gold/gdb-index.cc 2020-07-24 09:15:48.332095898 +0100
-@@ -817,7 +817,7 @@ Gdb_index_info_reader::get_qualified_nam
- void
- Gdb_index_info_reader::record_cu_ranges(Dwarf_die* die)
- {
-- unsigned int shndx;
-+ unsigned int shndx = 0;
- unsigned int shndx2;
-
- off_t ranges_offset = die->ref_attribute(elfcpp::DW_AT_ranges, &shndx);
-diff -rup binutils.orig/gold/layout.cc binutils-2.34.0/gold/layout.cc
---- binutils.orig/gold/layout.cc 2020-07-24 09:12:29.243306433 +0100
-+++ binutils-2.34.0/gold/layout.cc 2020-07-24 09:15:11.464320064 +0100
-@@ -1986,7 +1986,7 @@ Layout::attach_allocated_section_to_segm
- seg_flags |= os->extra_segment_flags();
-
- // Check for --section-start.
-- uint64_t addr;
-+ uint64_t addr = 0;
- bool is_address_set = parameters->options().section_start(os->name(), &addr);
-
- // In general the only thing we really care about for PT_LOAD
-diff -rup binutils.orig/binutils/dlltool.c binutils-2.34.0/binutils/dlltool.c
---- binutils.orig/binutils/dlltool.c 2020-07-24 09:12:28.974308069 +0100
-+++ binutils-2.34.0/binutils/dlltool.c 2020-07-24 12:09:37.527121295 +0100
-@@ -1305,7 +1305,7 @@ run (const char *what, char *args)
- int pid, wait_status;
- int i;
- const char **argv;
-- char *errmsg_fmt, *errmsg_arg;
-+ char *errmsg_fmt = "", *errmsg_arg = "";
- char *temp_base = choose_temp_base ();
-
- inform (_("run: %s %s"), what, args);
-diff -rup binutils.orig/gas/config/tc-arm.c binutils-2.34.0/gas/config/tc-arm.c
---- binutils.orig/gas/config/tc-arm.c 2020-07-24 09:12:32.368287432 +0100
-+++ binutils-2.34.0/gas/config/tc-arm.c 2020-07-24 12:14:19.842360634 +0100
-@@ -28416,9 +28416,12 @@ md_apply_fix (fixS * fixP,
- perform relaxation. */
- if (value == -2)
- {
-- newval = md_chars_to_number (buf, THUMB_SIZE);
-- newval = 0xbf00; /* NOP encoding T1 */
-- md_number_to_chars (buf, newval, THUMB_SIZE);
-+ if (fixP->fx_done || !seg->use_rela_p)
-+ {
-+ newval = md_chars_to_number (buf, THUMB_SIZE);
-+ newval = 0xbf00; /* NOP encoding T1 */
-+ md_number_to_chars (buf, newval, THUMB_SIZE);
-+ }
- }
- else
- {
-@@ -28631,17 +28634,14 @@ md_apply_fix (fixS * fixP,
- case BFD_RELOC_ARM_GOTFUNCDESC:
- case BFD_RELOC_ARM_GOTOFFFUNCDESC:
- case BFD_RELOC_ARM_FUNCDESC:
-- if (arm_fdpic)
-- {
-- if (fixP->fx_done || !seg->use_rela_p)
-- md_number_to_chars (buf, 0, 4);
-- }
-- else
-+ if (!arm_fdpic)
- {
- as_bad_where (fixP->fx_file, fixP->fx_line,
- _("Relocation supported only in FDPIC mode"));
-- }
-- break;
-+ break;
-+ }
-+ value = 0;
-+ /* Fall through. */
- #endif
-
- case BFD_RELOC_RVA:
-diff -rup binutils.orig/gas/config/tc-arm.c binutils-2.34.0/gas/config/tc-arm.c
---- binutils.orig/gas/config/tc-arm.c 2020-07-24 12:16:02.099719884 +0100
-+++ binutils-2.34.0/gas/config/tc-arm.c 2020-07-24 12:34:17.690858328 +0100
-@@ -28641,7 +28641,7 @@ md_apply_fix (fixS * fixP,
- break;
- }
- value = 0;
-- /* Fall through. */
-+ goto fred;
- #endif
-
- case BFD_RELOC_RVA:
-@@ -28653,6 +28653,7 @@ md_apply_fix (fixS * fixP,
- #ifdef TE_PE
- case BFD_RELOC_32_SECREL:
- #endif
-+ fred:
- if (fixP->fx_done || !seg->use_rela_p)
- #ifdef TE_WINCE
- /* For WinCE we only do this for pcrel fixups. */
-diff -rup binutils.orig/gas/config/tc-arm.c binutils-2.34.0/gas/config/tc-arm.c
---- binutils.orig/gas/config/tc-arm.c 2020-07-24 13:28:26.926553452 +0100
-+++ binutils-2.34.0/gas/config/tc-arm.c 2020-07-24 13:31:57.835215763 +0100
-@@ -28416,12 +28416,8 @@ md_apply_fix (fixS * fixP,
- perform relaxation. */
- if (value == -2)
- {
-- if (fixP->fx_done || !seg->use_rela_p)
-- {
-- newval = md_chars_to_number (buf, THUMB_SIZE);
-- newval = 0xbf00; /* NOP encoding T1 */
-- md_number_to_chars (buf, newval, THUMB_SIZE);
-- }
-+ newval = 0xbf00; /* NOP encoding T1 */
-+ goto jim;
- }
- else
- {
-@@ -28432,6 +28428,7 @@ md_apply_fix (fixS * fixP,
- {
- newval = md_chars_to_number (buf, THUMB_SIZE);
- newval |= ((value & 0x3e) << 2) | ((value & 0x40) << 3);
-+ jim:
- md_number_to_chars (buf, newval, THUMB_SIZE);
- }
- }
-diff -rup binutils.orig/binutils/mclex.c binutils-2.34.0/binutils/mclex.c
---- binutils.orig/binutils/mclex.c 2020-07-24 13:28:26.297557441 +0100
-+++ binutils-2.34.0/binutils/mclex.c 2020-07-24 14:46:53.587940149 +0100
-@@ -207,7 +207,7 @@ enum_severity (int e)
- static void
- mc_add_keyword_ascii (const char *sz, int rid, const char *grp, rc_uint_type nv, const char *sv)
- {
-- unichar *usz, *usv = NULL;
-+ unichar *usz = NULL, *usv = NULL;
- rc_uint_type usz_len;
-
- unicode_from_codepage (&usz_len, &usz, sz, CP_ACP);
-diff -rup binutils.orig/binutils/windmc.c binutils-2.34.0/binutils/windmc.c
---- binutils.orig/binutils/windmc.c 2020-07-24 13:28:26.279557556 +0100
-+++ binutils-2.34.0/binutils/windmc.c 2020-07-24 14:48:05.460477478 +0100
-@@ -338,7 +338,7 @@ mc_add_node_lang (mc_node *root, const m
- static char *
- convert_unicode_to_ACP (const unichar *usz)
- {
-- char *s;
-+ char *s = NULL;
- rc_uint_type l;
-
- if (! usz)
-@@ -607,10 +607,10 @@ mc_generate_bin_item (mc_node_lang *n, r
- else
- {
- rc_uint_type txt_len, l;
-- char *cvt_txt;
-+ char *cvt_txt = NULL;
-
- codepage_from_unicode( &l, n->message, &cvt_txt, n->lang->lang_info.wincp);
-- if (! cvt_txt)
-+ if (cvt_txt == NULL)
- fatal ("Failed to convert message to language codepage.\n");
- txt_len = strlen (cvt_txt);
- if (mcset_automatic_null_termination && txt_len > 0)
-@@ -1107,7 +1107,7 @@ main (int argc, char **argv)
-
- /* Load the input file and do code page transformations to UTF16. */
- {
-- unichar *u;
-+ unichar *u = NULL;
- rc_uint_type ul;
- char *buff;
- bfd_size_type flen;
---- binutils.orig/binutils/srconv.c 2020-07-24 15:37:25.847459208 +0100
-+++ binutils-2.34.0/binutils/srconv.c 2020-07-24 15:39:12.853773423 +0100
-@@ -316,6 +316,7 @@ wr_hd (struct coff_ofile *p)
- struct IT_hd hd;
-
- hd.spare1 = 0;
-+ hd.spare2 = 0;
- if (bfd_get_file_flags (abfd) & EXEC_P)
- hd.mt = MTYPE_ABS_LM;
- else
diff --git a/binutils-revert-note-id-move.patch b/binutils-revert-note-id-move.patch
deleted file mode 100644
index 2763327..0000000
--- a/binutils-revert-note-id-move.patch
+++ /dev/null
@@ -1,124 +0,0 @@
---- binutils.orig/ld/scripttempl/elf.sc 2024-11-01 10:17:24.308959289 +0000
-+++ binutils-2.43.50-22c62092858/ld/scripttempl/elf.sc 2024-11-01 10:17:39.730019895 +0000
-@@ -397,19 +397,6 @@ fi
- # ===========================================================================
- # Functions for generating parts of the linker script
-
--# Helper function for putting comments into scripts.
--# Useful when trying to track down script composition problems.
--# Use by adding:
--# emit_comment "a message"
--# wherever necessary.
--
--emit_comment()
--{
--cat <<EOF
-- /* $1 */
--EOF
--}
--
- emit_header()
- {
- cat <<EOF
-@@ -438,6 +425,7 @@ emit_early_ro()
- {
- cat <<EOF
- ${INITIAL_READONLY_SECTIONS}
-+ .note.gnu.build-id ${RELOCATING-0}: { *(.note.gnu.build-id) }
- EOF
- }
-
-@@ -448,11 +436,6 @@ cat <<EOF
- ${CREATE_SHLIB-${CREATE_PIE-${RELOCATING+PROVIDE (__executable_start = ${TEXT_START_ADDR}); . = ${TEXT_BASE_ADDRESS};}}}
- ${CREATE_SHLIB+${RELOCATING+. = ${SHLIB_TEXT_START_ADDR}${SIZEOF_HEADERS_CODE};}}
- ${CREATE_PIE+${RELOCATING+PROVIDE (__executable_start = ${SHLIB_TEXT_START_ADDR}); . = ${SHLIB_TEXT_START_ADDR}${SIZEOF_HEADERS_CODE};}}
--
-- /* Place build-id as close to the ELF headers as possible. This
-- maximises the chance the build-id will be present in core files,
-- which GDB can then use to locate the associated debuginfo file. */
-- .note.gnu.build-id ${RELOCATING-0}: { *(.note.gnu.build-id) }
- EOF
- }
-
-@@ -574,7 +557,6 @@ EOF
- align_text()
- {
- cat <<EOF
-- ${RELOCATING+/* Align the text segment. */}
- ${RELOCATING+${TEXT_SEGMENT_ALIGN}}
- EOF
- }
-@@ -816,28 +798,11 @@ EOF
- emit_executable_start
-
- if test -z "${ALL_TEXT_BEFORE_RO}"; then
-- # We are allowed to put R/O sections before code sections.
--
- test -n "${SEPARATE_CODE}" || emit_early_ro
- test -n "${NON_ALLOC_DYN}${SEPARATE_CODE}" || emit_dyn
--
-- # We only need the alignment if we have emitted some sections.
-- if test -z "${SEPARATE_CODE}"; then
-- align_text
-- elif test -z "${NON_ALLOC_DYN}${SEPARATE_CODE}"; then
-- align_text
-- fi
- fi
-
-- # We do not align the code segment here as doing so will increase the file size.
-- # Normally having the text segment at the start of the file will automatically
-- # mean that it is aligned(*), and if we have emitted any r/o sections due to the
-- # tests of SEPARATE_CODE above, then extra alignment will have already been
-- # generated.
-- #
-- # *: Including the ELF headers and .note.gnu.build-id section in the code segment
-- # is a very small theoretical risk.
--
-+ align_text
- emit_text
-
- align_rodata
-diff -rup binutils.orig/ld/testsuite/ld-i386/pr32191.d binutils-2.43.50-22c62092858/ld/testsuite/ld-i386/pr32191.d
---- binutils.orig/ld/testsuite/ld-i386/pr32191.d 2024-11-01 13:56:39.584115148 +0000
-+++ binutils-2.43.50-22c62092858/ld/testsuite/ld-i386/pr32191.d 2024-11-01 13:58:30.962432716 +0000
-@@ -2,6 +2,7 @@
- #as: --32 -mx86-used-note=yes
- #ld: -shared -m elf_i386 -z separate-code --build-id --rosegment
- #readelf: -lW
-+#xfail: *-*-*
-
- #...
- +[0-9]+ +\.note\.gnu\.build-id \.text
-diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr32191-x32.d binutils-2.43.50-22c62092858/ld/testsuite/ld-x86-64/pr32191-x32.d
---- binutils.orig/ld/testsuite/ld-x86-64/pr32191-x32.d 2024-11-01 13:56:39.652115341 +0000
-+++ binutils-2.43.50-22c62092858/ld/testsuite/ld-x86-64/pr32191-x32.d 2024-11-01 13:59:27.626595088 +0000
-@@ -2,6 +2,7 @@
- #as: --x32 -mx86-used-note=yes
- #ld: -shared -m elf32_x86_64 -z separate-code --build-id --rosegment
- #readelf: -lW
-+#xfail: *-*-*
-
- #...
- +[0-9]+ +\.note\.gnu\.build-id \.text
-diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr32191.d binutils-2.43.50-22c62092858/ld/testsuite/ld-x86-64/pr32191.d
---- binutils.orig/ld/testsuite/ld-x86-64/pr32191.d 2024-11-01 13:56:39.652115341 +0000
-+++ binutils-2.43.50-22c62092858/ld/testsuite/ld-x86-64/pr32191.d 2024-11-01 13:59:12.906552493 +0000
-@@ -2,6 +2,7 @@
- #as: --64 -mx86-used-note=yes
- #ld: -shared -m elf_x86_64 -z separate-code --build-id --rosegment
- #readelf: -lW
-+#xfail: *-*-*
-
- #...
- +[0-9]+ +\.note\.gnu\.build-id \.text
-diff -rup bin.orig/ld/testsuite/ld-elf/pr23658-1e.d binutils-2.43.50-55e32b3c682/ld/testsuite/ld-elf/pr23658-1e.d
---- bin.orig/ld/testsuite/ld-elf/pr23658-1e.d 2024-11-04 12:18:57.021055380 +0000
-+++ binutils-2.43.50-55e32b3c682/ld/testsuite/ld-elf/pr23658-1e.d 2024-11-04 12:19:06.522083958 +0000
-@@ -16,6 +16,7 @@
- #xfail: *-*-hpux*
- #xfail: arc*-* avr-* m68hc1*-* microblaze*-* nds32*-* spu-*-* xstormy16-*-*
- #noxfail: microblaze*-linux*
-+#xfail: *-*-*
-
- #...
- +[0-9]+ +\.note.gnu.build-id +
diff --git a/binutils-riscv-testsuite-fixes.patch b/binutils-riscv-testsuite-fixes.patch
index 2a5ce5d..ba7ed8e 100644
--- a/binutils-riscv-testsuite-fixes.patch
+++ b/binutils-riscv-testsuite-fixes.patch
@@ -242,75 +242,9 @@ diff -rup binutils-with-gold-2.45.50-beab972c07d,orig/ld/testsuite/lib/ld-lib.ex
if {![info exists ctf_available_saved]} {
set ctf_available_saved 0
-diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d
---- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d 2026-03-20 13:02:05.468700958 +0000
-+++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d 2026-03-20 13:05:31.155200130 +0000
-@@ -1,6 +1,6 @@
- #source: data-reloc.s
- #as: -march=rv32i -mabi=ilp32 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
--#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared
-+#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -z notext
- #objdump: -dR
-
- .*:[ ]+file format .*
-diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d
---- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d 2026-03-20 13:02:05.468700958 +0000
-+++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d 2026-03-20 13:05:52.846252771 +0000
-@@ -1,6 +1,6 @@
- #source: data-reloc.s
- #as: -march=rv32i -mabi=ilp32 -defsym __abs__=1 -defsym __addr__=1
--#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie
-+#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie -z notext
- #objdump: -dR
-
- .*:[ ]+file format .*
-diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d
---- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d 2026-03-20 13:02:05.468700958 +0000
-+++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d 2026-03-20 13:06:01.427273593 +0000
-@@ -1,6 +1,6 @@
- #source: data-reloc.s
- #as: -march=rv32i -mabi=ilp32 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
--#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic
-+#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic -z notext
- #objdump: -dR
-
- .*:[ ]+file format .*
-diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d
---- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d 2026-03-20 13:02:05.468700958 +0000
-+++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d 2026-03-20 13:04:07.601997355 +0000
-@@ -1,6 +1,6 @@
- #source: data-reloc.s
- #as: -march=rv64i -mabi=lp64 -defsym __64_bit__=1 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
--#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared
-+#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -z notext
- #objdump: -dR
-
- .*:[ ]+file format .*
-diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d
---- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d 2026-03-20 13:02:05.468700958 +0000
-+++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d 2026-03-20 13:04:57.106117494 +0000
-@@ -1,6 +1,6 @@
- #source: data-reloc.s
- #as: -march=rv64i -mabi=lp64 -defsym __64_bit__=1 -defsym __abs__=1 -defsym __addr__=1
--#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie
-+#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie -z notext
- #objdump: -dR
-
- .*:[ ]+file format .*
-diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d
---- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d 2026-03-20 13:02:05.468700958 +0000
-+++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d 2026-03-20 13:05:14.650160073 +0000
-@@ -1,6 +1,6 @@
- #source: data-reloc.s
- #as: -march=rv64i -mabi=lp64 -defsym __64_bit__=1 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
--#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic
-+#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic -z notext
- #objdump: -dR
-
- .*:[ ]+file format .*
---- binutils.orig/binutils/testsuite/lib/binutils-common.exp 2026-06-09 14:11:37.775595474 +0100
-+++ binutils-with-gold-2.46.1/binutils/testsuite/lib/binutils-common.exp 2026-06-09 14:11:57.453043367 +0100
-@@ -795,6 +795,9 @@ proc prune_warnings_extra { text } {
+--- fred/binutils/testsuite/lib/binutils-common.exp 2026-03-16 09:18:37.205413649 +0000
++++ binutils-with-gold-2.46.50-d712202846b/binutils/testsuite/lib/binutils-common.exp 2026-03-16 09:18:49.559358668 +0000
+@@ -803,6 +803,9 @@ proc prune_warnings_extra { text } {
# Ignore warnings about linking objects with an old sframe format
regsub -all {(^|\n)([^\n]* unexpected SFrame format version [^\n]*\n[^\n]* SFrame section ignored\n?)+} $text {\1} text
@@ -320,3 +254,16 @@ diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d bin
return $text
}
+--- binutils.orig/ld/testsuite/ld-elf/shared.exp 2026-06-10 15:32:21.012274073 +0100
++++ binutils-with-gold-2.46.50-48997323b0f/ld/testsuite/ld-elf/shared.exp 2026-06-10 15:34:41.397899263 +0100
+@@ -1859,6 +1859,10 @@ run_cc_link_tests [list \
+ "pr29655.so" \
+ ] \
+ ]
++
++# FIXME: Find out why the Risc-V fails this test.
++setup_xfail "riscv64-*-*"
++
+ # PR 29655 (cont.): Check that in PIC code linked as PDE taking the address
+ # of a function defined in a DSO results in the function address (from GOT)
+ # and not the "canonical PLT" address from the PDE.
diff --git a/binutils-testsuite-fixes.patch b/binutils-testsuite-fixes.patch
index aae90e4..439eeb6 100644
--- a/binutils-testsuite-fixes.patch
+++ b/binutils-testsuite-fixes.patch
@@ -27,17 +27,6 @@
if ![regexp $want $got] then {
fail "$testname -s option $got\n"
} else {
---- binutils.orig/binutils/testsuite/binutils-all/objdump.exp 2023-08-03 13:09:07.631503783 +0100
-+++ binutils-2.41/binutils/testsuite/binutils-all/objdump.exp 2023-08-03 14:51:54.621295727 +0100
-@@ -921,7 +921,7 @@ proc test_objdump_S { } {
- }
- }
-
--test_objdump_S
-+# test_objdump_S
-
- # Test objdump --private
- proc test_objdump_P {} {
--- binutils.orig/ld/testsuite/ld-scripts/ld-version.d 2023-08-03 13:09:07.949504208 +0100
+++ binutils-2.41/ld/testsuite/ld-scripts/ld-version.d 2023-08-03 15:13:01.374590134 +0100
@@ -4,4 +4,4 @@
@@ -1081,3 +1070,80 @@ diff -rup bin.orig/ld/testsuite/ld-x86-64/sframe-pltgot-2.d binutils-2.43.50-55e
]
}
+--- fred/binutils/testsuite/binutils-all/objdump.exp 2026-02-16 09:03:27.457277379 +0000
++++ binutils-with-gold-2.46.50-2d306bf8a70/binutils/testsuite/binutils-all/objdump.exp 2026-02-16 09:03:30.592967621 +0000
+@@ -957,7 +957,7 @@ proc test_objdump_S { } {
+ }
+ }
+
+-test_objdump_S
++# test_objdump_S
+
+ # Test objdump --map-global-vars on file containing dwarf-2 encoding information.
+
+diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d
+--- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d 2026-03-20 13:02:05.468700958 +0000
++++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pic.d 2026-03-20 13:05:31.155200130 +0000
+@@ -1,6 +1,6 @@
+ #source: data-reloc.s
+ #as: -march=rv32i -mabi=ilp32 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
+-#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared
++#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -z notext
+ #objdump: -dR
+
+ .*:[ ]+file format .*
+diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d
+--- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d 2026-03-20 13:02:05.468700958 +0000
++++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-pie.d 2026-03-20 13:05:52.846252771 +0000
+@@ -1,6 +1,6 @@
+ #source: data-reloc.s
+ #as: -march=rv32i -mabi=ilp32 -defsym __abs__=1 -defsym __addr__=1
+-#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie
++#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie -z notext
+ #objdump: -dR
+
+ .*:[ ]+file format .*
+diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d
+--- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d 2026-03-20 13:02:05.468700958 +0000
++++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv32-symbolic.d 2026-03-20 13:06:01.427273593 +0000
+@@ -1,6 +1,6 @@
+ #source: data-reloc.s
+ #as: -march=rv32i -mabi=ilp32 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
+-#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic
++#ld: -m[riscv_choose_ilp32_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic -z notext
+ #objdump: -dR
+
+ .*:[ ]+file format .*
+diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d
+--- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d 2026-03-20 13:02:05.468700958 +0000
++++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pic.d 2026-03-20 13:04:07.601997355 +0000
+@@ -1,6 +1,6 @@
+ #source: data-reloc.s
+ #as: -march=rv64i -mabi=lp64 -defsym __64_bit__=1 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
+-#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared
++#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -z notext
+ #objdump: -dR
+
+ .*:[ ]+file format .*
+diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d
+--- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d 2026-03-20 13:02:05.468700958 +0000
++++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-pie.d 2026-03-20 13:04:57.106117494 +0000
+@@ -1,6 +1,6 @@
+ #source: data-reloc.s
+ #as: -march=rv64i -mabi=lp64 -defsym __64_bit__=1 -defsym __abs__=1 -defsym __addr__=1
+-#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie
++#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -pie -z notext
+ #objdump: -dR
+
+ .*:[ ]+file format .*
+diff -rup binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d
+--- binutils.orig/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d 2026-03-20 13:02:05.468700958 +0000
++++ binutils-with-gold-2.46/ld/testsuite/ld-riscv-elf/data-reloc-rv64-symbolic.d 2026-03-20 13:05:14.650160073 +0000
+@@ -1,6 +1,6 @@
+ #source: data-reloc.s
+ #as: -march=rv64i -mabi=lp64 -defsym __64_bit__=1 -defsym __abs__=1 -defsym __addr__=1 -defsym __undef__=1
+-#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic
++#ld: -m[riscv_choose_lp64_emul] -Ttext 0x8000 --defsym _start=0x0 --defsym abs=0x100 --defsym abs_local=0x200 -shared -Bsymbolic -z notext
+ #objdump: -dR
+
+ .*:[ ]+file format .*
diff --git a/cross-binutils.spec b/cross-binutils.spec
index 7fb184a..489bdbf 100644
--- a/cross-binutils.spec
+++ b/cross-binutils.spec
@@ -65,7 +65,7 @@
%define default_generate_notes 0
Name: %{cross}-binutils
-Version: 2.46.1
+Version: 2.47
Release: 1%{?dist}
Summary: A GNU collection of cross-compilation binary utilities
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
@@ -75,7 +75,7 @@ URL: https://sourceware.org/binutils
# many controversial patches so we stick with the official FSF version
# instead.
-Source: http://ftp.gnu.org/gnu/binutils/binutils-with-gold-%{version}.tar.xz
+Source: http://ftp.gnu.org/gnu/binutils/binutils-%{version}.tar.xz
Source2: binutils-2.19.50.0.1-output-format.sed
@@ -156,8 +156,7 @@ Patch13: binutils-aarch64-small-plt0.patch
# 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
#----------------------------------------------------------------------------
@@ -275,7 +274,7 @@ Cross-build binary image generation, manipulation and query tools. \
#
###############################################################################
%prep
-%global srcdir binutils-with-gold-%{version}
+%global srcdir binutils-%{version}
%setup -q -n %{srcdir} -c
cd %{srcdir}
%patch -P01 -p1
@@ -291,7 +290,7 @@ cd %{srcdir}
%patch -P11 -p1
%patch -P12 -p1
%patch -P13 -p1
-%patch -P20 -p1
+%patch -P21 -p1
%patch -P98 -p1
%patch -P99 -p1
@@ -423,6 +422,13 @@ function config_target () {
export CFLAGS="$RPM_OPT_FLAGS -Wno-unused-const-variable -std=gnu11"
CARGS=
+ # The binutils build system enables -Werror by default, which is a problem
+ # because there is a known issue with the libiberty library sources:
+ # libiberty/make-relative-prefix.c:230:1: error: stack usage might be
+ # unbounded [-Werror=stack-usage=]
+ # So we explicitly disable werror for builds.
+ CARGS="$CARGS --enable-werror=no"
+
case $target in i?86*|sparc*|ppc*|s390*|sh*|arm*|aarch64*|riscv*)
CARGS="$CARGS --enable-64-bit-bfd"
;;
@@ -551,7 +557,10 @@ cd %{cross}-binutils
--program-prefix=%{cross}- \
--disable-shared \
--enable-gprofng=no \
- --with-bugurl=http://bugzilla.redhat.com/bugzilla/
+ --with-bugurl=http://bugzilla.redhat.com/bugzilla/ \
+ --enable-werror=no \
+ %{nil}
+
%make_build tooldir=%{_prefix} all
cd ..
@@ -775,6 +784,9 @@ cd -
%do_files xtensa-linux-gnu %{build_xtensa}
%changelog
+* Tue Sep 08 2026 Peter Robinson <pbrobinson@fedoraproject.org> - 2.47-1
+- Update to 2.47
+
* Mon Sep 07 2026 Peter Robinson <pbrobinson@fedoraproject.org> - 2.46.1-1
- Update to the binutils 2.46.1 release
diff --git a/sources b/sources
index ac270e1..23fca3d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (binutils-with-gold-2.46.1.tar.xz) = c47c0382a77133391556a9ac48586cd3ed101bfeea81e500a97e69b4056dd515351078ae78d026a1c1906648770bf828628dc39fd4cd86f84f1c9ec273d87280
+SHA512 (binutils-2.47.tar.xz) = 3126a1064374d8da40d4d70630c204ed1e75d542c447d53fca9778c7ceff095c28e9b445e15a313fef9729082d7966471ee6b5b715d479aa6d568528743e1d98
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-09-08 8:53 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-08 8:53 [rpms/cross-binutils] rawhide: 2.47 Peter Robinson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox