Commit Graph

362 Commits (6c21bcaa65d0b9c38f60a9735de59cf441c3be52)

Author SHA1 Message Date
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
2013-04-29 15:40:21 +00:00
Felix Fietkau 39463bf146 toolchain: get rid of gcc kconfig symbol overloading
SVN-Revision: 36355
2013-04-18 12:04:40 +00:00
Felix Fietkau 96bb7c123b build: consistently use 'depends on' instead of 'depends'
make the syntax more compatible with kernel menuconfig

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

SVN-Revision: 36351
2013-04-17 15:36:41 +00:00
Felix Fietkau c270db592a gcc: remove the bogus CONFIG_TLS_SUPPORT symbol - TLS support is required by libc.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36240
2013-04-07 10:11:41 +00:00
Florian Fainelli e032922266 toolchain: allow choosing the MIPS64 user-land ABI
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36205
2013-04-05 12:36:23 +00:00
Florian Fainelli 348cae15d2 buildroot: factor knowledge of a 64bits architecture
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36204
2013-04-05 12:36:19 +00:00
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
2013-04-05 12:36:06 +00:00
Imre Kaloz 84d0582ddb remove the old (and nonworking) hack and identify our patched GCCs properly
SVN-Revision: 36189
2013-04-03 10:41:07 +00:00
Florian Fainelli 4dd9e8dc9b toolchain/gcc: remove reference to llvm introduced in r36155
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36156
2013-04-02 16:03:14 +00:00
Florian Fainelli a54e305a8b toolchain/gcc: add support for GCC 4.8.0
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36155
2013-04-02 16:00:35 +00:00
Florian Fainelli 558d35c754 toolchain/gcc: update 4.7-linaro to 2013.03
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36154
2013-04-02 16:00:23 +00:00
Imre Kaloz 2a390f5706 drop 4.5 support
SVN-Revision: 36149
2013-04-01 15:46:41 +00:00
Imre Kaloz 48612b3b4a cleanup
SVN-Revision: 36148
2013-04-01 15:43:23 +00:00
Imre Kaloz 99d4d9a148 fixup 4.7 configure options
SVN-Revision: 36146
2013-04-01 15:13:46 +00:00
Imre Kaloz 9231162c7e llvm is marked broken for two and a half year now, nuke it
SVN-Revision: 36145
2013-04-01 15:08:38 +00:00
Florian Fainelli 2935823a42 toolchain/gcc: refresh patches
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35808
2013-02-26 16:39:54 +00:00
Luka Perkov 098bd91f5e gcc: don't build documentation
This closes #13039.

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

SVN-Revision: 35807
2013-02-26 16:16:33 +00:00
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
2013-02-26 14:31:24 +00:00
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
2013-01-29 23:05:46 +00:00
Florian Fainelli 5ae9a4f830 gcc: fix build for MIPS64 targets introduced by musl patch
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35046
2013-01-07 18:16:40 +00:00
Florian Fainelli 2e8be0cc4b gcc-linaro-4.6: update to 2012.12
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35044
2013-01-07 18:16:33 +00:00
Florian Fainelli b71fdb0abf gcc-linaro-4.7: update to 2012.12
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35043
2013-01-07 18:16:29 +00:00
Jo-Philipp Wich 57d29c25f5 toolchain: use file_copy to install the initial gcc files
SVN-Revision: 34440
2012-12-02 12:20:47 +00:00
Florian Fainelli 4801705d83 remove support for ubicom32
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34432
2012-11-30 10:53:55 +00:00
Florian Fainelli bf9af32738 gcc/4.5-linaro: backport musl patch
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34425
2012-11-29 21:42:58 +00:00
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
2012-11-23 20:02:29 +00:00
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
2012-11-21 20:27:15 +00:00
Florian Fainelli 5d37a99a01 gcc: build with HOST_CFLAGS
Turns on -O2 optimization when building GCC thus making the cross-compiler a
little faster (about 25%).

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

