Commit Graph

1061 Commits

Author SHA1 Message Date
Alexey Brodkin
d354bfde17 toolchain: Bump ARC tools to arc-2016.03
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>
2016-05-19 19:29:44 +02:00
Matthias Schiffer
3339f14e84
toolchain: gcc: fix build with GCC 6
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-05-08 23:37:40 +02:00
John Crispin
fa69553900 branding: add LEDE branding
Signed-off-by: John Crispin <blogic@openwrt.org>
2016-03-24 22:40:13 +01:00
Hauke Mehrtens
336ad4c9aa toolchain/uClibc: enable UCLIBC_HAS_OBSOLETE_BSD_SIGNAL
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
2016-04-17 12:49:30 +00:00
John Crispin
7409b5abfe toolchain/gdb: Update to 7.11
Update gdb to version 7.11

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>

SVN-Revision: 48989
2016-03-10 19:11:41 +00:00
Felix Fietkau
fb0fcf9ae2 musl: update to latest git, adds some fixes for the mips64 port and regular expressions
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48957
2016-03-07 21:00:49 +00:00
Felix Fietkau
5168d43b16 gcc: update gcc 5 to version 5.3.0
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 48826
2016-02-29 20:09:45 +00:00
Felix Fietkau
9ae8541466 toolchain: use musl instead of glibc by default for mips64
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48804
2016-02-26 10:56:02 +00:00
Felix Fietkau
e70ec04eb3 musl: add mips64 port
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48803
2016-02-26 10:55:59 +00:00
Felix Fietkau
64da662a88 toolchain/glibc: remove obsolete versions
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48780
2016-02-25 13:43:46 +00:00
Felix Fietkau
796968fc0f musl: update to version 1.1.14
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48762
2016-02-25 09:24:46 +00:00
John Crispin
7b821a5ae8 toolchain: add support of ARCv2 architecture
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
2016-02-18 08:22:17 +00:00
Jo-Philipp Wich
5445a2ee1d toolchain: use latest glibc 2.21 and 2.22 revisions
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
2016-02-17 08:44:49 +00:00
Jo-Philipp Wich
83cdf72271 toolchain: mark eglibc 2.19 broken
Upstream is dead and the last available version has multiple open CVEs.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 48734
2016-02-17 08:44:45 +00:00
John Crispin
9fbc71c31d toolchain/gdb: update to 7.10.1
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
2016-02-12 08:31:06 +00:00
Felix Fietkau
8fe8360981 musl: fix an alignment issue that was breaking ldso on ARMv5
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48577
2016-01-31 00:55:05 +00:00
Felix Fietkau
0c6b003704 musl: fix GDB debugging on mips (local, remote)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48575
2016-01-30 20:15:16 +00:00
Felix Fietkau
ed95e47f07 musl: update to the latest git version, fixes TLS issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48574
2016-01-30 20:15:11 +00:00
Felix Fietkau
3e9d2a847b glibc: switch to downloading version 2.22 via tarball instead of git to improve mirror support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48556
2016-01-29 23:19:31 +00:00
Felix Fietkau
b26d52d980 glibc: switch to version 2.22 by default
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48555
2016-01-29 23:19:26 +00:00
Felix Fietkau
88df28aab1 toolchain: fix default toolchain selection for mips64 added in r47355
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48554
2016-01-29 23:19:19 +00:00
Hauke Mehrtens
998f8bd02c musl: fix mips vdso handling
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
2016-01-25 23:26:19 +00:00
Felix Fietkau
99419349e6 musl: update to 1.1.12 + git from 2016-01-22
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48486
2016-01-25 12:42:00 +00:00
Felix Fietkau
d9db303af6 gcc: backport a libgcc fix for a dependency on libc write() on ARM
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48485
2016-01-25 12:41:55 +00:00
Hauke Mehrtens
be5fcf9fd7 musl: Add format attribute to some function declarations
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
2016-01-24 00:05:14 +00:00
Hauke Mehrtens
b5d6256ca8 musl: mips: add vdso support
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
2016-01-23 23:48:55 +00:00
Felix Fietkau
d0077103b7 musl: backport a fix that caused the wrong relocations to be emitted on some architectures
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48444
2016-01-21 19:00:51 +00:00
Felix Fietkau
1981ee7d75 toolchain: Reverse glibc/eglibc conditionals to check for eglibc
This will make adding future glibc versions easier because the
conditionals won't have to be modified again.

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

SVN-Revision: 48399
2016-01-20 19:12:01 +00:00
Felix Fietkau
6ae4479190 gcc: drop version 4.8-linaro
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48395
2016-01-20 13:54:22 +00:00
Felix Fietkau
15aa6d1a16 binutils: switch to version 2.25.1 by default
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48394
2016-01-20 13:54:17 +00:00
Felix Fietkau
54dad4c873 toolchain/musl: remove old CONFIG_MUSL_ENABLE_DEBUG option
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48387
2016-01-19 23:44:44 +00:00
Felix Fietkau
f6e4badfe4 toolchain: Add glibc 2.22
Signed-off-by: Michael Marley <michael@michaelmarley.com>

