Commit Graph

243 Commits (be3c8f8b2bf2893950b11ea7fa16cea074bc7903)

Author SHA1 Message Date
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
9 years ago
Felix Fietkau 6c6508d0e1 gcc: fix accidentally dropped chunk of the musl gcc 5.2.0 powerpc patch (fixes #20501)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47024
9 years ago
Felix Fietkau ed1e87ae2e gcc: fix path to powerpc musl dynamic linker with 5.2 (#20501)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46897
9 years ago
Hauke Mehrtens 0fdb4a458b gcc: update gcc 5.x musl patches
This replaces the musl patches for gcc with the versions which are in
gcc trunk.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 46873
9 years ago
Felix Fietkau d571f17129 gcc: add missing powerpc patch for 5.2.0
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46800
9 years ago
Felix Fietkau 400fb6cadc gcc: remove version 4.9-linaro
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46798
9 years ago
Felix Fietkau 86ba95601a gcc: add ARM codegen fix from PR 65932
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46774
9 years ago
Hauke Mehrtens 32c3af6a19 toolchain: gcc: add gcc 5.2.0
This was boot tested on mipsel32, arm32 and x86 only.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 46611
9 years ago
John Crispin b2739f37d6 toolchain: fix gcc 4.6 build with gcc5
build error:
cfns.gperf:101:1: error: 'gnu_inline' attribute present on 'libc_name_p'
cfns.gperf:26:14: error: but not here
observed on Arch Linux

affected versions gcc 4.6, gcc 4.7

reported & fixed in DragonFlyBSD issue #136
https://github.com/DragonFlyBSD/DPorts/issues/136

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

SVN-Revision: 46355
9 years ago
Felix Fietkau 0f81020b97 gcc: use the -sf suffix for musl ldso on powerpc
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46313
9 years ago
Steven Barth 1877bc9d8f gcc/musl: rework SSP-support
Make musl provide libssp_nonshared.a and make GCC link it unconditionally
if musl is used. This should be a no-op if SSP is disabled and seems to be
the only reliable way of dealing with SSP over all packages due to the mess
that is linkerflags handling in packages.

Signed-off-by: Steven Barth <steven@midlink.org>

SVN-Revision: 46108
9 years ago
Steven Barth cfdadd3e1d gcc: musl comes with its own SSP, so use it instead of libssp
Signed-off-by: Steven Barth <steven@midlink.org>

SVN-Revision: 46071
9 years ago
Imre Kaloz e856d62d0a toolchain/gcc: upgrade Linaro GCC 4.9 to 4.9-2015.03
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 45944
9 years ago
Felix Fietkau 64661de100 gcc: add some size optimization patches
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45664
9 years ago
Felix Fietkau fc2bd07260 gcc: remove 4.4.7 (only used by avr32)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 44957
9 years ago
Nicolas Thill d48735dd85 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>

SVN-Revision: 44394
9 years ago
Felix Fietkau 548d9a008f 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>

SVN-Revision: 43669
10 years ago
Florian Fainelli afa36fe3bc toolchain: fix mips64 musl linker names
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 43035
10 years ago
Felix Fietkau 20e7ccc3a2 gcc: update 4.9 to linaro 2014.10
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43003
10 years ago
Felix Fietkau 81cc26c706 gcc: do not assume that the Mac OS X filesystem is case insensitive
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42973
10 years ago
Felix Fietkau 1f85497423 gcc: update, split and rework 4.9 musl patches
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42970
10 years ago
Felix Fietkau 69c1568779 gcc: update, split and rework 4.8 musl patches
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42969
10 years ago
Felix Fietkau 663ddf8f17 gcc: backport an upstream fix for extern vars with local weak definitions
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42962
10 years ago
Felix Fietkau b6fb77ebfe gcc: remove version 4.8.0
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42777
10 years ago
Felix Fietkau 646dfde826 Fix broken implementation of NOEXECSTACK flag for MIPS architectures for gcc-linaro-4.8
This patch ensures that libgcc_s.so properly honours the NOEXECSTACK flag
for MIPS builds, when gcc-linaro-4.8 or 4.9 is the chosen C compiler.

Signed-off-by: Andrew McDonnell <bugs@andrewmcdonnell.net>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42769
10 years ago
Felix Fietkau cb119e2a69 gcc: add 4.9-linaro based on the 2014.09 release
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42706
10 years ago
Felix Fietkau a44b4e3ffb gcc: backport a fix for issues with accessing weak data references
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 41569
10 years ago
Felix Fietkau 62ca8ae777 gcc: define USE_PT_GNU_EH_FRAME for musl as well, reduces binary object size
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40874
10 years ago
Felix Fietkau 95c615262c gcc: disable libsanitzier off_t check to fix musl build
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40870
10 years ago
Felix Fietkau 31285a2039 gcc: revert an upstream patch that is causing a regression on powerpc
https://forum.openwrt.org/viewtopic.php?pid=232494#p232494

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

SVN-Revision: 40709
10 years ago
Felix Fietkau af4f534244 toolchain/gcc: update linaro-gcc-4.8 to 2014.04
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 40664
10 years ago
Felix Fietkau 06a3d35eda gcc: fix visibility of symbols libgcc.a
Symbols need to be hidden, even for the static variant

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

SVN-Revision: 39749
10 years ago
Felix Fietkau b050f87d13 gcc: prevent the use of LDRD/STRD on ARMv5TE
These instructions are for 64-bit load/store. On ARMv5TE, the CPU
requires addresses to be aligned to 64-bit. When misaligned, behavior is
undefined (effectively either loads the same word twice on LDRD, or
corrupts surrounding memory on STRD).

On ARMv6 and newer, unaligned access is safe.

Removing these instructions for ARMv5TE is necessary, because GCC
ignores alignment information in pointers and does unsafe optimizations
that have shown up as bugs in various places.

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

SVN-Revision: 39638
10 years ago
Imre Kaloz 5e906232b0 upgrade Linaro GCC 4.8 to 2014.01
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 39501
10 years ago
Imre Kaloz b1f4f27fc4 upgrade Linaro GCC 4.8 to 4.8-2013.11
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 38922
11 years ago
Felix Fietkau 5b1e1eff73 gcc 4.8-linaro: backport an upstream fix to fix asm goto miscompilation
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 38435
11 years ago
Imre Kaloz 6d13c47f57 upgrade Linaro gcc 4.8 to 4.8-2013.08
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 37945
11 years ago
Florian Fainelli cb6e729be7 toolchain: define MUSL dynamic linker for SPARC
SPARC builds are currently broken because we do not define the MUSL
dynamic linker name, fix that.

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

SVN-Revision: 37938
11 years ago
Felix Fietkau 258b2cf7aa toolchain/gcc: remove 4.6.3, it is unused and unmaintained
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37924
11 years ago
Felix Fietkau 5f2e61addf gcc: merge a bugfix for a MIPS specific internal compiler error
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37621
11 years ago
Felix Fietkau e00aaea5df gcc: add a bugfix for an internal compiler error on mips64
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37601
11 years ago
Felix Fietkau 98df29f9d7 gcc: add a patch to get rid of useless java class sections
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37095
11 years ago
Felix Fietkau 2befaa2f0d gcc: fix arm libgcc issues with 4.8.0 and 4.8-linaro
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36864
11 years ago
Felix Fietkau 7d3fca89c0 gcc: remove version 4.7
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36694
11 years ago
Felix Fietkau ba29b8f04f gcc: port missing patches from 4.6 to 4.8
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36693
11 years ago
Felix Fietkau 6b4f3344df toolchain/gcc: add support for 4.8-linaro
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36545
11 years ago
Felix Fietkau f8d8aadb42 toolchain/gcc: forward port missing patches to gcc 4.8.0
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36544
11 years ago
Jo-Philipp Wich a98cdd9892 toolchain: add missing patch to gcc v4.8.0
SVN-Revision: 36511
11 years ago
Jonas Gorski 73b7c776e9 toolchain: gcc: backport fixes for gcc bug 54295
Fix "Widening multiply-accumulate operation uses wrong value extension"
for 4.7, 4.7-linaro and 4.6-linaro, which backported the broken code to 4.6.
Vanilla 4.6 is unaffected.

Fixes #13420.

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

SVN-Revision: 36486
11 years ago
Florian Fainelli 9dc38e48f7 toolchain/gcc: .init and .fini need to pick one ISA
The .init and .fini sections are built by concatenating code
fragments. Putting mips16 code in the middle of a mips32 code block
doesn't work. Make gcc built the magic crt stuff in no-mips16 mode.

This is specific to 4.6-linaro but is probably portable to other gcc
flavors. Adding this to the t-libgcc-mips16 makefile fragment is a
hack not suitable for pushing upstream, but there is no mips/t-linux
or mips/t-uclibc and I am not going to touch gcc/configure for two
lines.

Signed-off-by: Jay Carlson <nop@nop.com>
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36200
11 years ago
Florian Fainelli a54e305a8b toolchain/gcc: add support for GCC 4.8.0
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36155
11 years ago
Imre Kaloz 2a390f5706 drop 4.5 support
SVN-Revision: 36149
11 years ago
Imre Kaloz 9231162c7e llvm is marked broken for two and a half year now, nuke it
SVN-Revision: 36145
11 years ago
Florian Fainelli 2935823a42 toolchain/gcc: refresh patches
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35808
11 years ago
Luka Perkov 098bd91f5e gcc: don't build documentation
This closes #13039.

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 35807
11 years ago
Luka Perkov a85019072f gcc: remove support for 4.6.2
There are no good reasons for keeping this version around when 4.6.3 and
4.6-linaro are there.

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 35805
11 years ago
Florian Fainelli fe766227a2 toolchain/gcc: fix the mips64 linker path to be more musl conforming
musl libc does not use /lib32 or /lib64 directories, just /lib

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

SVN-Revision: 35406
12 years ago
Florian Fainelli 5ae9a4f830 gcc: fix build for MIPS64 targets introduced by musl patch
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35046
12 years ago
Florian Fainelli 4801705d83 remove support for ubicom32
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34432
12 years ago
Florian Fainelli bf9af32738 gcc/4.5-linaro: backport musl patch
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34425
12 years ago
Florian Fainelli 6b63716262 add preliminary support for musl
Musl is an alternative C-library, see http://www.musl-libc.org for more infos.

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

SVN-Revision: 34314
12 years ago
Florian Fainelli bca3953ee5 gcc: remove support for 4.7.0
There are no good reasons for keeping this version around when 4.7.2 and
4.7-linaro are there.

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

SVN-Revision: 34296
12 years ago
Florian Fainelli 5013a897c5 gcc: add GCC 4.7.2
SVN-Revision: 33763
12 years ago
Florian Fainelli ba446684e0 gcc: add GCC 4.6.3
SVN-Revision: 33762
12 years ago
Florian Fainelli 42c4a16172 gcc: update 4.7-linaro to 4.7-2012.10
SVN-Revision: 33759
12 years ago
Florian Fainelli 5d223006f9 gcc: update gcc-4.6-linaro to 4.6-2012.10
SVN-Revision: 33758
12 years ago
Florian Fainelli a72cadbbb4 gcc: backport struct siginfo -> siginfo_t renaming
Otherwise newer eglibc toolchain will simply fail to build.

SVN-Revision: 33736
12 years ago
Florian Fainelli 95f1b6d415 gcc: add upstream fixes for GCC bug 54494
See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54494 for more infos.

SVN-Revision: 33329
12 years ago
Florian Fainelli 11f1712b49 gcc: add upstream fixes for GCC bug 54369
See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54369 for more infos.

SVN-Revision: 33328
12 years ago
Imre Kaloz 880de62f91 switch to 2.6.38
SVN-Revision: 31546
12 years ago
Jo-Philipp Wich e0c97d69c6 gcc: fix getenv() patches for 4.4.7 and 4.5-linaro
SVN-Revision: 31489
12 years ago
Mirko Vogt 47ea827dce remove screwed up patch for gcc 4.7-linaro which got committed by accident
SVN-Revision: 31393
12 years ago
Mirko Vogt 84307e4035 add support for GCC 4.7-linaro (based on GCC 4.7.1)
SVN-Revision: 31392
12 years ago
Jo-Philipp Wich f79bfe6072 gcc: add patch to make the getenv() spec function nonfatal if requested environment variable is unset
SVN-Revision: 31390
12 years ago
Jo-Philipp Wich b7e2959450 toolchain/gcc: gcc-4.7.0 upstream patch fixing uClibc problems
SVN-Revision: 31255
12 years ago
Imre Kaloz ca6859aa29 upgrade to gcc 4.4.7
SVN-Revision: 31230
12 years ago
Mirko Vogt 626e171764 add support for gcc 4.7.0 - thanks to acoul!
SVN-Revision: 31216
12 years ago
Gabor Juhos 45d5b24190 toolchain/gcc-4.6.2: fix v4bx patch
SVN-Revision: 30970
12 years ago
Gabor Juhos 9c077ed0ae toolchain/gcc-4.6-linaro: fix v4bx patch
SVN-Revision: 30969
12 years ago
Felix Fietkau d8c570a153 gcc: do not emit references to _savegpr_* and _restgpr_* on powerpc, as they are tricky to deal with wrt. libgcc. they cannot be linked dynamically
SVN-Revision: 30814
12 years ago
Felix Fietkau a86e168c54 gcc: use .eh_frame sections for exception handling stack unwind - saves about 400 bytes on every executable or shared library
SVN-Revision: 30614
12 years ago
Felix Fietkau dcfc40358b gcc 4.6: port over the missing patch 850-use_shared_libgcc.patch to prevent libgcc crap from leaking into every single binary
SVN-Revision: 30486
12 years ago
Imre Kaloz d252dd3d2e upgrade vanilla gcc to 4.6.2
SVN-Revision: 30470
12 years ago
Imre Kaloz 8fcdb09e1f upgrade to latest linaro releases
SVN-Revision: 29748
13 years ago
Hauke Mehrtens cca287d05e gcc: add 4.6-linaro version 4.6-2011.08
SVN-Revision: 28042
13 years ago
Hauke Mehrtens ab380f46f4 gcc: make patches apply for gcc 4.5-linaro version 4.5-2011.08
SVN-Revision: 28041
13 years ago
Hauke Mehrtens 441e392e11 gcc: move patches as the name changed. This was missing in r28038.
SVN-Revision: 28040
13 years ago
Imre Kaloz 62daf628c0 In R27118, TARGET_FIX_V4BX_SPEC got lost in the linker parameters. Add it back.
Signed-off-by: Jochen Friedrich <jochen@scram.de>

SVN-Revision: 27599
13 years ago
Imre Kaloz 6d378e7b20 fix ppc toolchain build
SVN-Revision: 27551
13 years ago
Imre Kaloz 4fbc50d89a nuke support for older gcc versions, except for 4.4.6 (needed for avr32 and ubicom32)
SVN-Revision: 27351
13 years ago
Imre Kaloz 9167521015 bump the 4.4 flavour to 4.4.6
SVN-Revision: 27337
13 years ago
Imre Kaloz be9a11b014 replace gcc 4.5.2 support with 4.6.1
SVN-Revision: 27333
13 years ago
Imre Kaloz 6d02667c07 add the latest avr32 toolchain patches (with additional fixes)
SVN-Revision: 27332
13 years ago
Imre Kaloz 7c4a91b216 upgrade the linaro gcc to 2011.06
SVN-Revision: 27326
13 years ago
Mirko Vogt 18caed8793 remove empty file (patch went upstream and file didn't get deleted but only cleared)
SVN-Revision: 27122
13 years ago
Mirko Vogt 59ad83aff1 upgrade Linaro GCC to 4.5-2011.05-0 - thanks to Mark Mentovai
SVN-Revision: 27118
13 years ago
Felix Fietkau e52b720870 gcc: move the optimized assembler helpers back into the static libgcc and skip relinking for this arch. due to relocation constraints, the assembler functions cannot be in the shared libgcc and must always be linked in statically
SVN-Revision: 25952
13 years ago
Felix Fietkau 7b64200684 gcc: include assembler functions in the shared libgcc_s library, fixes missing symbol issues on powerpc
SVN-Revision: 25912
13 years ago
Felix Fietkau fff328fd41 toolchain/gcc (linaro): fix extension elimination optimization
This applies Richard Sandiford's patch for Linaro GCC as an alternative to disabling the Linaro-specific extension elimination optimization altogether.

Original patch: https://bugs.launchpad.net/gcc-linaro/+bug/728315
Signed-off-by: Mark Mentovai <mark@moxienet.com>

SVN-Revision: 25871
13 years ago
Alexandros C. Couloumbis e2a0620d44 toolchain/gcc: fix r25709 (closes #8964)
SVN-Revision: 25844
13 years ago