SHA256
1
0
forked from pool/binutils

Accepting request 910009 from devel:gcc

- Bump binutils-2.37-branch.diff: fixes PR28138. (forwarded request 910001 from marxin)

OBS-URL: https://build.opensuse.org/request/show/910009
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/binutils?expand=0&rev=150
This commit is contained in:
Dominique Leuenberger 2021-09-17 21:25:22 +00:00 committed by Git OBS Bridge
commit 2c68c43758
62 changed files with 2246 additions and 671 deletions

View File

@ -2,26 +2,26 @@ This is for userspace live patching, adding some space into
shared libs or executable (in the .ulp section) when one of the shared libs or executable (in the .ulp section) when one of the
input files contains a section named .ulp.track. input files contains a section named .ulp.track.
Index: binutils-2.35/bfd/elf-bfd.h diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
=================================================================== index 101c2fdf50d..f5d9e201fdb 100644
--- binutils-2.35.orig/bfd/elf-bfd.h 2020-07-24 11:12:19.000000000 +0200 --- a/bfd/elf-bfd.h
+++ binutils-2.35/bfd/elf-bfd.h 2020-08-10 16:30:46.555219071 +0200 +++ b/bfd/elf-bfd.h
@@ -1476,6 +1476,10 @@ struct elf_backend_data @@ -1487,6 +1487,10 @@ struct elf_backend_data
(const bfd *ibfd, bfd *obfd, const Elf_Internal_Shdr *isection, (const bfd *ibfd, bfd *obfd, const Elf_Internal_Shdr *isection,
Elf_Internal_Shdr *osection); Elf_Internal_Shdr *osection);
+ bfd_boolean (*elf_backend_is_ulp_enabled) (bfd *abfd); + bool (*elf_backend_is_ulp_enabled) (bfd *abfd);
+ +
+ bfd_boolean (*elf_backend_setup_ulp) (struct bfd_link_info *); + bool (*elf_backend_setup_ulp) (struct bfd_link_info *);
+ +
/* Used to handle bad SHF_LINK_ORDER input. */ /* Used to handle bad SHF_LINK_ORDER input. */
void (*link_order_error_handler) (const char *, ...); void (*link_order_error_handler) (const char *, ...);
Index: binutils-2.35/bfd/elflink.c diff --git a/bfd/elflink.c b/bfd/elflink.c
=================================================================== index ce1407fa2dc..5c70bcf6c07 100644
--- binutils-2.35.orig/bfd/elflink.c 2020-07-24 11:12:19.000000000 +0200 --- a/bfd/elflink.c
+++ binutils-2.35/bfd/elflink.c 2020-08-10 16:30:46.565219071 +0200 +++ b/bfd/elflink.c
@@ -7197,6 +7197,13 @@ bfd_elf_size_dynamic_sections (bfd *outp @@ -7260,6 +7260,13 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
s = bfd_get_linker_section (dynobj, ".gnu.version"); s = bfd_get_linker_section (dynobj, ".gnu.version");
s->flags |= SEC_EXCLUDE; s->flags |= SEC_EXCLUDE;
} }
@ -33,13 +33,13 @@ Index: binutils-2.35/bfd/elflink.c
+ (*bed->elf_backend_setup_ulp)(info); + (*bed->elf_backend_setup_ulp)(info);
+ } + }
} }
return TRUE; return true;
} }
Index: binutils-2.35/bfd/elfxx-target.h diff --git a/bfd/elfxx-target.h b/bfd/elfxx-target.h
=================================================================== index 4c6b1f20340..1f54509cd08 100644
--- binutils-2.35.orig/bfd/elfxx-target.h 2020-07-24 11:12:19.000000000 +0200 --- a/bfd/elfxx-target.h
+++ binutils-2.35/bfd/elfxx-target.h 2020-08-10 16:30:46.565219071 +0200 +++ b/bfd/elfxx-target.h
@@ -768,6 +768,14 @@ @@ -771,6 +771,14 @@
#define elf_backend_copy_special_section_fields _bfd_elf_copy_special_section_fields #define elf_backend_copy_special_section_fields _bfd_elf_copy_special_section_fields
#endif #endif
@ -54,7 +54,7 @@ Index: binutils-2.35/bfd/elfxx-target.h
#ifndef elf_backend_compact_eh_encoding #ifndef elf_backend_compact_eh_encoding
#define elf_backend_compact_eh_encoding NULL #define elf_backend_compact_eh_encoding NULL
#endif #endif
@@ -900,6 +908,8 @@ static struct elf_backend_data elfNN_bed @@ -904,6 +912,8 @@ static const struct elf_backend_data elfNN_bed =
elf_backend_maybe_function_sym, elf_backend_maybe_function_sym,
elf_backend_get_reloc_section, elf_backend_get_reloc_section,
elf_backend_copy_special_section_fields, elf_backend_copy_special_section_fields,
@ -63,40 +63,40 @@ Index: binutils-2.35/bfd/elfxx-target.h
elf_backend_link_order_error_handler, elf_backend_link_order_error_handler,
elf_backend_relplt_name, elf_backend_relplt_name,
ELF_MACHINE_ALT1, ELF_MACHINE_ALT1,
Index: binutils-2.35/bfd/elfxx-x86.c diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
=================================================================== index 62d516aab8d..c0fb718d85c 100644
--- binutils-2.35.orig/bfd/elfxx-x86.c 2020-07-24 11:12:19.000000000 +0200 --- a/bfd/elfxx-x86.c
+++ binutils-2.35/bfd/elfxx-x86.c 2020-08-10 16:30:46.565219071 +0200 +++ b/bfd/elfxx-x86.c
@@ -31,6 +31,8 @@ @@ -31,6 +31,8 @@
#define ELF64_DYNAMIC_INTERPRETER "/lib/ld64.so.1" #define ELF64_DYNAMIC_INTERPRETER "/lib/ld64.so.1"
#define ELFX32_DYNAMIC_INTERPRETER "/lib/ldx32.so.1" #define ELFX32_DYNAMIC_INTERPRETER "/lib/ldx32.so.1"
+#define ULP_ENTRY_LEN 16 +#define ULP_ENTRY_LEN 16
+ +
bfd_boolean bool
_bfd_x86_elf_mkobject (bfd *abfd) _bfd_x86_elf_mkobject (bfd *abfd)
{ {
@@ -984,6 +986,64 @@ _bfd_elf_x86_valid_reloc_p (asection *in @@ -984,6 +986,64 @@ _bfd_elf_x86_valid_reloc_p (asection *input_section,
return valid_p; return valid_p;
} }
+/* Check if input bfds are ulp-enabled by containing .ulp.track section */ +/* Check if input bfds are ulp-enabled by containing .ulp.track section */
+ +
+bfd_boolean +bool
+_bfd_x86_elf_is_ulp_enabled (struct bfd *input_bfd) +_bfd_x86_elf_is_ulp_enabled (struct bfd *input_bfd)
+{ +{
+ while (input_bfd != NULL) + while (input_bfd != NULL)
+ for (; input_bfd != NULL; input_bfd = input_bfd->link.next) + for (; input_bfd != NULL; input_bfd = input_bfd->link.next)
+ { + {
+ if (input_bfd->section_count == 0) continue; + if (input_bfd->section_count == 0) continue;
+ if (bfd_get_section_by_name (input_bfd, ".ulp.track")) return TRUE; + if (bfd_get_section_by_name (input_bfd, ".ulp.track")) return true;
+ } + }
+ return FALSE; + return false;
+} +}
+ +
+/* To be used by elf_link_hash_traverse when computing the ulp length */ +/* To be used by elf_link_hash_traverse when computing the ulp length */
+ +
+static bfd_boolean +static bool
+bfd_x86_elf_link_compute_ulp (struct elf_link_hash_entry *h, void *data) +bfd_x86_elf_link_compute_ulp (struct elf_link_hash_entry *h, void *data)
+{ +{
+ unsigned long *ulp_length = (unsigned long *) data; + unsigned long *ulp_length = (unsigned long *) data;
@ -105,12 +105,12 @@ Index: binutils-2.35/bfd/elfxx-x86.c
+ { + {
+ ++(*ulp_length); + ++(*ulp_length);
+ } + }
+ return TRUE; + return true;
+} +}
+ +
+/* Fill the user-space live patching section */ +/* Fill the user-space live patching section */
+ +
+bfd_boolean +bool
+_bfd_x86_elf_setup_ulp (struct bfd_link_info *info) +_bfd_x86_elf_setup_ulp (struct bfd_link_info *info)
+{ +{
+ struct elf_x86_link_hash_table *htab; + struct elf_x86_link_hash_table *htab;
@ -129,19 +129,19 @@ Index: binutils-2.35/bfd/elfxx-x86.c
+ +
+ ulp->contents = (bfd_byte *) bfd_malloc (ulp->size); + ulp->contents = (bfd_byte *) bfd_malloc (ulp->size);
+ if (ulp->contents == NULL) + if (ulp->contents == NULL)
+ return FALSE; + return false;
+ +
+ if (!ulp->contents) + if (!ulp->contents)
+ return FALSE; + return false;
+ +
+ memset(ulp->contents, 0x00, ulp->size); + memset(ulp->contents, 0x00, ulp->size);
+ return TRUE; + return true;
+} +}
+ +
/* Set the sizes of the dynamic sections. */ /* Set the sizes of the dynamic sections. */
bfd_boolean bool
@@ -2855,7 +2915,26 @@ _bfd_x86_elf_link_setup_gnu_properties @@ -3030,7 +3090,26 @@ _bfd_x86_elf_link_setup_gnu_properties
htab->plt_second = sec; htab->plt_second = sec;
} }
@ -169,11 +169,11 @@ Index: binutils-2.35/bfd/elfxx-x86.c
if (!info->no_ld_generated_unwind_info) if (!info->no_ld_generated_unwind_info)
{ {
Index: binutils-2.35/bfd/elfxx-x86.h diff --git a/bfd/elfxx-x86.h b/bfd/elfxx-x86.h
=================================================================== index db11327e96f..89f51382216 100644
--- binutils-2.35.orig/bfd/elfxx-x86.h 2020-07-24 11:12:19.000000000 +0200 --- a/bfd/elfxx-x86.h
+++ binutils-2.35/bfd/elfxx-x86.h 2020-08-10 16:30:46.565219071 +0200 +++ b/bfd/elfxx-x86.h
@@ -449,6 +449,7 @@ struct elf_x86_link_hash_table @@ -452,6 +452,7 @@ struct elf_x86_link_hash_table
asection *plt_second_eh_frame; asection *plt_second_eh_frame;
asection *plt_got; asection *plt_got;
asection *plt_got_eh_frame; asection *plt_got_eh_frame;
@ -181,20 +181,20 @@ Index: binutils-2.35/bfd/elfxx-x86.h
/* Parameters describing PLT generation, lazy or non-lazy. */ /* Parameters describing PLT generation, lazy or non-lazy. */
struct elf_x86_plt_layout plt; struct elf_x86_plt_layout plt;
@@ -687,6 +688,12 @@ extern void _bfd_x86_elf_link_fixup_ifun @@ -690,6 +691,12 @@ extern void _bfd_x86_elf_link_report_relative_reloc
(struct bfd_link_info *, struct elf_x86_link_hash_table *, (struct bfd_link_info *, asection *, struct elf_link_hash_entry *,
struct elf_link_hash_entry *, Elf_Internal_Sym *sym); Elf_Internal_Sym *, const char *, const void *);
+extern bfd_boolean _bfd_x86_elf_is_ulp_enabled +extern bool _bfd_x86_elf_is_ulp_enabled
+ (struct bfd *); + (struct bfd *);
+ +
+extern bfd_boolean _bfd_x86_elf_setup_ulp +extern bool _bfd_x86_elf_setup_ulp
+ (struct bfd_link_info *); + (struct bfd_link_info *);
+ +
#define bfd_elf64_mkobject \ #define bfd_elf64_mkobject \
_bfd_x86_elf_mkobject _bfd_x86_elf_mkobject
#define bfd_elf32_mkobject \ #define bfd_elf32_mkobject \
@@ -724,3 +731,7 @@ extern void _bfd_x86_elf_link_fixup_ifun @@ -727,3 +734,7 @@ extern void _bfd_x86_elf_link_report_relative_reloc
_bfd_x86_elf_merge_gnu_properties _bfd_x86_elf_merge_gnu_properties
#define elf_backend_fixup_gnu_properties \ #define elf_backend_fixup_gnu_properties \
_bfd_x86_elf_link_fixup_gnu_properties _bfd_x86_elf_link_fixup_gnu_properties

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:420a6405f0dce24ce927b4ed9dc36af38ea9654c52ca247aacfda14732fe0c9f
size 33902

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:209ef690dc7ac28ca592daf7e87d6289222a61fb96104dd5d5e016133ed38e8d
size 33688521

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEOiS8Ho+0CfqfFDcYE/zvid2ePE8FAmANVqwACgkQE/zvid2e
PE99sQ/+ILZXdxDA0n+8UO1tqPyL4dUzzG7laDE6GsGmYS+idh4LER4+xTXqhjC7
WxFESk81QUcihLHfuZEkKDSuEQWPvPkMgc0Yg5hEC24im/qjSzTYjg53g+PRa/5y
2LOGEH4KIgB0UVPIPiMknNUsUo/lpTAo7yHAE9OFARjC5gpByzXkJKSgcOHq1H6o
eHiWAAdJOwxhb30KuPxisHmIhpsFQf9m/KjcdOzg5AUJqbRpwSQt0A/YrhTVkPLX
Xehbp6C1dAjybJ0qUjsNihugSC/ZloxjgzN1TEbzgkl+NXax265L8rsSWors7L8o
vE9alFmLwAtbAi93HZdzzoVLSEYhbJGgmzcbDMgGHXHgO1WEKKfh0vwHET+isaLU
sIa77DD8/aHC+VQBBM/JpUzgEcF3jZzkrq+meJiC43fCWsZl9NdkcN6FtA/CDsj9
sm5ab/PxINztFRdzavnw9P64d9FT2vcSSqB/Dam0ogV+Ie06vUfFCljoznAfhipz
rzwrY11g23kKSHugaZTaeZIhT3RQbLJ4qRu2huwIUYi4oOmWm5SMQyHLkiW9iCeJ
yo8g8wpouLNFdic1bcU4QV2Nko3Tr88ZYeNXe7umaMX6a2LvKEA56/EDNGJ8KX6v
OfOXrk7lsmLizUXGhF0s1ZcZw1obXybEJFBq+F2Lj9Ht1ubQmgA=
=eOF0
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fcfb8e1aba4fc2bb64a6005491e80dafa1741a25aa61b8e4e552711f3d48f78b
size 88423

3
binutils-2.37.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:67fc1a4030d08ee877a4867d3dcab35828148f87e1fd05da6db585ed5a166bd4
size 33888611

16
binutils-2.37.tar.bz2.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEOiS8Ho+0CfqfFDcYE/zvid2ePE8FAmD0YRIACgkQE/zvid2e
PE9mkxAAhmDeRKyVs2ttGuPsO4e2CYifJnneZoxWUjeEjEeYqKkuGN82LCcuMO8U
rzW00tzEn0G386DF6SmICxMxz2gi96TSRCUt9lWGKK+FHXc8HmFb/1sH/MLpgExS
mVPSRfuNhpFiz5NxkT0AekGxopWYxEntRIjCkoecjsdliNwJ/MbLEuiOOSFRtvcb
U98NFY9ol1JeTplL6Z/xMOJ4bkITo/8VN1cLJ0ejgDWF4uUDVYqqKYsZlSHaI/+Q
bOwLo9r4mBopcWap7Q5PWPLmQD6fGqlfvPnb0An2VqrSb0xbT6fO3VrAuHJKmZoJ
9ZBk1r4osvp6p8u56NQtCoacblmVlzZM53xaKbadVH02QDTevJVbjYuUggLC4/Uk
5gD/v6f8r9wqkFCQm5qCpBs19yskNK1YTABAlVOMwEq4v2TmSC0qhmJrW1z4NsoR
i3/SgMiWNxrB7eUigSHYhO4qYhW94pPqNjxX1oClfa9Ochq43nhWSXz5jcWtr8it
59e960jN3s6gNSex+D/pO7hW4KMQDE3NYR6ehbDWmmHSKWuVM2uxAKF4eBWRTml5
Hw70Sw82+17fxcLLohD82uHUpDIQp7of0r7HtnDEJlqiCcUndN9VM7TmdJeap6n6
WMLLmC9HtbVdu7+GHOG7VnBqn8kkGp5KIUkMGp2HuC/S2pd6Fp0=
=rn/O
-----END PGP SIGNATURE-----

View File

@ -2,12 +2,12 @@ Index: ld/ldmain.c
=================================================================== ===================================================================
--- ld/ldmain.c.orig 2017-07-26 10:07:31.862559913 +0200 --- ld/ldmain.c.orig 2017-07-26 10:07:31.862559913 +0200
+++ ld/ldmain.c 2017-07-26 10:07:31.886560303 +0200 +++ ld/ldmain.c 2017-07-26 10:07:31.886560303 +0200
@@ -307,6 +307,8 @@ main (int argc, char **argv) @@ -309,6 +309,8 @@ main (int argc, char **argv)
yydebug = 1; yydebug = 1;
} }
#endif #endif
+ if (getenv ("SUSE_ASNEEDED") && atoi(getenv ("SUSE_ASNEEDED")) > 0) + if (getenv ("SUSE_ASNEEDED") && atoi(getenv ("SUSE_ASNEEDED")) > 0)
+ input_flags.add_DT_NEEDED_for_regular = TRUE; + input_flags.add_DT_NEEDED_for_regular = true;
config.build_constructors = TRUE; config.build_constructors = true;
config.rpath_separator = ':'; config.rpath_separator = ':';

