import mingw-binutils-2.40-3.el9

c9 imports/c9/mingw-binutils-2.40-3.el9
MSVSphere Packaging Team 1 year ago
parent 4ae6e00c91
commit 9cec58d3e3

2
.gitignore vendored

@ -1 +1 @@
SOURCES/binutils-2.39.tar.xz
SOURCES/binutils-2.40.tar.xz

@ -1 +1 @@
f17653e7b1d1fa5242a408919845da23e8cc5141 SOURCES/binutils-2.39.tar.xz
fee4fbef9d632afc1988dd631d7f75d4394b7f8d SOURCES/binutils-2.40.tar.xz

@ -1,19 +0,0 @@
diff -rupN --no-dereference binutils-2.39/bfd/coffcode.h binutils-2.39-new/bfd/coffcode.h
--- binutils-2.39/bfd/coffcode.h 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/bfd/coffcode.h 2022-10-30 12:41:41.408023817 +0100
@@ -4284,10 +4284,13 @@ coff_set_section_contents (bfd * abfd,
rec = (bfd_byte *) location;
recend = rec + count;
- while (rec < recend)
+ while (recend - rec >= 4)
{
+ size_t len = bfd_get_32 (abfd, rec);
+ if (len == 0 || len > (size_t) (recend - rec) / 4)
+ break;
+ rec += len * 4;
++section->lma;
- rec += bfd_get_32 (abfd, rec) * 4;
}
BFD_ASSERT (rec == recend);

@ -0,0 +1,22 @@
diff -rupN --no-dereference binutils-2.40/bfd/elf.c binutils-2.40-new/bfd/elf.c
--- binutils-2.40/bfd/elf.c 2023-04-14 16:12:16.185323541 +0200
+++ binutils-2.40-new/bfd/elf.c 2023-04-14 16:12:27.583371759 +0200
@@ -9048,6 +9048,9 @@ _bfd_elf_slurp_version_tables (bfd *abfd
bfd_set_error (bfd_error_file_too_big);
goto error_return_verdef;
}
+
+ if (amt == 0)
+ goto error_return_verdef;
elf_tdata (abfd)->verdef = (Elf_Internal_Verdef *) bfd_zalloc (abfd, amt);
if (elf_tdata (abfd)->verdef == NULL)
goto error_return_verdef;
@@ -9151,6 +9154,8 @@ _bfd_elf_slurp_version_tables (bfd *abfd
bfd_set_error (bfd_error_file_too_big);
goto error_return;
}
+ if (amt == 0)
+ goto error_return;
elf_tdata (abfd)->verdef = (Elf_Internal_Verdef *) bfd_zalloc (abfd, amt);
if (elf_tdata (abfd)->verdef == NULL)
goto error_return;

@ -0,0 +1,11 @@
diff -rupN --no-dereference binutils-2.40/bfd/elfnn-aarch64.c binutils-2.40-new/bfd/elfnn-aarch64.c
--- binutils-2.40/bfd/elfnn-aarch64.c 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/elfnn-aarch64.c 2023-03-09 14:51:55.011379383 +0100
@@ -5487,6 +5487,7 @@ elfNN_aarch64_final_link_relocate (reloc
it here if it is defined in a non-shared object. */
if (h != NULL
&& h->type == STT_GNU_IFUNC
+ && (input_section->flags & SEC_ALLOC)
&& h->def_regular)
{
asection *plt;

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/config/override.m4 binutils-2.39-new/config/override.m4
--- binutils-2.39/config/override.m4 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/config/override.m4 2022-10-30 12:41:36.883023796 +0100
diff -rupN --no-dereference binutils-2.40/config/override.m4 binutils-2.40-new/config/override.m4
--- binutils-2.40/config/override.m4 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/config/override.m4 2023-03-09 14:52:03.599278848 +0100
@@ -41,7 +41,7 @@ dnl Or for updating the whole tree at on
AC_DEFUN([_GCC_AUTOCONF_VERSION_CHECK],
[m4_if(m4_defn([_GCC_AUTOCONF_VERSION]),

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/configure binutils-2.39-new/configure
--- binutils-2.39/configure 2022-07-08 11:55:40.000000000 +0200
+++ binutils-2.39-new/configure 2022-10-30 12:41:28.785023757 +0100
@@ -5276,49 +5276,6 @@ if test -z "$LD"; then
diff -rupN --no-dereference binutils-2.40/configure binutils-2.40-new/configure
--- binutils-2.40/configure 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/configure 2023-03-09 14:51:56.227365462 +0100
@@ -5442,49 +5442,6 @@ if test -z "$LD"; then
fi
fi
@ -51,10 +51,10 @@ diff -rupN --no-dereference binutils-2.39/configure binutils-2.39-new/configure
if test -n "$ac_tool_prefix"; then
diff -rupN --no-dereference binutils-2.39/configure.ac binutils-2.39-new/configure.ac
--- binutils-2.39/configure.ac 2022-08-05 13:02:04.000000000 +0200
+++ binutils-2.39-new/configure.ac 2022-10-30 12:41:28.786023757 +0100
@@ -1314,26 +1314,6 @@ if test -z "$LD"; then
diff -rupN --no-dereference binutils-2.40/configure.ac binutils-2.40-new/configure.ac
--- binutils-2.40/configure.ac 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/configure.ac 2023-03-09 14:51:56.228365450 +0100
@@ -1435,26 +1435,6 @@ if test -z "$LD"; then
fi
fi
@ -79,5 +79,5 @@ diff -rupN --no-dereference binutils-2.39/configure.ac binutils-2.39-new/configu
-fi
-
ACX_PROG_GNAT
ACX_PROG_GDC
ACX_PROG_CMP_IGNORE_INITIAL

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/bfd/Makefile.am binutils-2.39-new/bfd/Makefile.am
--- binutils-2.39/bfd/Makefile.am 2022-10-30 12:41:22.907023730 +0100
+++ binutils-2.39-new/bfd/Makefile.am 2022-10-30 12:41:22.912023730 +0100
diff -rupN --no-dereference binutils-2.40/bfd/Makefile.am binutils-2.40-new/bfd/Makefile.am
--- binutils-2.40/bfd/Makefile.am 2023-03-09 14:51:48.814448632 +0100
+++ binutils-2.40-new/bfd/Makefile.am 2023-03-09 14:51:48.819448577 +0100
@@ -38,7 +38,7 @@ bfdlibdir = @bfdlibdir@
bfdincludedir = @bfdincludedir@
bfdlib_LTLIBRARIES = libbfd.la
@ -10,10 +10,10 @@ diff -rupN --no-dereference binutils-2.39/bfd/Makefile.am binutils-2.39-new/bfd/
else !INSTALL_LIBBFD
# Empty these so that the respective installation directories will not be created.
bfdlibdir =
diff -rupN --no-dereference binutils-2.39/bfd/Makefile.in binutils-2.39-new/bfd/Makefile.in
--- binutils-2.39/bfd/Makefile.in 2022-10-30 12:41:22.908023730 +0100
+++ binutils-2.39-new/bfd/Makefile.in 2022-10-30 12:41:22.912023730 +0100
@@ -290,7 +290,7 @@ am__can_run_installinfo = \
diff -rupN --no-dereference binutils-2.40/bfd/Makefile.in binutils-2.40-new/bfd/Makefile.in
--- binutils-2.40/bfd/Makefile.in 2023-03-09 14:51:48.815448621 +0100
+++ binutils-2.40-new/bfd/Makefile.in 2023-03-09 14:51:48.819448577 +0100
@@ -292,7 +292,7 @@ am__can_run_installinfo = \
esac
am__bfdinclude_HEADERS_DIST = $(INCDIR)/plugin-api.h bfd.h \
$(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
@ -22,7 +22,7 @@ diff -rupN --no-dereference binutils-2.39/bfd/Makefile.in binutils-2.39-new/bfd/
HEADERS = $(bfdinclude_HEADERS)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
@@ -511,7 +511,7 @@ libbfd_la_LDFLAGS = $(am__append_1) -rel
@@ -517,7 +517,7 @@ libbfd_la_LDFLAGS = $(am__append_1) -rel
@INSTALL_LIBBFD_FALSE@bfdinclude_HEADERS = $(am__append_2)
@INSTALL_LIBBFD_TRUE@bfdinclude_HEADERS = $(BFD_H) \
@INSTALL_LIBBFD_TRUE@ $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/binutils/readelf.c binutils-2.39-new/binutils/readelf.c
--- binutils-2.39/binutils/readelf.c 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/binutils/readelf.c 2022-10-30 12:41:25.339023741 +0100
@@ -22710,46 +22710,53 @@ process_file (char * file_name)
diff -rupN --no-dereference binutils-2.40/binutils/readelf.c binutils-2.40-new/binutils/readelf.c
--- binutils-2.40/binutils/readelf.c 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/binutils/readelf.c 2023-03-09 14:51:51.335420794 +0100
@@ -22858,46 +22858,53 @@ process_file (char * file_name)
Filedata * filedata = NULL;
struct stat statbuf;
char armag[SARMAG];
@ -69,8 +69,8 @@ diff -rupN --no-dereference binutils-2.39/binutils/readelf.c binutils-2.39-new/b
+ goto done;
}
filedata->file_size = (bfd_size_type) statbuf.st_size;
@@ -22757,33 +22764,39 @@ process_file (char * file_name)
filedata->file_size = statbuf.st_size;
@@ -22905,33 +22912,39 @@ process_file (char * file_name)
if (memcmp (armag, ARMAG, SARMAG) == 0)
{

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-elfvers/vers24.rd binutils-2.39-new/ld/testsuite/ld-elfvers/vers24.rd
--- binutils-2.39/ld/testsuite/ld-elfvers/vers24.rd 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-elfvers/vers24.rd 2022-10-30 12:41:31.100023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-elfvers/vers24.rd binutils-2.40-new/ld/testsuite/ld-elfvers/vers24.rd
--- binutils-2.40/ld/testsuite/ld-elfvers/vers24.rd 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-elfvers/vers24.rd 2023-03-09 14:51:58.684337020 +0100
@@ -7,9 +7,9 @@ Symbol table '.dynsym' contains [0-9]+ e
# And ensure the dynamic symbol table contains at least x@VERS.0
# and foo@@VERS.0 symbols
@ -13,9 +13,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-elfvers/vers24.rd binu
#...
Symbol table '.symtab' contains [0-9]+ entries:
#pass
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-10.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-10.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-10.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-10.d 2022-10-30 12:41:31.099023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-10.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-10.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-10.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-10.d 2023-03-09 14:51:58.683337032 +0100
@@ -32,7 +32,8 @@ hook called: claim_file tmpdir/func.o \[
hook called: claim_file tmpdir/libtext.a \[@.* not claimed
#...
@ -26,9 +26,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-10.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-11.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-11.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-11.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-11.d 2022-10-30 12:41:31.099023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-11.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-11.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-11.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-11.d 2023-03-09 14:51:58.683337032 +0100
@@ -35,8 +35,9 @@ hook called: claim_file tmpdir/func.o \[
hook called: claim_file tmpdir/libtext.a \[@.* CLAIMED
#...
@ -41,18 +41,18 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-11.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-13.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-13.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-13.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-13.d 2022-10-30 12:41:31.095023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-13.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-13.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-13.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-13.d 2023-03-09 14:51:58.679337079 +0100
@@ -23,5 +23,3 @@ hook called: claim_file tmpdir/main.o \[
hook called: claim_file .*/ld/testsuite/ld-plugin/func.c \[@0/.* CLAIMED
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
-.*main.c.*: undefined reference to `\.?func'
-#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-14.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-14.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-14.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-14.d 2022-10-30 12:41:31.095023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-14.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-14.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-14.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-14.d 2023-03-09 14:51:58.679337079 +0100
@@ -27,7 +27,6 @@ hook called: claim_file .*/ld/testsuite/
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -62,9 +62,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-14.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-15.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-15.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-15.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-15.d 2022-10-30 12:41:31.095023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-15.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-15.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-15.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-15.d 2023-03-09 14:51:58.679337079 +0100
@@ -28,7 +28,6 @@ hook called: claim_file .*/ld/testsuite/
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -74,9 +74,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-15.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-16.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-16.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-16.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-16.d 2022-10-30 12:41:31.096023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-16.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-16.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-16.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-16.d 2023-03-09 14:51:58.680337067 +0100
@@ -30,9 +30,8 @@ hook called: claim_file .*/ld/testsuite/
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -89,9 +89,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-16.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-17.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-17.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-17.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-17.d 2022-10-30 12:41:31.096023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-17.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-17.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-17.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-17.d 2023-03-09 14:51:58.680337067 +0100
@@ -31,7 +31,8 @@ hook called: claim_file .*/ld/testsuite/
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -102,9 +102,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-17.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-18.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-18.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-18.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-18.d 2022-10-30 12:41:31.100023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-18.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-18.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-18.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-18.d 2023-03-09 14:51:58.683337032 +0100
@@ -32,7 +32,8 @@ hook called: claim_file .*/ld/testsuite/
hook called: claim_file tmpdir/libtext.a \[@.* not claimed
#...
@ -115,9 +115,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-18.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-19.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-19.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-19.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-19.d 2022-10-30 12:41:31.100023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-19.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-19.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-19.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-19.d 2023-03-09 14:51:58.684337020 +0100
@@ -35,8 +35,9 @@ hook called: claim_file .*/ld/testsuite/
hook called: claim_file tmpdir/libtext.a \[@.* CLAIMED
#...
@ -130,9 +130,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-19.d bin
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-20.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-20.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-20.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-20.d 2022-10-30 12:41:31.096023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-20.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-20.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-20.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-20.d 2023-03-09 14:51:58.680337067 +0100
@@ -2,6 +2,5 @@ hook called: all symbols read.
Input: func.c \(tmpdir/libfunc.a\)
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
@ -141,9 +141,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-20.d bin
-.*main.c.*: undefined reference to `\.?func'
+#...
hook called: cleanup.
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-21.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-21.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-21.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-21.d 2022-10-30 12:41:31.096023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-21.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-21.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-21.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-21.d 2023-03-09 14:51:58.680337067 +0100
@@ -2,6 +2,5 @@ hook called: all symbols read.
Input: .*/ld/testsuite/ld-plugin/func.c \(.*/ld/testsuite/ld-plugin/func.c\)
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
@ -152,9 +152,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-21.d bin
-.*main.c.*: undefined reference to `\.?func'
+#...
hook called: cleanup.
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-22.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-22.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-22.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-22.d 2022-10-30 12:41:31.097023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-22.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-22.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-22.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-22.d 2023-03-09 14:51:58.680337067 +0100
@@ -2,6 +2,5 @@ Claimed: tmpdir/libfunc.a \[@.*
hook called: all symbols read.
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
@ -163,9 +163,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-22.d bin
-.*main.c.*: undefined reference to `\.?func'
+#...
hook called: cleanup.
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-23.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-23.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-23.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-23.d 2022-10-30 12:41:31.097023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-23.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-23.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-23.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-23.d 2023-03-09 14:51:58.681337056 +0100
@@ -2,6 +2,5 @@ Claimed: .*/ld/testsuite/ld-plugin/func.
hook called: all symbols read.
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
@ -174,47 +174,47 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-23.d bin
-.*main.c.*: undefined reference to `\.?func'
+#...
hook called: cleanup.
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-24.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-24.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-24.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-24.d 2022-10-30 12:41:31.097023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-24.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-24.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-24.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-24.d 2023-03-09 14:51:58.681337056 +0100
@@ -2,4 +2,5 @@ hook called: all symbols read.
Input: .*/ld/testsuite/ld-plugin/func.c \(.*/ld/testsuite/ld-plugin/func.c\)
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
+#...
hook called: cleanup.
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-25.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-25.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-25.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-25.d 2022-10-30 12:41:31.097023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-25.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-25.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-25.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-25.d 2023-03-09 14:51:58.681337056 +0100
@@ -2,4 +2,5 @@ Claimed: .*/ld/testsuite/ld-plugin/func.
hook called: all symbols read.
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
+#...
hook called: cleanup.
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-28.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-28.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-28.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-28.d 2022-10-30 12:41:31.100023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-28.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-28.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-28.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-28.d 2023-03-09 14:51:58.684337020 +0100
@@ -1 +1,2 @@
.*: error: Error
+#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-29.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-29.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-29.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-29.d 2022-10-30 12:41:31.098023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-29.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-29.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-29.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-29.d 2023-03-09 14:51:58.681337056 +0100
@@ -1 +1,2 @@
.*: warning: Warning
+#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-30.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-30.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-30.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-30.d 2022-10-30 12:41:31.098023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-30.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-30.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-30.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-30.d 2023-03-09 14:51:58.681337056 +0100
@@ -24,3 +24,4 @@ hook called: claim_file tmpdir/main.o \[
hook called: claim_file tmpdir/func.o \[@0/.* not claimed
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
hook called: claim_file tmpdir/libempty.a \[@.* not claimed
+#pass
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-6.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-6.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-6.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-6.d 2022-10-30 12:41:31.098023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-6.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-6.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-6.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-6.d 2023-03-09 14:51:58.682337044 +0100
@@ -27,7 +27,6 @@ hook called: claim_file tmpdir/func.o \[
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -224,9 +224,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-6.d binu
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-7.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-7.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-7.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-7.d 2022-10-30 12:41:31.098023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-7.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-7.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-7.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-7.d 2023-03-09 14:51:58.682337044 +0100
@@ -28,7 +28,6 @@ hook called: claim_file tmpdir/func.o \[
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -236,9 +236,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-7.d binu
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-8.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-8.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-8.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-8.d 2022-10-30 12:41:31.100023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-8.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-8.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-8.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-8.d 2023-03-09 14:51:58.684337020 +0100
@@ -30,9 +30,8 @@ hook called: claim_file tmpdir/func.o \[
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -251,9 +251,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-8.d binu
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-9.d binutils-2.39-new/ld/testsuite/ld-plugin/plugin-9.d
--- binutils-2.39/ld/testsuite/ld-plugin/plugin-9.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin-9.d 2022-10-30 12:41:31.099023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin-9.d binutils-2.40-new/ld/testsuite/ld-plugin/plugin-9.d
--- binutils-2.40/ld/testsuite/ld-plugin/plugin-9.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin-9.d 2023-03-09 14:51:58.682337044 +0100
@@ -31,7 +31,8 @@ hook called: claim_file tmpdir/func.o \[
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
#...
@ -264,9 +264,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin-9.d binu
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin.exp binutils-2.39-new/ld/testsuite/ld-plugin/plugin.exp
--- binutils-2.39/ld/testsuite/ld-plugin/plugin.exp 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/plugin.exp 2022-10-30 12:41:31.101023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/plugin.exp binutils-2.40-new/ld/testsuite/ld-plugin/plugin.exp
--- binutils-2.40/ld/testsuite/ld-plugin/plugin.exp 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/plugin.exp 2023-03-09 14:51:58.685337009 +0100
@@ -117,6 +117,12 @@ if { $can_compile && !$failed_compile }
}
}
@ -280,9 +280,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/plugin.exp binu
set testobjfiles "tmpdir/main.o tmpdir/func.o tmpdir/text.o"
set testobjfiles_notext "tmpdir/main.o tmpdir/func.o"
set testsrcfiles "tmpdir/main.o $srcdir/$subdir/func.c tmpdir/text.o"
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/pr20070.d binutils-2.39-new/ld/testsuite/ld-plugin/pr20070.d
--- binutils-2.39/ld/testsuite/ld-plugin/pr20070.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-plugin/pr20070.d 2022-10-30 12:41:31.099023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-plugin/pr20070.d binutils-2.40-new/ld/testsuite/ld-plugin/pr20070.d
--- binutils-2.40/ld/testsuite/ld-plugin/pr20070.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-plugin/pr20070.d 2023-03-09 14:51:58.683337032 +0100
@@ -5,5 +5,6 @@ Sym: 'weakdef' Resolution: LDPR_PREVAILI
Sym: 'undef' Resolution: LDPR_UNDEF
Sym: 'weakundef' Resolution: LDPR_UNDEF
@ -290,9 +290,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-plugin/pr20070.d binut
+#...
hook called: cleanup.
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-srec/srec.exp binutils-2.39-new/ld/testsuite/ld-srec/srec.exp
--- binutils-2.39/ld/testsuite/ld-srec/srec.exp 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-srec/srec.exp 2022-10-30 12:41:31.099023768 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-srec/srec.exp binutils-2.40-new/ld/testsuite/ld-srec/srec.exp
--- binutils-2.40/ld/testsuite/ld-srec/srec.exp 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-srec/srec.exp 2023-03-09 14:51:58.683337032 +0100
@@ -21,6 +21,8 @@
# Get the offset from an S-record line to the start of the data.

@ -1,67 +0,0 @@
diff -rupN --no-dereference binutils-2.39/gas/dwarf2dbg.c binutils-2.39-new/gas/dwarf2dbg.c
--- binutils-2.39/gas/dwarf2dbg.c 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/gas/dwarf2dbg.c 2022-10-30 12:41:40.297023812 +0100
@@ -2882,6 +2882,7 @@ out_debug_info (segT info_seg, segT abbr
{
const char *name;
size_t len;
+ expressionS size = { .X_op = O_constant };
/* Skip warning constructs (see above). */
if (symbol_get_bfdsym (symp)->flags & BSF_WARNING)
@@ -2895,6 +2896,18 @@ out_debug_info (segT info_seg, segT abbr
if (!S_IS_DEFINED (symp) || !S_IS_FUNCTION (symp))
continue;
+#if defined (OBJ_ELF) /* || defined (OBJ_MAYBE_ELF) */
+ size.X_add_number = S_GET_SIZE (symp);
+ if (size.X_add_number == 0 && IS_ELF
+ && symbol_get_obj (symp)->size != NULL)
+ {
+ size.X_op = O_add;
+ size.X_op_symbol = make_expr_symbol (symbol_get_obj (symp)->size);
+ }
+#endif
+ if (size.X_op == O_constant && size.X_add_number == 0)
+ continue;
+
subseg_set (str_seg, 0);
name_sym = symbol_temp_new_now_octets ();
name = S_GET_NAME (symp);
@@ -2920,29 +2933,17 @@ out_debug_info (segT info_seg, segT abbr
emit_expr (&exp, sizeof_address);
/* DW_AT_high_pc */
- exp.X_op = O_constant;
-#if defined (OBJ_ELF) /* || defined (OBJ_MAYBE_ELF) */
- exp.X_add_number = S_GET_SIZE (symp);
- if (exp.X_add_number == 0 && IS_ELF
- && symbol_get_obj (symp)->size != NULL)
- {
- exp.X_op = O_add;
- exp.X_op_symbol = make_expr_symbol (symbol_get_obj (symp)->size);
- }
-#else
- exp.X_add_number = 0;
-#endif
if (DWARF2_VERSION < 4)
{
- if (exp.X_op == O_constant)
- exp.X_op = O_symbol;
- exp.X_add_symbol = symp;
- emit_expr (&exp, sizeof_address);
+ if (size.X_op == O_constant)
+ size.X_op = O_symbol;
+ size.X_add_symbol = symp;
+ emit_expr (&size, sizeof_address);
}
- else if (exp.X_op == O_constant)
- out_uleb128 (exp.X_add_number);
+ else if (size.X_op == O_constant)
+ out_uleb128 (size.X_add_number);
else
- emit_leb128_expr (symbol_get_value_expression (exp.X_op_symbol), 0);
+ emit_leb128_expr (symbol_get_value_expression (size.X_op_symbol), 0);
}
/* End of children. */

@ -0,0 +1,13 @@
diff -rupN --no-dereference binutils-2.40/ld/ldlang.c binutils-2.40-new/ld/ldlang.c
--- binutils-2.40/ld/ldlang.c 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/ldlang.c 2023-06-14 16:26:54.425556661 +0200
@@ -649,7 +649,8 @@ wild_sort (lang_wild_statement_type *wil
looking at the sections for this file. */
/* Find the correct node to append this section. */
- if (compare_section (sec->spec.sorted, section, (*tree)->section) < 0)
+ if (sec && sec->spec.sorted != none && sec->spec.sorted != by_none
+ && compare_section (sec->spec.sorted, section, (*tree)->section) < 0)
tree = &((*tree)->left);
else
tree = &((*tree)->right);

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/gold/i386.cc binutils-2.39-new/gold/i386.cc
--- binutils-2.39/gold/i386.cc 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/gold/i386.cc 2022-10-30 12:41:35.714023790 +0100
diff -rupN --no-dereference binutils-2.40/gold/i386.cc binutils-2.40-new/gold/i386.cc
--- binutils-2.40/gold/i386.cc 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/gold/i386.cc 2023-03-09 14:52:02.399293207 +0100
@@ -360,7 +360,11 @@ class Target_i386 : public Sized_target<
got_(NULL), plt_(NULL), got_plt_(NULL), got_irelative_(NULL),
got_tlsdesc_(NULL), global_offset_table_(NULL), rel_dyn_(NULL),

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/gold/layout.cc binutils-2.39-new/gold/layout.cc
--- binutils-2.39/gold/layout.cc 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/gold/layout.cc 2022-10-30 12:41:32.255023774 +0100
@@ -869,6 +869,7 @@ Layout::get_output_section(const char* n
diff -rupN --no-dereference binutils-2.40/gold/layout.cc binutils-2.40-new/gold/layout.cc
--- binutils-2.40/gold/layout.cc 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/gold/layout.cc 2023-03-09 14:51:59.908322697 +0100
@@ -872,6 +872,7 @@ Layout::get_output_section(const char* n
&& (same_name->flags() & elfcpp::SHF_TLS) == 0)
os = same_name;
}
@ -9,7 +9,7 @@ diff -rupN --no-dereference binutils-2.39/gold/layout.cc binutils-2.39-new/gold/
else if ((flags & elfcpp::SHF_TLS) == 0)
{
elfcpp::Elf_Xword zero_flags = 0;
@@ -879,6 +880,7 @@ Layout::get_output_section(const char* n
@@ -882,6 +883,7 @@ Layout::get_output_section(const char* n
if (p != this->section_name_map_.end())
os = p->second;
}

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/bfd/config.bfd binutils-2.39-new/bfd/config.bfd
--- binutils-2.39/bfd/config.bfd 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/bfd/config.bfd 2022-10-30 12:41:33.412023779 +0100
@@ -490,7 +490,7 @@ case "${targ}" in
diff -rupN --no-dereference binutils-2.40/bfd/config.bfd binutils-2.40-new/bfd/config.bfd
--- binutils-2.40/bfd/config.bfd 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/config.bfd 2023-03-09 14:52:01.154308002 +0100
@@ -501,7 +501,7 @@ case "${targ}" in
;;
#ifdef BFD64
@ -10,7 +10,7 @@ diff -rupN --no-dereference binutils-2.39/bfd/config.bfd binutils-2.39-new/bfd/c
targ_defvec=bpf_elf64_le_vec
targ_selvecs=bpf_elf64_be_vec
targ_underscore=yes
@@ -1478,7 +1478,7 @@ case "${targ}" in
@@ -1494,7 +1494,7 @@ case "${targ}" in
;;
*)
@ -19,10 +19,10 @@ diff -rupN --no-dereference binutils-2.39/bfd/config.bfd binutils-2.39-new/bfd/c
echo 1>&2 "*** Look in bfd/config.bfd for supported targets."
exit 1
;;
diff -rupN --no-dereference binutils-2.39/gold/configure binutils-2.39-new/gold/configure
--- binutils-2.39/gold/configure 2022-07-08 11:58:08.000000000 +0200
+++ binutils-2.39-new/gold/configure 2022-10-30 12:41:33.410023779 +0100
@@ -5223,7 +5223,8 @@ for targ in $target $canon_targets; do
diff -rupN --no-dereference binutils-2.40/gold/configure binutils-2.40-new/gold/configure
--- binutils-2.40/gold/configure 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/gold/configure 2023-03-09 14:52:01.152308026 +0100
@@ -5255,7 +5255,8 @@ for targ in $target $canon_targets; do
. ${srcdir}/configure.tgt
if test "$targ_obj" = "UNKNOWN"; then
@ -32,9 +32,9 @@ diff -rupN --no-dereference binutils-2.39/gold/configure binutils-2.39-new/gold/
else
targetobjs="$targetobjs ${targ_obj}.\$(OBJEXT)"
if test "$targ_extra_obj" != ""; then
diff -rupN --no-dereference binutils-2.39/gold/configure.ac binutils-2.39-new/gold/configure.ac
--- binutils-2.39/gold/configure.ac 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/gold/configure.ac 2022-10-30 12:41:33.411023779 +0100
diff -rupN --no-dereference binutils-2.40/gold/configure.ac binutils-2.40-new/gold/configure.ac
--- binutils-2.40/gold/configure.ac 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/gold/configure.ac 2023-03-09 14:52:01.153308014 +0100
@@ -182,7 +182,7 @@ for targ in $target $canon_targets; do
. ${srcdir}/configure.tgt
@ -44,10 +44,10 @@ diff -rupN --no-dereference binutils-2.39/gold/configure.ac binutils-2.39-new/go
else
targetobjs="$targetobjs ${targ_obj}.\$(OBJEXT)"
if test "$targ_extra_obj" != ""; then
diff -rupN --no-dereference binutils-2.39/ld/configure.tgt binutils-2.39-new/ld/configure.tgt
--- binutils-2.39/ld/configure.tgt 2022-07-29 09:37:48.000000000 +0200
+++ binutils-2.39-new/ld/configure.tgt 2022-10-30 12:41:33.411023779 +0100
@@ -258,7 +258,7 @@ bfin-*-linux-uclibc*) targ_emul=elf32bfi
diff -rupN --no-dereference binutils-2.40/ld/configure.tgt binutils-2.40-new/ld/configure.tgt
--- binutils-2.40/ld/configure.tgt 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/configure.tgt 2023-03-09 14:52:01.153308014 +0100
@@ -263,7 +263,7 @@ bfin-*-linux-uclibc*) targ_emul=elf32bfi
targ_extra_emuls="elf32bfin"
targ_extra_libpath=$targ_extra_emuls
;;
@ -56,7 +56,7 @@ diff -rupN --no-dereference binutils-2.39/ld/configure.tgt binutils-2.39-new/ld/
;;
cr16-*-elf*) targ_emul=elf32cr16
;;
@@ -1078,7 +1078,7 @@ loongarch64-*) targ_emul=elf64loongarch
@@ -1088,7 +1088,7 @@ loongarch64-*) targ_emul=elf64loongarch
targ_extra_ofiles=
;;
*)

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/ltmain.sh binutils-2.39-new/ltmain.sh
--- binutils-2.39/ltmain.sh 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ltmain.sh 2022-10-30 12:41:38.049023801 +0100
diff -rupN --no-dereference binutils-2.40/ltmain.sh binutils-2.40-new/ltmain.sh
--- binutils-2.40/ltmain.sh 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ltmain.sh 2023-03-09 14:52:04.803264344 +0100
@@ -7103,6 +7103,7 @@ EOF
rpath="$finalize_rpath"
test "$mode" != relink && rpath="$compile_rpath$rpath"

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/bfd/bfd-in2.h binutils-2.39-new/bfd/bfd-in2.h
--- binutils-2.39/bfd/bfd-in2.h 2022-08-01 09:12:32.000000000 +0200
+++ binutils-2.39-new/bfd/bfd-in2.h 2022-10-30 12:41:24.134023735 +0100
diff -rupN --no-dereference binutils-2.40/bfd/bfd-in2.h binutils-2.40-new/bfd/bfd-in2.h
--- binutils-2.40/bfd/bfd-in2.h 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/bfd-in2.h 2023-03-09 14:51:50.115434327 +0100
@@ -30,11 +30,6 @@
#ifndef __BFD_H_SEEN__
#define __BFD_H_SEEN__
@ -13,9 +13,9 @@ diff -rupN --no-dereference binutils-2.39/bfd/bfd-in2.h binutils-2.39-new/bfd/bf
#ifdef __cplusplus
extern "C" {
#endif
diff -rupN --no-dereference binutils-2.39/bfd/bfd-in.h binutils-2.39-new/bfd/bfd-in.h
--- binutils-2.39/bfd/bfd-in.h 2022-08-01 09:12:32.000000000 +0200
+++ binutils-2.39-new/bfd/bfd-in.h 2022-10-30 12:41:24.133023735 +0100
diff -rupN --no-dereference binutils-2.40/bfd/bfd-in.h binutils-2.40-new/bfd/bfd-in.h
--- binutils-2.40/bfd/bfd-in.h 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/bfd-in.h 2023-03-09 14:51:50.114434338 +0100
@@ -23,11 +23,6 @@
#ifndef __BFD_H_SEEN__
#define __BFD_H_SEEN__

@ -0,0 +1,45 @@
diff -rupN --no-dereference binutils-2.40/binutils/objcopy.c binutils-2.40-new/binutils/objcopy.c
--- binutils-2.40/binutils/objcopy.c 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/binutils/objcopy.c 2023-03-09 14:52:06.043249302 +0100
@@ -2403,6 +2403,8 @@ merge_gnu_build_notes (bfd * ab
other note then if they are both of the same type (open
or func) then they can be merged and one deleted. If
they are of different types then they cannot be merged. */
+ objcopy_internal_note * prev_note = NULL;
+
for (pnote = pnotes; pnote < pnotes_end; pnote ++)
{
/* Skip already deleted notes.
@@ -2424,7 +2426,9 @@ merge_gnu_build_notes (bfd * ab
objcopy_internal_note * back;
/* Rule 2: Check to see if there is an identical previous note. */
- for (iter = 0, back = pnote - 1; back >= pnotes; back --)
+ for (iter = 0, back = prev_note ? prev_note : pnote - 1;
+ back >= pnotes;
+ back --)
{
if (is_deleted_note (back))
continue;
@@ -2486,11 +2490,18 @@ merge_gnu_build_notes (bfd * ab
break;
}
}
-#if DEBUG_MERGE
+
+
if (! is_deleted_note (pnote))
- merge_debug ("Unable to do anything with note at %#08lx\n",
- (pnote->note.namedata - (char *) contents) - 12);
+ {
+ /* Keep a pointer to this note, so that we can
+ start the next search for rule 2 matches here. */
+ prev_note = pnote;
+#if DEBUG_MERGE
+ merge_debug ("Unable to do anything with note at %#08lx\n",
+ (pnote->note.namedata - (char *) contents) - 12);
#endif
+ }
}
/* Resort the notes. */

@ -1,197 +0,0 @@
diff -rupN --no-dereference binutils-2.39/elfcpp/elfcpp.h binutils-2.39-new/elfcpp/elfcpp.h
--- binutils-2.39/elfcpp/elfcpp.h 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/elfcpp/elfcpp.h 2022-10-30 12:41:39.175023806 +0100
@@ -999,7 +999,9 @@ enum
// string.
NT_GNU_GOLD_VERSION = 4,
// Program property note, as described in "Linux Extensions to the gABI".
- NT_GNU_PROPERTY_TYPE_0 = 5
+ NT_GNU_PROPERTY_TYPE_0 = 5,
+ // FDO .note.package notes as defined on https://systemd.io/ELF_PACKAGE_METADATA/
+ FDO_PACKAGING_METADATA = 0xcafe1a7e
};
// The OS values which may appear in word 0 of a NT_GNU_ABI_TAG note.
diff -rupN --no-dereference binutils-2.39/gold/configure.ac binutils-2.39-new/gold/configure.ac
--- binutils-2.39/gold/configure.ac 2022-10-30 12:41:34.538023785 +0100
+++ binutils-2.39-new/gold/configure.ac 2022-10-30 12:41:39.173023806 +0100
@@ -591,6 +591,32 @@ if test "$threads" = "yes"; then
fi
AM_CONDITIONAL(THREADS, test "$threads" = "yes")
+# Used to validate --package-metadata= input. Disabled by default.
+AC_ARG_ENABLE([jansson],
+ [AS_HELP_STRING([--enable-jansson],
+ [enable jansson [default=no]])],
+ [enable_jansson=$enableval],
+ [enable_jansson="no"])
+
+if test "x$enable_jansson" != "xno"; then
+ PKG_PROG_PKG_CONFIG
+ AS_IF([test -n "$PKG_CONFIG"],
+ [
+ PKG_CHECK_MODULES(JANSSON, [jansson],
+ [
+ AC_DEFINE(HAVE_JANSSON, 1, [The jansson library is to be used])
+ AC_SUBST([JANSSON_CFLAGS])
+ AC_SUBST([JANSSON_LIBS])
+ ],
+ [
+ AC_MSG_ERROR([Cannot find jansson library])
+ ])
+ ],
+ [
+ AC_MSG_ERROR([Cannot find pkg-config])
+ ])
+fi
+
dnl We have to check these in C, not C++, because autoconf generates
dnl tests which have no type information, and current glibc provides
dnl multiple declarations of functions like basename when compiling
diff -rupN --no-dereference binutils-2.39/gold/layout.cc binutils-2.39-new/gold/layout.cc
--- binutils-2.39/gold/layout.cc 2022-10-30 12:41:33.405023779 +0100
+++ binutils-2.39-new/gold/layout.cc 2022-10-30 12:41:39.174023806 +0100
@@ -38,6 +38,9 @@
#include <windows.h>
#include <rpcdce.h>
#endif
+#ifdef HAVE_JANSSON
+#include <jansson.h>
+#endif
#include "parameters.h"
#include "options.h"
@@ -2439,6 +2442,7 @@ Layout::create_notes()
this->create_gold_note();
this->create_stack_segment();
this->create_build_id();
+ this->create_package_metadata();
}
// Create the dynamic sections which are needed before we read the
@@ -3536,6 +3540,52 @@ Layout::create_build_id()
}
}
+// If --package-metadata was used, set up the package metadata note.
+// https://systemd.io/ELF_PACKAGE_METADATA/
+
+void
+Layout::create_package_metadata()
+{
+ if (!parameters->options().user_set_package_metadata())
+ return;
+
+ const char* desc = parameters->options().package_metadata();
+ if (strcmp(desc, "") == 0)
+ return;
+
+#ifdef HAVE_JANSSON
+ json_error_t json_error;
+ json_t *json = json_loads(desc, 0, &json_error);
+ if (json)
+ json_decref(json);
+ else
+ {
+ gold_fatal(_("error: --package-metadata=%s does not contain valid "
+ "JSON: %s\n"),
+ desc, json_error.text);
+ }
+#endif
+
+ // Create the note.
+ size_t trailing_padding;
+ // Ensure the trailing NULL byte is always included, as per specification.
+ size_t descsz = strlen(desc) + 1;
+ Output_section* os = this->create_note("FDO", elfcpp::FDO_PACKAGING_METADATA,
+ ".note.package", descsz, true,
+ &trailing_padding);
+ if (os == NULL)
+ return;
+
+ Output_section_data* posd = new Output_data_const(desc, descsz, 4);
+ os->add_output_section_data(posd);
+
+ if (trailing_padding != 0)
+ {
+ posd = new Output_data_zero_fill(trailing_padding, 0);
+ os->add_output_section_data(posd);
+ }
+}
+
// If we have both .stabXX and .stabXXstr sections, then the sh_link
// field of the former should point to the latter. I'm not sure who
// started this, but the GNU linker does it, and some tools depend
diff -rupN --no-dereference binutils-2.39/gold/layout.h binutils-2.39-new/gold/layout.h
--- binutils-2.39/gold/layout.h 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/gold/layout.h 2022-10-30 12:41:39.174023806 +0100
@@ -1107,6 +1107,10 @@ class Layout
void
create_build_id();
+ // Create a package metadata note if needed.
+ void
+ create_package_metadata();
+
// Link .stab and .stabstr sections.
void
link_stabs_sections();
@@ -1453,6 +1457,8 @@ class Layout
Gdb_index* gdb_index_data_;
// The space for the build ID checksum if there is one.
Output_section_data* build_id_note_;
+ // The space for the package metadata JSON if there is one.
+ Output_section_data* package_metadata_note_;
// The output section containing dwarf abbreviations
Output_reduced_debug_abbrev_section* debug_abbrev_;
// The output section containing the dwarf debug info tree
diff -rupN --no-dereference binutils-2.39/gold/Makefile.am binutils-2.39-new/gold/Makefile.am
--- binutils-2.39/gold/Makefile.am 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/gold/Makefile.am 2022-10-30 12:41:39.173023806 +0100
@@ -35,7 +35,7 @@ THREADFLAGS = @PTHREAD_CFLAGS@
THREADLIBS = @PTHREAD_LIBS@
AM_CFLAGS = $(WARN_CFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) $(ZLIBINC) $(THREADFLAGS)
-AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) $(ZLIBINC) $(THREADFLAGS)
+AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) $(ZLIBINC) $(THREADFLAGS) $(JANSSON_CFLAGS)
AM_LDFLAGS = $(THREADFLAGS)
AM_CPPFLAGS = \
@@ -187,7 +187,7 @@ libgold_a_LIBADD = $(LIBOBJS)
sources_var = main.cc
deps_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL_DEP)
ldadd_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(GOLD_LDADD) $(LIBINTL) \
- $(THREADLIBS) $(LIBDL) $(ZLIB)
+ $(THREADLIBS) $(LIBDL) $(ZLIB) $(JANSSON_LIBS)
ldflags_var = $(GOLD_LDFLAGS)
ld_new_SOURCES = $(sources_var)
@@ -201,12 +201,12 @@ incremental_dump_SOURCES = incremental-d
incremental_dump_DEPENDENCIES = $(TARGETOBJS) libgold.a $(LIBIBERTY) \
$(LIBINTL_DEP)
incremental_dump_LDADD = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL) \
- $(THREADLIBS) $(LIBDL) $(ZLIB)
+ $(THREADLIBS) $(LIBDL) $(ZLIB) $(JANSSON_LIBS)
dwp_SOURCES = dwp.cc
dwp_DEPENDENCIES = libgold.a $(LIBIBERTY) $(LIBINTL_DEP)
dwp_LDADD = libgold.a $(LIBIBERTY) $(GOLD_LDADD) $(LIBINTL) $(THREADLIBS) \
- $(LIBDL) $(ZLIB)
+ $(LIBDL) $(ZLIB) $(JANSSON_LIBS)
dwp_LDFLAGS = $(GOLD_LDFLAGS)
CONFIG_STATUS_DEPENDENCIES = $(srcdir)/../bfd/development.sh
diff -rupN --no-dereference binutils-2.39/gold/options.h binutils-2.39-new/gold/options.h
--- binutils-2.39/gold/options.h 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/gold/options.h 2022-10-30 12:41:39.175023806 +0100
@@ -1102,6 +1102,10 @@ class General_options
DEFINE_bool(p, options::ONE_DASH, 'p', false,
N_("Ignored for ARM compatibility"), NULL);
+ DEFINE_optional_string(package_metadata, options::TWO_DASHES, '\0', NULL,
+ N_("Generate package metadata note"),
+ N_("[=JSON]"));
+
DEFINE_bool(pie, options::ONE_DASH, '\0', false,
N_("Create a position independent executable"),
N_("Do not create a position independent executable"));

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/binutils/readelf.c binutils-2.39-new/binutils/readelf.c
--- binutils-2.39/binutils/readelf.c 2022-10-30 12:41:26.462023746 +0100
+++ binutils-2.39-new/binutils/readelf.c 2022-10-30 12:41:27.687023752 +0100
@@ -13177,11 +13177,13 @@ print_dynamic_symbol (Filedata *filedata
diff -rupN --no-dereference binutils-2.40/binutils/readelf.c binutils-2.40-new/binutils/readelf.c
--- binutils-2.40/binutils/readelf.c 2023-03-09 14:51:52.549407223 +0100
+++ binutils-2.40-new/binutils/readelf.c 2023-03-09 14:51:53.790393244 +0100
@@ -13247,11 +13247,13 @@ print_dynamic_symbol (Filedata *filedata
unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
printf (" %-7s", get_symbol_visibility (vis));
@ -15,7 +15,7 @@ diff -rupN --no-dereference binutils-2.39/binutils/readelf.c binutils-2.39-new/b
}
printf (" %4s ", get_symbol_index_type (filedata, psym->st_shndx));
@@ -13235,7 +13237,17 @@ print_dynamic_symbol (Filedata *filedata
@@ -13305,7 +13307,17 @@ print_dynamic_symbol (Filedata *filedata
version_string);
}

@ -1,6 +1,6 @@
diff -rupN --no-dereference binutils-2.39/bfd/elfxx-x86.c binutils-2.39-new/bfd/elfxx-x86.c
--- binutils-2.39/bfd/elfxx-x86.c 2022-07-26 09:13:10.000000000 +0200
+++ binutils-2.39-new/bfd/elfxx-x86.c 2022-10-30 12:41:26.471023746 +0100
diff -rupN --no-dereference binutils-2.40/bfd/elfxx-x86.c binutils-2.40-new/bfd/elfxx-x86.c
--- binutils-2.40/bfd/elfxx-x86.c 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/elfxx-x86.c 2023-03-09 14:51:52.557407133 +0100
@@ -105,7 +105,7 @@ elf_x86_allocate_dynrelocs (struct elf_l
plt_entry_size = htab->plt.plt_entry_size;
@ -19,9 +19,9 @@ diff -rupN --no-dereference binutils-2.39/bfd/elfxx-x86.c binutils-2.39-new/bfd/
/* Since STT_GNU_IFUNC symbol must go through PLT, we handle it
here if it is defined and referenced in a non-shared object. */
if (h->type == STT_GNU_IFUNC
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pltgot-1.d binutils-2.39-new/ld/testsuite/ld-i386/pltgot-1.d
--- binutils-2.39/ld/testsuite/ld-i386/pltgot-1.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-i386/pltgot-1.d 2022-10-30 12:41:26.467023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-i386/pltgot-1.d binutils-2.40-new/ld/testsuite/ld-i386/pltgot-1.d
--- binutils-2.40/ld/testsuite/ld-i386/pltgot-1.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-i386/pltgot-1.d 2023-03-09 14:51:52.553407178 +0100
@@ -2,6 +2,7 @@
#readelf: -S --wide
#as: --32
@ -30,9 +30,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pltgot-1.d binuti
#...
+\[ *[0-9]+\] \.plt +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+10 +.*
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pltgot-2.d binutils-2.39-new/ld/testsuite/ld-i386/pltgot-2.d
--- binutils-2.39/ld/testsuite/ld-i386/pltgot-2.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-i386/pltgot-2.d 2022-10-30 12:41:26.467023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-i386/pltgot-2.d binutils-2.40-new/ld/testsuite/ld-i386/pltgot-2.d
--- binutils-2.40/ld/testsuite/ld-i386/pltgot-2.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-i386/pltgot-2.d 2023-03-09 14:51:52.554407167 +0100
@@ -3,7 +3,6 @@
#readelf: -d --wide
#as: --32
@ -41,9 +41,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pltgot-2.d binuti
#...
+0x[0-9a-f]+ +\(PLTREL.*
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pr19636-2d.d binutils-2.39-new/ld/testsuite/ld-i386/pr19636-2d.d
--- binutils-2.39/ld/testsuite/ld-i386/pr19636-2d.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-i386/pr19636-2d.d 2022-10-30 12:41:26.467023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-i386/pr19636-2d.d binutils-2.40-new/ld/testsuite/ld-i386/pr19636-2d.d
--- binutils-2.40/ld/testsuite/ld-i386/pr19636-2d.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-i386/pr19636-2d.d 2023-03-09 14:51:52.554407167 +0100
@@ -8,7 +8,7 @@ Relocation section '\.rel\.dyn' at offse
[0-9a-f]+ +[0-9a-f]+ +R_386_32 +0+ +func
[0-9a-f]+ +[0-9a-f]+ +R_386_PC32 +0+ +func
@ -53,9 +53,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pr19636-2d.d binu
Symbol table '\.dynsym' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pr19636-2e.d binutils-2.39-new/ld/testsuite/ld-i386/pr19636-2e.d
--- binutils-2.39/ld/testsuite/ld-i386/pr19636-2e.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-i386/pr19636-2e.d 2022-10-30 12:41:26.468023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-i386/pr19636-2e.d binutils-2.40-new/ld/testsuite/ld-i386/pr19636-2e.d
--- binutils-2.40/ld/testsuite/ld-i386/pr19636-2e.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-i386/pr19636-2e.d 2023-03-09 14:51:52.554407167 +0100
@@ -8,7 +8,7 @@ Relocation section '\.rel\.dyn' at offse
[0-9a-f]+ +[0-9a-f]+ +R_386_32 +0+ +func
[0-9a-f]+ +[0-9a-f]+ +R_386_PC32 +0+ +func
@ -65,9 +65,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pr19636-2e.d binu
Symbol table '\.dynsym' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pr20830.d binutils-2.39-new/ld/testsuite/ld-i386/pr20830.d
--- binutils-2.39/ld/testsuite/ld-i386/pr20830.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-i386/pr20830.d 2022-10-30 12:41:26.472023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-i386/pr20830.d binutils-2.40-new/ld/testsuite/ld-i386/pr20830.d
--- binutils-2.40/ld/testsuite/ld-i386/pr20830.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-i386/pr20830.d 2023-03-09 14:51:52.557407133 +0100
@@ -19,7 +19,7 @@ Contents of the .eh_frame section:
DW_CFA_offset: r8 \(eip\) at cfa-4
DW_CFA_nop
@ -77,9 +77,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-i386/pr20830.d binutil
0+18 00000010 0000001c FDE cie=00000000 pc=00000128..00000133
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pltgot-1.d binutils-2.39-new/ld/testsuite/ld-x86-64/pltgot-1.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pltgot-1.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pltgot-1.d 2022-10-30 12:41:26.468023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/pltgot-1.d binutils-2.40-new/ld/testsuite/ld-x86-64/pltgot-1.d
--- binutils-2.40/ld/testsuite/ld-x86-64/pltgot-1.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/pltgot-1.d 2023-03-09 14:51:52.555407156 +0100
@@ -2,8 +2,4 @@
#readelf: -S --wide
#as: --64
@ -89,9 +89,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pltgot-1.d binu
-#...
- +\[ *[0-9]+\] \.got\.plt +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+18 +.*
#pass
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pltgot-2.d binutils-2.39-new/ld/testsuite/ld-x86-64/pltgot-2.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pltgot-2.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pltgot-2.d 2022-10-30 12:41:26.469023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/pltgot-2.d binutils-2.40-new/ld/testsuite/ld-x86-64/pltgot-2.d
--- binutils-2.40/ld/testsuite/ld-x86-64/pltgot-2.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/pltgot-2.d 2023-03-09 14:51:52.555407156 +0100
@@ -3,7 +3,6 @@
#readelf: -d --wide
#as: --64
@ -100,17 +100,17 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pltgot-2.d binu
#...
+0x[0-9a-f]+ +\(PLTREL.*
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/plt-main.rd binutils-2.39-new/ld/testsuite/ld-x86-64/plt-main.rd
--- binutils-2.39/ld/testsuite/ld-x86-64/plt-main.rd 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/plt-main.rd 2022-10-30 12:41:26.469023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/plt-main.rd binutils-2.40-new/ld/testsuite/ld-x86-64/plt-main.rd
--- binutils-2.40/ld/testsuite/ld-x86-64/plt-main.rd 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/plt-main.rd 2023-03-09 14:51:52.555407156 +0100
@@ -1,4 +1,3 @@
-#failif
#...
[0-9a-f ]+R_X86_64_JUMP_SLOT +0+ +bar \+ 0
#...
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830a.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830a.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr20830a.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830a.d 2022-10-30 12:41:26.469023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/pr20830a.d binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830a.d
--- binutils-2.40/ld/testsuite/ld-x86-64/pr20830a.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830a.d 2023-03-09 14:51:52.555407156 +0100
@@ -20,6 +20,7 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
@ -119,9 +119,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830a.d binu
0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830a-now.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830a-now.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr20830a-now.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830a-now.d 2022-10-30 12:41:26.469023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/pr20830a-now.d binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830a-now.d
--- binutils-2.40/ld/testsuite/ld-x86-64/pr20830a-now.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830a-now.d 2023-03-09 14:51:52.555407156 +0100
@@ -20,6 +20,7 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
@ -130,9 +130,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830a-now.d
0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830b.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830b.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr20830b.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830b.d 2022-10-30 12:41:26.469023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/pr20830b.d binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830b.d
--- binutils-2.40/ld/testsuite/ld-x86-64/pr20830b.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830b.d 2023-03-09 14:51:52.556407144 +0100
@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
@ -143,9 +143,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830b.d binu
0+18 0000000000000010 0000001c FDE cie=00000000 pc=0000000000000138..0000000000000144
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830b-now.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830b-now.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr20830b-now.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr20830b-now.d 2022-10-30 12:41:26.469023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/pr20830b-now.d binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830b-now.d
--- binutils-2.40/ld/testsuite/ld-x86-64/pr20830b-now.d 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/pr20830b-now.d 2023-03-09 14:51:52.556407144 +0100
@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
@ -156,85 +156,9 @@ diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr20830b-now.d
0+18 0000000000000010 0000001c FDE cie=00000000 pc=0000000000000138..0000000000000144
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr21038a.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038a.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr21038a.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038a.d 2022-10-30 12:41:26.470023746 +0100
@@ -19,7 +19,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
DW_CFA_nop
-
+#pass
+
0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr21038a-now.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038a-now.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr21038a-now.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038a-now.d 2022-10-30 12:41:26.470023746 +0100
@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
DW_CFA_nop
-
+#pass
+
0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr21038b.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038b.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr21038b.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038b.d 2022-10-30 12:41:26.470023746 +0100
@@ -19,6 +19,7 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
DW_CFA_nop
+#pass
0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001d8..00000000000001dd
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr21038b-now.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038b-now.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr21038b-now.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038b-now.d 2022-10-30 12:41:26.470023746 +0100
@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
DW_CFA_nop
-
+#pass
+
0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001d8..00000000000001dd
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr21038c.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038c.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr21038c.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038c.d 2022-10-30 12:41:26.470023746 +0100
@@ -19,7 +19,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
DW_CFA_nop
-
+#pass
+
0+18 0000000000000014 0000001c FDE cie=00000000 pc=0000000000000220..0000000000000231
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/pr21038c-now.d binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038c-now.d
--- binutils-2.39/ld/testsuite/ld-x86-64/pr21038c-now.d 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/pr21038c-now.d 2022-10-30 12:41:26.470023746 +0100
@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
DW_CFA_offset: r16 \(rip\) at cfa-8
DW_CFA_nop
DW_CFA_nop
-
+#pass
+
0+18 0000000000000014 0000001c FDE cie=00000000 pc=0000000000000220..0000000000000231
DW_CFA_nop
DW_CFA_nop
diff -rupN --no-dereference binutils-2.39/ld/testsuite/ld-x86-64/tlspic2.rd binutils-2.39-new/ld/testsuite/ld-x86-64/tlspic2.rd
--- binutils-2.39/ld/testsuite/ld-x86-64/tlspic2.rd 2022-07-08 11:46:48.000000000 +0200
+++ binutils-2.39-new/ld/testsuite/ld-x86-64/tlspic2.rd 2022-10-30 12:41:26.471023746 +0100
diff -rupN --no-dereference binutils-2.40/ld/testsuite/ld-x86-64/tlspic2.rd binutils-2.40-new/ld/testsuite/ld-x86-64/tlspic2.rd
--- binutils-2.40/ld/testsuite/ld-x86-64/tlspic2.rd 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/ld/testsuite/ld-x86-64/tlspic2.rd 2023-03-09 14:51:52.556407144 +0100
@@ -14,6 +14,7 @@ Section Headers:
+\[[ 0-9]+\] .dynsym +.*
+\[[ 0-9]+\] .dynstr +.*

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/bfd/elf.c binutils-2.39-new/bfd/elf.c
--- binutils-2.39/bfd/elf.c 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/bfd/elf.c 2022-10-30 12:41:29.952023763 +0100
@@ -824,7 +824,13 @@ setup_group (bfd *abfd, Elf_Internal_Shd
diff -rupN --no-dereference binutils-2.40/bfd/elf.c binutils-2.40-new/bfd/elf.c
--- binutils-2.40/bfd/elf.c 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/elf.c 2023-03-09 14:51:57.453351322 +0100
@@ -825,7 +825,13 @@ setup_group (bfd *abfd, Elf_Internal_Shd
}
}
@ -16,7 +16,7 @@ diff -rupN --no-dereference binutils-2.39/bfd/elf.c binutils-2.39-new/bfd/elf.c
{
/* xgettext:c-format */
_bfd_error_handler (_("%pB: no group info for section '%pA'"),
@@ -927,7 +933,8 @@ _bfd_elf_setup_sections (bfd *abfd)
@@ -933,7 +939,8 @@ _bfd_elf_setup_sections (bfd *abfd)
else if (idx->shdr->bfd_section)
elf_sec_group (idx->shdr->bfd_section) = shdr->bfd_section;
else if (idx->shdr->sh_type != SHT_RELA

File diff suppressed because it is too large Load Diff

@ -1,7 +1,7 @@
diff -rupN --no-dereference binutils-2.39/bfd/Makefile.am binutils-2.39-new/bfd/Makefile.am
--- binutils-2.39/bfd/Makefile.am 2022-07-08 11:46:47.000000000 +0200
+++ binutils-2.39-new/bfd/Makefile.am 2022-10-30 12:41:21.707023724 +0100
@@ -973,8 +973,8 @@ DISTCLEANFILES += $(BUILD_CFILES) $(BUIL
diff -rupN --no-dereference binutils-2.40/bfd/Makefile.am binutils-2.40-new/bfd/Makefile.am
--- binutils-2.40/bfd/Makefile.am 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/Makefile.am 2023-03-09 14:51:47.525462680 +0100
@@ -988,8 +988,8 @@ DISTCLEANFILES += $(BUILD_CFILES) $(BUIL
bfdver.h: $(srcdir)/version.h $(srcdir)/development.sh $(srcdir)/Makefile.in
$(AM_V_GEN)\
bfd_version=`echo "$(VERSION)" | $(SED) -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\
@ -12,7 +12,7 @@ diff -rupN --no-dereference binutils-2.39/bfd/Makefile.am binutils-2.39-new/bfd/
bfd_version_package="\"$(PKGVERSION)\"" ;\
report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\
. $(srcdir)/development.sh ;\
@@ -985,7 +985,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
@@ -1000,7 +1000,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
fi ;\
$(SED) -e "s,@bfd_version@,$$bfd_version," \
-e "s,@bfd_version_string@,$$bfd_version_string," \
@ -21,10 +21,10 @@ diff -rupN --no-dereference binutils-2.39/bfd/Makefile.am binutils-2.39-new/bfd/
-e "s,@report_bugs_to@,$$report_bugs_to," \
< $(srcdir)/version.h > $@; \
echo "$${bfd_soversion}" > libtool-soversion
diff -rupN --no-dereference binutils-2.39/bfd/Makefile.in binutils-2.39-new/bfd/Makefile.in
--- binutils-2.39/bfd/Makefile.in 2022-08-05 11:53:59.000000000 +0200
+++ binutils-2.39-new/bfd/Makefile.in 2022-10-30 12:41:21.708023724 +0100
@@ -2443,8 +2443,8 @@ stmp-lcoff-h: $(LIBCOFF_H_FILES) $(MKDOC
diff -rupN --no-dereference binutils-2.40/bfd/Makefile.in binutils-2.40-new/bfd/Makefile.in
--- binutils-2.40/bfd/Makefile.in 2023-01-14 01:00:00.000000000 +0100
+++ binutils-2.40-new/bfd/Makefile.in 2023-03-09 14:51:47.526462669 +0100
@@ -2470,8 +2470,8 @@ stmp-lcoff-h: $(LIBCOFF_H_FILES) $(MKDOC
bfdver.h: $(srcdir)/version.h $(srcdir)/development.sh $(srcdir)/Makefile.in
$(AM_V_GEN)\
bfd_version=`echo "$(VERSION)" | $(SED) -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\
@ -35,7 +35,7 @@ diff -rupN --no-dereference binutils-2.39/bfd/Makefile.in binutils-2.39-new/bfd/
bfd_version_package="\"$(PKGVERSION)\"" ;\
report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\
. $(srcdir)/development.sh ;\
@@ -2455,7 +2455,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
@@ -2482,7 +2482,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
fi ;\
$(SED) -e "s,@bfd_version@,$$bfd_version," \
-e "s,@bfd_version_string@,$$bfd_version_string," \

@ -1,9 +1,10 @@
%global run_testsuite 1
%global mingw_build_ucrt64 1
%define enable_new_dtags 0
Name: mingw-binutils
Version: 2.39
Release: 2%{?dist}
Version: 2.40
Release: 3%{?dist}
Summary: Cross-compiled version of binutils for Win32 and Win64 environments
License: GPLv2+ and LGPLv2+ and GPLv3+ and LGPLv3+
@ -43,14 +44,16 @@ Patch03: binutils-export-demangle.h.patch
# order.
Patch04: binutils-no-config-h-check.patch
# Purpose: Include the filename concerned in readelf error messages. This
# makes readelf's output more helpful when it is run on multiple
# input files.
# Purpose: Include the filename concerned in readelf error and warning
# messages. This helps when readelf is run with multiple
# input files or when multiple instances of readelf are
# running at the same time.
# Lifetime: Permanent. This patch changes the format of readelf's output,
# making it better (IMHO) but also potentially breaking tools that
# depend upon readelf's current format. Hence it remains a local
# patch.
Patch05: binutils-filename-in-error-messages.patch
# depend upon readelf's current output format. cf/ Patch07.
# It also tends to break parts of the binutils own
# testsuite. Hence the patch remains local for now.
Patch05: binutils-filename-in-readelf-messages.patch
# Purpose: Disable an x86/x86_64 optimization that moves functions from the
# PLT into the GOTPLT for faster access. This optimization is
@ -62,7 +65,7 @@ Patch06: binutils-revert-PLT-elision.patch
# Purpose: Changes readelf so that when it displays extra information about
# a symbol, this information is placed at the end of the line.
# Lifetime: Permanent.
# Lifetime: Permanent. cf/ Patch05.
# FIXME: The proper fix would be to update the scripts that are expecting
# a fixed output from readelf. But it seems that some of them are
# no longer being maintained.
@ -72,8 +75,7 @@ Patch07: binutils-readelf-other-sym-info.patch
# debug sections.
# Lifetime: Permanent.
# FIXME: Find related bug. Decide on permanency.
# Not needed, mingw does not have aarch64
# Patch08: binutils-2.27-aarch64-ifunc.patch
Patch08: binutils-2.27-aarch64-ifunc.patch
# Purpose: Stop the binutils from statically linking with libstdc++.
# Lifetime: Permanent.
@ -98,40 +100,41 @@ Patch12: binutils-gold-mismatched-section-flags.patch
# Lifetime: Permanent.
Patch13: binutils-gold-warn-unsupported.patch
# Purpose: Fix testsuite failures due to the patches applied here.
# Lifetime: Permanent, but varying with each new rebase.
Patch14: binutils-testsuite-fixes.patch
# Purpose: Enable the creation of .note.gnu.property sections by the GOLD
# linker for x86 binaries.
# Lifetime: Fixed in 2.38 maybe
Patch15: binutils-gold-i386-gnu-property-notes.patch
# Lifetime: Permanent.
Patch14: binutils-gold-i386-gnu-property-notes.patch
# Purpose: Allow the binutils to be configured with any (recent) version of
# autoconf.
# Lifetime: Fixed in 2.39 (maybe ?)
Patch16: binutils-autoconf-version.patch
Patch15: binutils-autoconf-version.patch
# Purpose: Stop libtool from inserting useless runpaths into binaries.
# Lifetime: Who knows.
Patch17: binutils-libtool-no-rpath.patch
Patch16: binutils-libtool-no-rpath.patch
%if %{enable_new_dtags}
# Purpose: Change ld man page so that it says that --enable-new-dtags is the default.
# Lifetime: Permanent
# Not needed, mingw does not ship man
# Patch18: binutils-update-linker-manual.patch
Patch17: binutils-update-linker-manual.patch
%endif
# Purpose: Add a --package-metadata option to the linkers.
# Lifetime: Fixed in 2.40
Patch19: binutils-package-metadata.patch
# Purpose: Speed up objcopy's note merging algorithm.
# Lifetime: Fixed in 2.41
Patch18: binutils-objcopy-note-merge-speedup.patch
# Purpose: Stop the assembler from generating DIE information for zero-sized functions.
# Lifetime: Fixed in 2.40
Patch20: binutils-gas-dwarf-skip-empty-functions.patch
# # Purpose: Fix testsuite failures due to the patches applied here.
# # Lifetime: Permanent, but varying with each new rebase.
Patch19: binutils-testsuite-fixes.patch
# Backport patch for CVE-2022-38533
Patch21: CVE-2022-38533.patch
# Backport fix for CVE-2023-1972
# https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=c22d38baefc5a7a1e1f5cdc9dbb556b1f0ec5c57
Patch20: CVE-2023-1972.patch
# Backport fix for https://sourceware.org/bugzilla/show_bug.cgi?id=30079
# https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=b7eab2a9d4f4e92692daf14b09fc95ca11b72e30
Patch21: binutils-gdb.git-b7eab2a9d4f4e92692daf14b09fc95ca11b72e30.patch
BuildRequires: make
BuildRequires: gcc
@ -464,6 +467,25 @@ rm -rf %{buildroot}%{_mandir}/man1/*
%changelog
* Wed Jun 14 2023 Sandro Mani <manisandro@gmail.com> - 2.40-3
- Backport fix for Backport fix for
https://sourceware.org/bugzilla/show_bug.cgi?id=30079
* Fri Apr 14 2023 Sandro Mani <manisandro@gmail.com> - 2.40-2
- Backport fix for CVE-2023-1972
* Thu Mar 09 2023 Sandro Mani <manisandro@gmail.com> - 2.40-1
- Update to 2.40
* Tue Mar 07 2023 Sandro Mani <manisandro@gmail.com> - 2.39-5
- Backport patch for CVE-2023-25587
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.39-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Jan 03 2023 Sandro Mani <manisandro@gmail.com> - 2.39-3
- Backport patch for CVE-2022-4285
* Sun Oct 30 2022 Sandro Mani <manisandro@gmail.com> - 2.39-2
- Backport patch for CVE-2022-38533

Loading…
Cancel
Save