Commit Graph

49 Commits

Author SHA1 Message Date
Chris Packham
4a2a9c3699 binutils: Bring in upstream performance fix
Bring in an upstream fix for a performance issue in the 2.41 release.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2023-12-08 12:19:38 +13:00
Hans-Christian Noren Egtvedt
d5694c660f binutils: Add binutils 2.41
https://sourceware.org/pipermail/binutils/2023-July/128719.html

Forward ported all patches from binutils 2.40, with only minor
adjustment to match new upstream code in patch
0007-poison-system-directories.patch.

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2023-12-08 12:19:38 +13:00
Chris Packham
711e7bc114 binutils: Add binutils 2.40
https://sourceware.org/pipermail/binutils/2023-January/125671.html

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2023-03-08 16:54:34 +13:00
Chris Packham
29b6e00368 binutils: Add binutils 2.39
https://sourceware.org/pipermail/binutils/2022-August/122246.html

Add binutils 2.39 and regenerate patches.
0008-binutils-2.38-vs.-ppc32-linux-kernel.patch is dropped as it has
been applied upstream. Add a milestone for 2.39 which will be handy for
Loongarch.

Binutils now requires bison >= 3.0.4 to build gprofng for x86/aarch64 so
we build our own bison when the host bison does not meet that
requirement (which appears to be the case on macOS).

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2022-08-14 10:15:17 +12:00
Chris Packham
0822a8a2e4 binutils: Bring in upstream fix for powerpc
Some versions of GCC emit a .machine directive near the start of the
compiler's assembly output that overrides the CPU passed on the command
line. Bring in an upstream change for binutils that works around the
problem.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2022-02-28 20:59:33 +13:00
Alexey Neyman
681aaef1f1
Merge pull request #1674 from stilor/master
Updates to make `ct-ng build-all` pass
2022-02-14 00:11:42 -08:00
Hans-Christian Noren Egtvedt
ba680a3e5b packages/binutils: add binutils-2.38
Binutils version 2.38 has been released
https://www.phoronix.com/scan.php?page=news_item&px=GNU-Binutils-2.38
https://sourceware.org/pipermail/binutils/2022-February/119721.html

Patches 0000 to 0008 from binutils-2.37 applied clean, so forward ported
them.

The following patches are now applied from upstream, hence dropped:
0010-change-uint-to-unsigned.patch
0011-bfd-close-the-file-descriptor-if-there-is-no-archive-fd.patch
0012-pr28391-strip-objcopy-preserve-dates-a-cannot-set-time.patch
0013-ld-pru-fix-resource_table-output-section-alignment.patch
0014-pr28422-build_id-use-after-free.patch
0015-pr28459-readelf-issues-bogus-warning.patch
0016-pr28417-std-string-no-longer-allows-accepting-nullptr_t.patch
0017-pr28540-segmentation-fault-on-NULL-byte_get.patch
0018-gold-place-note-gnu-property-section-before-other-note-sections.patch
0019-waddress-warning-in-ldelf.c.patch

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2022-02-13 20:47:12 +13:00
Alexey Neyman
86c2982568 Run patches thru manage-packages -P
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-11 00:47:51 -08:00
Alexey Neyman
1210b0c2f4 Run packages through manage-packages -D
This fixed some typos in the checksum files (please don't edit them
manually, this is error-prone!)

Signed-off-by: Alexey Neyman <stilor@att.net>
2022-02-11 00:47:51 -08:00
Hans-Christian Noren Egtvedt
5a4c95d658 binutils-2.37: add more patches from upstream release branch
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>
2022-02-04 09:55:25 +13:00
Alexey Brodkin
5d903ccee9 binutils-2.37: Remove obsolete ld_makefile patch
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] cfbcdd3786
[2] 4b46c1f6e8
[3] 3c7fe424f8

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2021-10-10 04:55:24 -07:00
Chris Packham
fa992b4191 binutils: Remove obsolete versions
The following versions were marked obsolete in crosstool-ng-1.24.0,
remove them.
- binutils-linaro-2.23.2-2013.10-4
- binutils-linaro-2.24.0-2014.11-2
- binutils-linaro-2.25.0-2015.01-2
- binutils-2.23.2
- binutils-2.24
- binutils-2.25.1

Adjust the milestones now that the old versions have been removed.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-09-21 21:24:31 +12:00
Artem Panfilov
3e4421d420 binutils: Add MinGW build fix from 2.37 branch
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-14 12:28:59 +03:00
Alexey Brodkin
2160d68291 binutils 2.37: arc: Fix for 32-bit hosts
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] 29d31b4ed9

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2021-09-13 01:57:39 -07:00
Alexey Brodkin
77525a81d3 binutils: add version 2.37
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2021-08-16 10:22:50 -07:00
Hans-Christian Noren Egtvedt
edaec2817e binutils: add version 2.36.1
Forward ported patches from binutils 2.35.1, refreshed to match current
sources.

Patch 0008-poison-system-directories.patch did not apply clean and had
minor adjustments to fit new binutils 2.36.1 release.

Dropped the following patches as they have been applied upstream:
- 0009-Import-patch-from-mainline-to-fix-decoding-DWARF-inf.patch
- 0010-arm-Fix-the-wrong-error-message-string-for-mve-vldr-.patch

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2021-02-12 11:54:11 +01:00
Kumar Gala
fe97d0794a binutils: Pull in some bug fixes from binutils 2.35 branch
Expect that if there is a binutils 2.35.2 release these fixes will be
included in there, these are pulled out of the binutils-2_35-branch post
the 2.35.1 release.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-11-06 08:51:19 -06:00
Hans-Christian Noren Egtvedt
04b318a48b binutils: add version 2.35.1
Bump to latest 2.35 minor release from upstream, now 2.35.1, replaces
version 2.35.

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2020-09-22 22:40:57 +02:00
Hans-Christian Noren Egtvedt
793d65899f Add support for binutils 2.35
Forward ported patches from binutils 2.34, refreshed to match current
sources.