SVN-Revision: 34266
2012-11-19 23:12:00 +00:00
Florian Fainelli 9659e20d57 gcc-4.6-linaro: update to 2012.11
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34264
2012-11-19 19:37:39 +00:00
Florian Fainelli d82044de9c gcc-4.7-linaro: update to 2012.11
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34263
2012-11-19 19:37:33 +00:00
Felix Fietkau 291d24c3cc build: remove remaining references to TOOLCHAIN_JOBS (thx, Sedat Dilek)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 34122
2012-11-08 15:08:31 +00:00
Florian Fainelli 5013a897c5 gcc: add GCC 4.7.2
SVN-Revision: 33763
2012-10-14 13:35:19 +00:00
Florian Fainelli ba446684e0 gcc: add GCC 4.6.3
SVN-Revision: 33762
2012-10-14 13:35:13 +00:00
Florian Fainelli 3a31553a0e gcc: update 4.5-linaro to 4.5-2012.03
SVN-Revision: 33760
2012-10-13 19:19:44 +00:00
Florian Fainelli 42c4a16172 gcc: update 4.7-linaro to 4.7-2012.10
SVN-Revision: 33759
2012-10-13 19:19:41 +00:00
Florian Fainelli 5d223006f9 gcc: update gcc-4.6-linaro to 4.6-2012.10
SVN-Revision: 33758
2012-10-13 19:19:38 +00:00
Florian Fainelli 3b683b6feb gcc: add --with-long-double-128 for SPARC toolchain
This is required in order to build the final compiler.

SVN-Revision: 33739
2012-10-12 14:42:41 +00:00
Florian Fainelli a72cadbbb4 gcc: backport struct siginfo -> siginfo_t renaming
Otherwise newer eglibc toolchain will simply fail to build.

SVN-Revision: 33736
2012-10-12 14:42:25 +00:00
Felix Fietkau ed2bf29be5 build: add the + token to any commands that can pass through the jobserver, fixes parallel build on some systems
SVN-Revision: 33523
2012-09-23 09:50:01 +00:00
Felix Fietkau d6c5846513 gcc: enable parallel builds
SVN-Revision: 33444
2012-09-15 14:18:19 +00:00
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
2012-09-07 10:31:58 +00:00
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
2012-09-07 10:31:54 +00:00
Felix Fietkau 59b384dabe toolchain: fix up lib64 symlink to lib before copying the initial prefix dir to avoid errors on copying
SVN-Revision: 32556
2012-06-30 21:43:59 +00:00
Felix Fietkau 70259bceb4 toolchain/gcc: fix installing the toolchain after removing the toolchain dir without a full rebuild
SVN-Revision: 32554
2012-06-30 18:12:19 +00:00
Felix Fietkau e74e4dbd29 toolchain: keep the initial gcc around for later uclibc rebuilds
testing uclibc changes is tricky because the final gcc tends to miscompile
uclibc code or barf up internal compiler errors.
install binutils into $(TOOLCHAIN_DIR)/initial (without changing the configure
prefix) and copy it from there to $(TOOLCHAIN_DIR)/ so that the initial gcc
can be put into $(PATH) for the uclibc build, even if the final gcc
is already installed.

