Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package binutils for openSUSE:Factory checked in at 2023-02-21 15:35:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/binutils (Old) and /work/SRC/openSUSE:Factory/.binutils.new.22824 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "binutils" Tue Feb 21 15:35:25 2023 rev:162 rq:1062048 version:2.40 Changes: -------- --- /work/SRC/openSUSE:Factory/binutils/binutils.changes 2023-01-27 10:26:04.538663393 +0100 +++ /work/SRC/openSUSE:Factory/.binutils.new.22824/binutils.changes 2023-02-21 15:35:27.604086325 +0100 @@ -1,0 +2,18 @@ +Mon Jan 30 09:18:59 UTC 2023 - Martin Liška <mli...@suse.cz> + +- Pack libgprofng only for supported platforms. + +------------------------------------------------------------------- +Fri Jan 27 19:06:39 UTC 2023 - Martin Liška <mli...@suse.cz> + +- Remove upstreamed patch binutils-maxpagesize.diff. + +------------------------------------------------------------------- +Fri Jan 27 09:56:13 UTC 2023 - Martin Liška <mli...@suse.cz> + +- Rebase binutils-2.40-branch.diff.gz as it includes fix for PR30043. +- Move libgprofng-related libraries to the proper locations (packages). +- Add --without=bootstrap for skipping of bootstrap (faster testing + of the package). + +------------------------------------------------------------------- @@ -4,0 +23,60 @@ + +------------------------------------------------------------------- +Mon Jan 16 08:34:07 UTC 2023 - Martin Liška <mli...@suse.cz> + +- Update to version 2.40: +* Objdump has a new command line option --show-all-symbols which will make it + display all symbols that match a given address when disassembling. (Normally + only the first symbol that matches an address is shown). +* Add --enable-colored-disassembly configure time option to enable colored + disassembly output by default, if the output device is a terminal. Note, + this configure option is disabled by default. +* DCO signed contributions are now accepted. +* objcopy --decompress-debug-sections now supports zstd compressed debug + sections. The new option --compress-debug-sections=zstd compresses debug + sections with zstd. +* addr2line and objdump --dwarf now support zstd compressed debug sections. +* The dlltool program now accepts --deterministic-libraries and + --non-deterministic-libraries as command line options to control whether or + not it generates deterministic output libraries. If neither of these options + are used the default is whatever was set when the binutils were configured. +* readelf and objdump now have a newly added option --sframe which dumps the + SFrame section. +* Add support for Intel RAO-INT instructions. +* Add support for Intel AVX-NE-CONVERT instructions. +* Add support for Intel MSRLIST instructions. +* Add support for Intel WRMSRNS instructions. +* Add support for Intel CMPccXADD instructions. +* Add support for Intel AVX-VNNI-INT8 instructions. +* Add support for Intel AVX-IFMA instructions. +* Add support for Intel PREFETCHI instructions. +* Add support for Intel AMX-FP16 instructions. +* gas now supports --compress-debug-sections=zstd to compress + debug sections with zstd. +* Add --enable-default-compressed-debug-sections-algorithm={zlib,zstd} + that selects the default compression algorithm + for --enable-compressed-debug-sections. +* Add support for various T-Head extensions (XTheadBa, XTheadBb, XTheadBs, + XTheadCmo, XTheadCondMov, XTheadFMemIdx, XTheadFmv, XTheadInt, XTheadMemIdx, + XTheadMemPair, XTheadMac, and XTheadSync) from version 2.0 of the T-Head + ISA manual, which are implemented in the Allwinner D1. +* Add support for the RISC-V Zawrs extension, version 1.0-rc4. +* Add support for Cortex-X1C for Arm. +* New command line option --gsframe to generate SFrame unwind information + on x86_64 and aarch64 targets. +* The linker has a new command line option to suppress the generation of any + warning or error messages. This can be useful when there is a need to create + a known non-working binary. The option is -w or --no-warnings. +* ld now supports zstd compressed debug sections. The new option + --compress-debug-sections=zstd compresses debug sections with zstd. +* Add --enable-default-compressed-debug-sections-algorithm={zlib,zstd} + that selects the default compression algorithm + for --enable-compressed-debug-sections. +* Remove support for -z bndplt (MPX prefix instructions). +- Rebased patches: add-ulp-section.diff, ld-relro.diff, binutils-revert-plt32-in-branches.diff, + cross-avr-size.patch. +- Removed patch: binutils-pr29482.diff. +- New patch: extensa-gcc-4_3-fix.diff. +- Includes fixes for these CVEs: + * bnc#1206080 aka CVE-2022-4285 aka PR29699 +- Enable by default: --enable-colored-disassembly. Old: ---- binutils-2.39-branch.diff.gz binutils-2.39.tar.bz2 binutils-2.39.tar.bz2.sig binutils-maxpagesize.diff binutils-pr29482.diff New: ---- binutils-2.40-branch.diff.gz binutils-2.40.tar.bz2 binutils-2.40.tar.bz2.sig extensa-gcc-4_3-fix.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ binutils.spec ++++++ --- /var/tmp/diff_new_pack.F2xiht/_old 2023-02-21 15:35:29.100094923 +0100 +++ /var/tmp/diff_new_pack.F2xiht/_new 2023-02-21 15:35:29.104094946 +0100 @@ -61,7 +61,7 @@ %else BuildRequires: zlib-devel %endif -Version: 2.39 +Version: 2.40 Release: 0 # disable libalternatives for now until it's changed to not @@ -72,6 +72,8 @@ %bcond_with libalternatives %endif +%bcond_without bootstrap + # # RUN_TESTS %define run_tests %(test ! -f %_sourcedir/RUN_TESTS ; echo $?) @@ -100,6 +102,15 @@ %define build_multitarget 0 %endif %define target_list aarch64 alpha armv5l armv6l armv7l armv8l avr pru epiphany hppa hppa64 i686 ia64 m68k mips powerpc powerpc64 powerpc64le riscv64 rx s390 s390x sh4 sparc sparc64 x86_64 xtensa + +%define build_gprofng 0 + +%if %{suse_version} > 1500 +%ifarch aarch64 %ix86 x86_64 %x86_64 +%define build_gprofng 1 +%endif +%endif + # # # @@ -117,7 +128,7 @@ Source2: binutils-%{version}.tar.bz2.sig Source3: binutils.keyring Source4: baselibs.conf -Patch1: binutils-2.39-branch.diff.gz +Patch1: binutils-2.40-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -139,8 +150,7 @@ Patch42: binutils-compat-old-behaviour.diff Patch43: binutils-revert-hlasm-insns.diff Patch44: binutils-revert-rela.diff -Patch45: binutils-pr29482.diff -Patch46: binutils-maxpagesize.diff +Patch45: extensa-gcc-4_3-fix.diff Patch100: add-ulp-section.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch @@ -263,9 +273,8 @@ %patch42 -p1 %patch43 -p1 %patch44 -p1 -%endif %patch45 -p1 -%patch46 -p1 +%endif %patch100 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h @@ -364,9 +373,12 @@ %endif --enable-shared \ %if %{suse_version} > 1500 +%if %{with bootstrap} --enable-pgo-build=lto \ %endif -%if %{suse_version} <= 1500 + --enable-colored-disassembly \ +%endif +%if ! %build_gprofng --disable-gprofng \ %endif --enable-obsolete \ @@ -521,6 +533,7 @@ # No shared linking outside binutils rm %{buildroot}%{_libdir}/lib{bfd,opcodes}.so rm %{buildroot}%{_libdir}/lib{bfd,opcodes,ctf,ctf-nobfd}.la +rm -f %{buildroot}%{_libdir}/gprofng/lib*.{l,}a # Remove unwanted files to shut up rpm rm -f %{buildroot}%{_infodir}/configure* $RPM_BUILD_ROOT%{_infodir}/standards.info* rm -f %{buildroot}%{_mandir}/man1/dlltool.1 $RPM_BUILD_ROOT%{_mandir}/man1/windres.1 $RPM_BUILD_ROOT%{_mandir}/man1/windmc.1 @@ -644,6 +657,10 @@ %{_prefix}/%{HOST}/bin/* %{_prefix}/%{HOST}/lib/ldscripts %{_libdir}/ldscripts +%{_libdir}/libsframe.so.* +%if %build_gprofng +%{_libdir}/libgprofng.so.* +%endif %dir %{_libdir}/bfd-plugins %{_libdir}/bfd-plugins/libdep.so %{_bindir}/* @@ -686,6 +703,10 @@ %{_libdir}/lib*.*a %{_libdir}/libctf.so %{_libdir}/libctf-nobfd.so +%{_libdir}/libsframe.so +%if %build_gprofng +%{_libdir}/libgprofng.so +%endif %files -n libctf0 %defattr(-,root,root) @@ -701,7 +722,6 @@ %defattr(-,root,root) %dir %{_libdir}/gprofng/ %{_libdir}/gprofng/lib*.so -%{_libdir}/gprofng/lib*.so.* %{_distconfdir}/gprofng.rc %endif %endif ++++++ add-ulp-section.diff ++++++ --- /var/tmp/diff_new_pack.F2xiht/_old 2023-02-21 15:35:29.168095314 +0100 +++ /var/tmp/diff_new_pack.F2xiht/_new 2023-02-21 15:35:29.172095337 +0100 @@ -67,7 +67,7 @@ index 62d516aab8d..c0fb718d85c 100644 --- a/bfd/elfxx-x86.c +++ b/bfd/elfxx-x86.c -@@ -31,6 +31,8 @@ +@@ -29,6 +29,8 @@ #define ELF64_DYNAMIC_INTERPRETER "/lib/ld64.so.1" #define ELFX32_DYNAMIC_INTERPRETER "/lib/ldx32.so.1" @@ -173,14 +173,14 @@ index db11327e96f..89f51382216 100644 --- a/bfd/elfxx-x86.h +++ b/bfd/elfxx-x86.h -@@ -456,6 +456,7 @@ struct elf_x86_link_hash_table +@@ -607,6 +607,7 @@ struct elf_x86_link_hash_table asection *plt_second_eh_frame; asection *plt_got; asection *plt_got_eh_frame; + asection *ulp; - /* Parameters describing PLT generation, lazy or non-lazy. */ - struct elf_x86_plt_layout plt; + sframe_encoder_ctx *plt_cfe_ctx; + asection *plt_sframe; @@ -694,6 +695,12 @@ extern void _bfd_x86_elf_link_report_relative_reloc (struct bfd_link_info *, asection *, struct elf_link_hash_entry *, Elf_Internal_Sym *, const char *, const void *); ++++++ binutils-2.39-branch.diff.gz -> binutils-2.40-branch.diff.gz ++++++ Binary files /work/SRC/openSUSE:Factory/binutils/binutils-2.39-branch.diff.gz and /work/SRC/openSUSE:Factory/.binutils.new.22824/binutils-2.40-branch.diff.gz differ ++++++ binutils-2.39.tar.bz2 -> binutils-2.40.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/binutils/binutils-2.39.tar.bz2 /work/SRC/openSUSE:Factory/.binutils.new.22824/binutils-2.40.tar.bz2 differ: char 11, line 1 ++++++ binutils-revert-plt32-in-branches.diff ++++++ --- /var/tmp/diff_new_pack.F2xiht/_old 2023-02-21 15:35:29.264095865 +0100 +++ /var/tmp/diff_new_pack.F2xiht/_new 2023-02-21 15:35:29.264095865 +0100 @@ -336,23 +336,6 @@ [ ]*[a-f0-9]+: ff 14 25 00 00 00 00 call \*0x0 3d: R_X86_64_32S xxx [ ]*[a-f0-9]+: ff d7 call \*%rdi [ ]*[a-f0-9]+: ff 17 call \*\(%rdi\) -diff --git a/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d b/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -index 795f3fdacc4..1d692e8f04d 100644 ---- a/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -+++ b/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -@@ -23,9 +23,9 @@ Disassembly of section .text: - [ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd call 34 <foo2> - - 0+34 <foo2>: --[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmp 3a <foo2\+0x6> 36: R_X86_64_PLT32 foo-0x4 --[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 41 <foo2\+0xd> 3d: R_X86_64_PLT32 foo-0x4 --[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd call 47 <foo2\+0x13> 43: R_X86_64_PLT32 foo-0x4 -+[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmp 3a <foo2\+0x6> 36: R_X86_64_PC32 foo-0x4 -+[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 41 <foo2\+0xd> 3d: R_X86_64_PC32 foo-0x4 -+[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd call 47 <foo2\+0x13> 43: R_X86_64_PC32 foo-0x4 - [ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmp 4d <foo2\+0x19> 49: R_X86_64_PLT32 foo-0x4 - [ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 54 <foo2\+0x20> 50: R_X86_64_PLT32 foo-0x4 - [ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd call 5a <foo2\+0x26> 56: R_X86_64_PLT32 foo-0x4 diff --git a/gas/testsuite/gas/i386/x86-64-nop-3.d b/gas/testsuite/gas/i386/x86-64-nop-3.d index 1975481cc59..436487b5a99 100644 --- a/gas/testsuite/gas/i386/x86-64-nop-3.d @@ -427,15 +410,6 @@ 0+1f <hidden_def>: [ ]*[a-f0-9]+: c3 ret -diff --git a/ld/testsuite/ld-x86-64/mpx1c.rd b/ld/testsuite/ld-x86-64/mpx1c.rd -index d66524c8834..d3b292cbdc1 100644 ---- a/ld/testsuite/ld-x86-64/mpx1c.rd -+++ b/ld/testsuite/ld-x86-64/mpx1c.rd -@@ -1,3 +1,3 @@ - #... --[0-9a-f ]+R_X86_64_PLT32 +0+ +.* -+[0-9a-f ]+R_X86_64_PC32 +0+ +.* - #... diff --git a/ld/testsuite/ld-x86-64/pr22791-1.err b/ld/testsuite/ld-x86-64/pr22791-1.err deleted file mode 100644 index 8c5565992e7..00000000000 ++++++ cross-avr-size.patch ++++++ --- /var/tmp/diff_new_pack.F2xiht/_old 2023-02-21 15:35:29.308096118 +0100 +++ /var/tmp/diff_new_pack.F2xiht/_new 2023-02-21 15:35:29.308096118 +0100 @@ -1,5 +1,5 @@ diff --git a/binutils/size.c b/binutils/size.c -index 479a464887..971156ccbe 100644 +index 8e9adcd1caa..a10d6f49601 100644 --- a/binutils/size.c +++ b/binutils/size.c @@ -51,6 +51,7 @@ enum output_format @@ -266,8 +266,8 @@ + --mcu=<avrmcu> MCU name for AVR format only\n\ -o|-d|-x --radix={8|10|16} Display numbers in octal, decimal or hex\n\ -t --totals Display the total sizes (Berkeley only)\n\ - --common Display total size for *COM* syms\n\ -@@ -113,6 +355,7 @@ usage (FILE *stream, int status) + -f Ignored.\n\ +@@ -114,6 +356,7 @@ usage (FILE *stream, int status) #define OPTION_FORMAT (200) #define OPTION_RADIX (OPTION_FORMAT + 1) #define OPTION_TARGET (OPTION_RADIX + 1) @@ -275,7 +275,7 @@ static struct option long_options[] = { -@@ -120,6 +363,7 @@ static struct option long_options[] = +@@ -121,6 +364,7 @@ static struct option long_options[] = {"format", required_argument, 0, OPTION_FORMAT}, {"radix", required_argument, 0, OPTION_RADIX}, {"target", required_argument, 0, OPTION_TARGET}, @@ -283,7 +283,7 @@ {"totals", no_argument, &show_totals, 1}, {"version", no_argument, &show_version, 1}, {"help", no_argument, &show_help, 1}, -@@ -153,13 +397,17 @@ main (int argc, char **argv) +@@ -152,13 +396,17 @@ main (int argc, char **argv) fatal (_("fatal error: libbfd ABI mismatch")); set_default_bfd_target (); @@ -302,7 +302,7 @@ case 'B': case 'b': selected_output_format = FORMAT_BERKLEY; -@@ -178,6 +426,10 @@ main (int argc, char **argv) +@@ -177,6 +425,10 @@ main (int argc, char **argv) } break; @@ -313,7 +313,7 @@ case OPTION_TARGET: target = optarg; break; -@@ -211,6 +463,9 @@ main (int argc, char **argv) +@@ -210,6 +462,9 @@ main (int argc, char **argv) case 'B': selected_output_format = FORMAT_BERKLEY; break; @@ -323,7 +323,7 @@ case 'G': selected_output_format = FORMAT_GNU; break; -@@ -648,13 +903,115 @@ print_sysv_format (bfd *file) +@@ -649,13 +904,115 @@ print_sysv_format (bfd *file) printf ("\n\n"); } ++++++ extensa-gcc-4_3-fix.diff ++++++ # This fixes: # # [ 146s] In file included from ../../bfd/xtensa-isa.c:26: # [ 146s] ../../bfd/../include/xtensa-dynconfig.h:107: error: redefinition of typedef 'xtensa_isa_internal' # [ 146s] ../../bfd/../include/xtensa-isa-internal.h:227: error: previous declaration of 'xtensa_isa_internal' was here # # which is a strange issue with GCC 4.3 diff --git a/include/xtensa-dynconfig.h b/include/xtensa-dynconfig.h index bb72d6ab22d..9c66ac4416d 100644 --- a/include/xtensa-dynconfig.h +++ b/include/xtensa-dynconfig.h @@ -104,7 +104,6 @@ struct xtensa_config_v2 int xtensa_march_earliest; }; -typedef struct xtensa_isa_internal_struct xtensa_isa_internal; extern const void *xtensa_load_config (const char *name, const void *no_plugin_def, ++++++ ld-relro.diff ++++++ --- /var/tmp/diff_new_pack.F2xiht/_old 2023-02-21 15:35:29.340096302 +0100 +++ /var/tmp/diff_new_pack.F2xiht/_new 2023-02-21 15:35:29.344096325 +0100 @@ -25,15 +25,15 @@ } if ![info exists as] then { -@@ -60,7 +60,7 @@ if {![file isdirectory tmpdir/ld]} then - catch "exec ln -s ld tmpdir/ld/collect-ld" status - catch "exec ln -s ../../../gas/as-new tmpdir/ld/as" status +@@ -70,7 +70,7 @@ if {[info exists ld_testsuite_bindir]} { + catch "exec ln -s ld tmpdir/ld/collect-ld" status + catch "exec ln -s ../../../gas/as-new tmpdir/ld/as" status + } +- set gcc_B_opt "-B[pwd]/tmpdir/ld/" ++ set gcc_B_opt "-B[pwd]/tmpdir/ld/ -Wl,-z,norelro" } --set gcc_B_opt "-B[pwd]/tmpdir/ld/" -+set gcc_B_opt "-B[pwd]/tmpdir/ld/ -Wl,-z,norelro" # load the linker path - set ld_L_opt "" @@ -272,7 +272,7 @@ if ![info exists READELFFLAGS] then { } @@ -47,17 +47,17 @@ =================================================================== --- ld/testsuite/ld-bootstrap/bootstrap.exp.orig 2014-10-14 17:43:07.000000000 +0200 +++ ld/testsuite/ld-bootstrap/bootstrap.exp 2014-10-14 17:43:26.000000000 +0200 -@@ -78,7 +78,12 @@ foreach flags $test_flags { +@@ -106,7 +106,12 @@ foreach flags $test_flags { # This test can only be run if we have the ld build directory, # since we need the object files. -- if {$ld != "$objdir/ld-new"} { +- if {[file normalize $ld] != [file normalize $objdir/ld-new]} { + set ldexe $ld + set ldparm [string first " " $ld] + if { $ldparm > 0 } then { + set ldexe [string range $ld 0 $ldparm] + } -+ if {$ldexe != "$objdir/ld-new"} { ++ if {[file normalize $ldexe] != [file normalize $objdir/ld-new]} { untested $testname continue }