diff --git a/README.First-for.SUSE.packagers b/README.First-for.SUSE.packagers deleted file mode 100644 index affa1e7..0000000 --- a/README.First-for.SUSE.packagers +++ /dev/null @@ -1,14 +0,0 @@ -IMPORTANT: Please change binutils.spec and then run ./pre_checkin.sh! -Do not change cross-*.spec directly! - -The spec file triggers by it's %name if it compiles the native or the -cross version and pre_checkin.sh (called automatically by checkin too) -copies over the binutils.spec and changes the Name field, so you shouldn't -need to worry too much about the cross packages - -Updating to some branch head: -> cvs -z 9 -d :pserver:anoncvs@stravinsky:/cvs/src export -r binutils-2_23-branch binutils - -Thanks, -Stephan Kulow - diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..e10a7b3 --- /dev/null +++ b/_multibuild @@ -0,0 +1,25 @@ + + aarch64 + hppa + hppa64 + arm + i386 + x86_64 + s390 + s390x + ppc + ppc64 + ppc64le + ia64 + sparc + sparc64 + spu + avr + pru + mips + m68k + epiphany + rx + riscv64 + xtensa + diff --git a/binutils.changes b/binutils.changes index 065190f..a3b9b9d 100644 --- a/binutils.changes +++ b/binutils.changes @@ -1,3 +1,24 @@ +------------------------------------------------------------------- +Wed May 4 12:08:27 UTC 2022 - Martin Liška + +- Renumber Sources. + +------------------------------------------------------------------- +Wed May 4 10:22:26 UTC 2022 - Martin Liška + +- Fix ExcludeArch for ppc. + +------------------------------------------------------------------- +Wed May 4 07:10:59 UTC 2022 - Martin Liška + +- Make multibuild utilize only the main binutils.spec file. +- Remove not needed README.First-for.SUSE.packagers, pre_checkin.sh. + +------------------------------------------------------------------- +Mon May 2 10:15:26 UTC 2022 - Martin Liška + +- Start using _multibuild for cross binutils. + ------------------------------------------------------------------- Mon Apr 11 13:49:19 UTC 2022 - Michael Matz diff --git a/binutils.spec b/binutils.spec index e82faeb..6141f79 100644 --- a/binutils.spec +++ b/binutils.spec @@ -16,7 +16,33 @@ # +%define flavor @BUILD_FLAVOR@%{nil} + +%if "%{flavor}" != "" +%define cross 1 +%define targetarch %(echo %flavor | sed -e 's/i.86/i586/;s/ppc/powerpc/') +%define TARGET %targetarch + +# Spec parsing does not support execution of external command, +# that's why we use the if-else chain. +%if "%{flavor}" == "i386" +ExcludeArch: %ix86 +%else +%if "%{flavor}" == "arm" +ExcludeArch: %arm +%else +ExcludeArch: %{flavor} +%endif +%endif + +%endif + +%if "%{flavor}" == "" Name: binutils +%else +Name: cross-%{flavor}-binutils +%endif + BuildRequires: bc BuildRequires: bison BuildRequires: dejagnu @@ -88,11 +114,9 @@ Summary: GNU Binutils License: GFDL-1.3-only AND GPL-3.0-or-later Group: Development/Tools/Building Source: binutils-%{version}.tar.bz2 -Source4: binutils-%{version}.tar.bz2.sig -Source5: binutils.keyring -Source1: pre_checkin.sh -Source2: README.First-for.SUSE.packagers -Source3: baselibs.conf +Source2: binutils-%{version}.tar.bz2.sig +Source3: binutils.keyring +Source4: baselibs.conf Patch1: binutils-2.38-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff diff --git a/cross-aarch64-binutils.changes b/cross-aarch64-binutils.changes deleted file mode 100644 index 065190f..0000000 --- a/cross-aarch64-binutils.changes +++ /dev/null @@ -1,4121 +0,0 @@ -------------------------------------------------------------------- -Mon Apr 11 13:49:19 UTC 2022 - Michael Matz - -- Update binutils-2.38-branch.diff.gz (to c210342d7f5) to include - recognition of 'z16' name for 'arch14' on s390. [bsc#1198237] - -------------------------------------------------------------------- -Mon Mar 21 16:40:26 UTC 2022 - Marcus Meissner - -- Add usage of a SUSE_ZNOW environment variable which allows switching - on "-z now" by default using "export SUSE_ZNOW=1", similar to - the SUSE_ASNEEDED variable. Adds binutils-znow.patch. - -------------------------------------------------------------------- -Thu Mar 10 21:22:20 UTC 2022 - Wolfgang Bauer - -- Update binutils-skip-rpaths.patch: add back fix for boo#1191473, - which got lost in the update to 2.38. - -------------------------------------------------------------------- -Fri Mar 4 10:44:39 UTC 2022 - Martin Liška - -- Update binutils-2.38-branch.diff.gz in order to include PR28879. - -------------------------------------------------------------------- -Tue Mar 1 12:41:27 UTC 2022 - Michael Matz - -- From Stefan Brüns : - * Install symlinks for all target specific tools on - arm-eabi-none [bsc#1185712] - -------------------------------------------------------------------- -Thu Feb 24 09:10:44 UTC 2022 - Martin Liška - -- 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 - -- Use verbose mode for make for cross compilers. - -------------------------------------------------------------------- -Wed Feb 23 17:52:15 UTC 2022 - Michael Matz - -- Make it build on SLE-11 again. - -------------------------------------------------------------------- -Tue Feb 22 09:13:15 UTC 2022 - Martin Liška - -- Use verbose mode for make. - -------------------------------------------------------------------- -Sat Feb 12 19:13:31 UTC 2022 - Martin Liška - -- 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 - -- Enable PRU architecture for AM335x CPU (Beagle Bone Black board) - -------------------------------------------------------------------- -Thu Jan 27 20:36:30 UTC 2022 - Dirk Müller - -- use fdupes on datadir -- remove RPM_BUILD_ROOT usage and other cleanups - -------------------------------------------------------------------- -Fri Nov 12 13:20:09 UTC 2021 - Martin Liška - -- Rebase binutils-2.37-branch.diff: fixes PR28494. - -------------------------------------------------------------------- -Fri Nov 5 16:54:36 UTC 2021 - Michael Matz - -- 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 - -- Rebase binutils-2.37-branch.diff: fixes PR28523 aka boo#1188941. - -------------------------------------------------------------------- -Tue Nov 2 15:57:53 UTC 2021 - Michael Matz - -- Fix empty man-pages from broken release tarball [PR28144]. - -------------------------------------------------------------------- -Mon Nov 1 09:34:38 UTC 2021 - Martin Liška - -- Update binutils-skip-rpaths.patch with contained a memory corruption - (boo#1191473). - -------------------------------------------------------------------- -Fri Oct 8 14:11:44 UTC 2021 - Michael Matz - -- 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 schubi@suse.de - -- Using libalternatives instead of update-alternatives. - -------------------------------------------------------------------- -Wed Sep 8 15:09:58 UTC 2021 - Michael Matz - -- 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 - -- Bump binutils-2.37-branch.diff: fixes PR28138. - -------------------------------------------------------------------- -Thu Jul 22 17:36:14 UTC 2021 - Martin Liška - -- Use LTO & PGO build. - -------------------------------------------------------------------- -Thu Jul 22 15:01:27 UTC 2021 - Martin Liška - -- Update to binutils 2.37: - * The GNU Binutils sources now requires a C99 compiler and library to - build. - * Support for the arm-symbianelf format has been removed. - * Support for Realm Management Extension (RME) for AArch64 has been - added. - * A new linker option '-z report-relative-reloc' for x86 ELF targets - has been added to report dynamic relative relocations. - * A new linker option '-z start-stop-gc' has been added to disable - special treatment of __start_*/__stop_* references when - --gc-sections. - * A new linker options '-Bno-symbolic' has been added which will - cancel the '-Bsymbolic' and '-Bsymbolic-functions' options. - * The readelf tool has a new command line option which can be used to - specify how the numeric values of symbols are reported. - --sym-base=0|8|10|16 tells readelf to display the values in base 8, - base 10 or base 16. A sym base of 0 represents the default action - of displaying values under 10000 in base 10 and values above that in - base 16. - * A new format has been added to the nm program. Specifying - '--format=just-symbols' (or just using -j) will tell the program to - only display symbol names and nothing else. - * A new command line option '--keep-section-symbols' has been added to - objcopy and strip. This stops the removal of unused section symbols - when the file is copied. Removing these symbols saves space, but - sometimes they are needed by other tools. - * The '--weaken', '--weaken-symbol' and '--weaken-symbols' options - supported by objcopy now make undefined symbols weak on targets that - support weak symbols. - * Readelf and objdump can now display and use the contents of .debug_sup - sections. - * Readelf and objdump will now follow links to separate debug info - files by default. This behaviour can be stopped via the use of the - new '-wN' or '--debug-dump=no-follow-links' options for readelf and - the '-WN' or '--dwarf=no-follow-links' options for objdump. Also - the old behaviour can be restored by the use of the - '--enable-follow-debug-links=no' configure time option. - - The semantics of the =follow-links option have also been slightly - changed. When enabled, the option allows for the loading of symbol - tables and string tables from the separate files which can be used - to enhance the information displayed when dumping other sections, - but it does not automatically imply that information from the - separate files should be displayed. - - If other debug section display options are also enabled (eg - '--debug-dump=info') then the contents of matching sections in both - the main file and the separate debuginfo file *will* be displayed. - This is because in most cases the debug section will only be present - in one of the files. - - If however non-debug section display options are enabled (eg - '--sections') then the contents of matching parts of the separate - debuginfo file will *not* be displayed. This is because in most - cases the user probably only wanted to load the symbol information - from the separate debuginfo file. In order to change this behaviour - a new command line option --process-links can be used. This will - allow di0pslay options to applied to both the main file and any - separate debuginfo files. - * Nm has a new command line option: '--quiet'. This suppresses "no - symbols" diagnostic. -- Includes fixes for these CVEs: - bnc#1181452 aka CVE-2021-20197 aka PR26945 - bnc#1183511 aka CVE-2021-20284 aka PR26931 - bnc#1184519 aka CVE-2021-20294 aka PR26929 - bnc#1184620 aka CVE-2021-3487 aka PR26946 - bnc#1184794 aka CVE-2020-35448 aka PR26574 -- Also fixes: - bsc#1183909 - slow performance of stripping some binaries -- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff, - binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff, - binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff -- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and - ppc-use-local-plt.patch. -- Add binutils-2.37-branch.diff.gz. - -------------------------------------------------------------------- -Fri May 7 15:34:22 UTC 2021 - Andreas Schwab - -- ppc-ensure-undef-dynamic-weak-undefined.patch: PPC: ensure_undef_dynamic - on weak undef only in plt -- ppc-use-local-plt.patch: PowerPC use_local_plt (prerequisite for above - patch) - -------------------------------------------------------------------- -Fri Mar 26 10:06:58 UTC 2021 - Martin Liška - -- Update 2.36 branch diff which fixes PR27587. - -------------------------------------------------------------------- -Wed Mar 3 12:53:27 UTC 2021 - Martin Liška - -- Do not run make TARGET-bfd=headers separately. - -------------------------------------------------------------------- -Mon Mar 1 09:01:59 UTC 2021 - Martin Liška - -- Bump 2.36 branch diff (includes fix for PR27441 aka bsc#1182252). - -------------------------------------------------------------------- -Thu Feb 4 08:40:53 UTC 2021 - Martin Liška - -- Bump 2.36 branch diff. - -------------------------------------------------------------------- -Wed Feb 3 08:39:37 UTC 2021 - Martin Liška - -- Update 2.36 branch diff which should fix PR27311 completely. - It fixes also PR27284. -- Remove temporary fix 0001-PR27311-ld.bfd-symbol-from-plugin-undefined-referenc.patch. - -------------------------------------------------------------------- -Tue Feb 2 13:07:22 UTC 2021 - Martin Liška - -- Add temporary upstream fix for PR27311 - 0001-PR27311-ld.bfd-symbol-from-plugin-undefined-referenc.patch. - -------------------------------------------------------------------- -Sun Jan 24 16:56:39 UTC 2021 - Martin Liška - -- Update to binutils 2.36: - New features in the Assembler: - General: - * When setting the link order attribute of ELF sections, it is now - possible to use a numeric section index instead of symbol name. - * Added a .nop directive to generate a single no-op instruction in - a target neutral manner. This instruction does have an effect on - DWARF line number generation, if that is active. - * Removed --reduce-memory-overheads and --hash-size as gas now - uses hash tables that can be expand and shrink automatically. - X86/x86_64: - * Add support for AVX VNNI, HRESET, UINTR, TDX, AMX and Key - Locker instructions. - * Support non-absolute segment values for lcall and ljmp. - * Add {disp16} pseudo prefix to x86 assembler. - * Configure with --enable-x86-used-note by default for Linux/x86. - ARM/AArch64: - * Add support for Cortex-A78, Cortex-A78AE and Cortex-X1, - Cortex-R82, Neoverse V1, and Neoverse N2 cores. - * Add support for ETMv4 (Embedded Trace Macrocell), ETE (Embedded - Trace Extension), TRBE (Trace Buffer Extension), CSRE (Call - Stack Recorder Extension) and BRBE (Branch Record Buffer - Extension) system registers. - * Add support for Armv8-R and Armv8.7-A ISA extensions. - * Add support for DSB memory nXS barrier, WFET and WFIT - instruction for Armv8.7. - * Add support for +csre feature for -march. Add CSR PDEC - instruction for CSRE feature in AArch64. - * Add support for +flagm feature for -march in Armv8.4 AArch64. - * Add support for +ls64 feature for -march in Armv8.7 - AArch64. Add atomic 64-byte load/store instructions for this - feature. - * Add support for +pauth (Pointer Authentication) feature for - -march in AArch64. - New features in the Linker: - * Add --error-handling-script= command line option to allow - a helper script to be invoked when an undefined symbol or a - missing library is encountered. This option can be suppressed - via the configure time switch: --enable-error-handling-script=no. - * Add -z x86-64-{baseline|v[234]} to the x86 ELF linker to mark - x86-64-{baseline|v[234]} ISA level as needed. - * Add -z unique-symbol to avoid duplicated local symbol names. - * The creation of PE format DLLs now defaults to using a more - secure set of DLL characteristics. - * The linker now deduplicates the types in .ctf sections. The new - command-line option --ctf-share-types describes how to do this: - its default value, share-unconflicted, produces the most compact - output. - * The linker now omits the "variable section" from .ctf sections - by default, saving space. This is almost certainly what you - want unless you are working on a project that has its own - analogue of symbol tables that are not reflected in the ELF - symtabs. - New features in other binary tools: - * The ar tool's previously unused l modifier is now used for - specifying dependencies of a static library. The arguments of - this option (or --record-libdeps long form option) will be - stored verbatim in the __.LIBDEP member of the archive, which - the linker may read at link time. - * Readelf can now display the contents of LTO symbol table - sections when asked to do so via the --lto-syms command line - option. - * Readelf now accepts the -C command line option to enable the - demangling of symbol names. In addition the --demangle=