SVN-Revision: 32553
2012-06-30 18:12:15 +00:00
Felix Fietkau 176c236922 toolchain: install libgcc for minimal gcc, needed by newer eglibc versions
SVN-Revision: 32100
2012-06-07 12:24:13 +00:00
Imre Kaloz 880de62f91 switch to 2.6.38
SVN-Revision: 31546
2012-05-01 07:00:17 +00:00
Jo-Philipp Wich e0c97d69c6 gcc: fix getenv() patches for 4.4.7 and 4.5-linaro
SVN-Revision: 31489
2012-04-27 12:05:34 +00:00
Mirko Vogt 47ea827dce remove screwed up patch for gcc 4.7-linaro which got committed by accident
SVN-Revision: 31393
2012-04-21 10:23:49 +00:00
Mirko Vogt 84307e4035 add support for GCC 4.7-linaro (based on GCC 4.7.1)
SVN-Revision: 31392
2012-04-21 09:58:31 +00:00
Jo-Philipp Wich f79bfe6072 gcc: add patch to make the getenv() spec function nonfatal if requested environment variable is unset
SVN-Revision: 31390
2012-04-21 03:02:39 +00:00
Jo-Philipp Wich b7e2959450 toolchain/gcc: gcc-4.7.0 upstream patch fixing uClibc problems
SVN-Revision: 31255
2012-04-12 07:48:02 +00:00
Imre Kaloz ca6859aa29 upgrade to gcc 4.4.7
SVN-Revision: 31230
2012-04-09 17:00:03 +00:00
Mirko Vogt 626e171764 add support for gcc 4.7.0 - thanks to acoul!
SVN-Revision: 31216
2012-04-07 15:34:41 +00:00
Gabor Juhos 45d5b24190 toolchain/gcc-4.6.2: fix v4bx patch
SVN-Revision: 30970
2012-03-18 10:55:49 +00:00
Gabor Juhos 9c077ed0ae toolchain/gcc-4.6-linaro: fix v4bx patch
SVN-Revision: 30969
2012-03-18 10:55:47 +00:00
Felix Fietkau 40bf6ee842 gcc: now that the gpr save/restore issues are taken care of, remove the -Os/-O2 workaround that dealt with it earlier
SVN-Revision: 30815
2012-03-05 00:51:05 +00:00
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
2012-03-05 00:51:01 +00:00
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
2012-02-17 16:55:08 +00:00
Felix Fietkau 42ed1bd9e6 gcc: enable --with-headers for the final toolchain build
SVN-Revision: 30613
2012-02-17 16:55:01 +00:00
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
2012-02-12 20:25:47 +00:00
Imre Kaloz d252dd3d2e upgrade vanilla gcc to 4.6.2
SVN-Revision: 30470
2012-02-12 09:48:39 +00:00
Imre Kaloz 909abe4999 use Linaro GCC 4.6 by default
SVN-Revision: 30467
2012-02-12 09:14:18 +00:00
Imre Kaloz ed192cb5a6 update to latest Linaro releases
SVN-Revision: 30466
2012-02-12 08:50:18 +00:00
Jo-Philipp Wich 64dc82eab0 invoke patch-specs.sh in the gcc/final install stage. Patch up OpenWrts own cross toolchains to always search headers and libraries in $STAGING_DIR, this should solve most issues with missing headers, indirect linking and not found libraries. At a later stage, all -I and -L flags will be purged from TARGET_LDFLAGS and TARGET_CPPFLAGS.
SVN-Revision: 29768
2012-01-18 03:15:22 +00:00
Imre Kaloz 8fcdb09e1f upgrade to latest linaro releases
SVN-Revision: 29748
2012-01-14 22:52:40 +00:00
Felix Fietkau e3a21eb9f8 gcc: always explicitly link against libstdc++, fixes build errors on some hosts that refuse to link it in implicitly (should fix #10587)
SVN-Revision: 29721
2012-01-12 10:15:20 +00:00
Hauke Mehrtens cca287d05e gcc: add 4.6-linaro version 4.6-2011.08
SVN-Revision: 28042
2011-08-18 12:13:54 +00:00
Hauke Mehrtens ab380f46f4 gcc: make patches apply for gcc 4.5-linaro version 4.5-2011.08
SVN-Revision: 28041
2011-08-18 12:12:47 +00:00
Hauke Mehrtens 441e392e11 gcc: move patches as the name changed. This was missing in r28038.
SVN-Revision: 28040
2011-08-18 12:09:42 +00:00
Hauke Mehrtens 5f1d6c6c9b gcc: update gcc-4.5-linaro to 4.5-2011.08
SVN-Revision: 28039
2011-08-18 12:07:15 +00:00
Hauke Mehrtens a0c5616090 gcc: rename linaro to 4.5-linaro
SVN-Revision: 28038
2011-08-18 12:06:17 +00:00
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
2011-07-12 13:34:18 +00:00
Imre Kaloz 887b29bfbd the only reasons for having 4.4 around are avr32 and ubicom32, so make it depend on them
SVN-Revision: 27559
2011-07-08 11:15:00 +00:00
Felix Fietkau 9a560e48dd toolchain: remove a dependency on a nonexistant config symbol (thx, Sedat Dilek)
SVN-Revision: 27556
2011-07-08 08:13:50 +00:00
Imre Kaloz 6d378e7b20 fix ppc toolchain build
SVN-Revision: 27551
2011-07-07 22:19:38 +00:00
Imre Kaloz a2c0394572 simplify configuration
SVN-Revision: 27353
2011-07-02 07:50:26 +00:00
Imre Kaloz 4fbc50d89a nuke support for older gcc versions, except for 4.4.6 (needed for avr32 and ubicom32)
SVN-Revision: 27351
2011-07-02 07:43:26 +00:00
Imre Kaloz 5f397b16ef both coldfire and etrax are broken and should use a newer gcc when they will be fixed
SVN-Revision: 27350
2011-07-02 07:28:16 +00:00
Imre Kaloz dde7babe01 switch avr32 to gcc 4.4, also powerpc targets should work fine with linaro releases
SVN-Revision: 27338
2011-07-01 13:44:03 +00:00
Imre Kaloz 9167521015 bump the 4.4 flavour to 4.4.6
SVN-Revision: 27337
2011-07-01 13:39:50 +00:00
Imre Kaloz be9a11b014 replace gcc 4.5.2 support with 4.6.1
SVN-Revision: 27333
2011-07-01 11:43:15 +00:00
Imre Kaloz 6d02667c07 add the latest avr32 toolchain patches (with additional fixes)
SVN-Revision: 27332
2011-07-01 11:35:21 +00:00
Imre Kaloz 7c4a91b216 upgrade the linaro gcc to 2011.06
SVN-Revision: 27326
2011-07-01 08:10:12 +00:00
Jo-Philipp Wich 28fbd7470d add gfortran compiler support (#9600, patch from Xiangfu Liu via Qi hardware)
SVN-Revision: 27262
2011-06-23 11:46:24 +00:00
Jo-Philipp Wich a56dab661a introduce option to enable setjump()/longjump() based C++ exceptions (#9185, patch from David Kuehling via Qi hardware)
SVN-Revision: 27261
2011-06-23 11:37:39 +00:00
Mirko Vogt 18caed8793 remove empty file (patch went upstream and file didn't get deleted but only cleared)
SVN-Revision: 27122
2011-06-07 08:37:25 +00:00
Mirko Vogt 59ad83aff1 upgrade Linaro GCC to 4.5-2011.05-0 - thanks to Mark Mentovai
SVN-Revision: 27118
2011-06-07 00:13:56 +00:00
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
2011-03-08 13:10:11 +00:00
Felix Fietkau 7b64200684 gcc: include assembler functions in the shared libgcc_s library, fixes missing symbol issues on powerpc
SVN-Revision: 25912
2011-03-06 22:54:30 +00:00
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
2011-03-04 21:38:15 +00:00
Alexandros C. Couloumbis e2a0620d44 toolchain/gcc: fix r25709 (closes #8964)
SVN-Revision: 25844
2011-03-03 10:09:06 +00:00
Felix Fietkau d1f44a7598 gcc: disable extension elimination, it causes hostapd to be miscompiled on mips
SVN-Revision: 25834
2011-03-02 17:54:02 +00:00
Felix Fietkau c2e2651b71 toolchain: remove -lgcc_eh from the default libgcc spec, it breaks packages
SVN-Revision: 25807
2011-03-01 15:38:58 +00:00
Felix Fietkau 23e18c9037 gcc-linaro: fix the libgcc spec to default to using the shared libgcc
SVN-Revision: 25801
2011-03-01 05:40:47 +00:00
Imre Kaloz aa6099c624 backport fa526 optimization for gcc 4.5+
SVN-Revision: 25709
2011-02-25 17:44:18 +00:00
Imre Kaloz 446f79385b use the Linaro GCC for arm and mips targets
SVN-Revision: 25708
2011-02-25 17:43:15 +00:00
Imre Kaloz a3989e3dbd We use different toolchain directories for different ARM archs, so we should set the default arch of gcc to reflect this.
This enables EABI support for armv4 CPUs.

Signed-off-by: Jochen Friedrich <jochen@scram.de>

SVN-Revision: 25705
2011-02-25 16:52:25 +00:00
Imre Kaloz 0be1f2ba60 sync avr32 patch with the latest ones from atmel
SVN-Revision: 25696
2011-02-24 08:14:15 +00:00
Felix Fietkau ad6c7066a6 gcc: remove arch default duplication, fix version selection for !TOOLCHAINOPTS
SVN-Revision: 25633
2011-02-20 22:09:51 +00:00