Commit Graph

1123 Commits (e092bb3f664893eaff145370b1aecd874376f11c)

Author SHA1 Message Date
Matthias Schiffer 054403c856 toolchain: gcc: fix build with GCC 6
At least for GCC 4.8, which is used by most targets.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-09-01 13:42:09 +02:00
John Crispin 3ea83f0688 CC: toolchain: use latest glibc 2.21 revision
Fixes "CVE-2015-7547 --- glibc getaddrinfo() stack-based buffer
overflow"

Signed-off-by: Michael Marley <michael@michaelmarley.com>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48864 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:53:27 +00:00
Jo-Philipp Wich 0625aaa6f3 CC: toolchain: fix PKG_SOURCE_URL for gdb
The url for the gdb source changed upstream.

Signed-off-by: Philipp Borgers <borgers@mi.fu-berlin.de>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47277 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-10-26 15:07:47 +00:00
Felix Fietkau 664c195e33 toolchain: mark musl as broken for the chaos_calmer branch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@46291 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-07-10 11:28:44 +00:00
Felix Fietkau 92cb7d4cf3 gcc: remove version 4.9
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@45976 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-06-14 18:17:49 +00:00
Imre Kaloz 54f5c11bb4 toolchain/gcc: upgrade Linaro GCC 4.9 to 4.9-2015.03
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45944 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-06-11 11:57:11 +00:00
Felix Fietkau 7c40297741 musl: update to version 1.1.9
Patch to 2015-06-04 to fix ldso related regressions on PPC and MIPS.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45886 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-06-04 20:08:39 +00:00
Felix Fietkau 1298deabda Revert "musl: update to version 1.1.9" (r45754)
The current version seems to be broken on MIPS.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45879 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-06-03 00:22:51 +00:00
Felix Fietkau 84f820e1e2 musl: update to version 1.1.9
Patch to 2015-05-25 to fix ldso related regressions on PPC and MIPS.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45754 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-25 23:11:01 +00:00
Felix Fietkau 64d672d985 uClibc: elf: Add STT_GNU_IFUNC from glibc
perf in upstream Linux kernel 3.17 onwards expects STT_GNU_IFUNC
replicate it from glibc

Patch cherry-picked from:
http://lists.busybox.net/pipermail/uclibc/2015-February/048825.html

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45752 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-25 22:59:04 +00:00
John Crispin 4e7c302ea2 uClibc: add signal info for seccomp related SIGSYS
uClibc doesn't define signal info for the SIGSYS signal which is issued
in case of hitting a syscall prohibited by seccomp.
This is sad as it makes debugging seccomp filter policies impossible on
some architectures (at least ARM and PowerPC, maybe also others) which
do not coincidentally set si_value.sival_int as the syscall number.

To fix this, import the definitions and macros needed from glibc.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45720 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-23 15:26:19 +00:00
Felix Fietkau 9612e0890d toolchain: change default emulation for mips64 (octeon) to n64
fixes several ld errors reported by buildbot:
http://buildbot.openwrt.org:8010/broken_packages/octeon/mdnsresponder/compile.txt
http://buildbot.openwrt.org:8010/broken_packages/octeon/luasocket/compile.txt
http://buildbot.openwrt.org:8010/broken_packages/octeon/luasec/compile.txt
http://buildbot.openwrt.org:8010/broken_packages/octeon/openvswitch/compile.txt
http://buildbot.openwrt.org:8010/broken_packages/octeon/prosody/compile.txt

link error:
 ABI is incompatible with that of the selected emulation

