Import from AlmaLinux stable repository
This commit is contained in:
parent
c3c4bb667e
commit
ee47ffc8f8
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
||||
SOURCES/binutils-2.39.tar.xz
|
||||
SOURCES/binutils-2.41.tar.xz
|
||||
|
||||
@ -1 +1 @@
|
||||
f17653e7b1d1fa5242a408919845da23e8cc5141 SOURCES/binutils-2.39.tar.xz
|
||||
0e008260a958bbd10182ee3384672ae0a310eece SOURCES/binutils-2.41.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);
|
||||
11
SOURCES/binutils-2.27-aarch64-ifunc.patch
Normal file
11
SOURCES/binutils-2.27-aarch64-ifunc.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -rupN --no-dereference binutils-2.41/bfd/elfnn-aarch64.c binutils-2.41-new/bfd/elfnn-aarch64.c
|
||||
--- binutils-2.41/bfd/elfnn-aarch64.c 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/elfnn-aarch64.c 2023-10-17 08:36:07.259543844 +0200
|
||||
@@ -5654,6 +5654,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.41/config/override.m4 binutils-2.41-new/config/override.m4
|
||||
--- binutils-2.41/config/override.m4 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/config/override.m4 2023-10-17 08:36:14.285923364 +0200
|
||||
@@ -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.41/configure binutils-2.41-new/configure
|
||||
--- binutils-2.41/configure 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/configure 2023-10-17 08:36:08.439607929 +0200
|
||||
@@ -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.41/configure.ac binutils-2.41-new/configure.ac
|
||||
--- binutils-2.41/configure.ac 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/configure.ac 2023-10-17 08:36:08.440607983 +0200
|
||||
@@ -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.41/bfd/Makefile.am binutils-2.41-new/bfd/Makefile.am
|
||||
--- binutils-2.41/bfd/Makefile.am 2023-10-17 08:36:03.732351438 +0200
|
||||
+++ binutils-2.41-new/bfd/Makefile.am 2023-10-17 08:36:03.737351712 +0200
|
||||
@@ -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.41/bfd/Makefile.in binutils-2.41-new/bfd/Makefile.in
|
||||
--- binutils-2.41/bfd/Makefile.in 2023-10-17 08:36:03.733351493 +0200
|
||||
+++ binutils-2.41-new/bfd/Makefile.in 2023-10-17 08:36:03.737351712 +0200
|
||||
@@ -279,7 +279,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
|
||||
@@ -504,7 +504,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,126 +0,0 @@
|
||||
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)
|
||||
Filedata * filedata = NULL;
|
||||
struct stat statbuf;
|
||||
char armag[SARMAG];
|
||||
- bool ret = true;
|
||||
+ bool ret = false;
|
||||
+ char * name;
|
||||
+ char * saved_program_name;
|
||||
+
|
||||
+ /* Overload program_name to include file_name. Doing this means
|
||||
+ that warning/error messages will positively identify the file
|
||||
+ concerned even when multiple instances of readelf are running. */
|
||||
+ name = xmalloc (strlen (program_name) + strlen (file_name) + 3);
|
||||
+ sprintf (name, "%s: %s", program_name, file_name);
|
||||
+ saved_program_name = program_name;
|
||||
+ program_name = name;
|
||||
|
||||
if (stat (file_name, &statbuf) < 0)
|
||||
{
|
||||
if (errno == ENOENT)
|
||||
- error (_("'%s': No such file\n"), file_name);
|
||||
+ error (_("No such file\n"));
|
||||
else
|
||||
- error (_("Could not locate '%s'. System error message: %s\n"),
|
||||
- file_name, strerror (errno));
|
||||
- return false;
|
||||
+ error (_("Could not locate file. System error message: %s\n"),
|
||||
+ strerror (errno));
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
if (! S_ISREG (statbuf.st_mode))
|
||||
{
|
||||
- error (_("'%s' is not an ordinary file\n"), file_name);
|
||||
- return false;
|
||||
+ error (_("Not an ordinary file\n"));
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
filedata = calloc (1, sizeof * filedata);
|
||||
if (filedata == NULL)
|
||||
{
|
||||
error (_("Out of memory allocating file data structure\n"));
|
||||
- return false;
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
filedata->file_name = file_name;
|
||||
filedata->handle = fopen (file_name, "rb");
|
||||
if (filedata->handle == NULL)
|
||||
{
|
||||
- error (_("Input file '%s' is not readable.\n"), file_name);
|
||||
- free (filedata);
|
||||
- return false;
|
||||
+ error (_("Not readable\n"));
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
if (fread (armag, SARMAG, 1, filedata->handle) != 1)
|
||||
{
|
||||
- error (_("%s: Failed to read file's magic number\n"), file_name);
|
||||
- fclose (filedata->handle);
|
||||
- free (filedata);
|
||||
- return false;
|
||||
+ error (_("Failed to read file's magic number\n"));
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
filedata->file_size = (bfd_size_type) statbuf.st_size;
|
||||
@@ -22757,33 +22764,39 @@ process_file (char * file_name)
|
||||
|
||||
if (memcmp (armag, ARMAG, SARMAG) == 0)
|
||||
{
|
||||
- if (! process_archive (filedata, false))
|
||||
- ret = false;
|
||||
+ if (process_archive (filedata, false))
|
||||
+ ret = true;
|
||||
}
|
||||
else if (memcmp (armag, ARMAGT, SARMAG) == 0)
|
||||
{
|
||||
- if ( ! process_archive (filedata, true))
|
||||
- ret = false;
|
||||
+ if (process_archive (filedata, true))
|
||||
+ ret = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (do_archive_index && !check_all)
|
||||
- error (_("File %s is not an archive so its index cannot be displayed.\n"),
|
||||
- file_name);
|
||||
+ error (_("Not an archive so its index cannot be displayed.\n"));
|
||||
|
||||
rewind (filedata->handle);
|
||||
filedata->archive_file_size = filedata->archive_file_offset = 0;
|
||||
|
||||
- if (! process_object (filedata))
|
||||
- ret = false;
|
||||
+ if (process_object (filedata))
|
||||
+ ret = true;
|
||||
}
|
||||
|
||||
- fclose (filedata->handle);
|
||||
- free (filedata->section_headers);
|
||||
- free (filedata->program_headers);
|
||||
- free (filedata->string_table);
|
||||
- free (filedata->dump.dump_sects);
|
||||
- free (filedata);
|
||||
+ done:
|
||||
+ if (filedata)
|
||||
+ {
|
||||
+ if (filedata->handle != NULL)
|
||||
+ fclose (filedata->handle);
|
||||
+ free (filedata->section_headers);
|
||||
+ free (filedata->program_headers);
|
||||
+ free (filedata->string_table);
|
||||
+ free (filedata->dump.dump_sects);
|
||||
+ free (filedata);
|
||||
+ }
|
||||
+ free (program_name);
|
||||
+ program_name = saved_program_name;
|
||||
|
||||
free (ba_cache.strtab);
|
||||
ba_cache.strtab = NULL;
|
||||
@ -1,304 +0,0 @@
|
||||
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
|
||||
@@ -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
|
||||
#...
|
||||
- +[0-9]+: [0-9a-f]+ +(4 +OBJECT +GLOBAL +DEFAULT +[0-9]+ _?x|[0-9]+ +FUNC +GLOBAL +DEFAULT .* [0-9]+ _?foo@)@VERS\.0
|
||||
+ +[0-9]+: [0-9a-f]+ +(4 +OBJECT +GLOBAL +DEFAULT +[0-9]+ _?x|[0-9]+ +FUNC +GLOBAL +DEFAULT .* [0-9]+ _?foo@)@VERS\.0.*
|
||||
#...
|
||||
- +[0-9]+: [0-9a-f]+ +(4 +OBJECT +GLOBAL +DEFAULT +[0-9]+ _?x|[0-9]+ +FUNC +GLOBAL +DEFAULT .* [0-9]+ _?foo@)@VERS\.0
|
||||
+ +[0-9]+: [0-9a-f]+ +(4 +OBJECT +GLOBAL +DEFAULT +[0-9]+ _?x|[0-9]+ +FUNC +GLOBAL +DEFAULT .* [0-9]+ _?foo@)@VERS\.0.*
|
||||
#...
|
||||
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
|
||||
@@ -32,7 +32,8 @@ hook called: claim_file tmpdir/func.o \[
|
||||
hook called: claim_file tmpdir/libtext.a \[@.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -35,8 +35,9 @@ hook called: claim_file tmpdir/func.o \[
|
||||
hook called: claim_file tmpdir/libtext.a \[@.* CLAIMED
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
-Sym: '_?text' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?text' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -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
|
||||
@@ -27,7 +27,6 @@ hook called: claim_file .*/ld/testsuite/
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
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
|
||||
@@ -28,7 +28,6 @@ hook called: claim_file .*/ld/testsuite/
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
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
|
||||
@@ -30,9 +30,8 @@ hook called: claim_file .*/ld/testsuite/
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
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
|
||||
@@ -31,7 +31,8 @@ hook called: claim_file .*/ld/testsuite/
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -32,7 +32,8 @@ hook called: claim_file .*/ld/testsuite/
|
||||
hook called: claim_file tmpdir/libtext.a \[@.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -35,8 +35,9 @@ hook called: claim_file .*/ld/testsuite/
|
||||
hook called: claim_file tmpdir/libtext.a \[@.* CLAIMED
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
-Sym: '_?text' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?text' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -2,6 +2,5 @@ hook called: all symbols read.
|
||||
Input: func.c \(tmpdir/libfunc.a\)
|
||||
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
|
||||
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*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
|
||||
@@ -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.*
|
||||
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*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
|
||||
@@ -2,6 +2,5 @@ Claimed: tmpdir/libfunc.a \[@.*
|
||||
hook called: all symbols read.
|
||||
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
|
||||
Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.*
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*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
|
||||
@@ -2,6 +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.*
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -27,7 +27,6 @@ hook called: claim_file tmpdir/func.o \[
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
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
|
||||
@@ -28,7 +28,6 @@ hook called: claim_file tmpdir/func.o \[
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
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
|
||||
@@ -30,9 +30,8 @@ hook called: claim_file tmpdir/func.o \[
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
-.*: tmpdir/main.o: in function `main':
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
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
|
||||
@@ -31,7 +31,8 @@ hook called: claim_file tmpdir/func.o \[
|
||||
hook called: claim_file tmpdir/text.o \[@0/.* not claimed
|
||||
#...
|
||||
hook called: all symbols read.
|
||||
-Sym: '_?func' Resolution: LDPR_PREVAILING_DEF
|
||||
+Sym: '_?func' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -117,6 +117,12 @@ if { $can_compile && !$failed_compile }
|
||||
}
|
||||
}
|
||||
|
||||
+# I do not know why, but the underscore prefix test is going
|
||||
+# wrong on ppc64le targets. So override it here.
|
||||
+if { [istarget powerpc*-*-linux*] || [istarget x86_64*-*-linux*] } {
|
||||
+ set _ ""
|
||||
+}
|
||||
+
|
||||
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
|
||||
@@ -5,5 +5,6 @@ Sym: 'weakdef' Resolution: LDPR_PREVAILI
|
||||
Sym: 'undef' Resolution: LDPR_UNDEF
|
||||
Sym: 'weakundef' Resolution: LDPR_UNDEF
|
||||
Sym: 'common' Resolution: LDPR_PREVAILING_DEF_IRONLY
|
||||
+#...
|
||||
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
|
||||
@@ -21,6 +21,8 @@
|
||||
|
||||
# Get the offset from an S-record line to the start of the data.
|
||||
|
||||
+return
|
||||
+
|
||||
proc srec_off { l } {
|
||||
if [string match "S1*" $l] {
|
||||
return 8
|
||||
@ -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. */
|
||||
12
SOURCES/binutils-gold-empty-dwp.patch
Normal file
12
SOURCES/binutils-gold-empty-dwp.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -rupN --no-dereference binutils-2.41/gold/dwp.cc binutils-2.41-new/gold/dwp.cc
|
||||
--- binutils-2.41/gold/dwp.cc 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/gold/dwp.cc 2023-10-17 08:36:16.689052035 +0200
|
||||
@@ -2418,6 +2418,8 @@ main(int argc, char** argv)
|
||||
{
|
||||
Dwo_file exe_file(exe_filename);
|
||||
exe_file.read_executable(&files);
|
||||
+ if (files.empty())
|
||||
+ gold_fatal(_("Could not find any dwo links in specified EXE"));
|
||||
}
|
||||
|
||||
// Add any additional files listed on command line.
|
||||
@ -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.41/gold/i386.cc binutils-2.41-new/gold/i386.cc
|
||||
--- binutils-2.41/gold/i386.cc 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/gold/i386.cc 2023-10-17 08:36:13.132861427 +0200
|
||||
@@ -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.41/gold/layout.cc binutils-2.41-new/gold/layout.cc
|
||||
--- binutils-2.41/gold/layout.cc 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/gold/layout.cc 2023-10-17 08:36:10.778734550 +0200
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
71
SOURCES/binutils-gold-powerpc.patch
Normal file
71
SOURCES/binutils-gold-powerpc.patch
Normal file
@ -0,0 +1,71 @@
|
||||
diff -rupN --no-dereference binutils-2.41/gold/powerpc.cc binutils-2.41-new/gold/powerpc.cc
|
||||
--- binutils-2.41/gold/powerpc.cc 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/gold/powerpc.cc 2023-10-17 08:36:20.308244748 +0200
|
||||
@@ -3714,12 +3714,7 @@ Target_powerpc<size, big_endian>::do_rel
|
||||
unsigned int prev_brlt_size = 0;
|
||||
if (pass == 1)
|
||||
{
|
||||
- bool thread_safe
|
||||
- = this->abiversion() < 2 && parameters->options().plt_thread_safe();
|
||||
- if (size == 64
|
||||
- && this->abiversion() < 2
|
||||
- && !thread_safe
|
||||
- && !parameters->options().user_set_plt_thread_safe())
|
||||
+ if (size == 64 && this->abiversion() < 2)
|
||||
{
|
||||
static const char* const thread_starter[] =
|
||||
{
|
||||
@@ -3747,29 +3742,37 @@ Target_powerpc<size, big_endian>::do_rel
|
||||
/* libgo */
|
||||
"__go_go",
|
||||
};
|
||||
+ bool thread_safe = parameters->options().plt_thread_safe();
|
||||
|
||||
- if (parameters->options().shared())
|
||||
- thread_safe = true;
|
||||
- else
|
||||
+ if (!thread_safe
|
||||
+ && !parameters->options().user_set_plt_thread_safe())
|
||||
{
|
||||
- for (unsigned int i = 0;
|
||||
- i < sizeof(thread_starter) / sizeof(thread_starter[0]);
|
||||
- i++)
|
||||
+ if (parameters->options().shared())
|
||||
+ thread_safe = true;
|
||||
+ else
|
||||
{
|
||||
- Symbol* sym = symtab->lookup(thread_starter[i], NULL);
|
||||
- thread_safe = (sym != NULL
|
||||
- && sym->in_reg()
|
||||
- && sym->in_real_elf());
|
||||
- if (thread_safe)
|
||||
- break;
|
||||
+ for (unsigned int i = 0;
|
||||
+ i < sizeof(thread_starter) / sizeof(thread_starter[0]);
|
||||
+ i++)
|
||||
+ {
|
||||
+ Symbol* sym = symtab->lookup(thread_starter[i], NULL);
|
||||
+ thread_safe = (sym != NULL
|
||||
+ && sym->in_reg()
|
||||
+ && sym->in_real_elf());
|
||||
+ if (thread_safe)
|
||||
+ break;
|
||||
+ }
|
||||
}
|
||||
}
|
||||
+ this->plt_thread_safe_ = thread_safe;
|
||||
}
|
||||
- this->plt_thread_safe_ = thread_safe;
|
||||
|
||||
- if (parameters->options().output_is_position_independent())
|
||||
- this->rela_dyn_size_
|
||||
- = this->rela_dyn_section(layout)->current_data_size();
|
||||
+ if (size == 64
|
||||
+ && parameters->options().output_is_position_independent())
|
||||
+ {
|
||||
+ gold_assert (this->rela_dyn_);
|
||||
+ this->rela_dyn_size_ = this->rela_dyn_->current_data_size();
|
||||
+ }
|
||||
|
||||
this->stub_group_size_ = parameters->options().stub_group_size();
|
||||
bool no_size_errors = true;
|
||||
@ -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.41/bfd/config.bfd binutils-2.41-new/bfd/config.bfd
|
||||
--- binutils-2.41/bfd/config.bfd 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/config.bfd 2023-10-17 08:36:11.974799088 +0200
|
||||
@@ -499,7 +499,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
|
||||
@@ -1497,7 +1497,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.41/gold/configure binutils-2.41-new/gold/configure
|
||||
--- binutils-2.41/gold/configure 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/gold/configure 2023-10-17 08:36:11.972798980 +0200
|
||||
@@ -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.41/gold/configure.ac binutils-2.41-new/gold/configure.ac
|
||||
--- binutils-2.41/gold/configure.ac 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/gold/configure.ac 2023-10-17 08:36:11.973799034 +0200
|
||||
@@ -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.41/ld/configure.tgt binutils-2.41-new/ld/configure.tgt
|
||||
--- binutils-2.41/ld/configure.tgt 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/configure.tgt 2023-10-17 08:36:11.973799034 +0200
|
||||
@@ -267,7 +267,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
|
||||
@@ -1087,7 +1087,7 @@ loongarch64-*) targ_emul=elf64loongarch
|
||||
targ_extra_ofiles=
|
||||
;;
|
||||
*)
|
||||
|
||||
30
SOURCES/binutils-handle-corrupt-version-info.patch
Normal file
30
SOURCES/binutils-handle-corrupt-version-info.patch
Normal file
@ -0,0 +1,30 @@
|
||||
diff -rupN --no-dereference binutils-2.41/bfd/elf.c binutils-2.41-new/bfd/elf.c
|
||||
--- binutils-2.41/bfd/elf.c 2023-10-17 08:36:10.773734280 +0200
|
||||
+++ binutils-2.41-new/bfd/elf.c 2023-10-17 08:36:21.496307731 +0200
|
||||
@@ -9479,6 +9479,8 @@ _bfd_elf_slurp_version_tables (bfd *abfd
|
||||
if (elf_use_dt_symtab_p (abfd))
|
||||
iverneed->vn_filename
|
||||
= elf_tdata (abfd)->dt_strtab + iverneed->vn_file;
|
||||
+ else if (hdr == NULL)
|
||||
+ goto error_return_bad_verref;
|
||||
else
|
||||
iverneed->vn_filename
|
||||
= bfd_elf_string_from_elf_section (abfd, hdr->sh_link,
|
||||
@@ -9516,6 +9518,8 @@ _bfd_elf_slurp_version_tables (bfd *abfd
|
||||
if (elf_use_dt_symtab_p (abfd))
|
||||
ivernaux->vna_nodename
|
||||
= elf_tdata (abfd)->dt_strtab + ivernaux->vna_name;
|
||||
+ else if (hdr == NULL)
|
||||
+ goto error_return_bad_verref;
|
||||
else
|
||||
ivernaux->vna_nodename
|
||||
= bfd_elf_string_from_elf_section (abfd, hdr->sh_link,
|
||||
@@ -9546,7 +9550,7 @@ _bfd_elf_slurp_version_tables (bfd *abfd
|
||||
iverneed->vn_nextref = NULL;
|
||||
if (iverneed->vn_next == 0)
|
||||
break;
|
||||
- if (i + 1 < hdr->sh_info)
|
||||
+ if (hdr != NULL && (i + 1 < hdr->sh_info))
|
||||
iverneed->vn_nextref = iverneed + 1;
|
||||
|
||||
if (iverneed->vn_next
|
||||
@ -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.41/ltmain.sh binutils-2.41-new/ltmain.sh
|
||||
--- binutils-2.41/ltmain.sh 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ltmain.sh 2023-10-17 08:36:15.518989456 +0200
|
||||
@@ -7103,6 +7103,7 @@ EOF
|
||||
rpath="$finalize_rpath"
|
||||
test "$mode" != relink && rpath="$compile_rpath$rpath"
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
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
|
||||
@@ -30,11 +30,6 @@
|
||||
diff -rupN --no-dereference binutils-2.41/bfd/bfd-in2.h binutils-2.41-new/bfd/bfd-in2.h
|
||||
--- binutils-2.41/bfd/bfd-in2.h 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/bfd-in2.h 2023-10-17 08:36:04.910415849 +0200
|
||||
@@ -31,11 +31,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.41/bfd/bfd-in.h binutils-2.41-new/bfd/bfd-in.h
|
||||
--- binutils-2.41/bfd/bfd-in.h 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/bfd-in.h 2023-10-17 08:36:04.909415794 +0200
|
||||
@@ -23,11 +23,6 @@
|
||||
#ifndef __BFD_H_SEEN__
|
||||
#define __BFD_H_SEEN__
|
||||
|
||||
@ -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,36 +0,0 @@
|
||||
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
|
||||
unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
|
||||
|
||||
printf (" %-7s", get_symbol_visibility (vis));
|
||||
+#if 0
|
||||
/* Check to see if any other bits in the st_other field are set.
|
||||
Note - displaying this information disrupts the layout of the
|
||||
table being generated, but for the moment this case is very rare. */
|
||||
if (psym->st_other ^ vis)
|
||||
printf (" [%s] ", get_symbol_other (filedata, psym->st_other ^ vis));
|
||||
+#endif
|
||||
}
|
||||
printf (" %4s ", get_symbol_index_type (filedata, psym->st_shndx));
|
||||
|
||||
@@ -13235,7 +13237,17 @@ print_dynamic_symbol (Filedata *filedata
|
||||
version_string);
|
||||
}
|
||||
|
||||
- putchar ('\n');
|
||||
+#if 1
|
||||
+ {
|
||||
+ unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
|
||||
+
|
||||
+ /* Check to see if any other bits in the st_other field are set. */
|
||||
+ if (psym->st_other ^ vis)
|
||||
+ printf (" \t[%s]", get_symbol_other (filedata, psym->st_other ^ vis));
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
+ putchar ('\n');
|
||||
|
||||
if (ELF_ST_BIND (psym->st_info) == STB_LOCAL
|
||||
&& section != NULL
|
||||
@ -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.41/bfd/elfxx-x86.c binutils-2.41-new/bfd/elfxx-x86.c
|
||||
--- binutils-2.41/bfd/elfxx-x86.c 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/elfxx-x86.c 2023-10-17 08:36:06.092480328 +0200
|
||||
@@ -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.41/ld/testsuite/ld-i386/pltgot-1.d binutils-2.41-new/ld/testsuite/ld-i386/pltgot-1.d
|
||||
--- binutils-2.41/ld/testsuite/ld-i386/pltgot-1.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-i386/pltgot-1.d 2023-10-17 08:36:06.088480110 +0200
|
||||
@@ -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.41/ld/testsuite/ld-i386/pltgot-2.d binutils-2.41-new/ld/testsuite/ld-i386/pltgot-2.d
|
||||
--- binutils-2.41/ld/testsuite/ld-i386/pltgot-2.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-i386/pltgot-2.d 2023-10-17 08:36:06.089480165 +0200
|
||||
@@ -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.41/ld/testsuite/ld-i386/pr19636-2d.d binutils-2.41-new/ld/testsuite/ld-i386/pr19636-2d.d
|
||||
--- binutils-2.41/ld/testsuite/ld-i386/pr19636-2d.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-i386/pr19636-2d.d 2023-10-17 08:36:06.089480165 +0200
|
||||
@@ -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.41/ld/testsuite/ld-i386/pr19636-2e.d binutils-2.41-new/ld/testsuite/ld-i386/pr19636-2e.d
|
||||
--- binutils-2.41/ld/testsuite/ld-i386/pr19636-2e.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-i386/pr19636-2e.d 2023-10-17 08:36:06.089480165 +0200
|
||||
@@ -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.41/ld/testsuite/ld-i386/pr20830.d binutils-2.41-new/ld/testsuite/ld-i386/pr20830.d
|
||||
--- binutils-2.41/ld/testsuite/ld-i386/pr20830.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-i386/pr20830.d 2023-10-17 08:36:06.092480328 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/pltgot-1.d binutils-2.41-new/ld/testsuite/ld-x86-64/pltgot-1.d
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/pltgot-1.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/pltgot-1.d 2023-10-17 08:36:06.090480219 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/pltgot-2.d binutils-2.41-new/ld/testsuite/ld-x86-64/pltgot-2.d
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/pltgot-2.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/pltgot-2.d 2023-10-17 08:36:06.090480219 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/plt-main.rd binutils-2.41-new/ld/testsuite/ld-x86-64/plt-main.rd
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/plt-main.rd 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/plt-main.rd 2023-10-17 08:36:06.090480219 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/pr20830a.d binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830a.d
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/pr20830a.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830a.d 2023-10-17 08:36:06.090480219 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/pr20830a-now.d binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830a-now.d
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/pr20830a-now.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830a-now.d 2023-10-17 08:36:06.091480274 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/pr20830b.d binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830b.d
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/pr20830b.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830b.d 2023-10-17 08:36:06.091480274 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/pr20830b-now.d binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830b-now.d
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/pr20830b-now.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/pr20830b-now.d 2023-10-17 08:36:06.091480274 +0200
|
||||
@@ -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.41/ld/testsuite/ld-x86-64/tlspic2.rd binutils-2.41-new/ld/testsuite/ld-x86-64/tlspic2.rd
|
||||
--- binutils-2.41/ld/testsuite/ld-x86-64/tlspic2.rd 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-x86-64/tlspic2.rd 2023-10-17 08:36:06.091480274 +0200
|
||||
@@ -14,6 +14,7 @@ Section Headers:
|
||||
+\[[ 0-9]+\] .dynsym +.*
|
||||
+\[[ 0-9]+\] .dynstr +.*
|
||||
|
||||
117
SOURCES/binutils-riscv-testsuite-fixes.patch
Normal file
117
SOURCES/binutils-riscv-testsuite-fixes.patch
Normal file
@ -0,0 +1,117 @@
|
||||
diff -rupN --no-dereference binutils-2.41/binutils/testsuite/binutils-all/objcopy.exp binutils-2.41-new/binutils/testsuite/binutils-all/objcopy.exp
|
||||
--- binutils-2.41/binutils/testsuite/binutils-all/objcopy.exp 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/binutils/testsuite/binutils-all/objcopy.exp 2023-10-17 08:36:19.150183227 +0200
|
||||
@@ -1409,6 +1409,8 @@ proc objcopy_test_without_global_symbol
|
||||
# The AArch64 and ARM targets preserve mapping symbols
|
||||
# in object files, so they will fail this test.
|
||||
setup_xfail aarch64*-*-* arm*-*-*
|
||||
+# The RISC-V target compiles with annotation enabled and these symbols remain after stripping.
|
||||
+setup_xfail riscv*-*-*
|
||||
|
||||
objcopy_test_without_global_symbol
|
||||
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-elf/dwarf.exp binutils-2.41-new/ld/testsuite/ld-elf/dwarf.exp
|
||||
--- binutils-2.41/ld/testsuite/ld-elf/dwarf.exp 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-elf/dwarf.exp 2023-10-17 08:36:19.150183227 +0200
|
||||
@@ -29,6 +29,10 @@ if ![is_elf_format] {
|
||||
return
|
||||
}
|
||||
|
||||
+if { [istarget riscv*-*-*] } then {
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
# Skip targets where -shared is not supported
|
||||
|
||||
if ![check_shared_lib_support] {
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-elf/tls.exp binutils-2.41-new/ld/testsuite/ld-elf/tls.exp
|
||||
--- binutils-2.41/ld/testsuite/ld-elf/tls.exp 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-elf/tls.exp 2023-10-17 08:36:19.150183227 +0200
|
||||
@@ -28,6 +28,10 @@ if { !([istarget *-*-linux*]
|
||||
return
|
||||
}
|
||||
|
||||
+if { [istarget riscv*-*-*] } then {
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
# Check to see if the C compiler works.
|
||||
if { ![check_compiler_available] } {
|
||||
return
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-plugin/plugin.exp binutils-2.41-new/ld/testsuite/ld-plugin/plugin.exp
|
||||
--- binutils-2.41/ld/testsuite/ld-plugin/plugin.exp 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-plugin/plugin.exp 2023-10-17 08:36:19.150183227 +0200
|
||||
@@ -132,6 +132,10 @@ if [is_pecoff_format] {
|
||||
append libs " --image-base=0x10000000"
|
||||
}
|
||||
|
||||
+if { [istarget riscv*-*-*] } then {
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
set plugin_tests [list \
|
||||
[list "load plugin" "-plugin $plugin_path \
|
||||
$testobjfiles $libs" "" "" "" {{ld plugin-1.d}} "main.x" ] \
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-riscv-elf/attr-phdr.d binutils-2.41-new/ld/testsuite/ld-riscv-elf/attr-phdr.d
|
||||
--- binutils-2.41/ld/testsuite/ld-riscv-elf/attr-phdr.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-riscv-elf/attr-phdr.d 2023-10-17 08:36:19.149183174 +0200
|
||||
@@ -12,8 +12,8 @@ Program Headers:
|
||||
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
|
||||
RISCV_ATTRIBUT .*
|
||||
LOAD .*
|
||||
-
|
||||
+#...
|
||||
Section to Segment mapping:
|
||||
Segment Sections...
|
||||
00 .riscv.attributes
|
||||
- 01 .text
|
||||
+#pass
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-riscv-elf/pcgp-relax-01.d binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcgp-relax-01.d
|
||||
--- binutils-2.41/ld/testsuite/ld-riscv-elf/pcgp-relax-01.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcgp-relax-01.d 2023-10-17 08:36:19.149183174 +0200
|
||||
@@ -8,7 +8,7 @@
|
||||
Disassembly of section \.text:
|
||||
|
||||
0+[0-9a-f]+ <_start>:
|
||||
-.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a0,a0,[0-9]+
|
||||
+.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a0,a0,\-[0-9]+
|
||||
.*:[ ]+[0-9a-f]+[ ]+jal[ ]+ra,[0-9a-f]+ <_start>
|
||||
.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a1,gp,\-[0-9]+ # [0-9a-f]+ <data_g>
|
||||
.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a2,gp,\-[0-9]+ # [0-9a-f]+ <data_g>
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-riscv-elf/pcgp-relax-01-norelaxgp.d binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcgp-relax-01-norelaxgp.d
|
||||
--- binutils-2.41/ld/testsuite/ld-riscv-elf/pcgp-relax-01-norelaxgp.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcgp-relax-01-norelaxgp.d 2023-10-17 08:36:19.151183281 +0200
|
||||
@@ -8,11 +8,11 @@
|
||||
Disassembly of section \.text:
|
||||
|
||||
0+[0-9a-f]+ <_start>:
|
||||
-.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a0,a0,[0-9]+
|
||||
+.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a0,a0,.*
|
||||
.*:[ ]+[0-9a-f]+[ ]+jal[ ]+ra,[0-9a-f]+ <_start>
|
||||
.*:[ ]+[0-9a-f]+[ ]+auipc[ ]+a1,0x[0-9a-f]+
|
||||
-.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a1,a1,[0-9]+ # [0-9a-f]+ <data_g>
|
||||
+.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a1,a1,.* # [0-9a-f]+ <data_g>
|
||||
.*:[ ]+[0-9a-f]+[ ]+lui[ ]+a2,0x[0-9a-f]+
|
||||
-.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a2,a2,[0-9]+ # [0-9a-f]+ <data_g>
|
||||
+.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a2,a2,.* # [0-9a-f]+ <data_g>
|
||||
.*:[ ]+[0-9a-f]+[ ]+addi[ ]+a3,tp,0 # 0 <data_t>
|
||||
.*:[ ]+[0-9a-f]+[ ]+auipc[ ]+a0,0x[0-9a-f]+
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-riscv-elf/pcgp-relax-02.d binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcgp-relax-02.d
|
||||
--- binutils-2.41/ld/testsuite/ld-riscv-elf/pcgp-relax-02.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcgp-relax-02.d 2023-10-17 08:36:19.149183174 +0200
|
||||
@@ -11,5 +11,5 @@ Disassembly of section .text:
|
||||
[0-9a-f]+ <_start>:
|
||||
.*:[ ]+[0-9a-f]+[ ]+auipc[ ]+a1.*
|
||||
.*:[ ]+[0-9a-f]+[ ]+addi?[ ]+a0,gp.*<data_a>
|
||||
-.*:[ ]+[0-9a-f]+[ ]+addi?[ ]+a1,a1.*<data_b>
|
||||
+.*:[ ]+[0-9a-f]+[ ]+mv[ ]+a1,a1
|
||||
#pass
|
||||
diff -rupN --no-dereference binutils-2.41/ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2a.d binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2a.d
|
||||
--- binutils-2.41/ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2a.d 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2a.d 2023-10-17 08:36:19.149183174 +0200
|
||||
@@ -2,4 +2,5 @@
|
||||
#source: pcrel-lo-addend-2a.s
|
||||
#as: -march=rv32ic
|
||||
#ld: -m[riscv_choose_ilp32_emul] --no-relax
|
||||
+#skip: *-*-*
|
||||
#error: .*dangerous relocation: %pcrel_lo overflow with an addend, the value of %pcrel_hi is 0x1000 without any addend, but may be 0x2000 after adding the %pcrel_lo addend
|
||||
@ -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.41/bfd/elf.c binutils-2.41-new/bfd/elf.c
|
||||
--- binutils-2.41/bfd/elf.c 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/elf.c 2023-10-17 08:36:09.594670522 +0200
|
||||
@@ -827,7 +827,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)
|
||||
@@ -935,7 +941,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.41/bfd/Makefile.am binutils-2.41-new/bfd/Makefile.am
|
||||
--- binutils-2.41/bfd/Makefile.am 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/Makefile.am 2023-10-17 08:36:02.532285680 +0200
|
||||
@@ -966,8 +966,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)/
|
||||
@@ -978,7 +978,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.41/bfd/Makefile.in binutils-2.41-new/bfd/Makefile.in
|
||||
--- binutils-2.41/bfd/Makefile.in 2023-07-03 01:00:00.000000000 +0200
|
||||
+++ binutils-2.41-new/bfd/Makefile.in 2023-10-17 08:36:02.533285735 +0200
|
||||
@@ -2425,8 +2425,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)/
|
||||
@@ -2437,7 +2437,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
|
||||
fi ;\
|
||||
$(SED) -e "s,@bfd_version@,$$bfd_version," \
|
||||
-e "s,@bfd_version_string@,$$bfd_version_string," \
|
||||
|
||||
@ -1,12 +1,13 @@
|
||||
%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.41
|
||||
Release: 3%{?dist}
|
||||
Summary: Cross-compiled version of binutils for Win32 and Win64 environments
|
||||
|
||||
License: GPLv2+ and LGPLv2+ and GPLv3+ and LGPLv3+
|
||||
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 LGPL-2.1-or-later AND LGPL-2.0-or-later
|
||||
|
||||
URL: http://www.gnu.org/software/binutils/
|
||||
Source0: http://ftp.gnu.org/gnu/binutils/binutils-%{version}.tar.xz
|
||||
@ -43,94 +44,79 @@ 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.
|
||||
# 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
|
||||
|
||||
# Purpose: Disable an x86/x86_64 optimization that moves functions from the
|
||||
# PLT into the GOTPLT for faster access. This optimization is
|
||||
# problematic for tools that want to intercept PLT entries, such
|
||||
# as ltrace and LD_AUDIT. See BZs 1452111 and 1333481.
|
||||
# Lifetime: Permanent. But it should not be.
|
||||
# FIXME: Replace with a configure time option.
|
||||
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.
|
||||
# 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.
|
||||
Patch07: binutils-readelf-other-sym-info.patch
|
||||
Patch05: binutils-revert-PLT-elision.patch
|
||||
|
||||
# Purpose: Do not create PLT entries for AARCH64 IFUNC symbols referenced in
|
||||
# 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
|
||||
Patch06: binutils-2.27-aarch64-ifunc.patch
|
||||
|
||||
# Purpose: Stop the binutils from statically linking with libstdc++.
|
||||
# Lifetime: Permanent.
|
||||
Patch09: binutils-do-not-link-with-static-libstdc++.patch
|
||||
Patch07: binutils-do-not-link-with-static-libstdc++.patch
|
||||
|
||||
# Purpose: Allow OS specific sections in section groups.
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch10: binutils-special-sections-in-groups.patch
|
||||
|
||||
# Purpose: Fix linker testsuite failures.
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch11: binutils-fix-testsuite-failures.patch
|
||||
# Lifetime: Fixed in 2.42 (maybe)
|
||||
Patch08: binutils-special-sections-in-groups.patch
|
||||
|
||||
# Purpose: Stop gold from aborting when input sections with the same name
|
||||
# have different flags.
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch12: binutils-gold-mismatched-section-flags.patch
|
||||
# Lifetime: Fixed in 2.42 (maybe)
|
||||
Patch09: binutils-gold-mismatched-section-flags.patch
|
||||
|
||||
# Purpose: Change the gold configuration script to only warn about
|
||||
# unsupported targets. This allows the binutils to be built with
|
||||
# BPF support enabled.
|
||||
# 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
|
||||
Patch10: binutils-gold-warn-unsupported.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.
|
||||
Patch11: 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
|
||||
# Lifetime: Fixed in 2.42 (maybe ?)
|
||||
Patch12: binutils-autoconf-version.patch
|
||||
|
||||
# Purpose: Stop libtool from inserting useless runpaths into binaries.
|
||||
# Lifetime: Who knows.
|
||||
Patch17: binutils-libtool-no-rpath.patch
|
||||
Patch13: 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
|
||||
Patch14: 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: Stop an abort when using dwp to process a file with no dwo links.
|
||||
# Lifetime: Fixed in 2.42 (maybe)
|
||||
Patch15: binutils-gold-empty-dwp.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 binutils testsuite failures.
|
||||
# Lifetime: Permanent, but varies with each rebase.
|
||||
Patch16: binutils-testsuite-fixes.patch
|
||||
|
||||
# Backport patch for CVE-2022-38533
|
||||
Patch21: CVE-2022-38533.patch
|
||||
# Purpose: Fix binutils testsuite failures for the RISCV-64 target.
|
||||
# Lifetime: Permanent, but varies with each rebase.
|
||||
Patch17: binutils-riscv-testsuite-fixes.patch
|
||||
|
||||
# Purpose: Fix the GOLD linker's handling of 32-bit PowerPC binaries.
|
||||
# Lifetime: Fixed in 2.42
|
||||
Patch18: binutils-gold-powerpc.patch
|
||||
|
||||
# Purpose: Fix a potential NULL pointer dereference when parsing corrupt
|
||||
# ELF symbol version information.
|
||||
# Lifetime: Fixed in 2.42
|
||||
Patch19: binutils-handle-corrupt-version-info.patch
|
||||
|
||||
|
||||
BuildRequires: make
|
||||
@ -464,6 +450,37 @@ rm -rf %{buildroot}%{_mandir}/man1/*
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.41-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.41-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Tue Oct 17 2023 Sandro Mani <manisandro@gmail.com> - 2.41-1
|
||||
- Update to 2.41
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.40-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* 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…
Reference in New Issue
Block a user