Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package binutils for openSUSE:Factory checked in at 2022-03-05 14:42:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/binutils (Old) and /work/SRC/openSUSE:Factory/.binutils.new.1958 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "binutils" Sat Mar 5 14:42:56 2022 rev:153 rq:959404 version:2.38 Changes: -------- --- /work/SRC/openSUSE:Factory/binutils/binutils.changes 2021-11-17 01:12:25.934131067 +0100 +++ /work/SRC/openSUSE:Factory/.binutils.new.1958/binutils.changes 2022-03-05 14:42:58.383694197 +0100 @@ -1,0 +2,103 @@ +Fri Mar 4 10:44:39 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Update binutils-2.38-branch.diff.gz in order to include PR28879. + +------------------------------------------------------------------- +Tue Mar 1 12:41:27 UTC 2022 - Michael Matz <m...@suse.com> + +- From Stefan Br??ns <stefan.bru...@rwth-aachen.de>: + * Install symlinks for all target specific tools on + arm-eabi-none [bsc#1185712] + +------------------------------------------------------------------- +Thu Feb 24 09:10:44 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Do not re-generate ld/ldlex.c, ld/ldgram.c, ld/ldgram.h and verify + that corresponding flex/bison files are not modified by a patch. + +------------------------------------------------------------------- +Thu Feb 24 06:55:14 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Use verbose mode for make for cross compilers. + +------------------------------------------------------------------- +Wed Feb 23 17:52:15 UTC 2022 - Michael Matz <m...@suse.com> + +- Make it build on SLE-11 again. + +------------------------------------------------------------------- +Tue Feb 22 09:13:15 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Use verbose mode for make. + +------------------------------------------------------------------- +Sat Feb 12 19:13:31 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Update to binutils 2.38: + * elfedit: Add --output-abiversion option to update ABIVERSION. + * Add support for the LoongArch instruction set. + * Tools which display symbols or strings (readelf, strings, nm, objdump) + have a new command line option which controls how unicode characters are + handled. By default they are treated as normal for the tool. Using + --unicode=locale will display them according to the current locale. + Using --unicode=hex will display them as hex byte values, whilst + --unicode=escape will display them as escape sequences. In addition + using --unicode=highlight will display them as unicode escape sequences + highlighted in red (if supported by the output device). + * readelf -r dumps RELR relative relocations now. + * Support for efi-app-aarch64, efi-rtdrv-aarch64 and efi-bsdrv-aarch64 has been + added to objcopy in order to enable UEFI development using binutils. + * ar: Add --thin for creating thin archives. -T is a deprecated alias without + diagnostics. In many ar implementations -T has a different meaning, as + specified by X/Open System Interface. + * Add support for AArch64 system registers that were missing in previous + releases. + * Add support for the LoongArch instruction set. + * Add a command-line option, -muse-unaligned-vector-move, for x86 target + to encode aligned vector move as unaligned vector move. + * Add support for Cortex-R52+ for Arm. + * Add support for Cortex-A510, Cortex-A710, Cortex-X2 for AArch64. + * Add support for Cortex-A710 for Arm. + * Add support for Scalable Matrix Extension (SME) for AArch64. + * The --multibyte-handling=[allow|warn|warn-sym-only] option tells the + assembler what to when it encoutners multibyte characters in the input. The + default is to allow them. Setting the option to "warn" will generate a + warning message whenever any multibyte character is encountered. Using the + option to "warn-sym-only" will make the assembler generate a warning whenever a + symbol is defined containing multibyte characters. (References to undefined + symbols will not generate warnings). + * Outputs of .ds.x directive and .tfloat directive with hex input from + x86 assembler have been reduced from 12 bytes to 10 bytes to match the + output of .tfloat directive. + * Add support for 'armv8.8-a', 'armv9-a', 'armv9.1-a', 'armv9.2-a' and + 'armv9.3-a' for -march in AArch64 GAS. + * Add support for 'armv8.7-a', 'armv8.8-a', 'armv9-a', 'armv9.1-a', + 'armv9.2-a' and 'armv9.3-a' for -march in Arm GAS. + * Add support for Intel AVX512_FP16 instructions. + * Add -z pack-relative-relocs/-z no pack-relative-relocs to x86 ELF + linker to pack relative relocations in the DT_RELR section. + * Add support for the LoongArch architecture. + * Add -z indirect-extern-access/-z noindirect-extern-access to x86 ELF + linker to control canonical function pointers and copy relocation. + * Add --max-cache-size=SIZE to set the the maximum cache size to SIZE + bytes. +- Add binutils-2.38-branch.diff.gz. +- Removed deletion of man pages as they should be properly packages + in tarball. +- Rebased patches: aarch64-common-pagesize.patch, add-ulp-section.diff, + binutils-bfd_h.patch, binutils-revert-nm-symversion.diff, + binutils-revert-plt32-in-branches.diff, binutils-skip-rpaths.patch + and binutils-compat-old-behaviour.diff. + +------------------------------------------------------------------- +Fri Feb 4 13:13:20 UTC 2022 - Matwey Kornilov <matwey.korni...@gmail.com> + +- Enable PRU architecture for AM335x CPU (Beagle Bone Black board) + +------------------------------------------------------------------- +Thu Jan 27 20:36:30 UTC 2022 - Dirk M??ller <dmuel...@suse.com> + +- use fdupes on datadir +- remove RPM_BUILD_ROOT usage and other cleanups + +------------------------------------------------------------------- cross-aarch64-binutils.changes: same change cross-arm-binutils.changes: same change cross-avr-binutils.changes: same change cross-epiphany-binutils.changes: same change cross-hppa-binutils.changes: same change cross-hppa64-binutils.changes: same change cross-i386-binutils.changes: same change cross-ia64-binutils.changes: same change cross-m68k-binutils.changes: same change cross-mips-binutils.changes: same change cross-ppc-binutils.changes: same change cross-ppc64-binutils.changes: same change cross-ppc64le-binutils.changes: same change New Changes file: --- /dev/null 2022-02-17 01:21:44.237509805 +0100 +++ /work/SRC/openSUSE:Factory/.binutils.new.1958/cross-pru-binutils.changes 2022-03-05 14:42:59.927694586 +0100 @@ -0,0 +1,4102 @@ +------------------------------------------------------------------- +Fri Mar 4 10:44:39 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Update binutils-2.38-branch.diff.gz in order to include PR28879. + +------------------------------------------------------------------- +Tue Mar 1 12:41:27 UTC 2022 - Michael Matz <m...@suse.com> + +- From Stefan Br??ns <stefan.bru...@rwth-aachen.de>: + * Install symlinks for all target specific tools on + arm-eabi-none [bsc#1185712] + +------------------------------------------------------------------- +Thu Feb 24 09:10:44 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Do not re-generate ld/ldlex.c, ld/ldgram.c, ld/ldgram.h and verify + that corresponding flex/bison files are not modified by a patch. + +------------------------------------------------------------------- +Thu Feb 24 06:55:14 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Use verbose mode for make for cross compilers. + +------------------------------------------------------------------- +Wed Feb 23 17:52:15 UTC 2022 - Michael Matz <m...@suse.com> + +- Make it build on SLE-11 again. + +------------------------------------------------------------------- +Tue Feb 22 09:13:15 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Use verbose mode for make. + +------------------------------------------------------------------- +Sat Feb 12 19:13:31 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Update to binutils 2.38: + * elfedit: Add --output-abiversion option to update ABIVERSION. + * Add support for the LoongArch instruction set. + * Tools which display symbols or strings (readelf, strings, nm, objdump) + have a new command line option which controls how unicode characters are + handled. By default they are treated as normal for the tool. Using + --unicode=locale will display them according to the current locale. + Using --unicode=hex will display them as hex byte values, whilst + --unicode=escape will display them as escape sequences. In addition + using --unicode=highlight will display them as unicode escape sequences + highlighted in red (if supported by the output device). + * readelf -r dumps RELR relative relocations now. + * Support for efi-app-aarch64, efi-rtdrv-aarch64 and efi-bsdrv-aarch64 has been + added to objcopy in order to enable UEFI development using binutils. + * ar: Add --thin for creating thin archives. -T is a deprecated alias without + diagnostics. In many ar implementations -T has a different meaning, as + specified by X/Open System Interface. + * Add support for AArch64 system registers that were missing in previous + releases. + * Add support for the LoongArch instruction set. + * Add a command-line option, -muse-unaligned-vector-move, for x86 target + to encode aligned vector move as unaligned vector move. + * Add support for Cortex-R52+ for Arm. + * Add support for Cortex-A510, Cortex-A710, Cortex-X2 for AArch64. + * Add support for Cortex-A710 for Arm. + * Add support for Scalable Matrix Extension (SME) for AArch64. + * The --multibyte-handling=[allow|warn|warn-sym-only] option tells the + assembler what to when it encoutners multibyte characters in the input. The + default is to allow them. Setting the option to "warn" will generate a + warning message whenever any multibyte character is encountered. Using the + option to "warn-sym-only" will make the assembler generate a warning whenever a + symbol is defined containing multibyte characters. (References to undefined + symbols will not generate warnings). + * Outputs of .ds.x directive and .tfloat directive with hex input from + x86 assembler have been reduced from 12 bytes to 10 bytes to match the + output of .tfloat directive. + * Add support for 'armv8.8-a', 'armv9-a', 'armv9.1-a', 'armv9.2-a' and + 'armv9.3-a' for -march in AArch64 GAS. + * Add support for 'armv8.7-a', 'armv8.8-a', 'armv9-a', 'armv9.1-a', + 'armv9.2-a' and 'armv9.3-a' for -march in Arm GAS. + * Add support for Intel AVX512_FP16 instructions. + * Add -z pack-relative-relocs/-z no pack-relative-relocs to x86 ELF + linker to pack relative relocations in the DT_RELR section. + * Add support for the LoongArch architecture. + * Add -z indirect-extern-access/-z noindirect-extern-access to x86 ELF + linker to control canonical function pointers and copy relocation. + * Add --max-cache-size=SIZE to set the the maximum cache size to SIZE + bytes. +- Add binutils-2.38-branch.diff.gz. +- Removed deletion of man pages as they should be properly packages + in tarball. +- Rebased patches: aarch64-common-pagesize.patch, add-ulp-section.diff, + binutils-bfd_h.patch, binutils-revert-nm-symversion.diff, + binutils-revert-plt32-in-branches.diff, binutils-skip-rpaths.patch + and binutils-compat-old-behaviour.diff. + +------------------------------------------------------------------- +Fri Feb 4 13:13:20 UTC 2022 - Matwey Kornilov <matwey.korni...@gmail.com> + +- Enable PRU architecture for AM335x CPU (Beagle Bone Black board) + +------------------------------------------------------------------- +Thu Jan 27 20:36:30 UTC 2022 - Dirk M??ller <dmuel...@suse.com> + +- use fdupes on datadir +- remove RPM_BUILD_ROOT usage and other cleanups + +------------------------------------------------------------------- +Fri Nov 12 13:20:09 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Rebase binutils-2.37-branch.diff: fixes PR28494. + +------------------------------------------------------------------- +Fri Nov 5 16:54:36 UTC 2021 - Michael Matz <m...@suse.com> + +- Add binutils-revert-hlasm-insns.diff for compatibility on old + code stream that expect 'brcl 0,label' to not be disassembled + as 'jgnop label' on s390x. [bsc#1192267] + +------------------------------------------------------------------- +Wed Nov 3 08:23:52 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Rebase binutils-2.37-branch.diff: fixes PR28523 aka boo#1188941. + +------------------------------------------------------------------- +Tue Nov 2 15:57:53 UTC 2021 - Michael Matz <m...@suse.com> + +- Fix empty man-pages from broken release tarball [PR28144]. + +------------------------------------------------------------------- +Mon Nov 1 09:34:38 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Update binutils-skip-rpaths.patch with contained a memory corruption + (boo#1191473). + +------------------------------------------------------------------- +Fri Oct 8 14:11:44 UTC 2021 - Michael Matz <m...@suse.com> + +- Configure with --disable-x86-used-note on old code streams. +- Disable libalternatives temporarily for build cycle reasons. +- make TARGET-bfd=headers again, we patch bfd-in.h +- This state submitted to SLE12 and SLE15 code streams for annual + toolchain update. [jsc#PM-2767, jsc#SLE-21561, jsc#SLE-19618] +- Bump binutils-2.37-branch.diff to 66d5c7003, to include fixes for + PR28422, PR28192, PR28391. Also adds some s390x arch14 + instructions [jsc#SLE-18637]. + +------------------------------------------------------------------- +Fri Sep 10 23:16:12 CEST 2021 - Stefan Schubert sch...@suse.de + +- Using libalternatives instead of update-alternatives. + +------------------------------------------------------------------- +Wed Sep 8 15:09:58 UTC 2021 - Michael Matz <m...@suse.com> + +- Adjust for testsuite fails on older products that configure + binutils in different ways, adds binutils-compat-old-behaviour.diff + and adjusts binutils-revert-nm-symversion.diff and + binutils-revert-plt32-in-branches.diff. + +------------------------------------------------------------------- +Tue Aug 3 13:36:19 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Bump binutils-2.37-branch.diff: fixes PR28138. + +------------------------------------------------------------------- +Thu Jul 22 17:36:14 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Use LTO & PGO build. + +------------------------------------------------------------------- +Thu Jul 22 15:01:27 UTC 2021 - Martin Li??ka <mli...@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 ++++ 3905 more lines (skipped) ++++ between /dev/null ++++ and /work/SRC/openSUSE:Factory/.binutils.new.1958/cross-pru-binutils.changes --- /work/SRC/openSUSE:Factory/binutils/cross-riscv64-binutils.changes 2021-11-17 01:12:29.370132357 +0100 +++ /work/SRC/openSUSE:Factory/.binutils.new.1958/cross-riscv64-binutils.changes 2022-03-05 14:43:00.019694609 +0100 @@ -1,0 +2,103 @@ +Fri Mar 4 10:44:39 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Update binutils-2.38-branch.diff.gz in order to include PR28879. + +------------------------------------------------------------------- +Tue Mar 1 12:41:27 UTC 2022 - Michael Matz <m...@suse.com> + +- From Stefan Br??ns <stefan.bru...@rwth-aachen.de>: + * Install symlinks for all target specific tools on + arm-eabi-none [bsc#1185712] + +------------------------------------------------------------------- +Thu Feb 24 09:10:44 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Do not re-generate ld/ldlex.c, ld/ldgram.c, ld/ldgram.h and verify + that corresponding flex/bison files are not modified by a patch. + +------------------------------------------------------------------- +Thu Feb 24 06:55:14 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Use verbose mode for make for cross compilers. + +------------------------------------------------------------------- +Wed Feb 23 17:52:15 UTC 2022 - Michael Matz <m...@suse.com> + +- Make it build on SLE-11 again. + +------------------------------------------------------------------- +Tue Feb 22 09:13:15 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Use verbose mode for make. + +------------------------------------------------------------------- +Sat Feb 12 19:13:31 UTC 2022 - Martin Li??ka <mli...@suse.cz> + +- Update to binutils 2.38: + * elfedit: Add --output-abiversion option to update ABIVERSION. + * Add support for the LoongArch instruction set. + * Tools which display symbols or strings (readelf, strings, nm, objdump) + have a new command line option which controls how unicode characters are + handled. By default they are treated as normal for the tool. Using + --unicode=locale will display them according to the current locale. + Using --unicode=hex will display them as hex byte values, whilst + --unicode=escape will display them as escape sequences. In addition + using --unicode=highlight will display them as unicode escape sequences + highlighted in red (if supported by the output device). + * readelf -r dumps RELR relative relocations now. + * Support for efi-app-aarch64, efi-rtdrv-aarch64 and efi-bsdrv-aarch64 has been + added to objcopy in order to enable UEFI development using binutils. + * ar: Add --thin for creating thin archives. -T is a deprecated alias without + diagnostics. In many ar implementations -T has a different meaning, as + specified by X/Open System Interface. + * Add support for AArch64 system registers that were missing in previous + releases. + * Add support for the LoongArch instruction set. + * Add a command-line option, -muse-unaligned-vector-move, for x86 target + to encode aligned vector move as unaligned vector move. + * Add support for Cortex-R52+ for Arm. + * Add support for Cortex-A510, Cortex-A710, Cortex-X2 for AArch64. + * Add support for Cortex-A710 for Arm. + * Add support for Scalable Matrix Extension (SME) for AArch64. + * The --multibyte-handling=[allow|warn|warn-sym-only] option tells the + assembler what to when it encoutners multibyte characters in the input. The + default is to allow them. Setting the option to "warn" will generate a + warning message whenever any multibyte character is encountered. Using the + option to "warn-sym-only" will make the assembler generate a warning whenever a + symbol is defined containing multibyte characters. (References to undefined + symbols will not generate warnings). + * Outputs of .ds.x directive and .tfloat directive with hex input from + x86 assembler have been reduced from 12 bytes to 10 bytes to match the + output of .tfloat directive. + * Add support for 'armv8.8-a', 'armv9-a', 'armv9.1-a', 'armv9.2-a' and + 'armv9.3-a' for -march in AArch64 GAS. + * Add support for 'armv8.7-a', 'armv8.8-a', 'armv9-a', 'armv9.1-a', + 'armv9.2-a' and 'armv9.3-a' for -march in Arm GAS. + * Add support for Intel AVX512_FP16 instructions. + * Add -z pack-relative-relocs/-z no pack-relative-relocs to x86 ELF + linker to pack relative relocations in the DT_RELR section. + * Add support for the LoongArch architecture. + * Add -z indirect-extern-access/-z noindirect-extern-access to x86 ELF + linker to control canonical function pointers and copy relocation. + * Add --max-cache-size=SIZE to set the the maximum cache size to SIZE + bytes. +- Add binutils-2.38-branch.diff.gz. +- Removed deletion of man pages as they should be properly packages + in tarball. +- Rebased patches: aarch64-common-pagesize.patch, add-ulp-section.diff, + binutils-bfd_h.patch, binutils-revert-nm-symversion.diff, + binutils-revert-plt32-in-branches.diff, binutils-skip-rpaths.patch + and binutils-compat-old-behaviour.diff. + +------------------------------------------------------------------- +Fri Feb 4 13:13:20 UTC 2022 - Matwey Kornilov <matwey.korni...@gmail.com> + +- Enable PRU architecture for AM335x CPU (Beagle Bone Black board) + +------------------------------------------------------------------- +Thu Jan 27 20:36:30 UTC 2022 - Dirk M??ller <dmuel...@suse.com> + +- use fdupes on datadir +- remove RPM_BUILD_ROOT usage and other cleanups + +------------------------------------------------------------------- cross-rx-binutils.changes: same change cross-s390-binutils.changes: same change cross-s390x-binutils.changes: same change cross-sparc-binutils.changes: same change cross-sparc64-binutils.changes: same change cross-spu-binutils.changes: same change cross-x86_64-binutils.changes: same change cross-xtensa-binutils.changes: same change Old: ---- binutils-2.37-branch.diff.gz binutils-2.37.tar.bz2 binutils-2.37.tar.bz2.sig New: ---- binutils-2.38-branch.diff.gz binutils-2.38.tar.bz2 binutils-2.38.tar.bz2.sig cross-pru-binutils.changes cross-pru-binutils.spec ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ binutils.spec ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.095695385 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.099695386 +0100 @@ -1,7 +1,7 @@ # # spec file for package binutils # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,6 +20,7 @@ BuildRequires: bc BuildRequires: bison BuildRequires: dejagnu +BuildRequires: fdupes BuildRequires: flex BuildRequires: gcc-c++ # for the testsuite @@ -34,7 +35,7 @@ %else BuildRequires: zlib-devel %endif -Version: 2.37 +Version: 2.38 Release: 0 # disable libalternatives for now until it's changed to not @@ -72,7 +73,7 @@ %else %define build_multitarget 0 %endif -%define target_list aarch64 alpha armv5l armv6l armv7l armv8l avr epiphany hppa hppa64 i686 ia64 m68k mips powerpc powerpc64 powerpc64le riscv64 rx s390 s390x sh4 sparc sparc64 x86_64 xtensa +%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 # # # @@ -92,7 +93,7 @@ Source1: pre_checkin.sh Source2: README.First-for.SUSE.packagers Source3: baselibs.conf -Patch1: binutils-2.37-branch.diff.gz +Patch1: binutils-2.38-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -138,7 +139,7 @@ %else PreReq: update-alternatives %endif -%if 0%{!?cross:1} +%if 0%{!?cross:1} && 0%{?suse_version} >= 1310 %define gold_archs %ix86 aarch64 %arm x86_64 ppc ppc64 ppc64le s390x %sparc %endif @@ -188,6 +189,11 @@ %prep echo "make check will return with %{make_check_handling} in case of testsuite failures." %setup -q -n binutils-%{version} + +# Backup flex and biscon files for later verification. +cp ld/ldlex.l ld/ldlex.l.orig +cp ld/ldgram.y ld/ldgram.y.orig + # Patch is outside test_vanilla because it's supposed to be the # patch bringing the tarball to the newest upstream version %patch1 -p1 @@ -225,22 +231,11 @@ # # test_vanilla %endif -# in parallel builds, when the flex or bison inputs are patched (possibly -# in the ...-branch.diff) it might happen that the dependency tracking -# of automake is confused and uses the old .c files from srcdir/ld/ while -# also generating the new .c files in builddir/ld leading to trouble. -# I haven't found the right entries to ensure this doesn't happen, so -# simply remove the intermediates -rm -f ld/ldlex.c -rm -f ld/ldgram.c ld/ldgram.h - -# The 2.37 released tarball contains wrongly pre-generated (empty) man pages -# so we remove those here as well. Consider removing for later releases. -rm -f binutils/doc/*.1 -rm -f binutils/doc/cxxfilt.man -rm -f gprof/*.1 -rm -f gas/doc/*.1 -rm -f ld/*.1 + +# Due to legacy flex version present in SLE-12 (and older), we cannot +# re-generate flex and bison files and so we verify that any patch modify these files. +diff -u ld/ldlex.l ld/ldlex.l.orig +diff -u ld/ldgram.y ld/ldgram.y.orig %build %define _lto_cflags %{nil} @@ -327,14 +322,14 @@ # we patch headers (bfd-in.h) that are input to other headers # which are generated only with --enable-maintainer-mode (which we # don't do) or explicitely by make headers, so do this: -make %{?_smp_mflags} all-bfd TARGET-bfd=headers +make %{?_smp_mflags} all-bfd TARGET-bfd=headers V=1 # the above interacts with --enable-pgo-build=lto because all-bfd doesn't # have the PGO handling, hence it's config.cache files are wrong # remove all of those for reconfigure rm */config.cache # force reconfiguring rm bfd/Makefile -make %{?_smp_mflags} +make %{?_smp_mflags} V=1 %else # building cross-TARGET-binutils @@ -366,7 +361,7 @@ %if "%{TARGET}" == "aarch64" EXTRA_TARGETS="$EXTRA_TARGETS,aarch64-suse-linux" %endif -%if "%{TARGET}" == "avr" || "%{TARGET}" == "spu" +%if "%{TARGET}" == "avr" || "%{TARGET}" == "spu" || "%{TARGET}" == "pru" %define TARGET_OS %{TARGET} %else %if "%{TARGET}" == "epiphany" || "%{TARGET}" == "riscv32" || "%{TARGET}" == "rx" @@ -400,11 +395,11 @@ --enable-default-hash-style=both \ %endif ${EXTRA_TARGETS:+--enable-targets="${EXTRA_TARGETS#,}"} -make %{?_smp_mflags} all-bfd TARGET-bfd=headers +make %{?_smp_mflags} all-bfd TARGET-bfd=headers V=1 rm */config.cache # force reconfiguring rm bfd/Makefile -make %{?_smp_mflags} +make %{?_smp_mflags} V=1 %if "%{TARGET}" == "avr" # build an extra nesC version because nesC requires $'s in identifiers cp -a gas gas-nesc @@ -428,26 +423,25 @@ %if 0%{!?cross:1} # installing native binutils %ifarch %gold_archs -make DESTDIR=$RPM_BUILD_ROOT install-gold -ln -sf ld.gold $RPM_BUILD_ROOT%{_bindir}/gold +make DESTDIR=%{buildroot} install-gold +ln -sf ld.gold %{buildroot}%{_bindir}/gold %endif -make DESTDIR=$RPM_BUILD_ROOT install-info install -make -C gas/doc DESTDIR=$RPM_BUILD_ROOT install-info-am install-am -make DESTDIR=$RPM_BUILD_ROOT install-bfd install-opcodes -if [ ! -f "%buildroot/%_bindir/ld.bfd" ]; then - mv "%buildroot/%_bindir"/{ld,ld.bfd}; +make DESTDIR=%{buildroot} install-info install +make DESTDIR=%{buildroot} install-bfd install-opcodes +if [ ! -f "%{buildroot}/%_bindir/ld.bfd" ]; then + mv "%{buildroot}/%_bindir"/{ld,ld.bfd}; else - rm -f "%buildroot/%_bindir/ld"; + rm -f "%{buildroot}/%_bindir/ld"; fi %if ! 0%{with libalternatives} -mkdir -p "%buildroot/%_sysconfdir/alternatives"; +mkdir -p "%{buildroot}/%_sysconfdir/alternatives"; # Keep older versions of brp-symlink happy %if %{suse_version} < 1310 -ln -s "%_bindir/ld" "%buildroot/%_sysconfdir/alternatives/ld" +ln -s "%_bindir/ld" "%{buildroot}/%_sysconfdir/alternatives/ld" %endif -ln -s "%_sysconfdir/alternatives/ld" "%buildroot/%_bindir/ld"; +ln -s "%_sysconfdir/alternatives/ld" "%{buildroot}/%_bindir/ld"; %else -ln -s %{_bindir}/alts "%buildroot/%_bindir/ld"; +ln -s %{_bindir}/alts "%{buildroot}/%_bindir/ld"; mkdir -p %{buildroot}%{_datadir}/libalternatives/ld; cat > %{buildroot}%{_datadir}/libalternatives/ld/1.conf <<EOF binary=%{_bindir}/ld.gold @@ -457,24 +451,24 @@ EOF %endif -rm -rf $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -mv $RPM_BUILD_ROOT%{_prefix}/%{HOST}/lib/ldscripts $RPM_BUILD_ROOT%{_libdir} -ln -sf ../../%{_lib}/ldscripts $RPM_BUILD_ROOT%{_prefix}/%{HOST}/lib/ldscripts +rm -rf %{buildroot}%{_prefix}/%{HOST}/bin +mkdir -p %{buildroot}%{_prefix}/%{HOST}/bin +ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} %{buildroot}%{_prefix}/%{HOST}/bin +mv %{buildroot}%{_prefix}/%{HOST}/lib/ldscripts $RPM_BUILD_ROOT%{_libdir} +ln -sf ../../%{_lib}/ldscripts %{buildroot}%{_prefix}/%{HOST}/lib/ldscripts # Install header files -make -C libiberty install_to_libdir target_header_dir=/usr/include DESTDIR=$RPM_BUILD_ROOT +make -C libiberty install_to_libdir target_header_dir=/usr/include DESTDIR=%{buildroot} # We want the PIC libiberty.a -install -m 644 libiberty/pic/libiberty.a $RPM_BUILD_ROOT%{_libdir} +install -m 644 libiberty/pic/libiberty.a %{buildroot}%{_libdir} # -chmod a+x $RPM_BUILD_ROOT%{_libdir}/libbfd-* -chmod a+x $RPM_BUILD_ROOT%{_libdir}/libopcodes-* +chmod a+x %{buildroot}%{_libdir}/libbfd-* +chmod a+x %{buildroot}%{_libdir}/libopcodes-* # No shared linking outside binutils -rm $RPM_BUILD_ROOT%{_libdir}/lib{bfd,opcodes}.so -rm $RPM_BUILD_ROOT%{_libdir}/lib{bfd,opcodes}.la +rm %{buildroot}%{_libdir}/lib{bfd,opcodes}.so +rm %{buildroot}%{_libdir}/lib{bfd,opcodes,ctf,ctf-nobfd}.la # Remove unwanted files to shut up rpm -rm -f $RPM_BUILD_ROOT%{_infodir}/configure* $RPM_BUILD_ROOT%{_infodir}/standards.info* -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dlltool.1 $RPM_BUILD_ROOT%{_mandir}/man1/windres.1 $RPM_BUILD_ROOT%{_mandir}/man1/windmc.1 +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 cd .. %find_lang binutils %find_lang bfd binutils.lang @@ -485,45 +479,47 @@ %ifarch %gold_archs %find_lang gold binutils-gold.lang %endif -mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name} -install -m 644 binutils/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-binutils -install -m 644 gas/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-gas -install -m 644 ld/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-ld +mkdir -p %{buildroot}%{_docdir}/%{name} +install -m 644 binutils/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-binutils +install -m 644 gas/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-gas +install -m 644 ld/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-ld %else # installing cross-TARGET-binutils and TARGET-binutils -make DESTDIR=$RPM_BUILD_ROOT install +make DESTDIR=%{buildroot} install # Replace hard links by symlinks, so that rpmlint doesn't complain -T=$(basename %buildroot/usr/%{TARGET_OS}) -for f in %buildroot/usr/$T/bin/* ; do +T=$(basename %{buildroot}/usr/%{TARGET_OS}) +for f in %{buildroot}/usr/$T/bin/* ; do ln -sf /usr/bin/$T-$(basename $f) $f done %if "%{TARGET}" == "arm" # Instead of building duplicate binutils, add symlinks -for f in %buildroot/usr/$T/bin/* ; do +for f in %{buildroot}%{_bindir}/${T}-* ; do + _toolname=${f##$(dirname $f)/${T}-} for p in arm-none-eabi; do - ln -sf %{_bindir}/$T-$(basename $f) %buildroot%{_bindir}/$p-$(basename $f) + ln -sf %{_bindir}/$T-${_toolname} %{buildroot}%{_bindir}/$p-${_toolname} done done %endif %if "%{TARGET}" == "riscv64" # Instead of building duplicate binutils, add symlinks -for f in %buildroot/usr/$T/bin/* ; do +for f in %{buildroot}/usr/$T/bin/* ; do for p in riscv64-elf; do - ln -sf %{_bindir}/$T-$(basename $f) %buildroot%{_bindir}/$p-$(basename $f) + ln -sf %{_bindir}/$T-$(basename $f) %{buildroot}%{_bindir}/$p-$(basename $f) done done %endif %if "%{TARGET}" == "avr" -install -c gas-nesc/as-new $RPM_BUILD_ROOT%{_prefix}/bin/%{TARGET_OS}-nesc-as -ln -sf ../../bin/%{TARGET_OS}-nesc-as $RPM_BUILD_ROOT%{_prefix}/%{TARGET_OS}/bin/nesc-as +install -c gas-nesc/as-new %{buildroot}%{_prefix}/bin/%{TARGET_OS}-nesc-as +ln -sf ../../bin/%{TARGET_OS}-nesc-as %{buildroot}%{_prefix}/%{TARGET_OS}/bin/nesc-as %endif -rm -rf $RPM_BUILD_ROOT%{_mandir} -rm -rf $RPM_BUILD_ROOT%{_infodir} -rm -rf $RPM_BUILD_ROOT%{_prefix}/lib* -rm -rf $RPM_BUILD_ROOT%{_prefix}/include -rm -f $RPM_BUILD_ROOT%{_prefix}/bin/*-c++filt +rm -rf %{buildroot}%{_mandir} +rm -rf %{buildroot}%{_infodir} +rm -rf %{buildroot}%{_prefix}/lib* +rm -rf %{buildroot}%{_prefix}/include +rm -f %{buildroot}%{_prefix}/bin/*-c++filt > ../binutils.lang %endif +%fdupes %{buildroot}%{_prefix} %if 0%{!?cross:1} %post @@ -583,8 +579,7 @@ %postun -n libctf0 -p /sbin/ldconfig %postun -n libctf-nobfd0 -p /sbin/ldconfig -%postun -/sbin/ldconfig +%postun -p /sbin/ldconfig %endif %files -f binutils.lang @@ -638,9 +633,11 @@ %{_libdir}/libctf-nobfd.so %files -n libctf0 +%defattr(-,root,root) %{_libdir}/libctf.so.* %files -n libctf-nobfd0 +%defattr(-,root,root) %{_libdir}/libctf-nobfd.so.* %endif ++++++ cross-aarch64-binutils.spec ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.131695394 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.139695396 +0100 @@ -1,7 +1,7 @@ # # spec file for package cross-aarch64-binutils # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -23,6 +23,7 @@ BuildRequires: bc BuildRequires: bison BuildRequires: dejagnu +BuildRequires: fdupes BuildRequires: flex BuildRequires: gcc-c++ # for the testsuite @@ -37,7 +38,7 @@ %else BuildRequires: zlib-devel %endif -Version: 2.37 +Version: 2.38 Release: 0 # disable libalternatives for now until it's changed to not @@ -75,7 +76,7 @@ %else %define build_multitarget 0 %endif -%define target_list aarch64 alpha armv5l armv6l armv7l armv8l avr epiphany hppa hppa64 i686 ia64 m68k mips powerpc powerpc64 powerpc64le riscv64 rx s390 s390x sh4 sparc sparc64 x86_64 xtensa +%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 # # # @@ -95,7 +96,7 @@ Source1: pre_checkin.sh Source2: README.First-for.SUSE.packagers Source3: baselibs.conf -Patch1: binutils-2.37-branch.diff.gz +Patch1: binutils-2.38-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -141,7 +142,7 @@ %else PreReq: update-alternatives %endif -%if 0%{!?cross:1} +%if 0%{!?cross:1} && 0%{?suse_version} >= 1310 %define gold_archs %ix86 aarch64 %arm x86_64 ppc ppc64 ppc64le s390x %sparc %endif @@ -191,6 +192,11 @@ %prep echo "make check will return with %{make_check_handling} in case of testsuite failures." %setup -q -n binutils-%{version} + +# Backup flex and biscon files for later verification. +cp ld/ldlex.l ld/ldlex.l.orig +cp ld/ldgram.y ld/ldgram.y.orig + # Patch is outside test_vanilla because it's supposed to be the # patch bringing the tarball to the newest upstream version %patch1 -p1 @@ -228,22 +234,11 @@ # # test_vanilla %endif -# in parallel builds, when the flex or bison inputs are patched (possibly -# in the ...-branch.diff) it might happen that the dependency tracking -# of automake is confused and uses the old .c files from srcdir/ld/ while -# also generating the new .c files in builddir/ld leading to trouble. -# I haven't found the right entries to ensure this doesn't happen, so -# simply remove the intermediates -rm -f ld/ldlex.c -rm -f ld/ldgram.c ld/ldgram.h - -# The 2.37 released tarball contains wrongly pre-generated (empty) man pages -# so we remove those here as well. Consider removing for later releases. -rm -f binutils/doc/*.1 -rm -f binutils/doc/cxxfilt.man -rm -f gprof/*.1 -rm -f gas/doc/*.1 -rm -f ld/*.1 + +# Due to legacy flex version present in SLE-12 (and older), we cannot +# re-generate flex and bison files and so we verify that any patch modify these files. +diff -u ld/ldlex.l ld/ldlex.l.orig +diff -u ld/ldgram.y ld/ldgram.y.orig %build %define _lto_cflags %{nil} @@ -330,14 +325,14 @@ # we patch headers (bfd-in.h) that are input to other headers # which are generated only with --enable-maintainer-mode (which we # don't do) or explicitely by make headers, so do this: -make %{?_smp_mflags} all-bfd TARGET-bfd=headers +make %{?_smp_mflags} all-bfd TARGET-bfd=headers V=1 # the above interacts with --enable-pgo-build=lto because all-bfd doesn't # have the PGO handling, hence it's config.cache files are wrong # remove all of those for reconfigure rm */config.cache # force reconfiguring rm bfd/Makefile -make %{?_smp_mflags} +make %{?_smp_mflags} V=1 %else # building cross-TARGET-binutils @@ -369,7 +364,7 @@ %if "%{TARGET}" == "aarch64" EXTRA_TARGETS="$EXTRA_TARGETS,aarch64-suse-linux" %endif -%if "%{TARGET}" == "avr" || "%{TARGET}" == "spu" +%if "%{TARGET}" == "avr" || "%{TARGET}" == "spu" || "%{TARGET}" == "pru" %define TARGET_OS %{TARGET} %else %if "%{TARGET}" == "epiphany" || "%{TARGET}" == "riscv32" || "%{TARGET}" == "rx" @@ -403,11 +398,11 @@ --enable-default-hash-style=both \ %endif ${EXTRA_TARGETS:+--enable-targets="${EXTRA_TARGETS#,}"} -make %{?_smp_mflags} all-bfd TARGET-bfd=headers +make %{?_smp_mflags} all-bfd TARGET-bfd=headers V=1 rm */config.cache # force reconfiguring rm bfd/Makefile -make %{?_smp_mflags} +make %{?_smp_mflags} V=1 %if "%{TARGET}" == "avr" # build an extra nesC version because nesC requires $'s in identifiers cp -a gas gas-nesc @@ -431,26 +426,25 @@ %if 0%{!?cross:1} # installing native binutils %ifarch %gold_archs -make DESTDIR=$RPM_BUILD_ROOT install-gold -ln -sf ld.gold $RPM_BUILD_ROOT%{_bindir}/gold +make DESTDIR=%{buildroot} install-gold +ln -sf ld.gold %{buildroot}%{_bindir}/gold %endif -make DESTDIR=$RPM_BUILD_ROOT install-info install -make -C gas/doc DESTDIR=$RPM_BUILD_ROOT install-info-am install-am -make DESTDIR=$RPM_BUILD_ROOT install-bfd install-opcodes -if [ ! -f "%buildroot/%_bindir/ld.bfd" ]; then - mv "%buildroot/%_bindir"/{ld,ld.bfd}; +make DESTDIR=%{buildroot} install-info install +make DESTDIR=%{buildroot} install-bfd install-opcodes +if [ ! -f "%{buildroot}/%_bindir/ld.bfd" ]; then + mv "%{buildroot}/%_bindir"/{ld,ld.bfd}; else - rm -f "%buildroot/%_bindir/ld"; + rm -f "%{buildroot}/%_bindir/ld"; fi %if ! 0%{with libalternatives} -mkdir -p "%buildroot/%_sysconfdir/alternatives"; +mkdir -p "%{buildroot}/%_sysconfdir/alternatives"; # Keep older versions of brp-symlink happy %if %{suse_version} < 1310 -ln -s "%_bindir/ld" "%buildroot/%_sysconfdir/alternatives/ld" +ln -s "%_bindir/ld" "%{buildroot}/%_sysconfdir/alternatives/ld" %endif -ln -s "%_sysconfdir/alternatives/ld" "%buildroot/%_bindir/ld"; +ln -s "%_sysconfdir/alternatives/ld" "%{buildroot}/%_bindir/ld"; %else -ln -s %{_bindir}/alts "%buildroot/%_bindir/ld"; +ln -s %{_bindir}/alts "%{buildroot}/%_bindir/ld"; mkdir -p %{buildroot}%{_datadir}/libalternatives/ld; cat > %{buildroot}%{_datadir}/libalternatives/ld/1.conf <<EOF binary=%{_bindir}/ld.gold @@ -460,24 +454,24 @@ EOF %endif -rm -rf $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -mv $RPM_BUILD_ROOT%{_prefix}/%{HOST}/lib/ldscripts $RPM_BUILD_ROOT%{_libdir} -ln -sf ../../%{_lib}/ldscripts $RPM_BUILD_ROOT%{_prefix}/%{HOST}/lib/ldscripts +rm -rf %{buildroot}%{_prefix}/%{HOST}/bin +mkdir -p %{buildroot}%{_prefix}/%{HOST}/bin +ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} %{buildroot}%{_prefix}/%{HOST}/bin +mv %{buildroot}%{_prefix}/%{HOST}/lib/ldscripts $RPM_BUILD_ROOT%{_libdir} +ln -sf ../../%{_lib}/ldscripts %{buildroot}%{_prefix}/%{HOST}/lib/ldscripts # Install header files -make -C libiberty install_to_libdir target_header_dir=/usr/include DESTDIR=$RPM_BUILD_ROOT +make -C libiberty install_to_libdir target_header_dir=/usr/include DESTDIR=%{buildroot} # We want the PIC libiberty.a -install -m 644 libiberty/pic/libiberty.a $RPM_BUILD_ROOT%{_libdir} +install -m 644 libiberty/pic/libiberty.a %{buildroot}%{_libdir} # -chmod a+x $RPM_BUILD_ROOT%{_libdir}/libbfd-* -chmod a+x $RPM_BUILD_ROOT%{_libdir}/libopcodes-* +chmod a+x %{buildroot}%{_libdir}/libbfd-* +chmod a+x %{buildroot}%{_libdir}/libopcodes-* # No shared linking outside binutils -rm $RPM_BUILD_ROOT%{_libdir}/lib{bfd,opcodes}.so -rm $RPM_BUILD_ROOT%{_libdir}/lib{bfd,opcodes}.la +rm %{buildroot}%{_libdir}/lib{bfd,opcodes}.so +rm %{buildroot}%{_libdir}/lib{bfd,opcodes,ctf,ctf-nobfd}.la # Remove unwanted files to shut up rpm -rm -f $RPM_BUILD_ROOT%{_infodir}/configure* $RPM_BUILD_ROOT%{_infodir}/standards.info* -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dlltool.1 $RPM_BUILD_ROOT%{_mandir}/man1/windres.1 $RPM_BUILD_ROOT%{_mandir}/man1/windmc.1 +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 cd .. %find_lang binutils %find_lang bfd binutils.lang @@ -488,45 +482,47 @@ %ifarch %gold_archs %find_lang gold binutils-gold.lang %endif -mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name} -install -m 644 binutils/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-binutils -install -m 644 gas/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-gas -install -m 644 ld/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-ld +mkdir -p %{buildroot}%{_docdir}/%{name} +install -m 644 binutils/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-binutils +install -m 644 gas/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-gas +install -m 644 ld/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-ld %else # installing cross-TARGET-binutils and TARGET-binutils -make DESTDIR=$RPM_BUILD_ROOT install +make DESTDIR=%{buildroot} install # Replace hard links by symlinks, so that rpmlint doesn't complain -T=$(basename %buildroot/usr/%{TARGET_OS}) -for f in %buildroot/usr/$T/bin/* ; do +T=$(basename %{buildroot}/usr/%{TARGET_OS}) +for f in %{buildroot}/usr/$T/bin/* ; do ln -sf /usr/bin/$T-$(basename $f) $f done %if "%{TARGET}" == "arm" # Instead of building duplicate binutils, add symlinks -for f in %buildroot/usr/$T/bin/* ; do +for f in %{buildroot}%{_bindir}/${T}-* ; do + _toolname=${f##$(dirname $f)/${T}-} for p in arm-none-eabi; do - ln -sf %{_bindir}/$T-$(basename $f) %buildroot%{_bindir}/$p-$(basename $f) + ln -sf %{_bindir}/$T-${_toolname} %{buildroot}%{_bindir}/$p-${_toolname} done done %endif %if "%{TARGET}" == "riscv64" # Instead of building duplicate binutils, add symlinks -for f in %buildroot/usr/$T/bin/* ; do +for f in %{buildroot}/usr/$T/bin/* ; do for p in riscv64-elf; do - ln -sf %{_bindir}/$T-$(basename $f) %buildroot%{_bindir}/$p-$(basename $f) + ln -sf %{_bindir}/$T-$(basename $f) %{buildroot}%{_bindir}/$p-$(basename $f) done done %endif %if "%{TARGET}" == "avr" -install -c gas-nesc/as-new $RPM_BUILD_ROOT%{_prefix}/bin/%{TARGET_OS}-nesc-as -ln -sf ../../bin/%{TARGET_OS}-nesc-as $RPM_BUILD_ROOT%{_prefix}/%{TARGET_OS}/bin/nesc-as +install -c gas-nesc/as-new %{buildroot}%{_prefix}/bin/%{TARGET_OS}-nesc-as +ln -sf ../../bin/%{TARGET_OS}-nesc-as %{buildroot}%{_prefix}/%{TARGET_OS}/bin/nesc-as %endif -rm -rf $RPM_BUILD_ROOT%{_mandir} -rm -rf $RPM_BUILD_ROOT%{_infodir} -rm -rf $RPM_BUILD_ROOT%{_prefix}/lib* -rm -rf $RPM_BUILD_ROOT%{_prefix}/include -rm -f $RPM_BUILD_ROOT%{_prefix}/bin/*-c++filt +rm -rf %{buildroot}%{_mandir} +rm -rf %{buildroot}%{_infodir} +rm -rf %{buildroot}%{_prefix}/lib* +rm -rf %{buildroot}%{_prefix}/include +rm -f %{buildroot}%{_prefix}/bin/*-c++filt > ../binutils.lang %endif +%fdupes %{buildroot}%{_prefix} %if 0%{!?cross:1} %post @@ -586,8 +582,7 @@ %postun -n libctf0 -p /sbin/ldconfig %postun -n libctf-nobfd0 -p /sbin/ldconfig -%postun -/sbin/ldconfig +%postun -p /sbin/ldconfig %endif %files -f binutils.lang @@ -641,9 +636,11 @@ %{_libdir}/libctf-nobfd.so %files -n libctf0 +%defattr(-,root,root) %{_libdir}/libctf.so.* %files -n libctf-nobfd0 +%defattr(-,root,root) %{_libdir}/libctf-nobfd.so.* %endif cross-arm-binutils.spec: same change cross-avr-binutils.spec: same change cross-epiphany-binutils.spec: same change cross-hppa-binutils.spec: same change cross-hppa64-binutils.spec: same change cross-i386-binutils.spec: same change cross-ia64-binutils.spec: same change cross-m68k-binutils.spec: same change cross-mips-binutils.spec: same change cross-ppc-binutils.spec: same change cross-ppc64-binutils.spec: same change cross-ppc64le-binutils.spec: same change ++++++ cross-pru-binutils.spec ++++++ ++++ 648 lines (skipped) ++++++ cross-riscv64-binutils.spec ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.531695495 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.535695496 +0100 @@ -1,7 +1,7 @@ # # spec file for package cross-riscv64-binutils # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -23,6 +23,7 @@ BuildRequires: bc BuildRequires: bison BuildRequires: dejagnu +BuildRequires: fdupes BuildRequires: flex BuildRequires: gcc-c++ # for the testsuite @@ -37,7 +38,7 @@ %else BuildRequires: zlib-devel %endif -Version: 2.37 +Version: 2.38 Release: 0 # disable libalternatives for now until it's changed to not @@ -75,7 +76,7 @@ %else %define build_multitarget 0 %endif -%define target_list aarch64 alpha armv5l armv6l armv7l armv8l avr epiphany hppa hppa64 i686 ia64 m68k mips powerpc powerpc64 powerpc64le riscv64 rx s390 s390x sh4 sparc sparc64 x86_64 xtensa +%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 # # # @@ -95,7 +96,7 @@ Source1: pre_checkin.sh Source2: README.First-for.SUSE.packagers Source3: baselibs.conf -Patch1: binutils-2.37-branch.diff.gz +Patch1: binutils-2.38-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -141,7 +142,7 @@ %else PreReq: update-alternatives %endif -%if 0%{!?cross:1} +%if 0%{!?cross:1} && 0%{?suse_version} >= 1310 %define gold_archs %ix86 aarch64 %arm x86_64 ppc ppc64 ppc64le s390x %sparc %endif @@ -191,6 +192,11 @@ %prep echo "make check will return with %{make_check_handling} in case of testsuite failures." %setup -q -n binutils-%{version} + +# Backup flex and biscon files for later verification. +cp ld/ldlex.l ld/ldlex.l.orig +cp ld/ldgram.y ld/ldgram.y.orig + # Patch is outside test_vanilla because it's supposed to be the # patch bringing the tarball to the newest upstream version %patch1 -p1 @@ -228,22 +234,11 @@ # # test_vanilla %endif -# in parallel builds, when the flex or bison inputs are patched (possibly -# in the ...-branch.diff) it might happen that the dependency tracking -# of automake is confused and uses the old .c files from srcdir/ld/ while -# also generating the new .c files in builddir/ld leading to trouble. -# I haven't found the right entries to ensure this doesn't happen, so -# simply remove the intermediates -rm -f ld/ldlex.c -rm -f ld/ldgram.c ld/ldgram.h - -# The 2.37 released tarball contains wrongly pre-generated (empty) man pages -# so we remove those here as well. Consider removing for later releases. -rm -f binutils/doc/*.1 -rm -f binutils/doc/cxxfilt.man -rm -f gprof/*.1 -rm -f gas/doc/*.1 -rm -f ld/*.1 + +# Due to legacy flex version present in SLE-12 (and older), we cannot +# re-generate flex and bison files and so we verify that any patch modify these files. +diff -u ld/ldlex.l ld/ldlex.l.orig +diff -u ld/ldgram.y ld/ldgram.y.orig %build %define _lto_cflags %{nil} @@ -330,14 +325,14 @@ # we patch headers (bfd-in.h) that are input to other headers # which are generated only with --enable-maintainer-mode (which we # don't do) or explicitely by make headers, so do this: -make %{?_smp_mflags} all-bfd TARGET-bfd=headers +make %{?_smp_mflags} all-bfd TARGET-bfd=headers V=1 # the above interacts with --enable-pgo-build=lto because all-bfd doesn't # have the PGO handling, hence it's config.cache files are wrong # remove all of those for reconfigure rm */config.cache # force reconfiguring rm bfd/Makefile -make %{?_smp_mflags} +make %{?_smp_mflags} V=1 %else # building cross-TARGET-binutils @@ -369,7 +364,7 @@ %if "%{TARGET}" == "aarch64" EXTRA_TARGETS="$EXTRA_TARGETS,aarch64-suse-linux" %endif -%if "%{TARGET}" == "avr" || "%{TARGET}" == "spu" +%if "%{TARGET}" == "avr" || "%{TARGET}" == "spu" || "%{TARGET}" == "pru" %define TARGET_OS %{TARGET} %else %if "%{TARGET}" == "epiphany" || "%{TARGET}" == "riscv32" || "%{TARGET}" == "rx" @@ -403,11 +398,11 @@ --enable-default-hash-style=both \ %endif ${EXTRA_TARGETS:+--enable-targets="${EXTRA_TARGETS#,}"} -make %{?_smp_mflags} all-bfd TARGET-bfd=headers +make %{?_smp_mflags} all-bfd TARGET-bfd=headers V=1 rm */config.cache # force reconfiguring rm bfd/Makefile -make %{?_smp_mflags} +make %{?_smp_mflags} V=1 %if "%{TARGET}" == "avr" # build an extra nesC version because nesC requires $'s in identifiers cp -a gas gas-nesc @@ -431,26 +426,25 @@ %if 0%{!?cross:1} # installing native binutils %ifarch %gold_archs -make DESTDIR=$RPM_BUILD_ROOT install-gold -ln -sf ld.gold $RPM_BUILD_ROOT%{_bindir}/gold +make DESTDIR=%{buildroot} install-gold +ln -sf ld.gold %{buildroot}%{_bindir}/gold %endif -make DESTDIR=$RPM_BUILD_ROOT install-info install -make -C gas/doc DESTDIR=$RPM_BUILD_ROOT install-info-am install-am -make DESTDIR=$RPM_BUILD_ROOT install-bfd install-opcodes -if [ ! -f "%buildroot/%_bindir/ld.bfd" ]; then - mv "%buildroot/%_bindir"/{ld,ld.bfd}; +make DESTDIR=%{buildroot} install-info install +make DESTDIR=%{buildroot} install-bfd install-opcodes +if [ ! -f "%{buildroot}/%_bindir/ld.bfd" ]; then + mv "%{buildroot}/%_bindir"/{ld,ld.bfd}; else - rm -f "%buildroot/%_bindir/ld"; + rm -f "%{buildroot}/%_bindir/ld"; fi %if ! 0%{with libalternatives} -mkdir -p "%buildroot/%_sysconfdir/alternatives"; +mkdir -p "%{buildroot}/%_sysconfdir/alternatives"; # Keep older versions of brp-symlink happy %if %{suse_version} < 1310 -ln -s "%_bindir/ld" "%buildroot/%_sysconfdir/alternatives/ld" +ln -s "%_bindir/ld" "%{buildroot}/%_sysconfdir/alternatives/ld" %endif -ln -s "%_sysconfdir/alternatives/ld" "%buildroot/%_bindir/ld"; +ln -s "%_sysconfdir/alternatives/ld" "%{buildroot}/%_bindir/ld"; %else -ln -s %{_bindir}/alts "%buildroot/%_bindir/ld"; +ln -s %{_bindir}/alts "%{buildroot}/%_bindir/ld"; mkdir -p %{buildroot}%{_datadir}/libalternatives/ld; cat > %{buildroot}%{_datadir}/libalternatives/ld/1.conf <<EOF binary=%{_bindir}/ld.gold @@ -460,24 +454,24 @@ EOF %endif -rm -rf $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin -mv $RPM_BUILD_ROOT%{_prefix}/%{HOST}/lib/ldscripts $RPM_BUILD_ROOT%{_libdir} -ln -sf ../../%{_lib}/ldscripts $RPM_BUILD_ROOT%{_prefix}/%{HOST}/lib/ldscripts +rm -rf %{buildroot}%{_prefix}/%{HOST}/bin +mkdir -p %{buildroot}%{_prefix}/%{HOST}/bin +ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} %{buildroot}%{_prefix}/%{HOST}/bin +mv %{buildroot}%{_prefix}/%{HOST}/lib/ldscripts $RPM_BUILD_ROOT%{_libdir} +ln -sf ../../%{_lib}/ldscripts %{buildroot}%{_prefix}/%{HOST}/lib/ldscripts # Install header files -make -C libiberty install_to_libdir target_header_dir=/usr/include DESTDIR=$RPM_BUILD_ROOT +make -C libiberty install_to_libdir target_header_dir=/usr/include DESTDIR=%{buildroot} # We want the PIC libiberty.a -install -m 644 libiberty/pic/libiberty.a $RPM_BUILD_ROOT%{_libdir} +install -m 644 libiberty/pic/libiberty.a %{buildroot}%{_libdir} # -chmod a+x $RPM_BUILD_ROOT%{_libdir}/libbfd-* -chmod a+x $RPM_BUILD_ROOT%{_libdir}/libopcodes-* +chmod a+x %{buildroot}%{_libdir}/libbfd-* +chmod a+x %{buildroot}%{_libdir}/libopcodes-* # No shared linking outside binutils -rm $RPM_BUILD_ROOT%{_libdir}/lib{bfd,opcodes}.so -rm $RPM_BUILD_ROOT%{_libdir}/lib{bfd,opcodes}.la +rm %{buildroot}%{_libdir}/lib{bfd,opcodes}.so +rm %{buildroot}%{_libdir}/lib{bfd,opcodes,ctf,ctf-nobfd}.la # Remove unwanted files to shut up rpm -rm -f $RPM_BUILD_ROOT%{_infodir}/configure* $RPM_BUILD_ROOT%{_infodir}/standards.info* -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dlltool.1 $RPM_BUILD_ROOT%{_mandir}/man1/windres.1 $RPM_BUILD_ROOT%{_mandir}/man1/windmc.1 +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 cd .. %find_lang binutils %find_lang bfd binutils.lang @@ -488,45 +482,47 @@ %ifarch %gold_archs %find_lang gold binutils-gold.lang %endif -mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name} -install -m 644 binutils/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-binutils -install -m 644 gas/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-gas -install -m 644 ld/NEWS $RPM_BUILD_ROOT%{_docdir}/%{name}/NEWS-ld +mkdir -p %{buildroot}%{_docdir}/%{name} +install -m 644 binutils/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-binutils +install -m 644 gas/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-gas +install -m 644 ld/NEWS %{buildroot}%{_docdir}/%{name}/NEWS-ld %else # installing cross-TARGET-binutils and TARGET-binutils -make DESTDIR=$RPM_BUILD_ROOT install +make DESTDIR=%{buildroot} install # Replace hard links by symlinks, so that rpmlint doesn't complain -T=$(basename %buildroot/usr/%{TARGET_OS}) -for f in %buildroot/usr/$T/bin/* ; do +T=$(basename %{buildroot}/usr/%{TARGET_OS}) +for f in %{buildroot}/usr/$T/bin/* ; do ln -sf /usr/bin/$T-$(basename $f) $f done %if "%{TARGET}" == "arm" # Instead of building duplicate binutils, add symlinks -for f in %buildroot/usr/$T/bin/* ; do +for f in %{buildroot}%{_bindir}/${T}-* ; do + _toolname=${f##$(dirname $f)/${T}-} for p in arm-none-eabi; do - ln -sf %{_bindir}/$T-$(basename $f) %buildroot%{_bindir}/$p-$(basename $f) + ln -sf %{_bindir}/$T-${_toolname} %{buildroot}%{_bindir}/$p-${_toolname} done done %endif %if "%{TARGET}" == "riscv64" # Instead of building duplicate binutils, add symlinks -for f in %buildroot/usr/$T/bin/* ; do +for f in %{buildroot}/usr/$T/bin/* ; do for p in riscv64-elf; do - ln -sf %{_bindir}/$T-$(basename $f) %buildroot%{_bindir}/$p-$(basename $f) + ln -sf %{_bindir}/$T-$(basename $f) %{buildroot}%{_bindir}/$p-$(basename $f) done done %endif %if "%{TARGET}" == "avr" -install -c gas-nesc/as-new $RPM_BUILD_ROOT%{_prefix}/bin/%{TARGET_OS}-nesc-as -ln -sf ../../bin/%{TARGET_OS}-nesc-as $RPM_BUILD_ROOT%{_prefix}/%{TARGET_OS}/bin/nesc-as +install -c gas-nesc/as-new %{buildroot}%{_prefix}/bin/%{TARGET_OS}-nesc-as +ln -sf ../../bin/%{TARGET_OS}-nesc-as %{buildroot}%{_prefix}/%{TARGET_OS}/bin/nesc-as %endif -rm -rf $RPM_BUILD_ROOT%{_mandir} -rm -rf $RPM_BUILD_ROOT%{_infodir} -rm -rf $RPM_BUILD_ROOT%{_prefix}/lib* -rm -rf $RPM_BUILD_ROOT%{_prefix}/include -rm -f $RPM_BUILD_ROOT%{_prefix}/bin/*-c++filt +rm -rf %{buildroot}%{_mandir} +rm -rf %{buildroot}%{_infodir} +rm -rf %{buildroot}%{_prefix}/lib* +rm -rf %{buildroot}%{_prefix}/include +rm -f %{buildroot}%{_prefix}/bin/*-c++filt > ../binutils.lang %endif +%fdupes %{buildroot}%{_prefix} %if 0%{!?cross:1} %post @@ -586,8 +582,7 @@ %postun -n libctf0 -p /sbin/ldconfig %postun -n libctf-nobfd0 -p /sbin/ldconfig -%postun -/sbin/ldconfig +%postun -p /sbin/ldconfig %endif %files -f binutils.lang @@ -641,9 +636,11 @@ %{_libdir}/libctf-nobfd.so %files -n libctf0 +%defattr(-,root,root) %{_libdir}/libctf.so.* %files -n libctf-nobfd0 +%defattr(-,root,root) %{_libdir}/libctf-nobfd.so.* %endif cross-rx-binutils.spec: same change cross-s390-binutils.spec: same change cross-s390x-binutils.spec: same change cross-sparc-binutils.spec: same change cross-sparc64-binutils.spec: same change cross-spu-binutils.spec: same change cross-x86_64-binutils.spec: same change cross-xtensa-binutils.spec: same change ++++++ aarch64-common-pagesize.patch ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.843695574 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.851695576 +0100 @@ -5,10 +5,10 @@ =================================================================== --- binutils-2.25.0.orig/bfd/elfnn-aarch64.c +++ binutils-2.25.0/bfd/elfnn-aarch64.c -@@ -7945,7 +7945,7 @@ const struct elf_size_info elfNN_aarch64 +@@ -9965,7 +9965,7 @@ const struct elf_size_info elfNN_aarch64_size_info = + #define ELF_ARCH bfd_arch_aarch64 #define ELF_MACHINE_CODE EM_AARCH64 #define ELF_MAXPAGESIZE 0x10000 - #define ELF_MINPAGESIZE 0x1000 -#define ELF_COMMONPAGESIZE 0x1000 +#define ELF_COMMONPAGESIZE 0x10000 ++++++ add-ulp-section.diff ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.863695579 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.867695580 +0100 @@ -173,7 +173,7 @@ index db11327e96f..89f51382216 100644 --- a/bfd/elfxx-x86.h +++ b/bfd/elfxx-x86.h -@@ -452,6 +452,7 @@ struct elf_x86_link_hash_table +@@ -456,6 +456,7 @@ struct elf_x86_link_hash_table asection *plt_second_eh_frame; asection *plt_got; asection *plt_got_eh_frame; @@ -181,7 +181,7 @@ /* Parameters describing PLT generation, lazy or non-lazy. */ struct elf_x86_plt_layout plt; -@@ -690,6 +691,12 @@ extern void _bfd_x86_elf_link_report_relative_reloc +@@ -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 *); @@ -194,12 +194,15 @@ #define bfd_elf64_mkobject \ _bfd_x86_elf_mkobject #define bfd_elf32_mkobject \ -@@ -727,3 +734,7 @@ extern void _bfd_x86_elf_link_report_relative_reloc - _bfd_x86_elf_merge_gnu_properties - #define elf_backend_fixup_gnu_properties \ - _bfd_x86_elf_link_fixup_gnu_properties +@@ -907,6 +914,10 @@ extern void _bfd_x86_elf_link_report_relative_reloc + _bfd_elf_x86_size_relative_relocs + #define elf_backend_finish_relative_relocs \ + _bfd_elf_x86_finish_relative_relocs +#define elf_backend_is_ulp_enabled \ + _bfd_x86_elf_is_ulp_enabled +#define elf_backend_setup_ulp \ + _bfd_x86_elf_setup_ulp + + #define ELF_P_ALIGN ELF_MINPAGESIZE + ++++++ binutils-2.37-branch.diff.gz -> binutils-2.38-branch.diff.gz ++++++ Binary files /work/SRC/openSUSE:Factory/binutils/binutils-2.37-branch.diff.gz and /work/SRC/openSUSE:Factory/.binutils.new.1958/binutils-2.38-branch.diff.gz differ ++++++ binutils-2.37.tar.bz2 -> binutils-2.38.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/binutils/binutils-2.37.tar.bz2 /work/SRC/openSUSE:Factory/.binutils.new.1958/binutils-2.38.tar.bz2 differ: char 11, line 1 ++++++ binutils-bfd_h.patch ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.943695599 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.947695600 +0100 @@ -1,10 +1,8 @@ Remove the #error to avoid issues with legacy not dealing with this -Index: bfd/bfd-in.h -=================================================================== ---- bfd/bfd-in.h.orig -+++ bfd/bfd-in.h -@@ -23,11 +23,6 @@ +--- bfd/bfd-in.h.orig 2012-11-30 13:44:35.715871571 +0100 ++++ bfd/bfd-in.h 2012-11-30 13:44:43.428871298 +0100 +@@ -25,11 +25,6 @@ #ifndef __BFD_H_SEEN__ #define __BFD_H_SEEN__ ++++++ binutils-compat-old-behaviour.diff ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.963695604 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.967695605 +0100 @@ -3,11 +3,11 @@ * that separate-code is default - this also implies that default max-page-size is 0x1000, instead of the old 0x200000, so some testcases need to encode that as well -Index: binutils-2.37/ld/testsuite/ld-elf/linux-x86.exp -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-elf/linux-x86.exp -+++ binutils-2.37/ld/testsuite/ld-elf/linux-x86.exp -@@ -125,7 +125,7 @@ proc check_pr25749a {testname srcfilea s +diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp +index 2e0cbd37f17..fcd3dd920e4 100644 +--- a/ld/testsuite/ld-elf/linux-x86.exp ++++ b/ld/testsuite/ld-elf/linux-x86.exp +@@ -275,7 +275,7 @@ proc check_pr25749a {testname srcfilea srcfileb cflags ldflags lderror} { } # Suppress warning for unsupported attribute from older GCC. @@ -16,7 +16,7 @@ exec cp $srcdir/$subdir/$srcfilea $srcfilea exec chmod +w $srcfilea -@@ -246,7 +246,7 @@ proc check_pr25749b {testname srcfilea s +@@ -396,7 +396,7 @@ proc check_pr25749b {testname srcfilea srcfileb cflags ldflags dsoldflags args} [list \ "Build lib${testname}.so ($dsoldflags)" \ "-shared $dsoldflags tmpdir/pr25749-bin.o" \ @@ -25,158 +25,40 @@ [list $srcfileb] \ {{readelf {-Wr} pr25749.rd}} \ "lib${testname}.so" \ -Index: binutils-2.37/ld/testsuite/ld-i386/report-reloc-1.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-i386/report-reloc-1.d -+++ binutils-2.37/ld/testsuite/ld-i386/report-reloc-1.d +diff --git a/ld/testsuite/ld-i386/report-reloc-1.d b/ld/testsuite/ld-i386/report-reloc-1.d +index 162161592a1..ee96047043d 100644 +--- a/ld/testsuite/ld-i386/report-reloc-1.d ++++ b/ld/testsuite/ld-i386/report-reloc-1.d @@ -1,6 +1,6 @@ #source: report-reloc-1.s #as: --32 --#ld: -pie -melf_i386 -z report-relative-reloc -+#ld: -pie -melf_i386 -z report-relative-reloc -z separate-code +-#ld: -pie -melf_i386 -z report-relative-reloc $NO_DT_RELR_LDFLAGS ++#ld: -pie -melf_i386 -z report-relative-reloc -z separate-code $NO_DT_RELR_LDFLAGS #warning_output: report-reloc-1.l #readelf: -r --wide -Index: binutils-2.37/ld/testsuite/ld-x86-64/pe-x86-64.exp -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pe-x86-64.exp -+++ binutils-2.37/ld/testsuite/ld-x86-64/pe-x86-64.exp -@@ -27,7 +27,7 @@ if {![istarget "x86_64-*-linux*"] } { - run_ld_link_tests [list \ - [list \ - "Build pe-x86-64-1" \ -- "-m elf_x86_64 --entry=begin" \ -+ "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ - "" \ - "" \ - {pe-x86-64-1a.obj.bz2 pe-x86-64-1b.obj.bz2 pe-x86-64-1c.obj.bz2} \ -@@ -36,7 +36,7 @@ run_ld_link_tests [list \ - ] \ - [list \ - "Build pe-x86-64-2" \ -- "-m elf_x86_64 --entry=begin" \ -+ "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ - "" \ - "" \ - {pe-x86-64-2a.obj.bz2 pe-x86-64-2b.obj.bz2 pe-x86-64-2c.obj.bz2} \ -@@ -45,7 +45,7 @@ run_ld_link_tests [list \ - ] \ - [list \ - "Build pe-x86-64-3" \ -- "-m elf_x86_64 --entry=begin" \ -+ "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ - "" \ - "" \ - {pe-x86-64-3a.obj.bz2 pe-x86-64-3b.obj.bz2 pe-x86-64-3c.obj.bz2 \ -@@ -55,7 +55,7 @@ run_ld_link_tests [list \ - ] \ - [list \ - "Build pe-x86-64-4" \ -- "-m elf_x86_64 --entry=begin" \ -+ "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ - "" \ - "" \ - {pe-x86-64-4a.obj.bz2 pe-x86-64-4b.obj.bz2 pe-x86-64-4c.obj.bz2 \ -@@ -65,7 +65,7 @@ run_ld_link_tests [list \ - ] \ - [list \ - "Build pe-x86-64-5" \ -- "-m elf_x86_64 --entry=begin" \ -+ "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ - "" \ - "" \ - {pe-x86-64-5.obj.bz2 } \ -@@ -75,7 +75,7 @@ run_ld_link_tests [list \ - ] \ - [list \ - "Build pe-x86-64-6" \ -- "-m elf_x86_64 --entry=main" \ -+ "-m elf_x86_64 --entry=main -z separate-code -z max-page-size=4096" \ - "" \ - "" \ - {pe-x86-64-6.obj.bz2 } \ -Index: binutils-2.37/ld/testsuite/ld-x86-64/report-reloc-1-x32.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/report-reloc-1-x32.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/report-reloc-1-x32.d +diff --git a/ld/testsuite/ld-x86-64/report-reloc-1-x32.d b/ld/testsuite/ld-x86-64/report-reloc-1-x32.d +index 63fe7b1bb8a..29a94ff8762 100644 +--- a/ld/testsuite/ld-x86-64/report-reloc-1-x32.d ++++ b/ld/testsuite/ld-x86-64/report-reloc-1-x32.d @@ -1,6 +1,6 @@ #source: report-reloc-1.s #as: --x32 --#ld: -pie -melf32_x86_64 -z report-relative-reloc -+#ld: -pie -melf32_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 +-#ld: -pie -melf32_x86_64 -z report-relative-reloc $NO_DT_RELR_LDFLAGS ++#ld: -pie -melf32_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 $NO_DT_RELR_LDFLAGS #warning_output: report-reloc-1.l #readelf: -r --wide -Index: binutils-2.37/ld/testsuite/ld-x86-64/report-reloc-1.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/report-reloc-1.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/report-reloc-1.d +diff --git a/ld/testsuite/ld-x86-64/report-reloc-1.d b/ld/testsuite/ld-x86-64/report-reloc-1.d +index 69f164c9434..63079acc98a 100644 +--- a/ld/testsuite/ld-x86-64/report-reloc-1.d ++++ b/ld/testsuite/ld-x86-64/report-reloc-1.d @@ -1,6 +1,6 @@ #source: report-reloc-1.s #as: --64 --#ld: -pie -melf_x86_64 -z report-relative-reloc -+#ld: -pie -melf_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 +-#ld: -pie -melf_x86_64 -z report-relative-reloc $NO_DT_RELR_LDFLAGS ++#ld: -pie -melf_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 $NO_DT_RELR_LDFLAGS #warning_output: report-reloc-1.l #readelf: -r --wide -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-4e.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-4e.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-4e.d -@@ -1,6 +1,6 @@ - #source: pr19609-4.s - #as: --64 -mrelax-relocations=yes --#ld: -melf_x86_64 -Ttext=0x70000000 -Tdata=0xa0000000 --no-relax -+#ld: -melf_x86_64 -Ttext=0x70000000 -Tdata=0xa0000000 --no-relax -z separate-code -z max-page-size=4096 - #objdump: -dw - - .*: +file format .* -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6a.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-6a.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6a.d -@@ -1,6 +1,6 @@ - #source: pr19609-6.s - #as: --64 -mrelax-relocations=yes --#ld: -melf_x86_64 --defsym foobar=0x80000000 -+#ld: -melf_x86_64 --defsym foobar=0x80000000 -z separate-code -z max-page-size=4096 - #objdump: -dw - - .*: +file format .* -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6b.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-6b.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6b.d -@@ -1,6 +1,6 @@ - #source: pr19609-6.s - #as: --64 -mrelax-relocations=yes --#ld: -melf_x86_64 --defsym foobar=0x80000000 --no-relax -+#ld: -melf_x86_64 --defsym foobar=0x80000000 --no-relax -z separate-code -z max-page-size=4096 - #objdump: -dw - - .*: +file format .* -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7b.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-7b.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7b.d -@@ -1,6 +1,6 @@ - #source: pr19609-7.s - #as: --64 -mrelax-relocations=yes --#ld: -melf_x86_64 -Ttext=0x80000000 --no-relax -+#ld: -melf_x86_64 -Ttext=0x80000000 --no-relax -z separate-code -z max-page-size=4096 - #objdump: -dw - - .*: +file format .* -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7d.d -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-7d.d -+++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7d.d -@@ -1,6 +1,6 @@ - #source: pr19609-7.s - #as: --x32 -mrelax-relocations=yes --#ld: -melf32_x86_64 -Ttext=0x80000000 --no-relax -+#ld: -melf32_x86_64 -Ttext=0x80000000 --no-relax -z separate-code -z max-page-size=4096 - #objdump: -dw - - .*: +file format .* ++++++ binutils-revert-nm-symversion.diff ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:03.995695612 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:03.999695613 +0100 @@ -4,61 +4,32 @@ those packages are fixed we use this patch. We have to carry it for old code streams forever. -Index: binutils-2.37/binutils/nm.c -=================================================================== ---- binutils-2.37.orig/binutils/nm.c -+++ binutils-2.37/binutils/nm.c -@@ -183,7 +183,7 @@ static int show_version = 0; /* Show the - static int show_synthetic = 0; /* Display synthesized symbols too. */ - static int line_numbers = 0; /* Print line numbers for symbols. */ - static int allow_special_symbols = 0; /* Allow special symbols. */ --static int with_symbol_versions = -1; /* Output symbol version information. */ -+static int with_symbol_versions = 0; /* Output symbol version information. */ - static int quiet = 0; /* Suppress "no symbols" diagnostic. */ +diff --git a/binutils/nm.c b/binutils/nm.c +index 2637756c647..253714ef179 100644 +--- a/binutils/nm.c ++++ b/binutils/nm.c +@@ -666,7 +666,7 @@ print_symname (const char *form, struct extended_symbol_info *info, + name = convert_utf8 (name); + } - /* The characters to use for global and local ifunc symbols. */ -Index: binutils-2.37/ld/testsuite/ld-elf/shared.exp -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-elf/shared.exp -+++ binutils-2.37/ld/testsuite/ld-elf/shared.exp -@@ -938,8 +938,7 @@ run_cc_link_tests [list \ - "-fPIC" \ - {pr26302b.c} \ - {{readelf {-sW} pr26302.rd} \ -- {nm {-u} pr26302.nd} \ -- {nm {-u -D} pr26302.nd} \ -+ {nm {-u --with-symbol-versions} pr26302.nd} \ - {nm {-u -D --with-symbol-versions} pr26302.nd}} \ - "pr26302b.so" \ - ] \ -Index: binutils-2.37/gas/testsuite/gas/symver/symver0.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/symver/symver0.d -+++ binutils-2.37/gas/testsuite/gas/symver/symver0.d -@@ -1,4 +1,4 @@ --#nm: -n -+#nm: -n --with-symbol-versions - #name: symver symver0 - # - # The #... and #pass are there to match extra symbols inserted by -Index: binutils-2.37/gas/testsuite/gas/symver/symver1.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/symver/symver1.d -+++ binutils-2.37/gas/testsuite/gas/symver/symver1.d -@@ -1,4 +1,4 @@ --#nm: -n -+#nm: -n --with-symbol-versions - #name: symver symver1 - # - # The #... and #pass are there to match extra symbols inserted by -Index: binutils-2.37/gas/testsuite/gas/symver/symver6.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/symver/symver6.d -+++ binutils-2.37/gas/testsuite/gas/symver/symver6.d -@@ -1,4 +1,4 @@ --#nm: -n -+#nm: -n --with-symbol-versions - #name: symver symver6 - # +- if (info != NULL && info->elfinfo && with_symbol_versions) ++ if (info != NULL && info->elfinfo && with_symbol_versions && 0) + { + const char *version_string; + bool hidden; +diff --git a/ld/testsuite/ld-elf/pr25708.d b/ld/testsuite/ld-elf/pr25708.d +index 60b8e31807a..1b62e25347e 100644 +--- a/ld/testsuite/ld-elf/pr25708.d ++++ b/ld/testsuite/ld-elf/pr25708.d +@@ -2,8 +2,9 @@ + #ld: -shared -version-script pr13195.t + #nm: -D --with-symbol-versions + #target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi +-#xfail: hppa64-*-* ![check_shared_lib_support] ++#xfail: *-*-* ![check_shared_lib_support] + # h8300 doesn't support -shared, and hppa64 creates .foo ++# our binutils revert the printing of symversions with nm -D + #.. + 0+ A VERS_2.0 ++++++ binutils-revert-plt32-in-branches.diff ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:04.011695616 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:04.015695617 +0100 @@ -79,11 +79,11 @@ * testsuite/ld-x86-64/pr22791-2c.s: Likewise. * testsuite/ld-x86-64/x86-64.exp: Run PR ld/22791 tests. -Index: binutils-2.37/bfd/elf64-x86-64.c -=================================================================== ---- binutils-2.37.orig/bfd/elf64-x86-64.c -+++ binutils-2.37/bfd/elf64-x86-64.c -@@ -1832,6 +1832,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd +diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c +index dc416a7f..b9f96729 100644 +--- a/bfd/elf64-x86-64.c ++++ b/bfd/elf64-x86-64.c +@@ -1817,6 +1817,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd, return true; } @@ -106,9 +106,9 @@ +} + /* Look through the relocs for a section during the first phase, and - calculate needed space in the global offset table, procedure - linkage table, and dynamic reloc sections. */ -@@ -3154,9 +3172,6 @@ elf_x86_64_relocate_section (bfd *output + calculate needed space in the global offset table, and procedure + linkage table. */ +@@ -3159,9 +3177,6 @@ elf_x86_64_relocate_section (bfd *output_bfd, && (eh == NULL || !UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh))) @@ -118,7 +118,7 @@ || (no_copyreloc_p && h->def_dynamic && !(h->root.u.def.section->flags & SEC_CODE)))) -@@ -3165,20 +3180,25 @@ elf_x86_64_relocate_section (bfd *output +@@ -3170,20 +3185,25 @@ elf_x86_64_relocate_section (bfd *output_bfd, || bfd_link_dll (info))) { bool fail = false; @@ -148,7 +148,7 @@ } else if (no_copyreloc_p || bfd_link_dll (info)) { -@@ -3187,9 +3207,10 @@ elf_x86_64_relocate_section (bfd *output +@@ -3192,9 +3212,10 @@ elf_x86_64_relocate_section (bfd *output_bfd, relocations against default and protected symbols since address of protected function and location of protected data may not be in @@ -161,11 +161,11 @@ } if (fail) -Index: binutils-2.37/gas/config/tc-i386.c -=================================================================== ---- binutils-2.37.orig/gas/config/tc-i386.c -+++ binutils-2.37/gas/config/tc-i386.c -@@ -8770,55 +8770,12 @@ output_branch (void) +diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c +index d3441988e34..8f8fb086cd8 100644 +--- a/gas/config/tc-i386.c ++++ b/gas/config/tc-i386.c +@@ -8793,55 +8793,12 @@ output_branch (void) frag_var (rs_machine_dependent, 5, i.reloc[0], subtype, sym, off, p); } @@ -221,13 +221,13 @@ if (i.tm.opcode_modifier.jump == JUMP_BYTE) { -@@ -8892,17 +8849,8 @@ output_jump (void) +@@ -8990,17 +8947,8 @@ output_jump (void) abort (); } -#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) -- if (size == 4 -- && jump_reloc == NO_RELOC +- if (flag_code == CODE_64BIT && size == 4 +- && jump_reloc == NO_RELOC && i.op[0].disps->X_add_number == 0 - && need_plt32_p (i.op[0].disps->X_add_symbol)) - jump_reloc = BFD_RELOC_X86_64_PLT32; -#endif @@ -240,21 +240,22 @@ /* All jumps handled here are signed, but don't unconditionally use a signed limit check for 32 and 16 bit jumps as we want to allow wrap -@@ -12190,10 +12138,6 @@ md_estimate_size_before_relax (fragS *fr +@@ -12299,11 +12247,6 @@ md_estimate_size_before_relax (fragS *fragP, segT segment) reloc_type = (enum bfd_reloc_code_real) fragP->fr_var; else if (size == 2) reloc_type = BFD_RELOC_16_PCREL; -#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) -- else if (need_plt32_p (fragP->fr_symbol)) +- else if (fragP->tc_frag_data.code64 && fragP->fr_offset == 0 +- && need_plt32_p (fragP->fr_symbol)) - reloc_type = BFD_RELOC_X86_64_PLT32; -#endif else reloc_type = BFD_RELOC_32_PCREL; -Index: binutils-2.37/gas/testsuite/gas/i386/ilp32/reloc64.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/ilp32/reloc64.d -+++ binutils-2.37/gas/testsuite/gas/i386/ilp32/reloc64.d +diff --git a/gas/testsuite/gas/i386/ilp32/reloc64.d b/gas/testsuite/gas/i386/ilp32/reloc64.d +index 78ca3fd9e38..a961679754a 100644 +--- a/gas/testsuite/gas/i386/ilp32/reloc64.d ++++ b/gas/testsuite/gas/i386/ilp32/reloc64.d @@ -17,7 +17,7 @@ Disassembly of section \.text: .*[ ]+R_X86_64_PC8[ ]+xtrn\+0x0*1 .*[ ]+R_X86_64_PC32[ ]+xtrn-0x0*4 @@ -264,10 +265,10 @@ .*[ ]+R_X86_64_PC8[ ]+xtrn-0x0*1 .*[ ]+R_X86_64_GOT32[ ]+xtrn .*[ ]+R_X86_64_GOT32[ ]+xtrn -Index: binutils-2.37/gas/testsuite/gas/i386/ilp32/x86-64-branch.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/ilp32/x86-64-branch.d -+++ binutils-2.37/gas/testsuite/gas/i386/ilp32/x86-64-branch.d +diff --git a/gas/testsuite/gas/i386/ilp32/x86-64-branch.d b/gas/testsuite/gas/i386/ilp32/x86-64-branch.d +index acf8c42ca97..57845fdc208 100644 +--- a/gas/testsuite/gas/i386/ilp32/x86-64-branch.d ++++ b/gas/testsuite/gas/i386/ilp32/x86-64-branch.d @@ -20,9 +20,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 ff 20 data16 jmp \*\(%rax\) [ ]*[a-f0-9]+: e8 00 00 00 00 call (0x)?1f <.*> 1b: R_X86_64_PC32 \*ABS\*\+0x10003c @@ -281,10 +282,10 @@ [ ]*[a-f0-9]+: 66 c3 data16 ret * [ ]*[a-f0-9]+: 66 c2 08 00 data16 ret \$0x8 [ ]*[a-f0-9]+: 3e 74 03[ ]+je,pt +[0-9a-fx]+ <.*> -Index: binutils-2.37/gas/testsuite/gas/i386/reloc64.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/reloc64.d -+++ binutils-2.37/gas/testsuite/gas/i386/reloc64.d +diff --git a/gas/testsuite/gas/i386/reloc64.d b/gas/testsuite/gas/i386/reloc64.d +index 540a9b77d35..ea16c68de4b 100644 +--- a/gas/testsuite/gas/i386/reloc64.d ++++ b/gas/testsuite/gas/i386/reloc64.d @@ -20,7 +20,7 @@ Disassembly of section \.text: .*[ ]+R_X86_64_PC8[ ]+xtrn\+0x0*1 .*[ ]+R_X86_64_PC32[ ]+xtrn-0x0*4 @@ -294,10 +295,10 @@ .*[ ]+R_X86_64_PC8[ ]+xtrn-0x0*1 .*[ ]+R_X86_64_GOT64[ ]+xtrn .*[ ]+R_X86_64_GOT32[ ]+xtrn -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-2.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-branch-2.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-2.d +diff --git a/gas/testsuite/gas/i386/x86-64-branch-2.d b/gas/testsuite/gas/i386/x86-64-branch-2.d +index fab75a6394c..e025de90b68 100644 +--- a/gas/testsuite/gas/i386/x86-64-branch-2.d ++++ b/gas/testsuite/gas/i386/x86-64-branch-2.d @@ -9,12 +9,12 @@ Disassembly of section .text: 0+ <bar-0xb>: @@ -313,10 +314,10 @@ [ ]*[a-f0-9]+: 66 c3 retw * [ ]*[a-f0-9]+: 66 c2 08 00 retw \$0x8 #pass -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-jump.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-jump.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-jump.d +diff --git a/gas/testsuite/gas/i386/x86-64-jump.d b/gas/testsuite/gas/i386/x86-64-jump.d +index 7d2c994ce26..58ad424badb 100644 +--- a/gas/testsuite/gas/i386/x86-64-jump.d ++++ b/gas/testsuite/gas/i386/x86-64-jump.d @@ -9,7 +9,7 @@ Disassembly of section .text: 0+ <.text>: @@ -335,10 +336,10 @@ [ ]*[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\) -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d +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> @@ -352,10 +353,10 @@ [ ]*[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 -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-3.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-nop-3.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-3.d +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 ++++ b/gas/testsuite/gas/i386/x86-64-nop-3.d @@ -18,5 +18,5 @@ Disassembly of section .text: Disassembly of section .altinstr_replacement: @@ -363,32 +364,32 @@ - +[a-f0-9]+: e9 00 00 00 00 jmp 5 <_start\+0x5> 1: R_X86_64_PLT32 foo-0x4 + +[a-f0-9]+: e9 00 00 00 00 jmp 5 <_start\+0x5> 1: R_X86_64_PC32 foo-0x4 #pass -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-4.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-nop-4.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-4.d -@@ -21,5 +21,5 @@ Disassembly of section .altinstr_replace +diff --git a/gas/testsuite/gas/i386/x86-64-nop-4.d b/gas/testsuite/gas/i386/x86-64-nop-4.d +index 2da858db994..e390628b335 100644 +--- a/gas/testsuite/gas/i386/x86-64-nop-4.d ++++ b/gas/testsuite/gas/i386/x86-64-nop-4.d +@@ -21,5 +21,5 @@ Disassembly of section .altinstr_replacement: +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax - +[a-f0-9]+: e9 00 00 00 00 jmp b <_start\+0xb> 7: R_X86_64_PLT32 foo-0x4 + +[a-f0-9]+: e9 00 00 00 00 jmp b <_start\+0xb> 7: R_X86_64_PC32 foo-0x4 #pass -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-5.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-nop-5.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-5.d -@@ -24,5 +24,5 @@ Disassembly of section .altinstr_replace +diff --git a/gas/testsuite/gas/i386/x86-64-nop-5.d b/gas/testsuite/gas/i386/x86-64-nop-5.d +index d5c84c1edf8..69820d54de8 100644 +--- a/gas/testsuite/gas/i386/x86-64-nop-5.d ++++ b/gas/testsuite/gas/i386/x86-64-nop-5.d +@@ -24,5 +24,5 @@ Disassembly of section .altinstr_replacement: +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax - +[a-f0-9]+: e9 00 00 00 00 jmp d <_start\+0xd> 9: R_X86_64_PLT32 foo-0x4 + +[a-f0-9]+: e9 00 00 00 00 jmp d <_start\+0xd> 9: R_X86_64_PC32 foo-0x4 #pass -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-2.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-relax-2.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-2.d +diff --git a/gas/testsuite/gas/i386/x86-64-relax-2.d b/gas/testsuite/gas/i386/x86-64-relax-2.d +index fba47c14850..0949ab23907 100644 +--- a/gas/testsuite/gas/i386/x86-64-relax-2.d ++++ b/gas/testsuite/gas/i386/x86-64-relax-2.d @@ -11,12 +11,12 @@ Disassembly of section .text: 0+ <foo>: [ ]*[a-f0-9]+: eb 24 jmp 26 <local> @@ -407,10 +408,10 @@ 0+22 <hidden_def>: [ ]*[a-f0-9]+: c3 ret * -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-3.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-relax-3.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-3.d +diff --git a/gas/testsuite/gas/i386/x86-64-relax-3.d b/gas/testsuite/gas/i386/x86-64-relax-3.d +index 01df9ef340e..d16e6a55395 100644 +--- a/gas/testsuite/gas/i386/x86-64-relax-3.d ++++ b/gas/testsuite/gas/i386/x86-64-relax-3.d @@ -12,10 +12,10 @@ Disassembly of section .text: [ ]*[a-f0-9]+: eb 1b jmp 1f <hidden_def> [ ]*[a-f0-9]+: eb 1b jmp 21 <global_def> @@ -426,34 +427,37 @@ 0+1f <hidden_def>: [ ]*[a-f0-9]+: c3 ret * -Index: binutils-2.37/ld/testsuite/ld-x86-64/mpx1c.rd -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/mpx1c.rd -+++ binutils-2.37/ld/testsuite/ld-x86-64/mpx1c.rd +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+ +.* #... -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-1.err -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-1.err +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 +--- a/ld/testsuite/ld-x86-64/pr22791-1.err +++ /dev/null @@ -1,2 +0,0 @@ -.*relocation R_X86_64_PC32 against symbol `foo' can not be used when making a PIE object; recompile with -fPIE -#... -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-1a.c -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-1a.c +diff --git a/ld/testsuite/ld-x86-64/pr22791-1a.c b/ld/testsuite/ld-x86-64/pr22791-1a.c +deleted file mode 100644 +index cd0130cacdf..00000000000 +--- a/ld/testsuite/ld-x86-64/pr22791-1a.c +++ /dev/null @@ -1,4 +0,0 @@ -void -foo (void) -{ -} -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-1b.s -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-1b.s +diff --git a/ld/testsuite/ld-x86-64/pr22791-1b.s b/ld/testsuite/ld-x86-64/pr22791-1b.s +deleted file mode 100644 +index 9751db49aa5..00000000000 +--- a/ld/testsuite/ld-x86-64/pr22791-1b.s +++ /dev/null @@ -1,6 +0,0 @@ - .text @@ -462,9 +466,10 @@ -main: - movl foo(%rip), %eax - .size main, .-main -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2.rd -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2.rd +diff --git a/ld/testsuite/ld-x86-64/pr22791-2.rd b/ld/testsuite/ld-x86-64/pr22791-2.rd +deleted file mode 100644 +index 70deb30d84d..00000000000 +--- a/ld/testsuite/ld-x86-64/pr22791-2.rd +++ /dev/null @@ -1,6 +0,0 @@ -#failif @@ -473,9 +478,10 @@ -#... -[0-9a-f ]+R_X86_64_NONE.* -#... -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2a.s -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2a.s +diff --git a/ld/testsuite/ld-x86-64/pr22791-2a.s b/ld/testsuite/ld-x86-64/pr22791-2a.s +deleted file mode 100644 +index 0a855024d74..00000000000 +--- a/ld/testsuite/ld-x86-64/pr22791-2a.s +++ /dev/null @@ -1,8 +0,0 @@ - .text @@ -486,9 +492,10 @@ - jmp bar - .size foo, .-foo - .section .note.GNU-stack,"",@progbits -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2b.c -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2b.c +diff --git a/ld/testsuite/ld-x86-64/pr22791-2b.c b/ld/testsuite/ld-x86-64/pr22791-2b.c +deleted file mode 100644 +index 79ef27c0857..00000000000 +--- a/ld/testsuite/ld-x86-64/pr22791-2b.c +++ /dev/null @@ -1,7 +0,0 @@ -#include <stdio.h> @@ -498,9 +505,10 @@ -{ - puts ("PASS"); -} -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2c.s -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2c.s +diff --git a/ld/testsuite/ld-x86-64/pr22791-2c.s b/ld/testsuite/ld-x86-64/pr22791-2c.s +deleted file mode 100644 +index 1460d1b8288..00000000000 +--- a/ld/testsuite/ld-x86-64/pr22791-2c.s +++ /dev/null @@ -1,12 +0,0 @@ - .text @@ -515,10 +523,10 @@ - ret - .size main, .-main - .section .note.GNU-stack,"",@progbits -Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22842b.S -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22842b.S -+++ binutils-2.37/ld/testsuite/ld-x86-64/pr22842b.S +diff --git a/ld/testsuite/ld-x86-64/pr22842b.S b/ld/testsuite/ld-x86-64/pr22842b.S +index f0659cd901e..b9dd81345b7 100644 +--- a/ld/testsuite/ld-x86-64/pr22842b.S ++++ b/ld/testsuite/ld-x86-64/pr22842b.S @@ -7,7 +7,7 @@ main: leaq bar(%rip), %rdi addq %rax, %rdi @@ -528,14 +536,15 @@ xorl %eax, %eax popq %rcx retq -Index: binutils-2.37/ld/testsuite/ld-x86-64/x86-64.exp -=================================================================== ---- binutils-2.37.orig/ld/testsuite/ld-x86-64/x86-64.exp -+++ binutils-2.37/ld/testsuite/ld-x86-64/x86-64.exp -@@ -1272,44 +1272,6 @@ if { [isnative] && [check_compiler_avail +diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp +index 17fd10ee121..b4ae52ab376 100644 +--- a/ld/testsuite/ld-x86-64/x86-64.exp ++++ b/ld/testsuite/ld-x86-64/x86-64.exp +@@ -1264,44 +1264,6 @@ if { [isnative] && [check_compiler_available] } { + {readelf -lW pr22393-3b.rd}} \ "pr22393-3-static" \ ] \ - [list \ +- [list \ - "Build pr22791-1.so" \ - "-shared" \ - "-fPIC -Wa,-mx86-used-note=yes" \ @@ -573,14 +582,14 @@ - {{readelf -drW pr22791-2.rd}} \ - "pr22791-2" \ - ] \ -- [list \ + [list \ "Build pr22842.so" \ "-shared" \ - "-fPIC -Wa,-mx86-used-note=yes" \ -@@ -1719,15 +1681,6 @@ if { [isnative] && [check_compiler_avail +@@ -1703,15 +1665,6 @@ if { [isnative] && [check_compiler_available] } { + "pr22393-3-static" \ "pass.out" \ ] \ - [list \ +- [list \ - "Run pr22791-2" \ - "-pie -Wl,--no-as-needed tmpdir/pr22791-2.so" \ - "-Wa,-mx86-used-note=yes" \ @@ -589,33 +598,7 @@ - "pass.out" \ - "$NOPIE_CFLAGS" \ - ] \ -- [list \ + [list \ "Run pr22842" \ "-pie -Wl,--no-as-needed tmpdir/pr22842.so" \ - "-Wa,-mx86-used-note=yes" \ -Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-3.d -=================================================================== ---- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-branch-3.d -+++ binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-3.d -@@ -8,15 +8,15 @@ - Disassembly of section .text: - - 0+ <bar-0xd>: --[ ]*[a-f0-9]+: 66 e9 00 00 00 00 data16 jmp 6 <bar-0x7> 2: R_X86_64_PLT32 foo-0x4 --[ ]*[a-f0-9]+: 66 48 e9 00 00 00 00 data16 rex\.W jmp d <bar> 9: R_X86_64_PLT32 foo-0x4 -+[ ]*[a-f0-9]+: 66 e9 00 00 00 00 data16 jmp 6 <bar-0x7> 2: R_X86_64_PC32 foo-0x4 -+[ ]*[a-f0-9]+: 66 48 e9 00 00 00 00 data16 rex\.W jmp d <bar> 9: R_X86_64_PC32 foo-0x4 - - 0+d <bar>: - [ ]*[a-f0-9]+: 89 c3 mov %eax,%ebx --[ ]*[a-f0-9]+: 66 e8 00 00 00 00 data16 call 15 <bar\+0x8> 11: R_X86_64_PLT32 foo-0x4 --[ ]*[a-f0-9]+: 66 48 e8 00 00 00 00 data16 rex\.W call 1c <bar\+0xf> 18: R_X86_64_PLT32 foo-0x4 -+[ ]*[a-f0-9]+: 66 e8 00 00 00 00 data16 call 15 <bar\+0x8> 11: R_X86_64_PC32 foo-0x4 -+[ ]*[a-f0-9]+: 66 48 e8 00 00 00 00 data16 rex\.W call 1c <bar\+0xf> 18: R_X86_64_PC32 foo-0x4 - [ ]*[a-f0-9]+: 66 c7 f8 00 00 xbeginw 21 <bar\+0x14> 1f: R_X86_64_PC16 foo-0x2 --[ ]*[a-f0-9]+: 66 48 c7 f8 00 00 00 00 data16 rex\.W xbegin 29 <bar\+0x1c> 25: R_X86_64_PLT32 foo-0x4 -+[ ]*[a-f0-9]+: 66 48 c7 f8 00 00 00 00 data16 rex\.W xbegin 29 <bar\+0x1c> 25: R_X86_64_PC32 foo-0x4 - [ ]*[a-f0-9]+: 48 ff 18 lcallq \*\(%rax\) - [ ]*[a-f0-9]+: 48 ff 29 ljmpq \*\(%rcx\) - #pass ++++++ binutils-skip-rpaths.patch ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:04.027695621 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:04.031695622 +0100 @@ -56,7 +56,7 @@ asection *sinterp; bfd *abfd; struct bfd_link_hash_entry *ehdr_start = NULL; -@@ -1608,7 +1633,67 @@ ldelf_before_allocation (char *audit, char *depaudit, +@@ -1572,7 +1597,65 @@ ldelf_before_allocation (char *audit, char *depaudit, by dynamic linking. */ rpath = command_line.rpath; if (rpath == NULL) @@ -73,14 +73,12 @@ + fseek (ldso, 0, SEEK_END); + endcur = ftell (ldso); + fseek (ldso, 0, SEEK_SET); -+ dirs = xmalloc (endcur + 1); ++ dirs = xmalloc (endcur); + if (fread (dirs, 1, endcur, ldso) != (size_t) endcur) + { + free (dirs); + dirs = NULL; + } -+ else -+ dirs[endcur] = '\0'; + } + if (dirs) + { ++++++ cross-avr-nesc-as.patch ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:04.059695629 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:04.063695630 +0100 @@ -2,11 +2,12 @@ =================================================================== --- gas/config/tc-avr-nesc.h.orig 2016-02-01 09:58:37.419903606 +0100 +++ gas/config/tc-avr-nesc.h 2016-02-01 09:58:39.631928732 +0100 -@@ -143,8 +143,12 @@ extern long md_pcrel_from_section (struc +Index: gas/expr.c +@@ -143,8 +143,12 @@ extern int avr_force_relocation (struct fix *); would print `12 34 56 78'. The default value is 4. */ #define LISTING_WORD_SIZE 2 --/* AVR port uses `$' as a logical line separator. */ +-/* AVR port uses `$' as a logical line separator by default. */ -#define LEX_DOLLAR 0 +/* AVR port uses `$' as a logical line separator and doesn't + allow it in symbols. We allow it in the middle of symbols. @@ -17,7 +18,7 @@ /* An `.lcomm' directive with no explicit alignment parameter will use this macro to set P2VAR to the alignment that a request for -Index: gas/expr.c + =================================================================== --- gas/expr.c.orig 2016-02-01 09:58:35.743884569 +0100 +++ gas/expr.c 2016-02-01 09:58:39.631928732 +0100 ++++++ pre_checkin.sh ++++++ --- /var/tmp/diff_new_pack.mZDkkO/_old 2022-03-05 14:43:04.147695651 +0100 +++ /var/tmp/diff_new_pack.mZDkkO/_new 2022-03-05 14:43:04.151695652 +0100 @@ -5,7 +5,7 @@ rm -f cross-*-binutils.spec cross-*-binutils.changes # sh4 is stuck in the testsuite -for arch in aarch64 hppa hppa64 arm i386 x86_64 s390 s390x ppc ppc64 ppc64le ia64 sparc sparc64 spu avr mips m68k epiphany rx riscv64 xtensa; do +for arch in aarch64 hppa hppa64 arm i386 x86_64 s390 s390x ppc ppc64 ppc64le ia64 sparc sparc64 spu avr pru mips m68k epiphany rx riscv64 xtensa; do echo -n "Building package for $arch --> cross-$arch-binutils ..."