found at OE toolchain for bintils 2.22:
http://patchwork.openembedded.org/patch/28033/

Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45666 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-10 13:54:20 +00:00
Felix Fietkau 0a1daff4f2 gcc: add some size optimization patches
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45664 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-10 13:16:35 +00:00
Nicolas Thill 1243352b6b uClibc: backport sync_file_range fixes (closes: #19350)
Signed-off-by: Nicolas Thill <nico@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45249 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-04-02 23:21:30 +00:00
Felix Fietkau c7670810ce uclibc: backport an upstream i386 syscall fix
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45137 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-29 10:43:07 +00:00
Felix Fietkau 7dae4a2150 uClibc: add another missing backport patch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45102 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-29 04:26:42 +00:00
Felix Fietkau 092c6f96ca toolchain/uClibc: backport madvise and fallocate (fixes #19336)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45100 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-29 02:16:13 +00:00
Felix Fietkau e813bb200d toolchain/musl: update to the latest version, adds aarch64 support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45091 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-28 13:38:45 +00:00
John Crispin 29d9f6dc5c toolchain: fix eglibc build when TOOLCHAINOPTS is not set
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45015 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-26 10:59:04 +00:00
John Crispin 7238d37498 uclibc: add LD_PRELOAD support
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45004 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-26 10:57:44 +00:00
Felix Fietkau 360ae62034 toolchain/glibc: remove broken eglibc 2.15 support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44976 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-25 14:29:23 +00:00
Felix Fietkau 67829ffd18 toolchain: remove obsolete references to the cris architecture
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44964 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-24 10:07:31 +00:00
Felix Fietkau 28e5e701a6 toolchain: remove obsolete !avr32 dependency
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44962 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-24 10:07:13 +00:00
Felix Fietkau 8312ae2c53 uClibc: remove avr32 support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44961 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-24 10:07:07 +00:00
Felix Fietkau 1d42b9b861 binutils: remove version 2.20.1 (only used by avr32)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44960 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-24 10:06:55 +00:00
Felix Fietkau dadb724fb7 binutils: remove defunct binutils default version selection for aarch64
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44958 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-24 10:06:38 +00:00
Felix Fietkau 964e38b7c9 gcc: remove 4.4.7 (only used by avr32)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44957 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-24 10:06:27 +00:00
Felix Fietkau dd0d8069c6 toolchain/kernel-headers: remove an obsolete patch directory
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44871 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-17 11:16:45 +00:00
Felix Fietkau 9c49dc02eb toolchain: remove leftovers from old llvm-gcc experiments
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44783 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-15 12:03:01 +00:00
John Crispin 980da762cc toolchain: r44701 accidentially removed the uclibc default when TOOLCHAINOPTS is set
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44766 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-15 06:35:18 +00:00
John Crispin 5dcaa0ab09 glibc: make it more obvious that eglibc is a version of glibc
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44704 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-12 20:29:58 +00:00
John Crispin 29e30c75a1 glibc: remove accidentally commited folder
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44703 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-12 20:29:50 +00:00
John Crispin d5f527f3ce toolchain: The glorious return of glibc, ver 2.21
It's the eglibc packaging with a bit of spit-polishing. And testing. :-)

[blogic: merged glibc and eglibc into 1 and made eglibc a glibc variant]

Signed-off-by: Jeff Waugh <jdub@bethesignal.org>
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44701 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-12 19:50:57 +00:00
John Crispin b585a81ca1 uClibc: fix syscall() for syscalls with 6 arguments on PowerPC
Patch from the uClibc master.

Fixes the package fastd on PowerPC.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44694 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-12 10:07:01 +00:00
Nicolas Thill 0a297052de toolchain/gcc: fix an ICE on ARM (PR58595)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58595

Signed-off-by: Nicolas Thill <nico@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44394 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-02-11 11:30:56 +00:00
John Crispin b8d8323da6 eglibc: mark 2.15 as broken it is effected by CVE-2015-0235
Signed-off-by: John Crispin <blogic@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44164 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-01-28 12:06:05 +00:00
John Crispin f7d8dc3702 Support for building an hardened OpenWRT
Introduce configuration options to build an "hardened" OpenWRT.

Options to enable Stack-Smashing Protection, FORTIFY_SOURCE and RELRO
have been introduced.

uClibc makefile now automatically detects if SSP support is necessary.

hostapd makefile has been fixed to use "^" as sed separator since
using a comma was problematic when using "-Wl,-z,now" and the like in
TARGET_CFLAGS.

Currently enabling SSP on user space depends on enabling SSP kernel
side, this is due to the fact that TARGET_CFLAGS are used to build
kernel modules (at least). Suggestions on how to avoid this are welcome.
Using "select" instead of "depends on" doesn't seem to work with choice
entries.

Tested with a lantiq (WBMR) router, GCC 4.8, uClibc and a subset of
the available packages.
Needs to be tested with GCC 4.9 and the remaining packages.
PIE not currently included.

Signed-off-by: Alessandro Di Federico <ale+owrt@clearmind.me>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44005 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-01-17 14:31:30 +00:00
Felix Fietkau 83a7a8ea70 musl: update to version 1.1.6
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43977 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-01-15 21:40:44 +00:00
Felix Fietkau 67ea433a97 musl: merge changes from git, includes further getopt fixes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43939 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-01-11 18:25:23 +00:00
Felix Fietkau b62cdc2ed6 binutils: run install twice instead of overwriting the final toolchain with the initial one
fixes compiler error after a binutils rebuild/reinstall without
rebuilding the rest of the toolchain

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43785 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-27 13:00:09 +00:00
Felix Fietkau f4b6b84555 binutils: enable plugin support
--enable-plugin is necessary for gcc-ar, gcc-nm and gcc-ranlib to work, which
must be used with GCC 4.9 for LTO to work.

Without this option, gcc-ar etc. will just fail with

    sorry - this program has been built without plugin support

Using the normal ar from binutils with GCC 4.9 and -flto will cause linking
with static "convenience" libraries to fail.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43783 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-27 12:59:53 +00:00
Felix Fietkau 540a4e981d build: ensure tools are built before building the toolchain
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43693 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-13 11:57:14 +00:00
Felix Fietkau f877220973 gcc: don't clobber stamp-bits with a symlink to itself
Several versions of gcc have an issue in libstdc++v3 where the build may
clobber stamp-bits with a link to itself.  This doesn't manifest itself
on all systems.  On several Ubuntu systems, this doesn't appear to be a
problem, but it is an issue on Fedora 16 systems.

To fix the issue, we'll simply filter out stamp-bits from the symlinks
to be generated.

Note: gcc 4.4.7 is unaffected by this issue, so no fix is necessary
there.

Signed-off-by: John Szakmeister <john@szakmeister.net>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43669 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-12 17:01:57 +00:00
Felix Fietkau 8e942a882f uClibc: fix ptrace header files for powerpc
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43617 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-11 14:38:50 +00:00
Jonas Gorski 2baa2619dc toolchain-headers: also copy asm-eva.h for mips(el) for 3.15+
Kernel 3.15's asm.h includes eva-asm.h, so copy it also, else lzma-loader
won't compile due to a missing include.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43460 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-01 13:27:06 +00:00
Felix Fietkau 7473409bfd toolchain: uClibc: fix compile with full language support enabled (fixes #13095)
When building with CONFIG_BUILD_NLS=y, uClibc fails to compile with following
message (or similar, according to https://dev.openwrt.org/ticket/13095):

-snip-
...
Warning: adding UNDEFINED entry for ar_AE
Warning: adding UNDEFINED entry for am_ET
Warning: adding UNDEFINED entry for af_ZA
grep "^#define" extra/locale/locale_tables.h > extra/locale/lt_defines.h
grep "^#define __lc" extra/locale/locale_collate.h >> extra/locale/lt_defines.h
gcc extra/locale/gen_wctype.c  -o extra/locale/gen_wctype    -Os -Wall  -D__UCLIBC_GEN_LOCALE -I./
extra/locale/gen_wctype.c: In function 'main':
extra/locale/gen_wctype.c:684:2: warning: #warning fix the upper bound on the upper/lower tables... save 200 bytes or so [-Wcpp]
for locale in  en_US en_GB; do \
                extra/locale/gen_wctype  $locale > extra/locale/wctables.h || \
                extra/locale/gen_wctype  $locale.UTF-8 > extra/locale/wctables.h || \
                extra/locale/gen_wctype  $locale.iso8859-1 > extra/locale/wctables.h && break; \
        done
make[4]: *** [extra/locale/wctables.h] Error 1
-snap-

This seems to also depend on the host system used, e.g. running a fresh
checkout on a Debian 7.6 system triggered this error, while running the
very same stuff on an Ubuntu 12.10 Quantal Quetzal does not trigger it.

This is the configuration I used:

-snip-
buildbot@buildbot:~/openwrt-nls.git$ scripts/diffconfig.sh
CONFIG_TARGET_ar71xx=y
CONFIG_TARGET_ar71xx_generic=y
CONFIG_TARGET_ar71xx_generic_Default=y
CONFIG_DEVEL=y
CONFIG_BUILD_NLS=y
CONFIG_DOWNLOAD_FOLDER="/srv/downloads/downloads"
-snap-

In the ticket mentioned above, a patch is referenced which solves this issue.

Note, that this issue is also present on 14.07.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43446 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-11-30 22:22:24 +00:00
Felix Fietkau 905a453027 toolchain: uClibc: fix build with CONFIG_BUILD_NLS selected
Without this patch, selecting "Compile with full language support"
results in the following question during build:

...
Locale Support (UCLIBC_HAS_LOCALE) [Y/n/?] y
  Locale data
  > 1. All locales (UCLIBC_BUILD_ALL_LOCALE) (NEW)
    2. Only selected locales (UCLIBC_BUILD_MINIMAL_LOCALE) (NEW)
    3. Use Pre-generated Locale Data (UCLIBC_PREGENERATED_LOCALE_DATA) (NEW)
  choice[1-3]:

Signed-off-by: Michael Heimpold <mhei@heimpold.de>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43445 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-11-30 22:22:14 +00:00
Florian Fainelli 688e48076b aarch64: add initial support
Add initial support for the AArch64 architecture

Signed-off-by: Florian Fainelli <florian@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43353 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-11-24 06:33:13 +00:00
Florian Fainelli 379d97d851 eglibc: enforce use of autoconf-2.69
Since we updated autoconf in r42855 we also need to enforce its use
while building eglibc to allow it to build successfully.

Signed-off-by: Florian Fainelli <florian@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43352 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-11-24 02:06:20 +00:00
John Crispin 013b2bcd25 musl: add getopt support for non-option arguments
musl libc doesn't support the GNU getopt extension to parse non-option
arguments when the optstring starts with '-'.

This extension is used by some utilities, notably iptables, that
currently return with errors even with perfectly valid invocations.

The patch adds the code needed by getopt.c and getopt_long.c to
implement that extension.

Signed-off-by: Gianluca Anzolin <gianluca@sottospazio.it>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43309 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-11-19 09:21:02 +00:00