import mingw-binutils-2.38-2.el9
This commit is contained in:
parent
ddb88368f4
commit
edb05d102f
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
||||
SOURCES/binutils-2.37.tar.xz
|
||||
SOURCES/binutils-2.38.tar.xz
|
||||
|
||||
@ -1 +1 @@
|
||||
e9cf391b000010d6c752771974b394c9c743c928 SOURCES/binutils-2.37.tar.xz
|
||||
15d42de8f15404a4a43a912440cf367f994779d7 SOURCES/binutils-2.38.tar.xz
|
||||
|
||||
117
SOURCES/29006.patch
Normal file
117
SOURCES/29006.patch
Normal file
@ -0,0 +1,117 @@
|
||||
diff -rupN --no-dereference binutils-2.38/ld/pe-dll.c binutils-2.38-new/ld/pe-dll.c
|
||||
--- binutils-2.38/ld/pe-dll.c 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/pe-dll.c 2022-04-26 13:55:06.273552113 +0200
|
||||
@@ -2084,8 +2084,12 @@ make_head (bfd *parent)
|
||||
char *oname;
|
||||
bfd *abfd;
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_d%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_d%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@@ -2173,8 +2177,12 @@ make_tail (bfd *parent)
|
||||
char *oname;
|
||||
bfd *abfd;
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_d%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_d%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@@ -2324,8 +2332,12 @@ make_one (def_file_export *exp, bfd *par
|
||||
}
|
||||
}
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_d%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_d%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@@ -2510,8 +2522,12 @@ make_singleton_name_thunk (const char *i
|
||||
char *oname;
|
||||
bfd *abfd;
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_nmth%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_nmth%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@@ -2551,7 +2567,7 @@ make_import_fixup_mark (arelent *rel, ch
|
||||
struct bfd_symbol *sym = *rel->sym_ptr_ptr;
|
||||
bfd *abfd = bfd_asymbol_bfd (sym);
|
||||
struct bfd_link_hash_entry *bh;
|
||||
- char *fixup_name, buf[26];
|
||||
+ char *fixup_name, buf[256];
|
||||
size_t prefix_len;
|
||||
|
||||
/* "name" buffer has space before the symbol name for prefixes. */
|
||||
@@ -2586,8 +2602,12 @@ make_import_fixup_entry (const char *nam
|
||||
char *oname;
|
||||
bfd *abfd;
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_fu%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_fu%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@@ -2640,8 +2660,12 @@ make_runtime_pseudo_reloc (const char *n
|
||||
bfd *abfd;
|
||||
bfd_size_type size;
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_rtr%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_rtr%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@@ -2727,8 +2751,12 @@ pe_create_runtime_relocator_reference (b
|
||||
char *oname;
|
||||
bfd *abfd;
|
||||
|
||||
- oname = xmalloc (20 + dll_symname_len);
|
||||
- sprintf (oname, "%s_ertr%06d.o", dll_symname, tmp_seq);
|
||||
+ if (asprintf (&oname, "%s_ertr%06d.o", dll_symname, tmp_seq) < 4)
|
||||
+ /* In theory we should return NULL here at let our caller decide what to
|
||||
+ do. But currently the return value is not checked, just used, and
|
||||
+ besides, this condition only happens when the system has run out of
|
||||
+ memory. So just give up. */
|
||||
+ exit (EXIT_FAILURE);
|
||||
tmp_seq++;
|
||||
|
||||
abfd = bfd_create (oname, parent);
|
||||
@ -1,11 +0,0 @@
|
||||
diff -rupN --no-dereference binutils-2.37/bfd/elfnn-aarch64.c binutils-2.37-new/bfd/elfnn-aarch64.c
|
||||
--- binutils-2.37/bfd/elfnn-aarch64.c 2021-07-08 13:37:19.000000000 +0200
|
||||
+++ binutils-2.37-new/bfd/elfnn-aarch64.c 2021-07-24 21:59:12.398868364 +0200
|
||||
@@ -5473,6 +5473,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;
|
||||
File diff suppressed because it is too large
Load Diff
12
SOURCES/binutils-autoconf-version.patch
Normal file
12
SOURCES/binutils-autoconf-version.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -rupN --no-dereference binutils-2.38/config/override.m4 binutils-2.38-new/config/override.m4
|
||||
--- binutils-2.38/config/override.m4 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/config/override.m4 2022-04-26 13:55:01.445545220 +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]),
|
||||
m4_defn([m4_PACKAGE_VERSION]), [],
|
||||
- [m4_fatal([Please use exactly Autoconf ]_GCC_AUTOCONF_VERSION[ instead of ]m4_defn([m4_PACKAGE_VERSION])[.])])
|
||||
+ [])
|
||||
])
|
||||
m4_define([AC_INIT], m4_defn([AC_INIT])[
|
||||
_GCC_AUTOCONF_VERSION_CHECK
|
||||
File diff suppressed because it is too large
Load Diff
255
SOURCES/binutils-do-not-use-debuginfod.patch
Normal file
255
SOURCES/binutils-do-not-use-debuginfod.patch
Normal file
@ -0,0 +1,255 @@
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/doc/binutils.texi binutils-2.38-new/binutils/doc/binutils.texi
|
||||
--- binutils-2.38/binutils/doc/binutils.texi 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/doc/binutils.texi 2022-04-26 13:55:05.297550720 +0200
|
||||
@@ -2246,6 +2246,8 @@ objdump [@option{-a}|@option{--archive-h
|
||||
@option{--dwarf}[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]]
|
||||
[@option{-WK}|@option{--dwarf=follow-links}]
|
||||
[@option{-WN}|@option{--dwarf=no-follow-links}]
|
||||
+ [@option{-wD}|@option{--dwarf=use-debuginfod}]
|
||||
+ [@option{-wE}|@option{--dwarf=do-not-use-debuginfod}]
|
||||
[@option{-L}|@option{--process-links}]
|
||||
[@option{--ctf=}@var{section}]
|
||||
[@option{-G}|@option{--stabs}]
|
||||
@@ -4879,6 +4881,8 @@ readelf [@option{-a}|@option{--all}]
|
||||
@option{--debug-dump}[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]]
|
||||
[@option{-wK}|@option{--debug-dump=follow-links}]
|
||||
[@option{-wN}|@option{--debug-dump=no-follow-links}]
|
||||
+ [@option{-wD}|@option{--debug-dump=use-debuginfod}]
|
||||
+ [@option{-wE}|@option{--debug-dump=do-not-use-debuginfod}]
|
||||
[@option{-P}|@option{--process-links}]
|
||||
[@option{--dwarf-depth=@var{n}}]
|
||||
[@option{--dwarf-start=@var{n}}]
|
||||
@@ -5504,7 +5508,8 @@ deduced from the input file
|
||||
@cindex separate debug files
|
||||
|
||||
debuginfod is a web service that indexes ELF/DWARF debugging resources
|
||||
-by build-id and serves them over HTTP.
|
||||
+by build-id and serves them over HTTP. For more information see:
|
||||
+@emph{https://sourceware.org/elfutils/Debuginfod.html}
|
||||
|
||||
Binutils can be built with the debuginfod client library
|
||||
@code{libdebuginfod} using the @option{--with-debuginfod} configure option.
|
||||
@@ -5516,6 +5521,10 @@ separate debug files when the files are
|
||||
debuginfod is packaged with elfutils, starting with version 0.178.
|
||||
You can get the latest version from `https://sourceware.org/elfutils/'.
|
||||
|
||||
+The DWARF info dumping tools (@command{readelf} and @command{objdump})
|
||||
+have options to control when they should access the debuginfod
|
||||
+servers. By default this access is enabled.
|
||||
+
|
||||
@node Reporting Bugs
|
||||
@chapter Reporting Bugs
|
||||
@cindex bugs
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/doc/debug.options.texi binutils-2.38-new/binutils/doc/debug.options.texi
|
||||
--- binutils-2.38/binutils/doc/debug.options.texi 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/doc/debug.options.texi 2022-04-26 13:55:05.298550721 +0200
|
||||
@@ -68,10 +68,27 @@ chosen when configuring the binutils via
|
||||
@option{--enable-follow-debug-links=no} options. If these are not
|
||||
used then the default is to enable the following of debug links.
|
||||
|
||||
+Note - if support for the debuginfod protocol was enabled when the
|
||||
+binutils were built then this option will also include an attempt to
|
||||
+contact any debuginfod servers mentioned in the @var{DEBUGINFOD_URLS}
|
||||
+environment variable. This could take some time to resolve. This
|
||||
+behaviour can be disabled via the @option{=do-not-use-debuginfod} debug
|
||||
+option.
|
||||
+
|
||||
@item N
|
||||
@itemx =no-follow-links
|
||||
Disables the following of links to separate debug info files.
|
||||
|
||||
+@item D
|
||||
+@itemx =use-debuginfod
|
||||
+Enables contacting debuginfod servers if there is a need to follow
|
||||
+debug links. This is the default behaviour.
|
||||
+
|
||||
+@item E
|
||||
+@itemx =do-not-use-debuginfod
|
||||
+Disables contacting debuginfod servers when there is a need to follow
|
||||
+debug links.
|
||||
+
|
||||
@item l
|
||||
@itemx =rawline
|
||||
Displays the contents of the @samp{.debug_line} section in a raw
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/dwarf.c binutils-2.38-new/binutils/dwarf.c
|
||||
--- binutils-2.38/binutils/dwarf.c 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/dwarf.c 2022-04-26 13:55:05.299550722 +0200
|
||||
@@ -109,6 +109,9 @@ int do_debug_cu_index;
|
||||
int do_wide;
|
||||
int do_debug_links;
|
||||
int do_follow_links = DEFAULT_FOR_FOLLOW_LINKS;
|
||||
+#ifdef HAVE_LIBDEBUGINFOD
|
||||
+int use_debuginfod = 1;
|
||||
+#endif
|
||||
bool do_checks;
|
||||
|
||||
int dwarf_cutoff_level = -1;
|
||||
@@ -11038,7 +11041,7 @@ debuginfod_fetch_separate_debug_info (st
|
||||
|
||||
return false;
|
||||
}
|
||||
-#endif
|
||||
+#endif /* HAVE_LIBDEBUGINFOD */
|
||||
|
||||
static void *
|
||||
load_separate_debug_info (const char * main_filename,
|
||||
@@ -11157,9 +11160,10 @@ load_separate_debug_info (const char *
|
||||
{
|
||||
char * tmp_filename;
|
||||
|
||||
- if (debuginfod_fetch_separate_debug_info (xlink,
|
||||
- & tmp_filename,
|
||||
- file))
|
||||
+ if (use_debuginfod
|
||||
+ && debuginfod_fetch_separate_debug_info (xlink,
|
||||
+ & tmp_filename,
|
||||
+ file))
|
||||
{
|
||||
/* File successfully downloaded from server, replace
|
||||
debug_filename with the file's path. */
|
||||
@@ -11207,13 +11211,15 @@ load_separate_debug_info (const char *
|
||||
warn (_("tried: %s\n"), debug_filename);
|
||||
|
||||
#if HAVE_LIBDEBUGINFOD
|
||||
- {
|
||||
- char *urls = getenv (DEBUGINFOD_URLS_ENV_VAR);
|
||||
- if (urls == NULL)
|
||||
- urls = "";
|
||||
+ if (use_debuginfod)
|
||||
+ {
|
||||
+ char *urls = getenv (DEBUGINFOD_URLS_ENV_VAR);
|
||||
|
||||
- warn (_("tried: DEBUGINFOD_URLS=%s\n"), urls);
|
||||
- }
|
||||
+ if (urls == NULL)
|
||||
+ urls = "";
|
||||
+
|
||||
+ warn (_("tried: DEBUGINFOD_URLS=%s\n"), urls);
|
||||
+ }
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -11707,6 +11713,9 @@ dwarf_select_sections_by_names (const ch
|
||||
{ "aranges", & do_debug_aranges, 1 },
|
||||
{ "cu_index", & do_debug_cu_index, 1 },
|
||||
{ "decodedline", & do_debug_lines, FLAG_DEBUG_LINES_DECODED },
|
||||
+#ifdef HAVE_LIBDEBUGINFOD
|
||||
+ { "do-not-use-debuginfod", & use_debuginfod, 0 },
|
||||
+#endif
|
||||
{ "follow-links", & do_follow_links, 1 },
|
||||
{ "frames", & do_debug_frames, 1 },
|
||||
{ "frames-interp", & do_debug_frames_interp, 1 },
|
||||
@@ -11730,6 +11739,9 @@ dwarf_select_sections_by_names (const ch
|
||||
{ "trace_abbrev", & do_trace_abbrevs, 1 },
|
||||
{ "trace_aranges", & do_trace_aranges, 1 },
|
||||
{ "trace_info", & do_trace_info, 1 },
|
||||
+#ifdef HAVE_LIBDEBUGINFOD
|
||||
+ { "use-debuginfod", & use_debuginfod, 1 },
|
||||
+#endif
|
||||
{ NULL, NULL, 0 }
|
||||
};
|
||||
|
||||
@@ -11783,6 +11795,10 @@ dwarf_select_sections_by_letters (const
|
||||
case 'A': do_debug_addr = 1; break;
|
||||
case 'a': do_debug_abbrevs = 1; break;
|
||||
case 'c': do_debug_cu_index = 1; break;
|
||||
+#ifdef HAVE_LIBDEBUGINFOD
|
||||
+ case 'D': use_debuginfod = 1; break;
|
||||
+ case 'E': use_debuginfod = 0; break;
|
||||
+#endif
|
||||
case 'F': do_debug_frames_interp = 1; /* Fall through. */
|
||||
case 'f': do_debug_frames = 1; break;
|
||||
case 'g': do_gdb_index = 1; break;
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/dwarf.h binutils-2.38-new/binutils/dwarf.h
|
||||
--- binutils-2.38/binutils/dwarf.h 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/dwarf.h 2022-04-26 13:55:05.299550722 +0200
|
||||
@@ -224,6 +224,9 @@ extern int do_debug_cu_index;
|
||||
extern int do_wide;
|
||||
extern int do_debug_links;
|
||||
extern int do_follow_links;
|
||||
+#ifdef HAVE_LIBDEBUGINFOD
|
||||
+extern int use_debuginfod;
|
||||
+#endif
|
||||
extern bool do_checks;
|
||||
|
||||
extern int dwarf_cutoff_level;
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/NEWS binutils-2.38-new/binutils/NEWS
|
||||
--- binutils-2.38/binutils/NEWS 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/NEWS 2022-04-26 13:55:05.297550720 +0200
|
||||
@@ -1,5 +1,8 @@
|
||||
-*- text -*-
|
||||
|
||||
+* Add an option to objdump and readelf to prevent attempts to access debuginfod
|
||||
+ servers when following links.
|
||||
+
|
||||
Changes in 2.38:
|
||||
|
||||
* elfedit: Add --output-abiversion option to update ABIVERSION.
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/objdump.c binutils-2.38-new/binutils/objdump.c
|
||||
--- binutils-2.38/binutils/objdump.c 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/objdump.c 2022-04-26 13:55:05.300550724 +0200
|
||||
@@ -281,6 +281,14 @@ usage (FILE *stream, int status)
|
||||
Do not follow links to separate debug info files\n\
|
||||
(default)\n"));
|
||||
#endif
|
||||
+#if HAVE_LIBDEBUGINFOD
|
||||
+ fprintf (stream, _("\
|
||||
+ -WD --dwarf=use-debuginfod\n\
|
||||
+ When following links, also query debuginfod servers (default)\n"));
|
||||
+ fprintf (stream, _("\
|
||||
+ -WE --dwarf=do-not-use-debuginfod\n\
|
||||
+ When following links, do not query debuginfod servers\n"));
|
||||
+#endif
|
||||
fprintf (stream, _("\
|
||||
-L, --process-links Display the contents of non-debug sections in\n\
|
||||
separate debuginfo files. (Implies -WK)\n"));
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/readelf.c binutils-2.38-new/binutils/readelf.c
|
||||
--- binutils-2.38/binutils/readelf.c 2022-04-26 13:54:52.269532121 +0200
|
||||
+++ binutils-2.38-new/binutils/readelf.c 2022-04-26 13:55:05.303550728 +0200
|
||||
@@ -5126,6 +5126,14 @@ usage (FILE * stream)
|
||||
Do not follow links to separate debug info files\n\
|
||||
(default)\n"));
|
||||
#endif
|
||||
+#if HAVE_LIBDEBUGINFOD
|
||||
+ fprintf (stream, _("\
|
||||
+ -wD --debug-dump=use-debuginfod\n\
|
||||
+ When following links, also query debuginfod servers (default)\n"));
|
||||
+ fprintf (stream, _("\
|
||||
+ -wE --debug-dump=do-not-use-debuginfod\n\
|
||||
+ When following links, do not query debuginfod servers\n"));
|
||||
+#endif
|
||||
fprintf (stream, _("\
|
||||
--dwarf-depth=N Do not display DIEs at depth N or greater\n"));
|
||||
fprintf (stream, _("\
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/testsuite/binutils-all/debuginfod.exp binutils-2.38-new/binutils/testsuite/binutils-all/debuginfod.exp
|
||||
--- binutils-2.38/binutils/testsuite/binutils-all/debuginfod.exp 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/binutils/testsuite/binutils-all/debuginfod.exp 2022-04-26 13:55:05.303550728 +0200
|
||||
@@ -185,8 +185,14 @@ proc test_fetch_debugaltlink { prog prog
|
||||
}
|
||||
|
||||
if { [regexp ".*DEBUGINFOD.*" $conf_objdump] } {
|
||||
- test_fetch_debuglink $OBJDUMP "-W"
|
||||
+ test_fetch_debuglink $OBJDUMP "-W -WD"
|
||||
test_fetch_debugaltlink $OBJDUMP "-Wk"
|
||||
+
|
||||
+ set test "disabling debuginfod access"
|
||||
+ setup_xfail *-*-*
|
||||
+ test_fetch_debuglink $OBJDUMP "-W -WE"
|
||||
+ set test "debuginfod"
|
||||
+
|
||||
} else {
|
||||
untested "$test (objdump not configured with debuginfod)"
|
||||
}
|
||||
@@ -194,6 +200,12 @@ if { [regexp ".*DEBUGINFOD.*" $conf_objd
|
||||
if { [regexp ".*DEBUGINFOD.*" $conf_readelf] } {
|
||||
test_fetch_debuglink $READELF "-w"
|
||||
test_fetch_debugaltlink $READELF "-wk"
|
||||
+
|
||||
+ set test "disabling debuginfod access"
|
||||
+ setup_xfail *-*-*
|
||||
+ test_fetch_debuglink $READELF "-w -wE"
|
||||
+ set test "debuginfod"
|
||||
+
|
||||
} else {
|
||||
untested "$test (readelf not configured with debuginfod)"
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-elfvers/vers24.rd binutils-2.37-new/ld/testsuite/ld-elfvers/vers24.rd
|
||||
--- binutils-2.37/ld/testsuite/ld-elfvers/vers24.rd 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-elfvers/vers24.rd 2021-07-24 21:59:18.647807502 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-elfvers/vers24.rd binutils-2.38-new/ld/testsuite/ld-elfvers/vers24.rd
|
||||
--- binutils-2.38/ld/testsuite/ld-elfvers/vers24.rd 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-elfvers/vers24.rd 2022-04-26 13:54:54.195534871 +0200
|
||||
@@ -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.37/ld/testsuite/ld-elfvers/vers24.rd binu
|
||||
#...
|
||||
Symbol table '.symtab' contains [0-9]+ entries:
|
||||
#pass
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-10.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-10.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-10.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-10.d 2021-07-24 21:59:18.648807492 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-10.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-10.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-10.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-10.d 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-10.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-11.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-11.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-11.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-11.d 2021-07-24 21:59:18.648807492 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-11.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-11.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-11.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-11.d 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-11.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-13.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-13.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-13.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-13.d 2021-07-24 21:59:18.648807492 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-13.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-13.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-13.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-13.d 2022-04-26 13:54:54.191534865 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-14.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-14.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-14.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-14.d 2021-07-24 21:59:18.649807482 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-14.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-14.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-14.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-14.d 2022-04-26 13:54:54.191534865 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-14.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-15.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-15.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-15.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-15.d 2021-07-24 21:59:18.649807482 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-15.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-15.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-15.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-15.d 2022-04-26 13:54:54.191534865 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-15.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-16.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-16.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-16.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-16.d 2021-07-24 21:59:18.649807482 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-16.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-16.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-16.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-16.d 2022-04-26 13:54:54.191534865 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-16.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-17.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-17.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-17.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-17.d 2021-07-24 21:59:18.649807482 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-17.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-17.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-17.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-17.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-17.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-18.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-18.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-18.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-18.d 2021-07-24 21:59:18.650807473 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-18.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-18.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-18.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-18.d 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-18.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-19.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-19.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-19.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-19.d 2021-07-24 21:59:18.650807473 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-19.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-19.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-19.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-19.d 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-19.d bin
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-20.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-20.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-20.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-20.d 2021-07-24 21:59:18.650807473 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-20.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-20.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-20.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-20.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-20.d bin
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-21.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-21.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-21.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-21.d 2021-07-24 21:59:18.650807473 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-21.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-21.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-21.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-21.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-21.d bin
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-22.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-22.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-22.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-22.d 2021-07-24 21:59:18.650807473 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-22.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-22.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-22.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-22.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-22.d bin
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-23.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-23.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-23.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-23.d 2021-07-24 21:59:18.651807463 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-23.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-23.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-23.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-23.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-23.d bin
|
||||
-.*main.c.*: undefined reference to `\.?func'
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-24.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-24.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-24.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-24.d 2021-07-24 21:59:18.651807463 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-24.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-24.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-24.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-24.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-25.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-25.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-25.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-25.d 2021-07-24 21:59:18.651807463 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-25.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-25.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-25.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-25.d 2022-04-26 13:54:54.192534866 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-28.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-28.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-28.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-28.d 2021-07-24 21:59:18.651807463 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-28.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-28.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-28.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-28.d 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -1 +1,2 @@
|
||||
.*: error: Error
|
||||
+#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-29.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-29.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-29.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-29.d 2021-07-24 21:59:18.652807453 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-29.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-29.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-29.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-29.d 2022-04-26 13:54:54.193534868 +0200
|
||||
@@ -1 +1,2 @@
|
||||
.*: warning: Warning
|
||||
+#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-30.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-30.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-30.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-30.d 2021-07-24 21:59:18.652807453 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-30.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-30.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-30.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-30.d 2022-04-26 13:54:54.193534868 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-6.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-6.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-6.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-6.d 2021-07-24 21:59:18.652807453 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-6.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-6.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-6.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-6.d 2022-04-26 13:54:54.193534868 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-6.d binu
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-7.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-7.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-7.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-7.d 2021-07-24 21:59:18.652807453 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-7.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-7.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-7.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-7.d 2022-04-26 13:54:54.193534868 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-7.d binu
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-8.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-8.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-8.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-8.d 2021-07-24 21:59:18.653807444 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-8.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-8.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-8.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-8.d 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-8.d binu
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin-9.d binutils-2.37-new/ld/testsuite/ld-plugin/plugin-9.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin-9.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin-9.d 2021-07-24 21:59:18.653807444 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin-9.d binutils-2.38-new/ld/testsuite/ld-plugin/plugin-9.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin-9.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin-9.d 2022-04-26 13:54:54.193534868 +0200
|
||||
@@ -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.37/ld/testsuite/ld-plugin/plugin-9.d binu
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/plugin.exp binutils-2.37-new/ld/testsuite/ld-plugin/plugin.exp
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/plugin.exp 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/plugin.exp 2021-07-24 21:59:18.653807444 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin.exp binutils-2.38-new/ld/testsuite/ld-plugin/plugin.exp
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin.exp 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin.exp 2022-04-26 13:54:54.195534871 +0200
|
||||
@@ -117,6 +117,12 @@ if { $can_compile && !$failed_compile }
|
||||
}
|
||||
}
|
||||
@ -280,9 +280,410 @@ diff -rupN --no-dereference binutils-2.37/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.37/ld/testsuite/ld-plugin/pr20070.d binutils-2.37-new/ld/testsuite/ld-plugin/pr20070.d
|
||||
--- binutils-2.37/ld/testsuite/ld-plugin/pr20070.d 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-plugin/pr20070.d 2021-07-24 21:59:18.653807444 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/plugin.exp.orig binutils-2.38-new/ld/testsuite/ld-plugin/plugin.exp.orig
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/plugin.exp.orig 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/plugin.exp.orig 2022-01-22 13:14:09.000000000 +0100
|
||||
@@ -0,0 +1,397 @@
|
||||
+# Expect script for ld-plugin tests
|
||||
+# Copyright (C) 2010-2022 Free Software Foundation, Inc.
|
||||
+#
|
||||
+# This file is part of the GNU Binutils.
|
||||
+#
|
||||
+# This program is free software; you can redistribute it and/or modify
|
||||
+# it under the terms of the GNU General Public License as published by
|
||||
+# the Free Software Foundation; either version 3 of the License, or
|
||||
+# (at your option) any later version.
|
||||
+#
|
||||
+# This program is distributed in the hope that it will be useful,
|
||||
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+# GNU General Public License for more details.
|
||||
+#
|
||||
+# You should have received a copy of the GNU General Public License
|
||||
+# along with this program; if not, write to the Free Software
|
||||
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
||||
+# MA 02110-1301, USA.
|
||||
+
|
||||
+# These tests require the plugin API to be configured in.
|
||||
+if ![check_plugin_api_available] {
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
+# And a compiler to be available.
|
||||
+set can_compile 1
|
||||
+if { ![check_compiler_available] } {
|
||||
+ # Don't fail immediately,
|
||||
+ set can_compile 0
|
||||
+}
|
||||
+
|
||||
+pass "plugin API enabled"
|
||||
+
|
||||
+# Look for the name we can dlopen in the test plugin's libtool control script.
|
||||
+set plugin_name [file_contents "$base_dir/libldtestplug.la"]
|
||||
+set plugin_name [regsub "'.*" [regsub ".*dlname='" "$plugin_name" ""] ""]
|
||||
+# Even though the API supports plugins it does not mean that the
|
||||
+# linker was configured with --enable-plugins. Check for that here.
|
||||
+if { $plugin_name == "" } {
|
||||
+ verbose "The linker is not configured to support plugins"
|
||||
+ return
|
||||
+}
|
||||
+verbose "plugin name is '$plugin_name'"
|
||||
+
|
||||
+set plugin2_name [file_contents "$base_dir/libldtestplug2.la"]
|
||||
+set plugin2_name [regsub "'.*" [regsub ".*dlname='" "$plugin2_name" ""] ""]
|
||||
+verbose "plugin2 name is '$plugin2_name'"
|
||||
+
|
||||
+set plugin3_name [file_contents "$base_dir/libldtestplug3.la"]
|
||||
+set plugin3_name [regsub "'.*" [regsub ".*dlname='" "$plugin3_name" ""] ""]
|
||||
+verbose "plugin3 name is '$plugin3_name'"
|
||||
+
|
||||
+set plugin4_name [file_contents "$base_dir/libldtestplug4.la"]
|
||||
+set plugin4_name [regsub "'.*" [regsub ".*dlname='" "$plugin4_name" ""] ""]
|
||||
+verbose "plugin4 name is '$plugin4_name'"
|
||||
+
|
||||
+# Use libtool to find full path to plugin rather than worrying
|
||||
+# about run paths or anything like that.
|
||||
+catch "exec $base_dir/libtool --config" lt_config
|
||||
+verbose "Full lt config: $lt_config" 3
|
||||
+# Look for "objdir=.libs"
|
||||
+regexp -line "^objdir=.*$" "$lt_config" lt_objdir
|
||||
+verbose "lt_objdir line is '$lt_objdir'" 3
|
||||
+set lt_objdir [regsub "objdir=" "$lt_objdir" ""]
|
||||
+set plugin_path "$base_dir/$lt_objdir/$plugin_name"
|
||||
+set plugin2_path "$base_dir/$lt_objdir/$plugin2_name"
|
||||
+set plugin3_path "$base_dir/$lt_objdir/$plugin3_name"
|
||||
+set plugin4_path "$base_dir/$lt_objdir/$plugin4_name"
|
||||
+verbose "Full plugin path $plugin_path" 2
|
||||
+verbose "Full plugin2 path $plugin2_path" 2
|
||||
+verbose "Full plugin3 path $plugin3_path" 2
|
||||
+verbose "Full plugin4 path $plugin4_path" 2
|
||||
+
|
||||
+set regclm "-plugin-opt registerclaimfile"
|
||||
+set regas "-plugin-opt registerallsymbolsread"
|
||||
+set regassilent "-plugin-opt registerallsymbolsreadsilent"
|
||||
+set regcln "-plugin-opt registercleanup"
|
||||
+
|
||||
+# In order to define symbols in plugin options in the list of tests below,
|
||||
+# we need to know if the platform prepends an underscore to C symbols,
|
||||
+# which we find out by compiling the test objects now. If there is any
|
||||
+# error compiling, we defer reporting it until after the list of tests has
|
||||
+# been initialised, so that we can use the names in the list to report;
|
||||
+# otherwise, we scan one of the files with 'nm' and look for a known symbol
|
||||
+# in the output to see if it is prefixed or not.
|
||||
+set failed_compile 0
|
||||
+set _ ""
|
||||
+set plugin_nm_output ""
|
||||
+set old_CFLAGS "$CFLAGS_FOR_TARGET"
|
||||
+append CFLAGS_FOR_TARGET " $NOSANITIZE_CFLAGS $NOLTO_CFLAGS"
|
||||
+if { [istarget m681*-*-*] || [istarget m68hc1*-*-*] || [istarget m9s12x*-*-*] } {
|
||||
+ # otherwise get FAILS due to _.frame
|
||||
+ append CFLAGS_FOR_TARGET " -fomit-frame-pointer"
|
||||
+}
|
||||
+
|
||||
+if { $can_compile && \
|
||||
+ (![ld_compile $CC_FOR_TARGET $srcdir/$subdir/main.c tmpdir/main.o] \
|
||||
+ || ![ld_compile $CC_FOR_TARGET $srcdir/$subdir/func.c tmpdir/func.o] \
|
||||
+ || ![ld_compile $CC_FOR_TARGET $srcdir/$subdir/text.c tmpdir/text.o] \
|
||||
+ || ![ld_compile $CC_FOR_TARGET $srcdir/$subdir/pr20070a.c tmpdir/pr20070a.o] \
|
||||
+ || ![ld_compile $CC_FOR_TARGET $srcdir/$subdir/dummy.s tmpdir/dummy.o] \
|
||||
+ || ![ld_compile $CC_FOR_TARGET $srcdir/$subdir/pr17973.s tmpdir/pr17973.o]) } {
|
||||
+ # Defer fail until we have list of tests set.
|
||||
+ set failed_compile 1
|
||||
+}
|
||||
+
|
||||
+set dotsym 0
|
||||
+if { $can_compile && !$failed_compile } {
|
||||
+ # Find out if symbols have prefix on this platform before setting tests.
|
||||
+ catch "exec $NM tmpdir/func.o" plugin_nm_output
|
||||
+ if { [regexp "_func" "$plugin_nm_output"] } {
|
||||
+ set _ "_"
|
||||
+ }
|
||||
+ if { [regexp "\\.func" "$plugin_nm_output"] } {
|
||||
+ set dotsym 1
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+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"
|
||||
+set testsrcfiles_notext "tmpdir/main.o $srcdir/$subdir/func.c"
|
||||
+# Rather than having libs we just define dummy values for anything
|
||||
+# we may need to link a target exe; we aren't going to run it anyway.
|
||||
+set libs "[ld_link_defsyms] --defsym ${_}printf=${_}main --defsym ${_}puts=${_}main"
|
||||
+if { $dotsym } {
|
||||
+ append libs " --defsym .printf=.main --defsym .puts=.main"
|
||||
+}
|
||||
+if [is_pecoff_format] {
|
||||
+ #otherwise relocs overflow to symbols defined on the command line
|
||||
+ append libs " --image-base=0x10000000"
|
||||
+}
|
||||
+
|
||||
+set plugin_tests [list \
|
||||
+ [list "load plugin" "-plugin $plugin_path \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-1.d}} "main.x" ] \
|
||||
+ [list "fail plugin onload" "-plugin $plugin_path -plugin-opt failonload \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-2.d}} "main.x" ] \
|
||||
+ [list "fail plugin allsymbolsread" "-plugin $plugin_path $regas \
|
||||
+ -plugin-opt failallsymbolsread \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-3.d}} "main.x" ] \
|
||||
+ [list "fail plugin cleanup" "-plugin $plugin_path -plugin-opt failcleanup \
|
||||
+ $regcln \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-4.d}} "main.x" ] \
|
||||
+ [list "plugin all hooks" "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-5.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile lost symbol" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-6.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile replace symbol" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-7.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile resolve symbol" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-8.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile replace file" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-9.d}} "main.x" ] \
|
||||
+ [list "load plugin with source" "-plugin $plugin_path $regclm \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-13.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile lost symbol with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-14.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile replace symbol with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-15.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile resolve symbol with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-16.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile replace file with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-17.d}} "main.x" ] \
|
||||
+ [list "load plugin with source not claimed" "-plugin $plugin_path $regclm \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-26.d}} "main.x" ] \
|
||||
+ [list "plugin fatal error" "-plugin $plugin2_path -plugin-opt fatal \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-27.d}} "main.x" ] \
|
||||
+ [list "plugin error" "-plugin $plugin2_path -plugin-opt error \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-28.d}} "main.x" ] \
|
||||
+ [list "plugin warning" "-plugin $plugin2_path -plugin-opt warning \
|
||||
+ $testobjfiles $libs" "" "" "" {{ld plugin-29.d}} "main.x" ] \
|
||||
+]
|
||||
+
|
||||
+if [check_shared_lib_support] {
|
||||
+ lappend plugin_tests [list "PR ld/17973" "-plugin $plugin2_path -shared $regassilent \
|
||||
+ -plugin-opt add:tmpdir/pr17973.o \
|
||||
+ tmpdir/dummy.o" "" "" "" {{readelf -sW pr17973.d}} "main.x" ]
|
||||
+}
|
||||
+
|
||||
+
|
||||
+set plugin_lib_tests [list \
|
||||
+ [list "plugin ignore lib" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ $testobjfiles_notext -Ltmpdir -ltext $libs" "" "" "" {{ld plugin-10.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile replace lib" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ -plugin-opt claim:tmpdir/libtext.a \
|
||||
+ -plugin-opt sym:${_}text::0:0:0 \
|
||||
+ -plugin-opt add:tmpdir/text.o \
|
||||
+ $testobjfiles_notext -Ltmpdir -ltext $libs" "" "" "" {{ld plugin-11.d}} "main.x" ] \
|
||||
+ [list "plugin ignore lib with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ $testsrcfiles_notext -Ltmpdir -ltext $libs" "" "" "" {{ld plugin-18.d}} "main.x" ] \
|
||||
+ [list "plugin claimfile replace lib with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:0:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ -plugin-opt claim:tmpdir/libtext.a \
|
||||
+ -plugin-opt sym:${_}text::0:0:0 \
|
||||
+ -plugin-opt add:tmpdir/text.o \
|
||||
+ $testsrcfiles_notext -Ltmpdir -ltext $libs" "" "" "" {{ld plugin-19.d}} "main.x" ] \
|
||||
+ [list "plugin with empty archive" \
|
||||
+ "-plugin $plugin_path $regclm \
|
||||
+ -plugin-opt read:8 \
|
||||
+ $testobjfiles tmpdir/libempty.a $libs" "" "" "" {{ld plugin-30.d}} "main.x" ] \
|
||||
+]
|
||||
+
|
||||
+set plugin_extra_elf_tests [list \
|
||||
+ [list "plugin set symbol visibility" "-plugin $plugin_path $regclm \
|
||||
+ $regas $regcln -plugin-opt claim:tmpdir/func.o \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func1::0:1:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:2:0 \
|
||||
+ -plugin-opt sym:${_}func3::0:3:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ -plugin-opt add:tmpdir/func1p.o \
|
||||
+ -plugin-opt add:tmpdir/func2i.o \
|
||||
+ -plugin-opt add:tmpdir/func3h.o \
|
||||
+ $testobjfiles $libs --verbose=2" "" "" "" {{ld plugin-12.d} \
|
||||
+ {readelf -s plugin-vis-1.d}} "main.x" ] \
|
||||
+ [list "plugin set symbol visibility with source" \
|
||||
+ "-plugin $plugin_path $regclm $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/func.c \
|
||||
+ -plugin-opt sym:${_}func::0:0:0 \
|
||||
+ -plugin-opt sym:${_}func1::0:1:0 \
|
||||
+ -plugin-opt sym:${_}func2::0:2:0 \
|
||||
+ -plugin-opt sym:${_}func3::0:3:0 \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ -plugin-opt add:tmpdir/func.o \
|
||||
+ -plugin-opt add:tmpdir/func1p.o \
|
||||
+ -plugin-opt add:tmpdir/func2i.o \
|
||||
+ -plugin-opt add:tmpdir/func3h.o \
|
||||
+ $testsrcfiles $libs --verbose=2" "" "" "" {{ld plugin-12.d} \
|
||||
+ {readelf -s plugin-vis-1.d}} "main.x" ] \
|
||||
+]
|
||||
+
|
||||
+if { !$can_compile || $failed_compile } {
|
||||
+ foreach testitem $plugin_tests {
|
||||
+ unsupported [lindex $testitem 0]
|
||||
+ }
|
||||
+ if { [is_elf_format] } {
|
||||
+ foreach testitem $plugin_extra_elf_tests {
|
||||
+ unsupported [lindex $testitem 0]
|
||||
+ }
|
||||
+ }
|
||||
+ set CFLAGS_FOR_TARGET "$old_CFLAGS"
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
+run_ld_link_tests $plugin_tests
|
||||
+
|
||||
+if { [is_elf_format] \
|
||||
+ && [ld_compile $CC_FOR_TARGET $srcdir/$subdir/func1p.c tmpdir/func1p.o] \
|
||||
+ && [ld_compile $CC_FOR_TARGET $srcdir/$subdir/func2i.c tmpdir/func2i.o] \
|
||||
+ && [ld_compile $CC_FOR_TARGET $srcdir/$subdir/func3h.c tmpdir/func3h.o] } {
|
||||
+ run_ld_link_tests $plugin_extra_elf_tests
|
||||
+}
|
||||
+
|
||||
+if {![ar_simple_create $ar "" "tmpdir/libtext.a" "tmpdir/text.o"] || \
|
||||
+ ![ar_simple_create $ar "" "tmpdir/libempty.a" ""]} {
|
||||
+ foreach testitem $plugin_lib_tests {
|
||||
+ unsupported [lindex $testitem 0]
|
||||
+ }
|
||||
+} else {
|
||||
+ run_ld_link_tests $plugin_lib_tests
|
||||
+}
|
||||
+
|
||||
+set plugin_src_tests [list \
|
||||
+ [list "plugin 2 with source lib" \
|
||||
+ "-plugin $plugin2_path $regclm $regas $regcln \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ tmpdir/main.o -Ltmpdir -ltext -lfunc $libs" "" "" "" {{ld plugin-20.d}} "main.x" ] \
|
||||
+ [list "load plugin 2 with source" \
|
||||
+ "-plugin $plugin2_path $regclm $regas $regcln \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-21.d}} "main.x" ] \
|
||||
+ [list "load plugin 2 with source and -r" \
|
||||
+ "-r -plugin $plugin2_path $regclm $regas $regcln \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-24.d}} "main.x" ] \
|
||||
+ [list "plugin 3 with source lib" \
|
||||
+ "-plugin $plugin3_path $regclm $regas $regcln \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ tmpdir/main.o -Ltmpdir -ltext -lfunc $libs" "" "" "" {{ld plugin-22.d}} "main.x" ] \
|
||||
+ [list "load plugin 3 with source" \
|
||||
+ "-plugin $plugin3_path $regclm $regas $regcln \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-23.d}} "main.x" ] \
|
||||
+ [list "load plugin 3 with source and -r" \
|
||||
+ "-r -plugin $plugin3_path $regclm $regas $regcln \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ $testsrcfiles $libs" "" "" "" {{ld plugin-25.d}} "main.x" ] \
|
||||
+]
|
||||
+
|
||||
+# Check if nm --plugin works.
|
||||
+set testname "nm --plugin"
|
||||
+set nm_plugin "$NM --plugin $plugin2_path $srcdir/$subdir/func.c"
|
||||
+catch "exec $nm_plugin" plugin_nm_output
|
||||
+send_log "$nm_plugin\n"
|
||||
+send_log "$plugin_nm_output\n"
|
||||
+if { [regexp "0+ T func" "$plugin_nm_output"] &&
|
||||
+ [regexp "0+ T _func" "$plugin_nm_output"] } {
|
||||
+ pass $testname
|
||||
+} else {
|
||||
+ fail $testname
|
||||
+}
|
||||
+
|
||||
+# Check if ar --plugin works.
|
||||
+file delete tmpdir/libfunc.a
|
||||
+if [ar_simple_create $ar "--plugin $plugin2_path" "tmpdir/libfunc.a" \
|
||||
+ "tmpdir/main.o $srcdir/$subdir/func.c"] {
|
||||
+ set testname "ar --plugin"
|
||||
+ set nm_plugin "$NM -s --plugin $plugin2_path tmpdir/libfunc.a"
|
||||
+ catch "exec $nm_plugin" plugin_nm_output
|
||||
+ send_log "$nm_plugin\n"
|
||||
+ send_log "$plugin_nm_output\n"
|
||||
+ if { [regexp "func in func.c" "$plugin_nm_output"] &&
|
||||
+ [regexp "_func in func.c" "$plugin_nm_output"] } {
|
||||
+ pass $testname
|
||||
+ run_ld_link_tests $plugin_src_tests
|
||||
+ } else {
|
||||
+ fail $testname
|
||||
+ }
|
||||
+} else {
|
||||
+ foreach testitem $plugin_src_tests {
|
||||
+ unsupported [lindex $testitem 0]
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+file delete tmpdir/libpr20070.a
|
||||
+if [ar_simple_create $ar "--plugin $plugin4_path" "tmpdir/libpr20070.a" \
|
||||
+ "$srcdir/$subdir/pr20070b.c"] {
|
||||
+ run_ld_link_tests [list \
|
||||
+ [list \
|
||||
+ "PR ld/20070" \
|
||||
+ "-Bstatic -plugin $plugin4_path $regclm \
|
||||
+ $regas $regcln \
|
||||
+ -plugin-opt claim:$srcdir/$subdir/pr20070b.c \
|
||||
+ -plugin-opt claim:tmpdir/libpr20070.a \
|
||||
+ -plugin-opt dumpresolutions \
|
||||
+ tmpdir/pr20070a.o tmpdir/text.o tmpdir/libpr20070.a $libs" \
|
||||
+ "" "" "" {{ld pr20070.d}} "pr20070.x" \
|
||||
+ ] \
|
||||
+ ]
|
||||
+} else {
|
||||
+ unsupported "PR ld/20070"
|
||||
+}
|
||||
+
|
||||
+set CFLAGS_FOR_TARGET "$old_CFLAGS"
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-plugin/pr20070.d binutils-2.38-new/ld/testsuite/ld-plugin/pr20070.d
|
||||
--- binutils-2.38/ld/testsuite/ld-plugin/pr20070.d 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-plugin/pr20070.d 2022-04-26 13:54:54.193534868 +0200
|
||||
@@ -5,5 +5,6 @@ Sym: 'weakdef' Resolution: LDPR_PREVAILI
|
||||
Sym: 'undef' Resolution: LDPR_UNDEF
|
||||
Sym: 'weakundef' Resolution: LDPR_UNDEF
|
||||
@ -290,9 +691,9 @@ diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-plugin/pr20070.d binut
|
||||
+#...
|
||||
hook called: cleanup.
|
||||
#...
|
||||
diff -rupN --no-dereference binutils-2.37/ld/testsuite/ld-srec/srec.exp binutils-2.37-new/ld/testsuite/ld-srec/srec.exp
|
||||
--- binutils-2.37/ld/testsuite/ld-srec/srec.exp 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/ld/testsuite/ld-srec/srec.exp 2021-07-24 21:59:18.654807434 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/ld/testsuite/ld-srec/srec.exp binutils-2.38-new/ld/testsuite/ld-srec/srec.exp
|
||||
--- binutils-2.38/ld/testsuite/ld-srec/srec.exp 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ld/testsuite/ld-srec/srec.exp 2022-04-26 13:54:54.194534869 +0200
|
||||
@@ -21,6 +21,8 @@
|
||||
|
||||
# Get the offset from an S-record line to the start of the data.
|
||||
|
||||
92
SOURCES/binutils-gas-loc-view.patch
Normal file
92
SOURCES/binutils-gas-loc-view.patch
Normal file
@ -0,0 +1,92 @@
|
||||
diff -rupN --no-dereference binutils-2.38/gas/dwarf2dbg.c binutils-2.38-new/gas/dwarf2dbg.c
|
||||
--- binutils-2.38/gas/dwarf2dbg.c 2022-01-22 13:14:08.000000000 +0100
|
||||
+++ binutils-2.38-new/gas/dwarf2dbg.c 2022-04-26 13:55:04.339549352 +0200
|
||||
@@ -402,18 +402,27 @@ set_or_check_view (struct line_entry *e,
|
||||
if (viewx.X_op != O_constant || viewx.X_add_number)
|
||||
{
|
||||
expressionS incv;
|
||||
+ expressionS *p_view;
|
||||
|
||||
if (!p->loc.u.view)
|
||||
- {
|
||||
- p->loc.u.view = symbol_temp_make ();
|
||||
- gas_assert (!S_IS_DEFINED (p->loc.u.view));
|
||||
- }
|
||||
+ p->loc.u.view = symbol_temp_make ();
|
||||
|
||||
memset (&incv, 0, sizeof (incv));
|
||||
incv.X_unsigned = 1;
|
||||
incv.X_op = O_symbol;
|
||||
incv.X_add_symbol = p->loc.u.view;
|
||||
incv.X_add_number = 1;
|
||||
+ p_view = symbol_get_value_expression (p->loc.u.view);
|
||||
+ if (p_view->X_op == O_constant || p_view->X_op == O_symbol)
|
||||
+ {
|
||||
+ /* If we can, constant fold increments so that a chain of
|
||||
+ expressions v + 1 + 1 ... + 1 is not created.
|
||||
+ resolve_expression isn't ideal for this purpose. The
|
||||
+ base v might not be resolvable until later. */
|
||||
+ incv.X_op = p_view->X_op;
|
||||
+ incv.X_add_symbol = p_view->X_add_symbol;
|
||||
+ incv.X_add_number = p_view->X_add_number + 1;
|
||||
+ }
|
||||
|
||||
if (viewx.X_op == O_constant)
|
||||
{
|
||||
diff -rupN --no-dereference binutils-2.38/gas/symbols.c binutils-2.38-new/gas/symbols.c
|
||||
--- binutils-2.38/gas/symbols.c 2022-01-22 13:14:08.000000000 +0100
|
||||
+++ binutils-2.38-new/gas/symbols.c 2022-04-26 13:55:04.338549351 +0200
|
||||
@@ -61,8 +61,10 @@ struct symbol_flags
|
||||
/* Whether the symbol can be re-defined. */
|
||||
unsigned int volatil : 1;
|
||||
|
||||
- /* Whether the symbol is a forward reference. */
|
||||
+ /* Whether the symbol is a forward reference, and whether such has
|
||||
+ been determined. */
|
||||
unsigned int forward_ref : 1;
|
||||
+ unsigned int forward_resolved : 1;
|
||||
|
||||
/* This is set if the symbol is defined in an MRI common section.
|
||||
We handle such sections as single common symbols, so symbols
|
||||
@@ -202,7 +204,7 @@ static void *
|
||||
symbol_entry_find (htab_t table, const char *name)
|
||||
{
|
||||
hashval_t hash = htab_hash_string (name);
|
||||
- symbol_entry_t needle = { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
+ symbol_entry_t needle = { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
hash, name, 0, 0, 0 } };
|
||||
return htab_find_with_hash (table, &needle, hash);
|
||||
}
|
||||
@@ -784,7 +786,9 @@ symbol_clone (symbolS *orgsymP, int repl
|
||||
symbolS *
|
||||
symbol_clone_if_forward_ref (symbolS *symbolP, int is_forward)
|
||||
{
|
||||
- if (symbolP && !symbolP->flags.local_symbol)
|
||||
+ if (symbolP
|
||||
+ && !symbolP->flags.local_symbol
|
||||
+ && !symbolP->flags.forward_resolved)
|
||||
{
|
||||
symbolS *orig_add_symbol = symbolP->x->value.X_add_symbol;
|
||||
symbolS *orig_op_symbol = symbolP->x->value.X_op_symbol;
|
||||
@@ -837,6 +841,7 @@ symbol_clone_if_forward_ref (symbolS *sy
|
||||
|
||||
symbolP->x->value.X_add_symbol = add_symbol;
|
||||
symbolP->x->value.X_op_symbol = op_symbol;
|
||||
+ symbolP->flags.forward_resolved = 1;
|
||||
}
|
||||
|
||||
return symbolP;
|
||||
diff -rupN --no-dereference binutils-2.38/gas/testsuite/gas/elf/dwarf2-18.d binutils-2.38-new/gas/testsuite/gas/elf/dwarf2-18.d
|
||||
--- binutils-2.38/gas/testsuite/gas/elf/dwarf2-18.d 2022-01-22 13:14:08.000000000 +0100
|
||||
+++ binutils-2.38-new/gas/testsuite/gas/elf/dwarf2-18.d 2022-04-26 13:55:04.339549352 +0200
|
||||
@@ -2,9 +2,8 @@
|
||||
#readelf: -x.rodata -wL
|
||||
#name: DWARF2 18
|
||||
# The am33 cr16 crx ft32 mn10 msp430 nds32 and rl78 targets do not evaluate the subtraction of symbols at assembly time.
|
||||
-# The mep targets turns some view computations into complex relocations.
|
||||
# The riscv targets do not support the subtraction of symbols.
|
||||
-#xfail: am3*-* cr16-* crx-* ft32*-* mep-* mn10*-* msp430-* nds32*-* riscv*-* rl78-*
|
||||
+#xfail: am3*-* cr16-* crx-* ft32*-* mn10*-* msp430-* nds32*-* riscv*-* rl78-*
|
||||
|
||||
Hex dump of section '\.rodata':
|
||||
0x00000000 0100 *.*
|
||||
@ -1,6 +1,6 @@
|
||||
diff -rupN --no-dereference binutils-2.37/gold/i386.cc binutils-2.37-new/gold/i386.cc
|
||||
--- binutils-2.37/gold/i386.cc 2021-07-08 13:37:20.000000000 +0200
|
||||
+++ binutils-2.37-new/gold/i386.cc 2021-07-24 21:59:31.051686692 +0200
|
||||
diff -rupN --no-dereference binutils-2.38/gold/i386.cc binutils-2.38-new/gold/i386.cc
|
||||
--- binutils-2.38/gold/i386.cc 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/gold/i386.cc 2022-04-26 13:55:00.467543824 +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),
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
diff -rupN --no-dereference binutils-2.37/binutils/readelf.c binutils-2.37-new/binutils/readelf.c
|
||||
--- binutils-2.37/binutils/readelf.c 2021-07-24 21:59:08.033910876 +0200
|
||||
+++ binutils-2.37-new/binutils/readelf.c 2021-07-24 21:59:10.159890170 +0200
|
||||
@@ -12616,11 +12616,13 @@ print_dynamic_symbol (Filedata *filedata
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/readelf.c binutils-2.38-new/binutils/readelf.c
|
||||
--- binutils-2.38/binutils/readelf.c 2022-04-26 13:54:50.369529409 +0200
|
||||
+++ binutils-2.38-new/binutils/readelf.c 2022-04-26 13:54:51.333530785 +0200
|
||||
@@ -12991,11 +12991,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.37/binutils/readelf.c binutils-2.37-new/b
|
||||
}
|
||||
printf (" %4s ", get_symbol_index_type (filedata, psym->st_shndx));
|
||||
|
||||
@@ -12670,7 +12672,17 @@ print_dynamic_symbol (Filedata *filedata
|
||||
@@ -13049,7 +13051,17 @@ print_dynamic_symbol (Filedata *filedata
|
||||
version_string);
|
||||
}
|
||||
|
||||
@ -34,3 +34,129 @@ diff -rupN --no-dereference binutils-2.37/binutils/readelf.c binutils-2.37-new/b
|
||||
|
||||
if (ELF_ST_BIND (psym->st_info) == STB_LOCAL
|
||||
&& section != NULL
|
||||
diff -rupN --no-dereference binutils-2.38/binutils/readelf.c.orig binutils-2.38-new/binutils/readelf.c.orig
|
||||
--- binutils-2.38/binutils/readelf.c.orig 2022-04-26 13:54:50.375529417 +0200
|
||||
+++ binutils-2.38-new/binutils/readelf.c.orig 2022-04-26 13:54:49.332527928 +0200
|
||||
@@ -22327,46 +22327,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;
|
||||
@@ -22374,33 +22381,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;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
10084
SOURCES/binutils-section-type.patch
Normal file
10084
SOURCES/binutils-section-type.patch
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,10 +1,10 @@
|
||||
diff -rupN --no-dereference binutils-2.37/bfd/Makefile.am binutils-2.37-new/bfd/Makefile.am
|
||||
--- binutils-2.37/bfd/Makefile.am 2021-07-08 13:37:19.000000000 +0200
|
||||
+++ binutils-2.37-new/bfd/Makefile.am 2021-07-24 21:59:00.067988456 +0200
|
||||
@@ -942,8 +942,8 @@ DISTCLEANFILES = $(BUILD_CFILES) $(BUILD
|
||||
diff -rupN --no-dereference binutils-2.38/bfd/Makefile.am binutils-2.38-new/bfd/Makefile.am
|
||||
--- binutils-2.38/bfd/Makefile.am 2022-01-22 13:14:07.000000000 +0100
|
||||
+++ binutils-2.38-new/bfd/Makefile.am 2022-04-26 13:54:46.008523184 +0200
|
||||
@@ -977,8 +977,8 @@ DISTCLEANFILES = $(BUILD_CFILES) $(BUILD
|
||||
bfdver.h: $(srcdir)/version.h $(srcdir)/development.sh $(srcdir)/Makefile.in
|
||||
@echo "creating $@"
|
||||
@bfd_version=`echo "$(VERSION)" | $(SED) -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\
|
||||
$(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/'` ;\
|
||||
- bfd_version_string="\"$(VERSION)\"" ;\
|
||||
- bfd_soversion="$(VERSION)" ;\
|
||||
+ bfd_version_string="\"$(VERSION)-%{release}\"" ;\
|
||||
@ -12,7 +12,7 @@ diff -rupN --no-dereference binutils-2.37/bfd/Makefile.am binutils-2.37-new/bfd/
|
||||
bfd_version_package="\"$(PKGVERSION)\"" ;\
|
||||
report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\
|
||||
. $(srcdir)/development.sh ;\
|
||||
@@ -954,7 +954,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
|
||||
@@ -989,7 +989,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
|
||||
fi ;\
|
||||
$(SED) -e "s,@bfd_version@,$$bfd_version," \
|
||||
-e "s,@bfd_version_string@,$$bfd_version_string," \
|
||||
@ -21,13 +21,13 @@ diff -rupN --no-dereference binutils-2.37/bfd/Makefile.am binutils-2.37-new/bfd/
|
||||
-e "s,@report_bugs_to@,$$report_bugs_to," \
|
||||
< $(srcdir)/version.h > $@; \
|
||||
echo "$${bfd_soversion}" > libtool-soversion
|
||||
diff -rupN --no-dereference binutils-2.37/bfd/Makefile.in binutils-2.37-new/bfd/Makefile.in
|
||||
--- binutils-2.37/bfd/Makefile.in 2021-07-18 18:36:53.000000000 +0200
|
||||
+++ binutils-2.37-new/bfd/Makefile.in 2021-07-24 21:59:00.069988437 +0200
|
||||
@@ -2053,8 +2053,8 @@ stmp-lcoff-h: $(LIBCOFF_H_FILES)
|
||||
diff -rupN --no-dereference binutils-2.38/bfd/Makefile.in binutils-2.38-new/bfd/Makefile.in
|
||||
--- binutils-2.38/bfd/Makefile.in 2022-02-09 12:45:13.000000000 +0100
|
||||
+++ binutils-2.38-new/bfd/Makefile.in 2022-04-26 13:54:46.008523184 +0200
|
||||
@@ -2094,8 +2094,8 @@ stmp-lcoff-h: $(LIBCOFF_H_FILES) $(MKDOC
|
||||
bfdver.h: $(srcdir)/version.h $(srcdir)/development.sh $(srcdir)/Makefile.in
|
||||
@echo "creating $@"
|
||||
@bfd_version=`echo "$(VERSION)" | $(SED) -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\
|
||||
$(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/'` ;\
|
||||
- bfd_version_string="\"$(VERSION)\"" ;\
|
||||
- bfd_soversion="$(VERSION)" ;\
|
||||
+ bfd_version_string="\"$(VERSION)-%{release}\"" ;\
|
||||
@ -35,7 +35,7 @@ diff -rupN --no-dereference binutils-2.37/bfd/Makefile.in binutils-2.37-new/bfd/
|
||||
bfd_version_package="\"$(PKGVERSION)\"" ;\
|
||||
report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\
|
||||
. $(srcdir)/development.sh ;\
|
||||
@@ -2065,7 +2065,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
|
||||
@@ -2106,7 +2106,7 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/
|
||||
fi ;\
|
||||
$(SED) -e "s,@bfd_version@,$$bfd_version," \
|
||||
-e "s,@bfd_version_string@,$$bfd_version_string," \
|
||||
|
||||
27
SOURCES/gcc12-libtool-no-rpath.patch
Normal file
27
SOURCES/gcc12-libtool-no-rpath.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff -rupN --no-dereference binutils-2.38/ltmain.sh binutils-2.38-new/ltmain.sh
|
||||
--- binutils-2.38/ltmain.sh 2022-01-22 13:14:09.000000000 +0100
|
||||
+++ binutils-2.38-new/ltmain.sh 2022-04-26 13:55:02.394546575 +0200
|
||||
@@ -7103,6 +7103,7 @@ EOF
|
||||
rpath="$finalize_rpath"
|
||||
test "$mode" != relink && rpath="$compile_rpath$rpath"
|
||||
for libdir in $rpath; do
|
||||
+ case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac
|
||||
if test -n "$hardcode_libdir_flag_spec"; then
|
||||
if test -n "$hardcode_libdir_separator"; then
|
||||
if test -z "$hardcode_libdirs"; then
|
||||
@@ -7798,6 +7799,7 @@ EOF
|
||||
rpath=
|
||||
hardcode_libdirs=
|
||||
for libdir in $compile_rpath $finalize_rpath; do
|
||||
+ case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac
|
||||
if test -n "$hardcode_libdir_flag_spec"; then
|
||||
if test -n "$hardcode_libdir_separator"; then
|
||||
if test -z "$hardcode_libdirs"; then
|
||||
@@ -7849,6 +7851,7 @@ EOF
|
||||
rpath=
|
||||
hardcode_libdirs=
|
||||
for libdir in $finalize_rpath; do
|
||||
+ case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac
|
||||
if test -n "$hardcode_libdir_flag_spec"; then
|
||||
if test -n "$hardcode_libdir_separator"; then
|
||||
if test -z "$hardcode_libdirs"; then
|
||||
@ -1,8 +1,9 @@
|
||||
%global run_testsuite 1
|
||||
%global mingw_build_ucrt64 1
|
||||
|
||||
Name: mingw-binutils
|
||||
Version: 2.37
|
||||
Release: 1%{?dist}
|
||||
Version: 2.38
|
||||
Release: 2%{?dist}
|
||||
Summary: Cross-compiled version of binutils for Win32 and Win64 environments
|
||||
|
||||
License: GPLv2+ and LGPLv2+ and GPLv3+ and LGPLv3+
|
||||
@ -71,28 +72,29 @@ Patch07: binutils-readelf-other-sym-info.patch
|
||||
# debug sections.
|
||||
# Lifetime: Permanent.
|
||||
# FIXME: Find related bug. Decide on permanency.
|
||||
Patch08: binutils-2.27-aarch64-ifunc.patch
|
||||
# Not needed, mingw does not have aarch64
|
||||
# Patch08: 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
|
||||
|
||||
# Purpose: Allow OS specific sections in section groups.
|
||||
# Lifetime: Fixed in 2.38 (maybe)
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch10: binutils-special-sections-in-groups.patch
|
||||
|
||||
# Purpose: Fix linker testsuite failures.
|
||||
# Lifetime: Fixed in 2.37 (maybe)
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch11: binutils-fix-testsuite-failures.patch
|
||||
|
||||
# Purpose: Stop gold from aborting when input sections with the same name
|
||||
# have different flags.
|
||||
# Lifetime: Fixed in 2.38 (maybe)
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch12: binutils-gold-mismatched-section-flags.patch
|
||||
|
||||
# Purpose: Add a check to the GOLD linker for a corrupt input file
|
||||
# with a fuzzed section offset.
|
||||
# Lifetime: Fixed in 2.38 (maybe)
|
||||
# Lifetime: Fixed in 2.39 (maybe)
|
||||
Patch13: binutils-CVE-2019-1010204.patch
|
||||
|
||||
# Purpose: Change the gold configuration script to only warn about
|
||||
@ -109,7 +111,6 @@ Patch14: binutils-gold-warn-unsupported.patch
|
||||
# Lifetime: Permanent.
|
||||
Patch15: binutils-use-long-long.patch
|
||||
|
||||
|
||||
# Purpose: Fix testsuite failures due to the patches applied here.
|
||||
# Lifetime: Permanent, but varying with each new rebase.
|
||||
Patch16: binutils-testsuite-fixes.patch
|
||||
@ -119,6 +120,30 @@ Patch16: binutils-testsuite-fixes.patch
|
||||
# Lifetime: Fixed in 2.38 maybe
|
||||
Patch17: 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 ?)
|
||||
Patch18: binutils-autoconf-version.patch
|
||||
|
||||
# Purpose: Stop libtool from inserting useless runpaths into binaries.
|
||||
# Lifetime: Who knows.
|
||||
Patch19: gcc12-libtool-no-rpath.patch
|
||||
|
||||
# Purpose: Add support for specifying section types in linker scripts.
|
||||
# Lifetime: Fixed in 2.39
|
||||
Patch20: binutils-section-type.patch
|
||||
|
||||
# Purpose: Simplify the evaluation of assembler loc view expression chains.
|
||||
# Lifetime: Fixed in 2.39
|
||||
Patch21: binutils-gas-loc-view.patch
|
||||
|
||||
# Purpose: Add an option to disable access to debuginfod servers.
|
||||
# Lifetime: Fixed in 2.39
|
||||
Patch22: binutils-do-not-use-debuginfod.patch
|
||||
|
||||
# Backport proposed fix for https://sourceware.org/bugzilla/show_bug.cgi?id=29006
|
||||
Patch100: 29006.patch
|
||||
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc
|
||||
@ -126,8 +151,9 @@ BuildRequires: flex
|
||||
BuildRequires: bison
|
||||
BuildRequires: texinfo
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: mingw32-filesystem >= 102
|
||||
BuildRequires: mingw64-filesystem >= 102
|
||||
BuildRequires: mingw32-filesystem >= 133
|
||||
BuildRequires: mingw64-filesystem >= 133
|
||||
BuildRequires: ucrt64-filesystem >= 133
|
||||
%if %{run_testsuite}
|
||||
BuildRequires: dejagnu
|
||||
BuildRequires: sharutils
|
||||
@ -168,6 +194,17 @@ Requires: mingw64-filesystem >= 95
|
||||
Cross compiled binutils (utilities like 'strip', 'as', 'ld') which
|
||||
understand Windows executables and DLLs.
|
||||
|
||||
%package -n ucrt64-binutils
|
||||
Summary: Cross-compiled version of binutils for the Win64 environment
|
||||
Requires: mingw-binutils-generic = %{version}-%{release}
|
||||
|
||||
# NB: This must be left in.
|
||||
Requires: ucrt64-filesystem >= 133
|
||||
|
||||
%description -n ucrt64-binutils
|
||||
Cross compiled binutils (utilities like 'strip', 'as', 'ld') which
|
||||
understand Windows executables and DLLs.
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n binutils-%{version}
|
||||
@ -219,6 +256,24 @@ CFLAGS="%{optflags}" \
|
||||
%make_build
|
||||
popd
|
||||
|
||||
mkdir build_ucrt64
|
||||
pushd build_ucrt64
|
||||
CFLAGS="%{optflags}" \
|
||||
../configure \
|
||||
--build=%_build --host=%_host \
|
||||
--target=%{ucrt64_target} \
|
||||
--disable-nls \
|
||||
--with-sysroot=%{ucrt64_sysroot} \
|
||||
--prefix=%{_prefix} \
|
||||
--bindir=%{_bindir} \
|
||||
--includedir=%{_includedir} \
|
||||
--libdir=%{_libdir} \
|
||||
--mandir=%{_mandir} \
|
||||
--infodir=%{_infodir}
|
||||
|
||||
%make_build
|
||||
popd
|
||||
|
||||
# Create multilib versions for the tools strip, objdump nm, and objcopy
|
||||
mkdir build_multilib
|
||||
pushd build_multilib
|
||||
@ -226,7 +281,7 @@ CFLAGS="%{optflags}" \
|
||||
../configure \
|
||||
--build=%_build --host=%_host \
|
||||
--target=%{mingw64_target} \
|
||||
--enable-targets=%{mingw64_target},%{mingw32_target} \
|
||||
--enable-targets=%{mingw64_target},%{mingw32_target},%{ucrt64_target} \
|
||||
--disable-nls \
|
||||
--with-sysroot=%{mingw64_sysroot} \
|
||||
--prefix=%{_prefix} \
|
||||
@ -271,6 +326,20 @@ pushd build_win64
|
||||
uuencode binutils-%{mingw64_target}.tar.bz2 binutils-%{mingw64_target}.tar.bz2
|
||||
rm -f binutils-%{mingw64_target}.tar.bz2 binutils-%{mingw64_target}-*.{sum,log}
|
||||
popd
|
||||
|
||||
pushd build_ucrt64
|
||||
make -k check < /dev/null || :
|
||||
echo ====================TESTING UCRT64 =========================
|
||||
cat {gas/testsuite/gas,ld/ld,binutils/binutils}.sum
|
||||
echo ====================TESTING UCRT64 END=====================
|
||||
for file in {gas/testsuite/gas,ld/ld,binutils/binutils}.{sum,log}
|
||||
do
|
||||
ln $file binutils-%{ucrt64_target}-$(basename $file) || :
|
||||
done
|
||||
tar cjf binutils-%{ucrt64_target}.tar.bz2 binutils-%{ucrt64_target}-*.{sum,log}
|
||||
uuencode binutils-%{ucrt64_target}.tar.bz2 binutils-%{ucrt64_target}.tar.bz2
|
||||
rm -f binutils-%{ucrt64_target}.tar.bz2 binutils-%{ucrt64_target}-*.{sum,log}
|
||||
popd
|
||||
%endif
|
||||
|
||||
|
||||
@ -292,10 +361,12 @@ mv %{buildroot}/multilib%{_bindir}/%{mingw64_objcopy} %{buildroot}%{_bindir}/%{m
|
||||
mv %{buildroot}/multilib%{_bindir}/%{mingw64_nm} %{buildroot}%{_bindir}/%{mingw_nm}
|
||||
rm -rf %{buildroot}/multilib
|
||||
|
||||
# Drop man pages, they are a duplicate of those of the native tools
|
||||
rm -rf %{buildroot}%{_mandir}/man1/*
|
||||
|
||||
|
||||
%files -n mingw-binutils-generic
|
||||
%license COPYING
|
||||
%{_mandir}/man1/*
|
||||
%{_bindir}/%{mingw_strip}
|
||||
%{_bindir}/%{mingw_objdump}
|
||||
%{_bindir}/%{mingw_objcopy}
|
||||
@ -369,8 +440,46 @@ rm -rf %{buildroot}/multilib
|
||||
%{_prefix}/%{mingw64_target}/bin/strip
|
||||
%{_prefix}/%{mingw64_target}/lib/ldscripts
|
||||
|
||||
%files -n ucrt64-binutils
|
||||
%{_bindir}/%{ucrt64_target}-addr2line
|
||||
%{_bindir}/%{ucrt64_target}-ar
|
||||
%{_bindir}/%{ucrt64_target}-as
|
||||
%{_bindir}/%{ucrt64_target}-c++filt
|
||||
%{_bindir}/%{ucrt64_target}-dlltool
|
||||
%{_bindir}/%{ucrt64_target}-dllwrap
|
||||
%{_bindir}/%{ucrt64_target}-elfedit
|
||||
%{_bindir}/%{ucrt64_target}-gprof
|
||||
%{_bindir}/%{ucrt64_target}-ld
|
||||
%{_bindir}/%{ucrt64_target}-ld.bfd
|
||||
%{_bindir}/%{ucrt64_target}-nm
|
||||
%{_bindir}/%{ucrt64_target}-objcopy
|
||||
%{_bindir}/%{ucrt64_target}-objdump
|
||||
%{_bindir}/%{ucrt64_target}-ranlib
|
||||
%{_bindir}/%{ucrt64_target}-readelf
|
||||
%{_bindir}/%{ucrt64_target}-size
|
||||
%{_bindir}/%{ucrt64_target}-strings
|
||||
%{_bindir}/%{ucrt64_target}-strip
|
||||
%{_bindir}/%{ucrt64_target}-windmc
|
||||
%{_bindir}/%{ucrt64_target}-windres
|
||||
%{_prefix}/%{ucrt64_target}/bin/ar
|
||||
%{_prefix}/%{ucrt64_target}/bin/as
|
||||
%{_prefix}/%{ucrt64_target}/bin/dlltool
|
||||
%{_prefix}/%{ucrt64_target}/bin/ld
|
||||
%{_prefix}/%{ucrt64_target}/bin/ld.bfd
|
||||
%{_prefix}/%{ucrt64_target}/bin/nm
|
||||
%{_prefix}/%{ucrt64_target}/bin/objcopy
|
||||
%{_prefix}/%{ucrt64_target}/bin/objdump
|
||||
%{_prefix}/%{ucrt64_target}/bin/ranlib
|
||||
%{_prefix}/%{ucrt64_target}/bin/readelf
|
||||
%{_prefix}/%{ucrt64_target}/bin/strip
|
||||
%{_prefix}/%{ucrt64_target}/lib/ldscripts
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri May 06 2022 Richard W.M. Jones <rjones@redhat.com> - 2.38-2
|
||||
- Rebase to Fedora Rawhide
|
||||
resolves: rhbz#2080169
|
||||
|
||||
* Thu Aug 12 2021 Richard W.M. Jones <rjones@redhat.com> - 2.37-1
|
||||
- Rebase to binutils 2.37
|
||||
resolves: rhbz#1953913
|
||||
|
||||
Loading…
Reference in New Issue
Block a user