Patch 0008-poison-system-directories.patch did not apply clean and had
minor adjustments to fit new binutils 2.35 release.

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2020-08-27 11:35:59 +02:00
Nicolas Dusart
ab3497e663
fix missing include of string in binutils older than 2.33
Signed-off-by: Nicolas Dusart <nicolas@freedelity.be>
2020-06-17 17:43:35 +02:00
Alexey Neyman
db980376cd Add binutils 2.34
Signed-off-by: Alexey Neyman <stilor@att.net>
2020-02-26 11:05:19 -08:00
Hans-Christian Noren Egtvedt
931b37a405 binutils: add version 2.33.1
Forward ported patches from version 2.32, and refreshed them so they
apply clean.

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2019-10-23 10:01:01 +02:00
Alexey Neyman
91d01a0e47 Another wave of version updates
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-02-13 22:47:07 -08:00
Alexey Neyman
0fe21f8db8 Config v2: select relevant parts of each package version
Also, remove a couple of config options that dealt with package versions
that have been since retired.

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-01-30 00:09:30 -08:00
Alexey Neyman
f5b57504d2 Add configuration options for enabling SSP
... in uClibc and glibc.

Fixes #681.

While here, relocate additional "sources" for uClibc/binutils into packages/
directory.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-04 16:15:37 -08:00
Alexey Neyman
893932e90f Add a config option for default RELRO setting
Fixes #656.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-03 20:19:09 -08:00
Alexey Neyman
8f86bd8078 Restore binutils (gold) build on mingw32 host
Fixes #1049.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-10-07 22:36:26 -07:00
Alexey Neyman
83a5eb4084 Patches to fix ld's abort on xtensa
Also while there, fix the naming (some patches ended up with two sequence numbers somehow).

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-09-28 15:43:17 -07:00
Alexey Neyman
98834458f1 Upgrades. Lots of 'em.
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-09-24 23:09:53 -07:00
Alexey Neyman
36bb675a71 More fixes after the upgrades:
- GLIBC requires a fix to work with binutils 2.30 on aarch64. This fix
  relies on binutils 2.24 or newer, which is okay for glibc 2.26 since
  it needs 2.25 or newer anyway. But older glibc versions are now pinned
  to binutils 2.29 or older on aarch64.
- xtensa needs patches in libgcc with gcc 7.3.
- comment in newlib's patch to indicate it is a reversal of a commit.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-01-30 15:08:18 -08:00
Alexey Neyman
66ad1ff514 Upgrade to new releases
android-ndk, binutils, gcc, linux, mpfr, ncurses, newlib, uclibc-ng

MPC vs MPFR dependencies required modifications in auto-generated templates
to also provide non-inclusive older-than/newer-than specifications.

Also correct MPC URLs, the website seems to have adjusted its directory
layout.

Currently, newlib 3.0.0 doesn't build for arm-nano-eabi.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-01-28 19:25:47 -08:00
Alexey Neyman
9d5da1886a Bunch of upgrades: android-ndk, expat, gcc-linaro, ...
... mingw-w64, musl, strace, uClibc-ng, linux.

Also, regenerate chksum's after @bhundven's upgrade of binutils.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-12-03 09:20:23 -08:00
Alexey Neyman
98bc4decde Run all patches through renumbering and update
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-12-02 12:44:39 -08:00
Bryan Hundven
3cafb8d7b5 [binutils] remove 2.29
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2017-10-05 08:51:32 -07:00
Bryan Hundven
caf8e72233 [binutils] Add 2.29.1
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2017-10-05 07:21:06 -07:00
Alexey Neyman
b3038a0a41 Add digests for all packages
Also fix test-packages: it was saving the output from CT_DoLog into
the checksum file. Also use one file per version.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-09-29 17:05:22 -07:00
Alexey Neyman
48a949cf60 Add an ability to verify the digest/signature
Fixes #611.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-09-27 22:40:21 -07:00
Alexey Neyman
24b0e666b5 Apply ucontext patch to mainstream GCC releases
Not applicable to 4.8, as GLIBC2.26 requires 4.9 or newer. Record
that dependency.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-27 20:27:21 -07:00
Alexey Neyman
bc30eb4818 Upgrade binutils
Bump 2.28 -> 2.28.1; add 2.29.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-23 17:13:30 -07:00
Alexey Neyman
be399f1046 Record tarball formats
Also, missed upgrades of gmp, isl, mingw-w64

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-18 22:39:26 -07:00
Alexey Neyman
321990916b Trim old versions
Policy:
- Only latest patchlevel for each branch release
  Exception: CLooG - ISL has dependencies on specific CLooG releases within a
  single branch
- Where there are no patchlevel releases (uClibc, musl) - just retain
  two most recent releases

Also, missed automake update: 1.14 -> 1.14.1

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-18 16:17:53 -07:00
Alexey Neyman
aa6d4befd0 Typo in binutils package description
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-10 09:05:13 -07:00
Alexey Neyman
fd522eed50 Resolve a few more TBDs
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-09 23:08:12 -07:00
Alexey Neyman
ee983f5f92 Downloading packages using new framework
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
567277099a Fix the references to old config variables
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
b9af225f58 Implement "milestones" for packages
Also get rid of dependency on GNU sort.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:56:29 -07:00
Alexey Neyman
5935d586e1 Convert gcc to new framework.
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:56:29 -07:00
Alexey Neyman
2c615fa62c More work-in-progress.
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:56:29 -07:00
Alexey Neyman
0a654319f9 First stab at gen-versions.sh
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:56:29 -07:00