View File

@ -18,16 +18,15 @@ Index: binutils-2.35/bfd/elf64-ppc.c
=================================================================== ===================================================================
--- binutils-2.35.orig/bfd/elf64-ppc.c 2020-07-24 11:12:19.000000000 +0200 --- binutils-2.35.orig/bfd/elf64-ppc.c 2020-07-24 11:12:19.000000000 +0200
+++ binutils-2.35/bfd/elf64-ppc.c 2020-08-10 17:25:00.205219071 +0200 +++ binutils-2.35/bfd/elf64-ppc.c 2020-08-10 17:25:00.205219071 +0200
@@ -5301,12 +5301,17 @@ ppc64_elf_merge_private_bfd_data (bfd *i @@ -5310,11 +5310,17 @@ ppc64_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info)
}
else if (iflags != oflags && iflags != 0) if (iflags & ~EF_PPC64_ABI)
{ {
- _bfd_error_handler - _bfd_error_handler
- /* xgettext:c-format */ - /* xgettext:c-format */
- (_("%pB: ABI version %ld is not compatible with ABI version %ld output"), - (_("%pB uses unknown e_flags 0x%lx"), ibfd, iflags);
- ibfd, iflags, oflags);
- bfd_set_error (bfd_error_bad_value); - bfd_set_error (bfd_error_bad_value);
- return FALSE; - return false;
+ if (abiversion (info->output_bfd) == 0) + if (abiversion (info->output_bfd) == 0)
+ set_abiversion (info->output_bfd, abiversion (ibfd)); + set_abiversion (info->output_bfd, abiversion (ibfd));
+ else + else
@ -37,8 +36,8 @@ Index: binutils-2.35/bfd/elf64-ppc.c
+ (_("%pB: ABI version %ld is not compatible with ABI version %ld output"), + (_("%pB: ABI version %ld is not compatible with ABI version %ld output"),
+ ibfd, iflags, oflags); + ibfd, iflags, oflags);
+ bfd_set_error (bfd_error_bad_value); + bfd_set_error (bfd_error_bad_value);
+ return FALSE; + return false;
+ } + }
} }
else if (iflags != oflags && iflags != 0)
if (!_bfd_elf_ppc_merge_fp_attributes (ibfd, info)) {

View File

@ -13,7 +13,7 @@ ld: final link failed: file in wrong format
--- bfd/elfnn-aarch64.c.mm 2019-09-09 13:19:43.000000000 +0000 --- bfd/elfnn-aarch64.c.mm 2019-09-09 13:19:43.000000000 +0000
+++ bfd/elfnn-aarch64.c 2019-11-20 11:44:00.000000000 +0000 +++ bfd/elfnn-aarch64.c 2019-11-20 11:44:00.000000000 +0000
@@ -4313,7 +4313,8 @@ elfNN_aarch64_size_stubs (bfd *output_bfd, @@ -4312,7 +4312,8 @@ elfNN_aarch64_size_stubs (bfd *output_bfd,
|| (input_bfd->flags & BFD_LINKER_CREATED) != 0) || (input_bfd->flags & BFD_LINKER_CREATED) != 0)
continue; continue;
@ -21,5 +21,5 @@ ld: final link failed: file in wrong format
+ if (input_bfd != stub_bfd + if (input_bfd != stub_bfd
+ && !_bfd_aarch64_erratum_835769_scan (input_bfd, info, + && !_bfd_aarch64_erratum_835769_scan (input_bfd, info,
&num_erratum_835769_fixes)) &num_erratum_835769_fixes))
return FALSE; return false;
} }

