summaryrefslogtreecommitdiff
path: root/packages/binutils/2.37
AgeCommit message (Collapse)AuthorFilesLines
2022-02-11Run patches thru `manage-packages -P`Alexey Neyman18-121/+38
This refreshes the line numbers, removes any fuzz (which would make any future forward ports easier) and standardizes the patch/file headers (which makes them easier to read). Signed-off-by: Alexey Neyman <stilor@att.net>
2022-02-03binutils-2.37: add more patches from upstream release branchHans-Christian Noren Egtvedt9-0/+582
Fetch in various patches from binutils-2_37-branch upstream. The most vital change is the 0012-pr28391-strip-objcopy-preserve-dates-a-cannot-set-time.patch which allows building large upstream projects like Qt WebEngine without need 100k's of file descriptors open. Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2021-10-10binutils-2.37: Remove obsolete ld_makefile patchAlexey Brodkin1-27/+0
The patch in question was first introduced in [1] as a copy-paste from OpenEmbedded [2], where it seems to exist on the first ever SVN commit. Later it was removed from OE in [3] on switching to Binutils 2.25. It's not clear why it was introduced in the first place and why it got removed later. But given in OE/Yocto it was missing since 2015 and never was reverted, I guess it is not strictly necessary at least with recent Binutils. So it's an extra patch which adds questionable value. Moreover it gets in the way if one wants to merge a couple of separate toolchains like little- & big-enadian so that "bin" & "lib" folder contain all the binaries and libs simultaneously. W/ that patch in place ldscripts won't co-exist, but instead the latest set of scripts will override all the rest. And in case of aforementioned example w/ merged little- & big-endian toolchains BE ldscripts will override LE ones leading to a funny behavior: on linking w/o explicitly set endianess (via "-EL" or "-EB") default linker scripts won't match the GCC driver used: ------------------------------->8--------------------------- $ arc-elf32-gcc test.c -Wl,-marcv2elfx ... .../bin/../lib/gcc/arc-snps-elf/11.2.0/../../../../arc-snps-elf/bin/ld: .../bin/../lib/gcc/arc-snps-elf/11.2.0/../../../../arc-snps-elf/lib/crt0.o: compiled for a little endian system and target is big endian .../bin/../lib/gcc/arc-snps-elf/11.2.0/../../../../arc-snps-elf/bin/ld: failed to merge target specific data of file .../bin/../lib/gcc/arc-snps-elf/11.2.0/../../../../arc-snps-elf/lib/crt0.o .../bin/../lib/gcc/arc-snps-elf/11.2.0/../../../../arc-snps-elf/bin/ld: .../bin/../lib/gcc/arc-snps-elf/11.2.0/crti.o: compiled for a little endian system and target is big endian ... ------------------------------->8--------------------------- [1] https://github.com/crosstool-ng/crosstool-ng/commit/cfbcdd378646594887c9d488aee529c07838ee8e [2] https://github.com/openembedded/openembedded-core/commit/4b46c1f6e891b1ddd5968536440b888661fade3e [3] https://github.com/openembedded/openembedded-core/commit/3c7fe424f850af70989ad682dd9c5be70cd02ca5 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2021-09-14binutils: Add MinGW build fix from 2.37 branchArtem Panfilov1-0/+56
This fixes a defect introduced in 25162c7. The "uint" type has not been explicitly defined here on mingw, causing compilation to fail. Signed-off-by: Artem Panfilov <artemp@synopsys.com>
2021-09-13binutils 2.37: arc: Fix for 32-bit hostsAlexey Brodkin1-0/+217
While building statically-linked executables for ARC on 32-bit platform LD segfaulted like that: --------------------------->8------------------------- $ gcc test.c -static potentially unexpected fatal signal 11. Path: /arc_gnu_2021.03_prebuilt_glibc_le_archs_native_install/arc-snps-linux-gnu/bin/ld CPU: 0 PID: 79 Comm: ld Not tainted 5.10.43 #8 Invalid Read @ 0x00000020 by insn @ 0x40bbe @off 0x40bbe in [/arc_gnu_2021.03_prebuilt_glibc_le_archs_native_install/arc-snps-linux-gnu/bin/ld] VMA: 0x00010000 to 0x0010e000 ECR: 0x00050100 EFA: 0x00000020 ERET: 0x00040bbe STAT: 0x80080082 [IE U ] BTA: 0x0003fc24 SP: 0x5fdb8dec FP: 0x00129598 BLK: 0x40b66 LPS: 0x2008c602 LPE: 0x2008c63e LPC: 0x00000001 r00: 0x008392f2 r01: 0x00000001 r02: 0x00000000 r03: 0x008392f2 r04: 0x00000058 r05: 0x00e37e88 r06: 0x00eb8ea8 r07: 0x00a837e8 r08: 0x0000003f r09: 0x736e7520 r10: 0x2011aa74 r11: 0x001147f4 r12: 0x00a83834 r13: 0x00a837e8 r14: 0x00ce92b8 r15: 0x00112130 r16: 0x00eb8ea8 r17: 0x00000058 r18: 0x001273b8 r19: 0x00e37e88 r20: 0x00129598 r21: 0x5fdb8e74 r22: 0x00112130 r23: 0x00179bb0 r24: 0x00170684 r25: 0x20122490 collect2: fatal error: ld terminated with signal 11 [Segmentation fault] compilation terminated. --------------------------->8------------------------- Originally found during native building on ARC board, but later re-produced on other 32-bit systems like i386/i586. For all the gory details please refer to [1]. Original fix could be found here [2]. [1] https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/issues/402 [2] https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/commit/29d31b4ed96fcbc774740fac91ef77cb3d62a714 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2021-08-16binutils: add version 2.37Alexey Brodkin11-0/+622
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>