aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain
Commit message (Collapse)AuthorAgeFilesLines
* glibc: re-enable parallel buildsFelix Fietkau2016-08-301-2/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* glibc: switch to 2.24 by default and remove old versions, fixes security issuesFelix Fietkau2016-08-305-85/+2
| | | | | | | | | | | | | | | | | | | 2.24 fixes the following CVEs compared to 2.23: - CVE-2016-3075 - CVE-2016-3706 - CVE-2016-1234 - CVE-2016-4429 - CVE-2016-5417 CVEs fixed in 2.23: - CVE-2015-8776 - CVE-2015-8777 - CVE-2015-8778 - CVE-2015-8779 - CVE-2014-9761 - CVE-2015-7547 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* glibc: add 2.24Dirk Neukirchen2016-08-306-3/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | since eglibc is deprecated just use glibc as name - fix build errors w. stack-protector (observed for x86_64): libresolv_pic.a(gethnamaddr.os): In function `addrsort': gethnamaddr.c:(.text+0x425): undefined reference to `__stack_chk_guard' by additionally setting libc_cv_ssp_strong=no like previously libc_cv_ssp=no was set - fix compile errors on 2.24 x86 introduced by upstream changesets "Optimize i386 syscall inlining" errors are like: - https://sourceware.org/ml/libc-alpha/2015-10/msg00745.html and trying to fix with the whats suggested at: https://patchwork.openembedded.org/patch/118909/ leads to other error: gcc6: elf/librtld.os: In function `__mmap': (.text+0x131a9): undefined reference to `__libc_do_syscall' or: gcc5: elf/dl-load.os {standard input}: Assembler messages: {standard input}:5129: Error: symbol `__x86.get_pc_thunk.cx' is already defined instead of testing other flags/effects (-fno-omit-frame-pointer) just use -O2 (like buildroot does) instead of -Os boot+pings tested on: qemu malta (le+be) (gcc5+bin2.25.1) qemu aarch64 (gcc5+bin2.25.1) qemu x86_64 (gcc6+bin2.26) qemu x86 generic (gcc6+bin2.26) Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>
* toolchain: include yasm in x86 toolchainDaniel Golle2016-08-193-1/+72
| | | | | | | Some libraries require yasm to build with in-line assembly for x86 targets. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* toolchain/uClibc: add missing config symbolStijn Tintel2016-08-151-0/+1
| | | | Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* gcc: optionally build gccgo compilerMatteo Croce2016-08-115-2/+49
| | | | | | Tested with eglibc on x86 and armv7 so far Signed-off-by: Matteo Croce <matteo.croce@canonical.com>
* gcc: add a patch to generate better code with Os on mipsFelix Fietkau2016-08-042-0/+25
| | | | | | Also happens to reduce compressed code size a bit Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc/arc-2016.03: Fix building on hosts with gcc 6.xAlexey Brodkin2016-07-271-0/+153
| | | | | | | | | | | | | On attempt to build ARC toolchain on the host with gcc 6.1 I saw the same failure as described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69959 This change adds a back-port of the fix from upstream gcc, see https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=233572 Note the fix is already a part of gcc-5.4 and gcc-6.1 so no need for the same fix for others. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* Remove existing old link before creating a new oneStefan Weil2016-07-251-1/+2
| | | | | | | This is needed after a kernel update, otherwise the new link is written as linux/linux-$(LINUX_VERSION). Signed-off-by: Stefan Weil <sw@weilnetz.de>
* toolchain/gcc: disable libmpx to fix build errors on x86 with gcc 6.1Felix Fietkau2016-07-211-0/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: add 6.1.0Syrone Wong2016-07-1523-0/+892
| | | | | | | | | | | -fno-plt and musl-libc patches already get upstream, then dropped in GCC 6. Other patches are almost identical compared to GCC 5.4. Compile and run tested on ar71xx/Qihoo C301 and mvebu/Linksys WRT1900ac v1 Signed-off-by: Syrone Wong <wong.syrone@gmail.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanups/fixes]
* toolchain: get rid of GCC_VERSION_5 config symbolFelix Fietkau2016-07-152-5/+0
| | | | | | Replace it with !GCC_VERSION_4_8 to be more future compatible Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: clean up remaining references to the old linaro versionFelix Fietkau2016-07-152-7/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gdb: update to version 7.11.1Felix Fietkau2016-07-151-2/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gdb: reorganize patch layoutFelix Fietkau2016-07-157-2/+1
| | | | | | | | Use ./patches and ./patches-arc instead of version dependent patches. We should have only one main supported version (along with the special case for arc). Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/binutils: add 2.26.1Syrone Wong2016-07-157-0/+110
| | | | | Signed-off-by: Syrone Wong <wong.syrone@gmail.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> [fixes/cleanup]
* musl: remove sh3 workaroundHauke Mehrtens2016-07-131-6/+0
| | | | | | The GCC bug 67260 is fixed upstream now, remove this workaround. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* musl: update musl to version 1.1.15Hauke Mehrtens2016-07-136-3741/+72
| | | | | | | The removed patch is already integrated in upstream musl. Add one additional patch which fixes a regression on mips. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* gcc: update gcc to version 5.4.0Hauke Mehrtens2016-07-1339-153/+15
| | | | | | The removed patches are already integrated in upstream gcc. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain: skip gcc/minimal for muslFelix Fietkau2016-07-077-48/+46
| | | | | | | | No extra libc header build step is done, so no extra toolchain is needed for preparing it. This saves a significant amount of build time and disk space Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gdb: Use correct folder name for ARC patchesAlexey Brodkin2016-06-134-13/+0
| | | | | | | | | | | Even though ARC tools were released as arc-2016.03 we have a little bit different version name for GDB. That's because both Binutils and GDB come from the same git repo but from different branches (and so different tags). Also removing an extra patch that made its way into release. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* treewide: replace nbd@openwrt.org with nbd@nbd.nameFelix Fietkau2016-06-072-2/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain: uClibc: Bump to the most recent version 1.0.14Alexey Brodkin2016-05-272-2/+2
| | | | | | This change updates uClibc version to the most recent 1.0.14 release. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* toolchain: Bump ARC tools to arc-2016.03Alexey Brodkin2016-05-1929-23/+49
| | | | | | | | | | | | | | | | | This change switches ARC tools to the most recent arc-2016.03 version. ARC GNU tools of version arc-2016.03 bring some quite significant changes like: * Binutils v2.26+ (upstream commit id 202ac19 with additional ARC * patches) * GCC v4.8.5 * GDB 7.10 More about changes, improvements and fixes could be found here: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2016.03 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* toolchain: gcc: fix build with GCC 6Matthias Schiffer2016-05-081-0/+117
| | | | Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* branding: add LEDE brandingJohn Crispin2016-03-242-5/+5
| | | | Signed-off-by: John Crispin <blogic@openwrt.org>
* toolchain/uClibc: enable UCLIBC_HAS_OBSOLETE_BSD_SIGNALHauke Mehrtens2016-04-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is required to build net-snmp. If that options is disabled in uClibc then net-snmp doesn't detect sighold support on its configuration stage and so defines HAVE_SIGHOLD as 0. That in its turn causes compilation of the following branch of timerPause() in apps/snmpnetstat: ------------------>8---------------- int oldmask; oldmask = sigblock(sigmask(SIGALRM)); if (!signalled) { sigpause(0); } sigsetmask(oldmask); ------------------>8---------------- Now in uClibc all 3 sigblock(), sigmask() and sigsetmask() were removed back in 2005, see: https://git.busybox.net/uClibc/commit/?id=5aa7aa7fa7ec2a0fe567ac0b2595b46add6f3594 And all that causes net-snmp linkage to fail this way: ------------------>8---------------- .libs/if.o: In function `intpr': if.c:(.text+0x908): undefined reference to `sigmask' if.c:(.text+0x90e): undefined reference to `sigblock' if.c:(.text+0x924): undefined reference to `sigsetmask' ------------------>8---------------- If we enable UCLIBC_HAS_OBSOLETE_BSD_SIGNAL in uClibc then branch with sighold is used in timerPause() and everything builds as expected. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 49178
* toolchain/gdb: Update to 7.11John Crispin2016-03-104-5/+5
| | | | | | | | Update gdb to version 7.11 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi> SVN-Revision: 48989
* musl: update to latest git, adds some fixes for the mips64 port and regular ↵Felix Fietkau2016-03-073-3308/+3736
| | | | | | | | expressions Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48957
* gcc: update gcc 5 to version 5.3.0Felix Fietkau2016-02-2939-65/+30
| | | | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48826
* toolchain: use musl instead of glibc by default for mips64Felix Fietkau2016-02-261-4/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48804
* musl: add mips64 portFelix Fietkau2016-02-261-0/+2714
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48803
* toolchain/glibc: remove obsolete versionsFelix Fietkau2016-02-2516-1393/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48780
* musl: update to version 1.1.14Felix Fietkau2016-02-257-17926/+8
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48762
* toolchain: add support of ARCv2 architectureJohn Crispin2016-02-183-1/+13
| | | | | | | | | | | | | | | | | | | | This change adds support of ARC ISAv2 processors in OpenWRT toolchain. In general gcc for ARC may compile code for both ISA versions simultaneously but libgcc will be built only for default architecture that's why it's necessary to specify --with-cpu on gcc configuration. As for uClibc we need to use different configurations for different ARC ISAs. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 48739
* toolchain: use latest glibc 2.21 and 2.22 revisionsJo-Philipp Wich2016-02-174-22/+22
| | | | | | | | | Refresh patches and rework Makefile to fetch glibc from release branches instead of relying on tarballs. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 48735
* toolchain: mark eglibc 2.19 brokenJo-Philipp Wich2016-02-171-0/+1
| | | | | | | | Upstream is dead and the last available version has multiple open CVEs. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 48734
* toolchain/gdb: update to 7.10.1John Crispin2016-02-124-3/+3
| | | | | | | | | Minor bugfix update, released in Dec 2015 https://www.gnu.org/software/gdb/news/ Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi> SVN-Revision: 48708
* musl: fix an alignment issue that was breaking ldso on ARMv5Felix Fietkau2016-01-311-1/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48577
* musl: fix GDB debugging on mips (local, remote)Felix Fietkau2016-01-301-0/+55
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48575
* musl: update to the latest git version, fixes TLS issuesFelix Fietkau2016-01-307-7745/+17878
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48574
* glibc: switch to downloading version 2.22 via tarball instead of git to ↵Felix Fietkau2016-01-292-7/+13
| | | | | | | | improve mirror support Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48556
* glibc: switch to version 2.22 by defaultFelix Fietkau2016-01-292-2/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48555
* toolchain: fix default toolchain selection for mips64 added in r47355Felix Fietkau2016-01-291-1/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48554
* musl: fix mips vdso handlingHauke Mehrtens2016-01-251-3/+54
| | | | | | | | | | mips returns -ENOSYS in case it can not handle the vdso call and wants the libc to call the original syscall in such a case. This fixes the patch to add such handling. I hope this fixes the random reboots I got. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48501
* musl: update to 1.1.12 + git from 2016-01-22Felix Fietkau2016-01-259-201/+8125
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48486
* gcc: backport a libgcc fix for a dependency on libc write() on ARMFelix Fietkau2016-01-251-0/+35
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48485
* musl: Add format attribute to some function declarationsHauke Mehrtens2016-01-241-0/+209
| | | | | | | | | | | | | | | | | | | | | | | | | GCC and Clang are able to check the format arguments given to a function and warn the user if there is a error in the format arguments or if there is a potential uncontrolled format string security problem in the code. GCC does this automatically for some functions like printf(), but it is also possible to annotate other functions in a way that it will check them too. This feature is used by glibc for many functions. This patch adds the attribute to the some functions of musl expect for these functions where gcc automatically adds it. GCC automatically adds checks for these functions: printf, fprintf, sprintf, scanf, fscanf, sscanf, strftime, vprintf, vfprintf and vsprintf. The documentation from gcc is here: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html The documentation from Clang is here: http://clang.llvm.org/docs/AttributeReference.html#format-gnu-format Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48467
* musl: mips: add vdso supportHauke Mehrtens2016-01-231-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | vdso support is available on mips starting with kernel 4.4, see kernel commit a7f4df4e21 "MIPS: VDSO: Add implementations of gettimeofday() and clock_gettime()" for details. These are my micro benchmark results for 1.000.000 calls to clock_gettime(CLOCK_MONOTONIC, &tp) without vdso: root@OpenWrt:/# time ./vdso-test real 0m 0.95s user 0m 0.24s sys 0m 0.70s with vdso: root@OpenWrt:/# time /usr/bin/vdso-test real 0m 0.35s user 0m 0.34s sys 0m 0.00s Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48466
* musl: backport a fix that caused the wrong relocations to be emitted on some ↵Felix Fietkau2016-01-211-0/+55
| | | | | | | | architectures Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48444