View File

@ -15,6 +15,6 @@ index 549a8be6a6..b89b0023db 100644
{ {
- if (abs_symbol && local_ref && relocx) - if (abs_symbol && local_ref && relocx)
+ if (abs_symbol && local_ref && relocx && rex) + if (abs_symbol && local_ref && relocx && rex)
to_reloc_pc32 = FALSE; to_reloc_pc32 = false;
if (to_reloc_pc32) if (to_reloc_pc32)

View File

@ -4,29 +4,29 @@ file with symbol names. ld errors on the '@' characters. Until
those packages are fixed we use this patch. We have to carry it those packages are fixed we use this patch. We have to carry it
for old code streams forever. for old code streams forever.
Index: binutils-2.35/binutils/nm.c diff --git a/binutils/nm.c b/binutils/nm.c
=================================================================== index 2637756c647..253714ef179 100644
--- binutils-2.35.orig/binutils/nm.c 2020-07-24 11:12:19.000000000 +0200 --- a/binutils/nm.c
+++ binutils-2.35/binutils/nm.c 2020-08-07 16:42:58.000000000 +0200 +++ b/binutils/nm.c
@@ -418,7 +418,7 @@ print_symname (const char *form, struct extended_symbol_info *info, @@ -458,7 +458,7 @@ print_symname (const char *form, struct extended_symbol_info *info,
name = alloc; name = alloc;
} }
- if (info != NULL && info->elfinfo) - if (info != NULL && info->elfinfo && with_symbol_versions)
+ if (info != NULL && info->elfinfo && 0) + if (info != NULL && info->elfinfo && with_symbol_versions && 0)
{ {
const char *version_string; const char *version_string;
bfd_boolean hidden; bool hidden;
Index: binutils-2.35/ld/testsuite/ld-elf/pr25708.d diff --git a/ld/testsuite/ld-elf/pr25708.d b/ld/testsuite/ld-elf/pr25708.d
=================================================================== index 60b8e31807a..1b62e25347e 100644
--- binutils-2.35.orig/ld/testsuite/ld-elf/pr25708.d 2020-07-24 11:12:20.000000000 +0200 --- a/ld/testsuite/ld-elf/pr25708.d
+++ binutils-2.35/ld/testsuite/ld-elf/pr25708.d 2020-08-07 16:44:50.000000000 +0200 +++ b/ld/testsuite/ld-elf/pr25708.d
@@ -2,8 +2,9 @@ @@ -2,8 +2,9 @@
#ld: -shared -version-script pr13195.t #ld: -shared -version-script pr13195.t
#nm: -D #nm: -D --with-symbol-versions
#target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi #target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi
-#xfail: hppa64-*-* ![check_shared_lib_support] -#xfail: hppa64-*-* ![check_shared_lib_support]
+#xfail: *-*-* ![check_shared_lib_support] +#xfail: *-*-* ![check_shared_lib_support]
# h8300 doesn't support -shared, and hppa64 creates .foo # h8300 doesn't support -shared, and hppa64 creates .foo
+# our binutils revert the printing of symversions with nm -D +# our binutils revert the printing of symversions with nm -D

View File

@ -80,17 +80,17 @@ Date: Tue Feb 13 07:34:22 2018 -0800
* testsuite/ld-x86-64/x86-64.exp: Run PR ld/22791 tests. * testsuite/ld-x86-64/x86-64.exp: Run PR ld/22791 tests.
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index daae52b9537..5030cc6e121 100644 index dc416a7f..b9f96729 100644
--- a/bfd/elf64-x86-64.c --- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c
@@ -1834,6 +1834,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd, @@ -1832,6 +1832,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd,
return TRUE; return true;
} }
+/* Is the instruction before OFFSET in CONTENTS a 32bit relative +/* Is the instruction before OFFSET in CONTENTS a 32bit relative
+ branch? */ + branch? */
+ +
+static bfd_boolean +static bool
+is_32bit_relative_branch (bfd_byte *contents, bfd_vma offset) +is_32bit_relative_branch (bfd_byte *contents, bfd_vma offset)
+{ +{
+ /* Opcode Instruction + /* Opcode Instruction
@ -108,7 +108,7 @@ index daae52b9537..5030cc6e121 100644
/* Look through the relocs for a section during the first phase, and /* Look through the relocs for a section during the first phase, and
calculate needed space in the global offset table, procedure calculate needed space in the global offset table, procedure
linkage table, and dynamic reloc sections. */ linkage table, and dynamic reloc sections. */
@@ -3143,28 +3161,30 @@ elf_x86_64_relocate_section (bfd *output_bfd, @@ -3159,9 +3177,6 @@ elf_x86_64_relocate_section (bfd *output_bfd,
&& (eh == NULL && (eh == NULL
|| !UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, || !UNDEFINED_WEAK_RESOLVED_TO_ZERO (info,
eh))) eh)))
@ -118,10 +118,11 @@ index daae52b9537..5030cc6e121 100644
|| (no_copyreloc_p || (no_copyreloc_p
&& h->def_dynamic && h->def_dynamic
&& !(h->root.u.def.section->flags & SEC_CODE)))) && !(h->root.u.def.section->flags & SEC_CODE))))
@@ -3170,20 +3185,25 @@ elf_x86_64_relocate_section (bfd *output_bfd,
|| bfd_link_dll (info))) || bfd_link_dll (info)))
{ {
bfd_boolean fail = FALSE; bool fail = false;
+ bfd_boolean branch + bool branch
+ = ((r_type == R_X86_64_PC32 + = ((r_type == R_X86_64_PC32
+ || r_type == R_X86_64_PC32_BND) + || r_type == R_X86_64_PC32_BND)
+ && is_32bit_relative_branch (contents, rel->r_offset)); + && is_32bit_relative_branch (contents, rel->r_offset));
@ -139,14 +140,15 @@ index daae52b9537..5030cc6e121 100644
/* We can only use PC-relative relocations in PIE /* We can only use PC-relative relocations in PIE
- from non-code sections. */ - from non-code sections. */
+ from non-code sections or branches. */ + from non-code sections or branches. */
if (h->type == STT_FUNC if (h->root.type == bfd_link_hash_undefweak
&& (sec->flags & SEC_CODE) != 0) || (h->type == STT_FUNC
- fail = TRUE; && (sec->flags & SEC_CODE) != 0))
- fail = true;
+ fail = !branch; + fail = !branch;
} }
else if (no_copyreloc_p || bfd_link_dll (info)) else if (no_copyreloc_p || bfd_link_dll (info))
{ {
@@ -3173,9 +3193,10 @@ elf_x86_64_relocate_section (bfd *output_bfd, @@ -3192,9 +3212,10 @@ elf_x86_64_relocate_section (bfd *output_bfd,
relocations against default and protected relocations against default and protected
symbols since address of protected function symbols since address of protected function
and location of protected data may not be in and location of protected data may not be in
@ -160,10 +162,10 @@ index daae52b9537..5030cc6e121 100644
if (fail) if (fail)
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 9a2dfc92281..885ee85b999 100644 index d3441988e34..8f8fb086cd8 100644
--- a/gas/config/tc-i386.c --- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c
@@ -8605,52 +8605,12 @@ output_branch (void) @@ -8793,55 +8793,12 @@ output_branch (void)
frag_var (rs_machine_dependent, 5, i.reloc[0], subtype, sym, off, p); frag_var (rs_machine_dependent, 5, i.reloc[0], subtype, sym, off, p);
} }
@ -171,38 +173,41 @@ index 9a2dfc92281..885ee85b999 100644
-/* Return TRUE iff PLT32 relocation should be used for branching to -/* Return TRUE iff PLT32 relocation should be used for branching to
- symbol S. */ - symbol S. */
- -
-static bfd_boolean -static bool
-need_plt32_p (symbolS *s) -need_plt32_p (symbolS *s)
-{ -{
- /* PLT32 relocation is ELF only. */ - /* PLT32 relocation is ELF only. */
- if (!IS_ELF) - if (!IS_ELF)
- return FALSE; - return false;
- -
-#ifdef TE_SOLARIS -#ifdef TE_SOLARIS
- /* Don't emit PLT32 relocation on Solaris: neither native linker nor - /* Don't emit PLT32 relocation on Solaris: neither native linker nor
- krtld support it. */ - krtld support it. */
- return FALSE; - return false;
-#endif -#endif
- -
- /* Since there is no need to prepare for PLT branch on x86-64, we - /* Since there is no need to prepare for PLT branch on x86-64, we
- can generate R_X86_64_PLT32, instead of R_X86_64_PC32, which can - can generate R_X86_64_PLT32, instead of R_X86_64_PC32, which can
- be used as a marker for 32-bit PC-relative branches. */ - be used as a marker for 32-bit PC-relative branches. */
- if (!object_64bit) - if (!object_64bit)
- return FALSE; - return false;
-
- if (s == NULL)
- return false;
- -
- /* Weak or undefined symbol need PLT32 relocation. */ - /* Weak or undefined symbol need PLT32 relocation. */
- if (S_IS_WEAK (s) || !S_IS_DEFINED (s)) - if (S_IS_WEAK (s) || !S_IS_DEFINED (s))
- return TRUE; - return true;
- -
- /* Non-global symbol doesn't need PLT32 relocation. */ - /* Non-global symbol doesn't need PLT32 relocation. */
- if (! S_IS_EXTERNAL (s)) - if (! S_IS_EXTERNAL (s))
- return FALSE; - return false;
- -
- /* Other global symbols need PLT32 relocation. NB: Symbol with - /* Other global symbols need PLT32 relocation. NB: Symbol with
- non-default visibilities are treated as normal global symbol - non-default visibilities are treated as normal global symbol
- so that PLT32 relocation can be used as a marker for 32-bit - so that PLT32 relocation can be used as a marker for 32-bit
- PC-relative branches. It is useful for linker relaxation. */ - PC-relative branches. It is useful for linker relaxation. */
- return TRUE; - return true;
-} -}
-#endif -#endif
- -
@ -216,7 +221,7 @@ index 9a2dfc92281..885ee85b999 100644
if (i.tm.opcode_modifier.jump == JUMP_BYTE) if (i.tm.opcode_modifier.jump == JUMP_BYTE)
{ {
@@ -8724,17 +8684,8 @@ output_jump (void) @@ -8915,17 +8872,8 @@ output_jump (void)
abort (); abort ();
} }
@ -233,9 +238,9 @@ index 9a2dfc92281..885ee85b999 100644
- i.op[0].disps, 1, jump_reloc); - i.op[0].disps, 1, jump_reloc);
+ i.op[0].disps, 1, reloc (size, 1, 1, i.reloc[0])); + i.op[0].disps, 1, reloc (size, 1, 1, i.reloc[0]));
/* All jumps handled here are signed, but don't use a signed limit /* All jumps handled here are signed, but don't unconditionally use a
check for 32 and 16 bit jumps as we want to allow wrap around at signed limit check for 32 and 16 bit jumps as we want to allow wrap
@@ -12085,10 +12036,6 @@ md_estimate_size_before_relax (fragS *fragP, segT segment) @@ -12184,10 +12132,6 @@ md_estimate_size_before_relax (fragS *fragP, segT segment)
reloc_type = (enum bfd_reloc_code_real) fragP->fr_var; reloc_type = (enum bfd_reloc_code_real) fragP->fr_var;
else if (size == 2) else if (size == 2)
reloc_type = BFD_RELOC_16_PCREL; reloc_type = BFD_RELOC_16_PCREL;
@ -531,10 +536,10 @@ index f0659cd901e..b9dd81345b7 100644
popq %rcx popq %rcx
retq retq
diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp
index 83fdaa7db65..a3bb1e9ebd6 100644 index 17fd10ee121..b4ae52ab376 100644
--- a/ld/testsuite/ld-x86-64/x86-64.exp --- a/ld/testsuite/ld-x86-64/x86-64.exp
+++ b/ld/testsuite/ld-x86-64/x86-64.exp +++ b/ld/testsuite/ld-x86-64/x86-64.exp
@@ -1250,44 +1250,6 @@ if { [isnative] && [check_compiler_available] } { @@ -1264,44 +1264,6 @@ if { [isnative] && [check_compiler_available] } {
{readelf -lW pr22393-3b.rd}} \ {readelf -lW pr22393-3b.rd}} \
"pr22393-3-static" \ "pr22393-3-static" \
] \ ] \
@ -579,7 +584,7 @@ index 83fdaa7db65..a3bb1e9ebd6 100644
[list \ [list \
"Build pr22842.so" \ "Build pr22842.so" \
"-shared" \ "-shared" \
@@ -1752,15 +1714,6 @@ if { [isnative] && [check_compiler_available] } { @@ -1703,15 +1665,6 @@ if { [isnative] && [check_compiler_available] } {
"pr22393-3-static" \ "pr22393-3-static" \
"pass.out" \ "pass.out" \
] \ ] \

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -34,7 +34,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -83,7 +83,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -101,8 +101,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -194,8 +192,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -283,7 +279,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,3 +1,89 @@
-------------------------------------------------------------------
Tue Aug 3 13:36:19 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump binutils-2.37-branch.diff: fixes PR28138.
-------------------------------------------------------------------
Thu Jul 22 17:36:14 UTC 2021 - Martin Liška <mliska@suse.cz>
- Use LTO & PGO build.
-------------------------------------------------------------------
Thu Jul 22 15:01:27 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de> Fri May 7 15:34:22 UTC 2021 - Andreas Schwab <schwab@suse.de>

View File

@ -37,7 +37,7 @@ BuildRequires: zlib-devel-static
%else %else
BuildRequires: zlib-devel BuildRequires: zlib-devel
%endif %endif
Version: 2.36 Version: 2.37
Release: 0 Release: 0
# #
# RUN_TESTS # RUN_TESTS
@ -86,7 +86,7 @@ Source5: binutils.keyring
Source1: pre_checkin.sh Source1: pre_checkin.sh
Source2: README.First-for.SUSE.packagers Source2: README.First-for.SUSE.packagers
Source3: baselibs.conf Source3: baselibs.conf
Patch1: binutils-2.36-branch.diff.gz Patch1: binutils-2.37-branch.diff.gz
Patch3: binutils-skip-rpaths.patch Patch3: binutils-skip-rpaths.patch
Patch4: s390-biarch.diff Patch4: s390-biarch.diff
Patch5: x86-64-biarch.patch Patch5: x86-64-biarch.patch
@ -104,8 +104,6 @@ Patch38: binutils-fix-invalid-op-errata.diff
Patch39: binutils-revert-nm-symversion.diff Patch39: binutils-revert-nm-symversion.diff
Patch40: binutils-fix-abierrormsg.diff Patch40: binutils-fix-abierrormsg.diff
Patch41: binutils-fix-relax.diff Patch41: binutils-fix-relax.diff
Patch42: ppc-use-local-plt.patch
Patch43: ppc-ensure-undef-dynamic-weak-undefined.patch
Patch100: add-ulp-section.diff Patch100: add-ulp-section.diff
Patch90: cross-avr-nesc-as.patch Patch90: cross-avr-nesc-as.patch
Patch92: cross-avr-omit_section_dynsym.patch Patch92: cross-avr-omit_section_dynsym.patch
@ -197,8 +195,6 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa
%patch39 -p1 %patch39 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1 %patch41 -p1
%patch42 -p1
%patch43 -p1
%patch100 -p1 %patch100 -p1
%if "%{TARGET}" == "avr" %if "%{TARGET}" == "avr"
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
@ -286,7 +282,11 @@ cd build-dir
--enable-default-hash-style=both \ --enable-default-hash-style=both \
%endif %endif
--enable-shared \ --enable-shared \
%if %{suse_version} > 1500
--enable-pgo-build=lto \
%endif
--enable-obsolete --enable-obsolete
make %{?_smp_mflags} make %{?_smp_mflags}
%else %else

View File

@ -1,62 +0,0 @@
From b293661219c36e72acb80502a86b51160bb88cfd Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Mon, 3 May 2021 10:03:06 +0930
Subject: [PATCH] PPC: ensure_undef_dynamic on weak undef only in plt
It's slightly weird to have a call to a weak function not protected by
a test of that function being non-NULL, but the non-NULL test might be
covered by a test of another function. For example:
if (func1)
{
func1 ();
func2 ();
}
where func2 is known to exist if func1 exists.
* elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
weak undefined symols that only appear on PLT relocs.
* elf64-ppc.c (allocate_dynrelocs): Likewise.
---
bfd/ChangeLog | 6 ++++++
bfd/elf32-ppc.c | 9 +++++++--
bfd/elf64-ppc.c | 3 +++
3 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index 830c9200b0c..ff618e460a4 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -5296,9 +5296,14 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
for (ent = h->plt.plist; ent != NULL; ent = ent->next)
if (ent->plt.refcount > 0)
{
- asection *s = htab->elf.splt;
- bfd_boolean dyn = !use_local_plt (info, h);
+ asection *s;
+ bfd_boolean dyn;
+ if (!ensure_undef_dynamic (info, h))
+ return FALSE;
+
+ dyn = !use_local_plt (info, h);
+ s = htab->elf.splt;
if (!dyn)
{
if (h->type == STT_GNU_IFUNC)
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index ed72de27507..bc960bf8e9d 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -9855,6 +9855,9 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
for (pent = h->plt.plist; pent != NULL; pent = pent->next)
if (pent->plt.refcount > 0)
{
+ if (!ensure_undef_dynamic (info, h))
+ return FALSE;
+
if (use_local_plt (info, h))
{
if (h->type == STT_GNU_IFUNC)
--
2.31.1

View File

@ -1,345 +0,0 @@
From 30845f113a3b01640c46f9b07549b080cb83bc81 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Tue, 19 Jan 2021 19:26:11 +1030
Subject: [PATCH] PowerPC use_local_plt
Put the logic to select local vs. usual .plt section in one place.
* elf64-ppc.c (elf_hash_entry): New inline function. Use
throughout to replace casts.
(branch_reloc_hash_match): Remove const from params.
(use_local_plt): New function.
(allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
(build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
Use use_local_plt.
* elf32-ppc.c (use_local_plt): New function.
(allocate_dynrelocs, ppc_elf_relocate_section),
(write_global_sym_plt): Use use_local_plt.
---
bfd/ChangeLog | 13 +++++++++
bfd/elf32-ppc.c | 48 +++++++++++++++---------------
bfd/elf64-ppc.c | 77 ++++++++++++++++++++++++++-----------------------
3 files changed, 78 insertions(+), 60 deletions(-)
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index fd88f3d718e..a8da3049986 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -5094,6 +5094,18 @@ ensure_undef_dynamic (struct bfd_link_info *info,
return TRUE;
}
+/* Choose whether to use htab->iplt or htab->pltlocal rather than the
+ usual htab->elf.splt section for a PLT entry. */
+
+static inline
+bfd_boolean use_local_plt (struct bfd_link_info *info,
+ struct elf_link_hash_entry *h)
+{
+ return (h == NULL
+ || h->dynindx == -1
+ || !elf_hash_table (info)->dynamic_sections_created);
+}
+
/* Allocate space in associated reloc sections for dynamic relocs. */
static bfd_boolean
@@ -5103,7 +5115,6 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
struct ppc_elf_link_hash_entry *eh;
struct ppc_elf_link_hash_table *htab;
struct elf_dyn_relocs *p;
- bfd_boolean dyn;
if (h->root.type == bfd_link_hash_indirect)
return TRUE;
@@ -5271,8 +5282,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
b) is an ifunc, or
c) has plt16 relocs and has been processed by adjust_dynamic_symbol, or
d) has plt16 relocs and we are linking statically. */
- dyn = htab->elf.dynamic_sections_created && h->dynindx != -1;
- if (dyn
+ if ((htab->elf.dynamic_sections_created && h->dynindx != -1)
|| h->type == STT_GNU_IFUNC
|| (h->needs_plt && h->dynamic_adjusted)
|| (h->needs_plt
@@ -5290,6 +5300,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
if (ent->plt.refcount > 0)
{
asection *s = htab->elf.splt;
+ bfd_boolean dyn = !use_local_plt (info, h);
if (!dyn)
{
@@ -8373,9 +8384,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
unresolved_reloc = FALSE;
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || h == NULL
- || h->dynindx == -1)
+ if (use_local_plt (info, h))
{
if (ifunc != NULL)
plt = htab->elf.iplt;
@@ -9351,6 +9360,8 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
for (ent = h->plt.plist; ent != NULL; ent = ent->next)
if (ent->plt.offset != (bfd_vma) -1)
{
+ bfd_boolean dyn = !use_local_plt (info, h);
+
if (!doneone)
{
Elf_Internal_Rela rela;
@@ -9359,9 +9370,7 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
asection *plt = htab->elf.splt;
asection *relplt = htab->elf.srelplt;
- if (htab->plt_type == PLT_NEW
- || !htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (htab->plt_type == PLT_NEW || !dyn)
reloc_index = ent->plt.offset / 4;
else
{
@@ -9374,9 +9383,7 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
/* This symbol has an entry in the procedure linkage table.
Set it up. */
- if (htab->plt_type == PLT_VXWORKS
- && htab->elf.dynamic_sections_created
- && h->dynindx != -1)
+ if (htab->plt_type == PLT_VXWORKS && dyn)
{
bfd_vma got_offset;
const bfd_vma *plt_entry;
@@ -9499,8 +9506,7 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
else
{
rela.r_addend = 0;
- if (!htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (!dyn)
{
if (h->type == STT_GNU_IFUNC)
{
@@ -9529,9 +9535,7 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
+ plt->output_offset
+ ent->plt.offset);
- if (htab->plt_type == PLT_OLD
- || !htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (htab->plt_type == PLT_OLD || !dyn)
{
/* We don't need to fill in the .plt. The ppc dynamic
linker will fill it in. */
@@ -9550,8 +9554,7 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
if (relplt != NULL)
{
/* Fill in the entry in the .rela.plt section. */
- if (!htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (!dyn)
{
if (h->type == STT_GNU_IFUNC)
rela.r_info = ELF32_R_INFO (0, R_PPC_IRELATIVE);
@@ -9574,15 +9577,12 @@ write_global_sym_plt (struct elf_link_hash_entry *h, void *inf)
doneone = TRUE;
}
- if (htab->plt_type == PLT_NEW
- || !htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (htab->plt_type == PLT_NEW || !dyn)
{
unsigned char *p;
asection *plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (!dyn)
{
if (h->type == STT_GNU_IFUNC)
plt = htab->elf.iplt;
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index a118c32c797..ed595074b94 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -3149,6 +3149,12 @@ ppc_elf_hash_entry (struct elf_link_hash_entry *ent)
return (struct ppc_link_hash_entry *) ent;
}
+static inline struct elf_link_hash_entry *
+elf_hash_entry (struct ppc_link_hash_entry *ent)
+{
+ return (struct elf_link_hash_entry *) ent;
+}
+
/* ppc64 ELF linker hash table. */
struct ppc_link_hash_table
@@ -5656,10 +5662,10 @@ static bfd_boolean
is_tls_get_addr (struct elf_link_hash_entry *h,
struct ppc_link_hash_table *htab)
{
- return (h == (struct elf_link_hash_entry *) htab->tls_get_addr_fd
- || h == (struct elf_link_hash_entry *) htab->tga_desc_fd
- || h == (struct elf_link_hash_entry *) htab->tls_get_addr
- || h == (struct elf_link_hash_entry *) htab->tga_desc);
+ return (h == elf_hash_entry (htab->tls_get_addr_fd)
+ || h == elf_hash_entry (htab->tga_desc_fd)
+ || h == elf_hash_entry (htab->tls_get_addr)
+ || h == elf_hash_entry (htab->tga_desc));
}
static bfd_boolean func_desc_adjust (struct elf_link_hash_entry *, void *);
@@ -7856,7 +7862,7 @@ ppc64_elf_tls_setup (struct bfd_link_info *info)
if (tga_fd != NULL)
{
htab->tls_get_addr_fd = ppc_elf_hash_entry (opt_fd);
- tga = (struct elf_link_hash_entry *) htab->tls_get_addr;
+ tga = elf_hash_entry (htab->tls_get_addr);
if (opt != NULL && tga != NULL)
{
tga->root.type = bfd_link_hash_indirect;
@@ -7917,12 +7923,12 @@ ppc64_elf_tls_setup (struct bfd_link_info *info)
any of HASH1, HASH2, HASH3, or HASH4. */
static bfd_boolean
-branch_reloc_hash_match (const bfd *ibfd,
- const Elf_Internal_Rela *rel,
- const struct ppc_link_hash_entry *hash1,
- const struct ppc_link_hash_entry *hash2,
- const struct ppc_link_hash_entry *hash3,
- const struct ppc_link_hash_entry *hash4)
+branch_reloc_hash_match (bfd *ibfd,
+ Elf_Internal_Rela *rel,
+ struct ppc_link_hash_entry *hash1,
+ struct ppc_link_hash_entry *hash2,
+ struct ppc_link_hash_entry *hash3,
+ struct ppc_link_hash_entry *hash4)
{
Elf_Internal_Shdr *symtab_hdr = &elf_symtab_hdr (ibfd);
enum elf_ppc64_reloc_type r_type = ELF64_R_TYPE (rel->r_info);
@@ -7935,10 +7941,10 @@ branch_reloc_hash_match (const bfd *ibfd,
h = sym_hashes[r_symndx - symtab_hdr->sh_info];
h = elf_follow_link (h);
- if (h == (struct elf_link_hash_entry *) hash1
- || h == (struct elf_link_hash_entry *) hash2
- || h == (struct elf_link_hash_entry *) hash3
- || h == (struct elf_link_hash_entry *) hash4)
+ if (h == elf_hash_entry (hash1)
+ || h == elf_hash_entry (hash2)
+ || h == elf_hash_entry (hash3)
+ || h == elf_hash_entry (hash4))
return TRUE;
}
return FALSE;
@@ -9629,6 +9635,18 @@ ensure_undef_dynamic (struct bfd_link_info *info,
return TRUE;
}
+/* Choose whether to use htab->iplt or htab->pltlocal rather than the
+ usual htab->elf.splt section for a PLT entry. */
+
+static inline
+bfd_boolean use_local_plt (struct bfd_link_info *info,
+ struct elf_link_hash_entry *h)
+{
+ return (h == NULL
+ || h->dynindx == -1
+ || !elf_hash_table (info)->dynamic_sections_created);
+}
+
/* Allocate space in .plt, .got and associated reloc sections for
dynamic relocs. */
@@ -9818,8 +9836,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
for (pent = h->plt.plist; pent != NULL; pent = pent->next)
if (pent->plt.refcount > 0)
{
- if (!htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (use_local_plt (info, h))
{
if (h->type == STT_GNU_IFUNC)
{
@@ -11703,9 +11720,7 @@ ppc_build_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg)
abort ();
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || stub_entry->h == NULL
- || stub_entry->h->elf.dynindx == -1)
+ if (use_local_plt (info, elf_hash_entry (stub_entry->h)))
{
if (stub_entry->symtype == STT_GNU_IFUNC)
plt = htab->elf.iplt;
@@ -11837,9 +11852,7 @@ ppc_build_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg)
abort ();
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || stub_entry->h == NULL
- || stub_entry->h->elf.dynindx == -1)
+ if (use_local_plt (info, elf_hash_entry (stub_entry->h)))
{
if (stub_entry->symtype == STT_GNU_IFUNC)
plt = htab->elf.iplt;
@@ -12208,9 +12221,7 @@ ppc_size_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg)
abort ();
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || stub_entry->h == NULL
- || stub_entry->h->elf.dynindx == -1)
+ if (use_local_plt (info, elf_hash_entry (stub_entry->h)))
{
if (stub_entry->symtype == STT_GNU_IFUNC)
plt = htab->elf.iplt;
@@ -12292,9 +12303,7 @@ ppc_size_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg)
if (targ >= (bfd_vma) -2)
abort ();
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || stub_entry->h == NULL
- || stub_entry->h->elf.dynindx == -1)
+ if (use_local_plt (info, elf_hash_entry (stub_entry->h)))
{
if (stub_entry->symtype == STT_GNU_IFUNC)
plt = htab->elf.iplt;
@@ -14061,8 +14070,7 @@ build_global_entry_stubs_and_plt (struct elf_link_hash_entry *h, void *inf)
asection *plt, *relplt;
bfd_byte *loc;
- if (!htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (use_local_plt (info, h))
{
if (!(h->def_regular
&& (h->root.type == bfd_link_hash_defined
@@ -14151,8 +14159,7 @@ build_global_entry_stubs_and_plt (struct elf_link_hash_entry *h, void *inf)
p = s->contents + h->root.u.def.value;
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || h->dynindx == -1)
+ if (use_local_plt (info, h))
{
if (h->type == STT_GNU_IFUNC)
plt = htab->elf.iplt;
@@ -16490,9 +16497,7 @@ ppc64_elf_relocate_section (bfd *output_bfd,
bfd_vma got;
plt = htab->elf.splt;
- if (!htab->elf.dynamic_sections_created
- || h == NULL
- || h->elf.dynindx == -1)
+ if (use_local_plt (info, elf_hash_entry (h)))
{
if (h != NULL
? h->elf.type == STT_GNU_IFUNC
--
2.31.1

View File

@ -24,7 +24,7 @@ Index: bfd/elf32-s390.c
+ input_bfd, elf_howto_table[r_type].name, + input_bfd, elf_howto_table[r_type].name,
+ h->root.root.string); + h->root.root.string);
+ bfd_set_error (bfd_error_bad_value); + bfd_set_error (bfd_error_bad_value);
+ return FALSE; + return false;
+ } + }
+ +
if (h != NULL if (h != NULL