SVN-Revision: 48383
2016-01-19 22:58:51 +00:00
Felix Fietkau
89ca7c5d0e toolchain/musl: enable debug information
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48363
2016-01-19 12:41:59 +00:00
Felix Fietkau
dbf2ec47a6 gcc: remove v4.6 relicts
Fixes: commit f17e56eff5b9 ("gcc: remove version 4.6, it is no longer needed")

CC: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>

SVN-Revision: 47965
2015-12-23 11:23:19 +00:00
Felix Fietkau
e4d186b109 uClibc-ng: update to 1.0.9
Update to 1.0.9, switch to XZ tarball.

Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>

SVN-Revision: 47715
2015-12-03 14:47:29 +00:00
Felix Fietkau
6638374f5d gcc: make colors optional based on the GCC_COLORS env var
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47642
2015-11-25 14:12:44 +00:00
Felix Fietkau
52a307e54a gcc: fix internal compiler error on MIPS with MIPS16 enabled (triggered by libpcap)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47494
2015-11-18 00:57:22 +00:00
Felix Fietkau
124b8a6dd6 gcc: switch to 5.2.0 by default
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47492
2015-11-17 12:38:41 +00:00
Felix Fietkau
79452344fe gdb: use separate patches for upstream and ARC gdb
With bump of upstream GDB from 7.9 to 7.10 at least
100-no_extern_inline.patch became incompatible with
ARC gdb (which is still based on upstream 7.9 branch).

So until ARC support is not completely upstreamed
(which we expect to happen in coming months) we'll need to have
separate patches for ARC gdb.

This time clean build-tested for Netgear WNDRMAC & AXS101.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: John Crispin <blogic@openwrt.org>
Cc: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47491
2015-11-17 12:38:32 +00:00
Felix Fietkau
331735a357 gcc: add a patch to 5.x that supports translation of __FILE__ paths
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47490
2015-11-17 12:38:22 +00:00
Jo-Philipp Wich
ab11edcd4c musl: fix handling of point-to-point interfaces in getifaddrs()
Current musl reports the peer (remote) address of a point-to-point
interface and does not store the local address at all.

Apply the same special treatment of IFA_LOCAL to musl's getifaddrs() which
is also used in glibc and uclibc.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47488
2015-11-16 18:15:00 +00:00
Felix Fietkau
9d6a9b6f51 gcc: set the isl/cloog prefix when graphite is enabled, disable it explicitly if it is disabled in the config
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47465
2015-11-13 11:35:41 +00:00
Felix Fietkau
3d41dbae65 tools: add isl (used for graphite on GCC 5)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47464
2015-11-13 11:35:37 +00:00
Felix Fietkau
d3ba30b9cd toolchain/gdb: disable python support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47446
2015-11-10 21:11:20 +00:00
Felix Fietkau
f7939f5e74 gcc: remove version 4.6, it is no longer needed
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47443
2015-11-10 21:10:53 +00:00
Felix Fietkau
795cab69b3 gcc: enable LTO support unconditionally
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47442
2015-11-10 21:10:45 +00:00
Felix Fietkau
8a22f31c25 gcc: use version 5.x for octeon instead of 4.6 - it has been tested with glibc
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47441
2015-11-10 21:10:39 +00:00
Felix Fietkau
8b5d644bb3 toolchain: add support of ARC architecture
This includes binutils, gcc, gdb and uClibc-ng.

Latest release of ARC gcc (as of today it is "arc-2015.06")
is based on upstream gcc 4.8.4.

Sources are available on GitHub, see:
https://github.com/foss-for-synopsys-dwc-arc-processors/gcc

Latest release of ARC binutils (as of today it is "arc-2015.06")
is based on upstream binutils 2.23.

Sources are available on GitHub, see:
https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06

Latest release of ARC GDB (as of today this is "arc-2015.06-gdb")
is based on upstream gdb 7.9.1.

Sources are available on GitHub, see:
https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06-gdb

Note that for binutils and gdb that come from unified git repository
(which is the case for upstream binutils/gdb today) we need to disable
building of gdb in binutils and binutils in gdb hence in binutils:
------>8------
--disable-sim
--disable-gdb
------>8------

and in gdb:
------>8------
--disable-binutils
--disable-ld
--disable-gas
------>8------

Also in gdb we disable sim because if the following breakage while
building with it:
------------>8------------
/usr/bin/env bash ./../common/genmloop.sh -shell /usr/bin/env bash \
        -mono -fast -pbb -switch sem5-switch.c \
        -cpu a5f -infile ./mloop5.in \
        -outfile-suffix 5
unknown option: bash
Makefile:699: recipe for target 'stamp-5mloop' failed
make[7]: *** [stamp-5mloop] Error 1
------------>8------------

Cc: Felix Fietkau <nbd@openwrt.org>
Cc: John Crispin <blogic@openwrt.org>
Cc: Jonas Gorski <jogo@openwrt.org>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>

SVN-Revision: 47438
2015-11-10 12:03:59 +00:00
Felix Fietkau
05baf2ced2 toolchain: remove obsolete kernel version check
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47413
2015-11-07 16:22:18 +00:00
Felix Fietkau
2e29046a9e uClibc: mark as broken for all architectures that use musl by default
We will only support uClibc for targets that actually need it.

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

SVN-Revision: 47401
2015-11-07 12:11:44 +00:00