aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain
Commit message (Collapse)AuthorAgeFilesLines
* toolchain/gdb: bump to 8.1.1Koen Vandeputte2018-08-013-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GDB 8.1.1 brings the following fixes and enhancements over GDB 8.1: * PR gdb/22824 (misleading description of new rbreak Python function in GDB 8.1 NEWS file) * PR gdb/22849 (ctrl-c doesn't work in extended-remote) * PR gdb/22907 ([Regression] gdbserver doesn't work with filename-only binaries) * PR gdb/23028 (inconsistent disassemble of vcvtpd2dq) * PR gdb/23053 (Fix -D_GLIBCXX_DEBUG gdb-add-index regression) * PR gdb/23127 ([AArch64] GDB cannot be used for debugging software that uses high Virtual Addresses) * PR server/23158 (gdbserver no longer functional on Windows) * PR breakpoints/23210 ([8.1/8.2 Regression] Bogus Breakpoint address adjusted from 0xf7fe7dd3 to 0xfffffffff7fe7dd3) GDB 8.1 includes the following changes and enhancements: * Breakpoints on C++ functions are now set on all scopes by default ("wild" matching); * Support for inserting breakpoints on functions marked with C++ ABI tags; * Target floating-point arithmetic emulation during expression evaluation (requires MPFR 3.1 or later); * Various Python Scripting enhancements; * Improved Rust support; in particular, Trait objects can now be inspected when debugging Rust code; * GDB no longer makes assumptions about the type of symbols without debugging information to avoid producing erroneous and often confusing results; * The 'enable' and 'disable' commands now accept a range of breakpoint locations; * New 'starti' command to start the program at the first instruction; * New 'rbreak' command to insert a number of breakpoints via a regular expression pattern (requires Python); * The 'ptype' command now supports printing the offset and size of the fields in a struct; * The 'gcore' command now supports dumping all the memory mappings ('-a' command-line option); * New shortcuts for TUI Single-Key mode: 'i' for stepi, and 'o' for nexti; * GDBserver enhancements: ** Support for transmitting environment variables to GDBserver; ** Support for starting inferior processes with a specified initial working directory; ** On Unix systems, support for globbing expansion and variable substitution of inferior command-line arguments; * Various completion enhancements; * The command used to compile and inject code with the 'compile' command is now configurable; * New '--readnever' command-line option to speed the GDB startup when debugging information is not needed; * Support for the following new native configurations: ** FreeBSD/aarch64 (aarch64*-*-freebsd*); ** FreeBSD/arm (arm*-*-freebsd*); * Support for the following new targets: ** FreeBSD/aarch64 (aarch64*-*-freebsd*); ** FreeBSD/arm (arm*-*-freebsd*); ** OpenRISC ELF (or1k*-*-elf) * Removed support for the following targets and native configurations: ** Solaris2/x86 (i?86-*-solaris2.[0-9]); ** Solaris2/sparc (sparc*-*-solaris2.[0-9]); Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* toolchain/binutils: Add binutils 2.31.1Daniel Engberg2018-07-307-0/+110
| | | | | | Add binutils 2.31.1 to repo Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* toolchain/gcc: add GCC 8.1.0Syrone Wong2018-07-2222-0/+862
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes compared to GCC 7.x 001-revert_register_mode_search.patch dropped The underlying issue is described at the end of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58139 It is fixed by the upstream commit: https://github.com/gcc-mirror/gcc/commit/3fa2798aa887d141d86985240f03e2f3809e7e62 020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch dropped due to already upstream 100-PR-rtl-optimization-83496.patch dropped due to already upstream 910-mbsd_multi.patch modified to fix ambiguous overloaded inform() call error gcc/input.h header: define UNKNOWN_LOCATION ((source_location) 0) - inform (0, "someone does not honour COPTS correctly, passed %d times", - honour_copts); + inform (UNKNOWN_LOCATION, "someone does not honour COPTS correctly, passed %d times", + honour_copts); 940-no-clobber-stamp-bits.patch dropped due to fixed upstream by another way upstream commit: https://github.com/gcc-mirror/gcc/commit/87b2d547f8ac9778d66909b8726fe967d1efbc74 950-cpp_file_path_translation.patch dropped, Both -fmacro-prefix-map and -ffile-prefix-map are added to gcc 8.1.0, if I understand it correctly, we should use -fmacro-prefix-map usage: -fmacro-prefix-map=@var{old}=@var{new} upstream commit: https://github.com/gcc-mirror/gcc/commit/859b51f83662d01e4f158ea9327db9ca37fe70b3 -iremap exists as a flag for a long time, for backward compatibility, I think we should keep the variable name unchanged but change its value in rules.mk for gcc 8.x and higher. Compile and run tested on x86_64 Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
* binutils: remove version 2.27Felix Fietkau2018-07-108-147/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* binutils: update to version 2.30, resolves issues with LTOFelix Fietkau2018-07-102-2/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* binutils: backport an upstream fix for a linker bug that triggers with LTOFelix Fietkau2018-07-101-0/+112
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* nasm: disable LTO, remove host specific workaroundsFelix Fietkau2018-07-101-7/+1
| | | | | | | | | | | | The recent build failures on various platforms were apparently caused by the fact that LTO build support in the configure script does not check if it has a suitable version of gcc and simply assumes that gcc-ar is available and can be used for intermediate files. Since we really don't need to build nasm with LTO, simply disable it and keep the whole build more portable Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/nasm: force ar and ranlib only on macOSXHauke Mehrtens2018-07-081-3/+5
| | | | | | | | | | On Debian 9 nasm does not build when we force it to use ranlib, for macOSX this is needed. Only force this on macOSX and not on any other OS, this should fix the build of nasm on Linux systems. On my Debian system the nasm configure script selects gcc-ranlib and gcc-ar instead. Fixes: d3a7587eb95 ("toolchain/nasm: fix missing AR/RANLIB variables") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain/nasm: Backport GCC8 compatibility fix from upstream repoTed Hess2018-07-071-0/+15
| | | | Signed-off-by: Ted Hess <thess@kitschensync.net>
* toolchain/nasm: fix missing AR/RANLIB variablesFelix Fietkau2018-07-071-4/+5
| | | | | | Fixes build on macOS Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain: Replace YASM with NASMTed Hess2018-07-053-20/+13
| | | | | | | | | | Packages libx264 and ffmpeg are built with ASM options on x86 platforms. The current libx264 version no longer builds with YASM and requires NASM. ffmpeg 3.x can be built with either YASM or NASM however, furture 4.x versions will require NASM. Signed-off-by: Ted Hess <thess@kitschensync.net> Acked-by: Rosen Penev <rosenp@gmail.com>
* toolchain: gdb: enable TUIKevin Darbyshire-Bryant2018-07-031-1/+1
| | | | | | | | | | | The GDB Text User Interface (TUI) is a terminal interface which uses the curses library to show the source file, the assembly output, the program registers and GDB commands in separate text windows. In other words it's a friendlier interface for idiots like me! Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* toolchain/glibc: update to latest 2.26 commitHans Dedecker2018-07-021-2/+2
| | | | | | | | | 74d16a57a3 Check length of ifname before copying it into to ifreq structure. 3aaf8bda00 getifaddrs: Don't return ifa entries with NULL names [BZ #21812] f958b45d52 Use _STRUCT_TIMESPEC as guard in <bits/types/struct_timespec.h> [BZ #23349] 81b994bd83 Fix parameter type in C++ version of iseqsig (bug 23171) Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* musl: sys/socket.h: fix SO_PEERSEC value on MIPSMatthias Schiffer2018-06-241-0/+59
| | | | | | | | | | Differing from all other archs supported by musl, MIPS defines SO_PEERSEC to 30 instead of 31. Patch has also been submitted upstream. Reported-by: Andrey Jr. Mlenikov <temnota.am@gmail.com> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* toolchain/glibc: update to latest 2.26 commitHans Dedecker2018-06-113-4/+4
| | | | | | | | 7b52c8ae05 libio: Avoid _allocate_buffer, _free_buffer function pointers [BZ #23236] Refresh patches Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* gcc: remove support for version 6.3.0Felix Fietkau2018-06-0526-929/+0
| | | | | | It is obsoleted by gcc 7 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/glibc: update to latest 2.26 commitHans Dedecker2018-05-301-2/+2
| | | | | | | | | 4df8479e6b Add NEWS entry for CVE-2018-11236 a5bc5ec967 Add references to CVE-2018-11236, CVE-2017-18269 58ad5f8a64 Add a test case for [BZ #23196] 6b4362f2cb Don't write beyond destination in __mempcpy_avx512_no_vzeroupper (bug 23196) Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* toolchain/glibc: update to latest 2.26 commitHans Dedecker2018-05-231-2/+2
| | | | | | | | | | | | | | | af7519f7b3 Fix path length overflow in realpath [BZ #22786] 365722ace6 Fix stack overflow with huge PT_NOTE segment [BZ #20419] be056fae3b Fix blocking pthread_join. [BZ #23137] 02f0dd83a4 Fix signed integer overflow in random_r (bug 17343). 3241353ab2 i386: Fix i386 sigaction sa_restorer initialization (BZ#21269) 677e6d13e0 [BZ #22342] Fix netgroup cache keys. 71d339cb86 Fix i386 memmove issue (bug 22644). 31e2d15b80 Fix crash in resolver on memory allocation failure (bug 23005) 1f7c4748d6 getlogin_r: return early when linux sentinel value is set 7e7a5f0bcd resolv: Fully initialize struct mmsghdr in send_dg [BZ #23037] Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* uClibc-ng: update to 1.0.30Evgeniy Didin2018-05-221-2/+2
| | | | | | | | | | | | | | uClibc-ng 1.0.28 does not provide PF_VSOCK/AF_VSOCK definitions, which causes iproute2 v4.16.0 compile errors. In commit 57f2f80383b5 ("bits/socket.h: add missing defines") necessary defines were included and iproute2 builds fine. This commit now is part of uClibc-ng 1.0.30. Lets update uClibc-ng to latest 1.0.30 version. Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: Hauke Mehrtens <hauke@hauke-m.de> Cc: John Crispin <john@phrozen.org>
* toolchain: gccgo: fix building gccgo compilerYousong Zhou2018-05-072-0/+248
| | | | | | | Fixes FS#1498. "gccgo -static" can fail for missing linker flag -lgcc_eh caused by patch 850-use_shared_libgcc.patch Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* toolchain/binutils: Use xz tarballs where possibleDaniel Engberg2018-04-291-3/+4
| | | | | | | Switch to xz for 2.29.1 and 2.30 These tarballs are about 10Mbyte smaller than bz2. Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* glibc: switch from git to httpsJohann Neuhauser2018-04-291-1/+1
| | | | | | This is needed for working behind a http proxy. Signed-off-by: Johann Neuhauser <jneuhauser@dh-electronics.de>
* toolchain/binutils: Remove old patchesDaniel Engberg2018-04-262-42/+0
| | | | | | | | Remove patches for arc-2016.09 Commit https://github.com/openwrt/openwrt/commit/8647f4f018e4dee663b65948d75105fae7bb3cdc made these patches obsolete Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* toolchain/binutils: completely remove 2.28 supportHans Dedecker2018-04-261-5/+0
| | | | | | | | Commit 15e963915963cda515311531b182b9e0c52f35a0 removed support for binutils version 2.28 but did not remove it as selectable item from Binutils Version; let's remove this leftover as well. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* toolchain/glibc: unset LD_LIBRARY_PATHHyeonsik Song2018-04-191-0/+1
| | | | | | Fix build error when use glibc Signed-off-by: Hyeonsik Song <blogcin@naver.com>
* glibc: update glibc to 2.26+ and switch to download from gitHans Dedecker2018-03-131-4/+6
| | | | | | | | | | | | | | Switch glibc to 2.26+ [0] and download the sources from git which will it make easier to update glibc in the future. For an overview of the fixed bugs and CVE related fixes in 2.26+ see the NEWS file [1] [0] https://sourceware.org/git/?p=glibc.git;a=commit;h=d300041c533a3d837c9f37a099bcc95466860e98 [1] https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=410f0d163145c1549fb73fdd96568f585b5bf62f;hb=refs/heads/release/2.26/master Signed-off-by: Xinxing Hu <xinxing.huchn@gmail.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* glibc: fix applying of patchesHans Dedecker2018-03-131-0/+1
| | | | | | | | | | Commit f4d9d7a removed support for version specific patches; but it also broke applying of patches in the patches glibc dir. Fix the issue by setting PATCH_DIR to $(PATH_PREFIX)/patches similar as musl/common.mk. Signed-off-by: Xinxing Hu <xinxing.huchn@gmail.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* toolchain/binutils: exclude .rej files when unpacking the tarballFelix Fietkau2018-03-121-0/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/binutils: remove version 2.28Felix Fietkau2018-03-128-341/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* binutils: Use version 2.29.1 by defaultHauke Mehrtens2018-03-122-2/+2
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain/binutils: add support for version 2.30Felix Fietkau2018-03-127-0/+110
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: switch to version 7 by defaultFelix Fietkau2018-03-122-8/+5
| | | | | | | | | | | | | | | Newer GCC versions are reported to improve code size on various ARM devices, which is why newer u-boot versions require them now. There have also been user reports of data corruption issues fixed on MIPS by updating from GCC 5 to GCC 7. This update was previously held up by these two MIPS compile issues, which have since been fixed: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83496 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84790 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: merge pending fix for miscompiled MIPS16 code issue (GCC PR ↵Felix Fietkau2018-03-123-2/+22
| | | | | | 84790) Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: fix a build failure on 7.3.0 with macOSFelix Fietkau2018-03-121-0/+178
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* musl: update to version 1.1.19Hauke Mehrtens2018-03-117-86/+27
| | | | | | | | | | This updates musl from a commit between 1.1.18 and 1.1.19 to the final release of the version 1.1.19. This mostly fixes bugs in musl. The size of the uncompressed binary is increased by about 4 KB. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain: fix selecting older gcc versions for x86Felix Fietkau2018-02-271-1/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* gcc: merge upstream fix for PR 83496 (fixes FS#814)Felix Fietkau2018-02-261-0/+136
| | | | | | This bug was causing miscompiled code related to branch delay slots Signed-off-by: Felix Fietkau <nbd@nbd.name>
* gcc: refresh patches for version 7.3.0Felix Fietkau2018-02-265-6/+6
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: use version 7.x for x86 by defaultFelix Fietkau2018-02-212-1/+7
| | | | | | | This is needed for retpoline support, which mitigates the spectre attacks. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: remove unused config symbolFelix Fietkau2018-02-211-4/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain: gdb: activate on ARM64Hauke Mehrtens2018-02-101-1/+0
| | | | | | | gdb supports ARM64 since quite some time now, activate it there like on other CPU architectures. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* binutils: assertion failure bfd/elfxx-mips.c:3860Hauke Mehrtens2018-01-272-0/+236
| | | | | | | | With forced PIE and SSP support I ran into this assertion failure. backport two patches to fix this problem from the binutils 2.28 branch. This fix is already included in binutils 2.28.1 and 2.29. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain: gcc: update 7.x to 7.3.0Hauke Mehrtens2018-01-2721-3/+3
| | | | | | This version still generates broken code in our setup for MIPS. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* build: cleanup SSP_SUPPORT configure optionJulien Dusser2018-01-273-3/+7
| | | | | | | | | | | | | | | | | | Configure variable SSP_SUPPORT is ambiguous for packages (tor, openssh, avahi, freeswitch). It means 'toolchain supporting SSP', but for toolchain and depends it means 'build gcc with libssp'. Musl no longer uses libssp (1877bc9d8f), it has internal support, so SSP_SUPPORT was disabled leading some package to not use SSP. No information why Glibc and uClibc use libssp, but they may also provide their own SSP support. uClibc used it own with commit 933b588e25 but it was reverted in f3cacb9e84 without details. Create an new configure GCC_LIBSSP and automatically enable SSP_SUPPORT if either USE_MUSL or GCC_LIBSSP. Signed-off-by: Julien Dusser <julien.dusser@free.fr>
* toolchain: add gcc configure default PIE and SSPJulien Dusser2018-01-272-0/+25
| | | | | | | | | | GCC supports starting version 5 --enable-default-ssp and starting version 6 --enable-default-pie. It produces hardened binaries by default without dealing with package compilation flags. Signed-off-by: Julien Dusser <julien.dusser@free.fr>
* kernel-headers: adjust PKG_ variables when using git clone methodAlexandru Ardelean2018-01-271-1/+7
| | | | | | | | | | | | | | | | | | | | | | When using an external git clone for the kernel repo, the build would fail because the build won't download [via git] the kernel tarball. This is because the `toolchain/kernel-headers` assumes that the kernel would get downloaded via normal HTTP. The reason for this is the `HostBuild` rule, which calls the `Download/default` rule. To use the `Download/default` we just need to conditionally adjust some PKG_ vars. We can safely use `LINUX_VERSION` as it was already adjusted in the `kernel-version.mk` to avoid collisions with other tarballs. Fixes: https://bugs.openwrt.org/index.php?do=details&task_id=503 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* toolchain/arc: update to the most recent release arc-2017.09Evgeniy Didin2018-01-2736-289/+342
| | | | | | | | | | | | | | | This commit finally bumps ARC tools to the most recent arc-2017.09 release version. ARC GNU tools of version arc-2017.09 bring some quite significant changes like: * Binutils v2.29 with additional ARC patches * GCC 7.1.1 with additional ARC patches More information on this release could be found here: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2017.09-release Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com> CC: Alexey Brodkin <abrodkin@synopsys.com> CC: John Crispin <john@phrozen.org>
* uClibc-ng: update to 1.0.28Evgeniy Didin2018-01-271-2/+2
| | | | | | | | | | | | Lets update uClibc-ng to 1.0.28 version for compatibility with gcc 7.x. Since 1.0.22 there were significant patches for compatibility with gcc 7.x: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=5b0f49037e8ea8500b05c8f31ee88529ccac4cee https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=cee0b058fa0b4501b289a2da365182d60314d746 Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com> CC: Alexey Brodkin <abrodkin@synopsys.com> CC: John Crispin <john@phrozen.org>
* musl: move BUILD_DIR_TOOLCHAIN/musl symlink to configure stepFelix Fietkau2018-01-251-11/+1
| | | | | | Avoids Build/Prepare quilt related hacks Signed-off-by: Felix Fietkau <nbd@nbd.name>
* musl: allow autorebuildFelix Fietkau2018-01-251-1/+3
| | | | | | | | | Autorebuild is disabled for the toolchain to avoid build-order issues. However, rebuilding musl is safe, so exclude it from that restriction. Avoids the need for manual cleaning on kernel header <-> libc API changes like the ones introduced recently Signed-off-by: Felix Fietkau <nbd@nbd.name>