aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/common.mk
Commit message (Collapse)AuthorAgeFilesLines
* toolchain: ARM: Fix option conflict with multiarchBoris Krasnovskiy2019-03-251-0/+5
| | | | | | | | | | | | This problem exposed when compiling glibc, but applicable across the board. gcc compiles runtime libraries for all supported architectures, unless otherwise specified, and later selects applicable library based -m[arch,cpu,*] options, thus these options should not be passed to gcc as they break the compilation process. Signed-off-by: Boris Krasnovskiy <borkra@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [modified so it only touches ARM - I'm too chicken, changed authors email]
* toolchain: ARM: Fix toolchain compilation for gcc 8.xBoris Krasnovskiy2019-03-251-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | Set the toolchain's ARM CPU and FPU architectures by utilizing' gcc's --with-cpu / --with-fpu configure options that: "Specify which cpu variant the compiler should generate code for by default. cpu will be used as the default value of the -mcpu= switch." This will resolve the following kernel compilation failures under gcc 8.x on ARM because the kernel wants to set (possibly conflicting) optimization flags. .../ccyVnmrs.s:204: Error: selected processor does not support `dmb ish' in ARM mode .../ccyVnmrs.s:215: Error: architectural extension `mp' is not allowed for the current base architecture .../ccyVnmrs.s:216: Error: selected processor does not support `pldw [r4]' in ARM mode Because this is a big change, the .config and toolchain need to be refreshed (as in removed and regenerated). Reported-by: Ansuel Smith <ansuelsmth@gmail.com> Reported-by: Daniel Engberg <daniel.engberg.lists@pyret.net> [#1203] Signed-off-by: Boris Krasnovskiy <borkra@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [extended commit message, removed now-deprecated CPU_CFLAGS, changed author to gmail address]
* toolchain: Remove GCC 7.1 for ARC targetsDaniel Engberg2019-03-201-10/+0
| | | | | | Remove GCC 7.1 for ARC targets Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* toolchain: Update to GCC 8.3.0Daniel Engberg2019-02-261-2/+2
| | | | | | | | | Update GCC to 8.3.0 Refresh patches Allow GCC to be used for ARC Source: https://github.com/openwrt/openwrt/pull/1803#issuecomment-462334890 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* toolchain/gcc: Remove workaround for GCC 4.8Daniel Engberg2019-02-261-5/+2
| | | | | | GCC 4.8 was removed a long time ago... Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* gcc: update to version 7.4.0Hauke Mehrtens2018-12-151-2/+2
| | | | | | | | This updates the GCC to the next minor release which fixes 178 bugs. The two removed patches are included in gcc 7.4.0 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* toolchain/gcc: update 8.x to 8.2.0Syrone Wong2018-08-201-2/+2
| | | | | | This release fixes LTO link-time performance problems and C++ bug introduced in GCC 8.1 Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
* toolchain/gcc: add GCC 8.1.0Syrone Wong2018-07-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes compared to GCC 7.x 001-revert_register_mode_search.patch dropped The underlying issue is described at the end of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58139 It is fixed by the upstream commit: https://github.com/gcc-mirror/gcc/commit/3fa2798aa887d141d86985240f03e2f3809e7e62 020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch dropped due to already upstream 100-PR-rtl-optimization-83496.patch dropped due to already upstream 910-mbsd_multi.patch modified to fix ambiguous overloaded inform() call error gcc/input.h header: define UNKNOWN_LOCATION ((source_location) 0) - inform (0, "someone does not honour COPTS correctly, passed %d times", - honour_copts); + inform (UNKNOWN_LOCATION, "someone does not honour COPTS correctly, passed %d times", + honour_copts); 940-no-clobber-stamp-bits.patch dropped due to fixed upstream by another way upstream commit: https://github.com/gcc-mirror/gcc/commit/87b2d547f8ac9778d66909b8726fe967d1efbc74 950-cpp_file_path_translation.patch dropped, Both -fmacro-prefix-map and -ffile-prefix-map are added to gcc 8.1.0, if I understand it correctly, we should use -fmacro-prefix-map usage: -fmacro-prefix-map=@var{old}=@var{new} upstream commit: https://github.com/gcc-mirror/gcc/commit/859b51f83662d01e4f158ea9327db9ca37fe70b3 -iremap exists as a flag for a long time, for backward compatibility, I think we should keep the variable name unchanged but change its value in rules.mk for gcc 8.x and higher. Compile and run tested on x86_64 Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
* gcc: remove support for version 6.3.0Felix Fietkau2018-06-051-5/+0
| | | | | | It is obsoleted by gcc 7 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain: gcc: update 7.x to 7.3.0Hauke Mehrtens2018-01-271-2/+2
| | | | | | This version still generates broken code in our setup for MIPS. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* build: cleanup SSP_SUPPORT configure optionJulien Dusser2018-01-271-1/+1
| | | | | | | | | | | | | | | | | | Configure variable SSP_SUPPORT is ambiguous for packages (tor, openssh, avahi, freeswitch). It means 'toolchain supporting SSP', but for toolchain and depends it means 'build gcc with libssp'. Musl no longer uses libssp (1877bc9d8f), it has internal support, so SSP_SUPPORT was disabled leading some package to not use SSP. No information why Glibc and uClibc use libssp, but they may also provide their own SSP support. uClibc used it own with commit 933b588e25 but it was reverted in f3cacb9e84 without details. Create an new configure GCC_LIBSSP and automatically enable SSP_SUPPORT if either USE_MUSL or GCC_LIBSSP. Signed-off-by: Julien Dusser <julien.dusser@free.fr>
* toolchain: add gcc configure default PIE and SSPJulien Dusser2018-01-271-0/+10
| | | | | | | | | | GCC supports starting version 5 --enable-default-ssp and starting version 6 --enable-default-pie. It produces hardened binaries by default without dealing with package compilation flags. Signed-off-by: Julien Dusser <julien.dusser@free.fr>
* toolchain/arc: update to the most recent release arc-2017.09Evgeniy Didin2018-01-271-4/+4
| | | | | | | | | | | | | | | This commit finally bumps ARC tools to the most recent arc-2017.09 release version. ARC GNU tools of version arc-2017.09 bring some quite significant changes like: * Binutils v2.29 with additional ARC patches * GCC 7.1.1 with additional ARC patches More information on this release could be found here: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2017.09-release Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com> CC: Alexey Brodkin <abrodkin@synopsys.com> CC: John Crispin <john@phrozen.org>
* merge: etc: update remaining filesZoltan HERPAI2017-12-081-1/+1
| | | | Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* gcc: remove support for libgcj/javaFelix Fietkau2017-11-021-5/+2
| | | | | | It has been removed in gcc 7 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: update 5.x to 5.5.0Ryan Mounce2017-10-151-4/+4
| | | | | | | | | | This is the final bugfix release in the gcc-5 series. Compile and run tested on macOS 10.13 (Xcode 9), mvebu/ar71xx. Removed redundant patch for macOS (backported upstream by yours truly) Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* toolchain: gcc: update 7.x to 7.2.0Kevin Darbyshire-Bryant2017-09-161-2/+3
| | | | | | | | | | | | | | Bump gcc from 7.1 to 7.2 Compile & run tested: ar71xx Trace history of current patches and update with commit ref & comment to give more clue as to why they're still around/needed. Some have changed form since the original commit but some clue is better than no clue at all. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk> Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* toolchain/arc: update to the most recent release arc-2017.03Evgeniy Didin2017-07-181-4/+4
| | | | | | | | | | arc-2017.03 is the most recent release toolchain for ARC cores and it is based on upstream Binutils 2.28 and GCC 6.3.0 Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: John Crispin <john@phrozen.org> Cc: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain/gcc: fix --with-isl pathSyrone Wong2017-05-301-2/+2
| | | | | | | | | | | This fixes GCC 7 compilation when GRAPHITE is selected. The path is replaced with $(TOOLCHAIN_DIR), while it should be $(STAGING_DIR_HOST). To keep in sync with the path of gmp, mpfr and mpc, I'm using $(TOPDIR)/staging_dir/host. Fixes: f62f4b3c5c9d ("build: stop overriding STAGING_DIR_HOST for toolchain build") Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
* toolchain: add gcc 7.1.0 supportFelix Fietkau2017-05-251-1/+6
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: stop overriding STAGING_DIR_HOST for toolchain buildFelix Fietkau2017-05-251-4/+4
| | | | | | | | | This causes various issues in other places that assume that host binaries are staged in STAGING_DIR_HOST. Since all the right places use HOST_BUILD_PREFIX, override that instead. This fixes some issues with quilt on toolchain dirs Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/arc: update to the most recent release arc-2016.09Alexey Brodkin2017-05-021-5/+5
| | | | | | | | | | | | | | | | | | arc-2016.09 is the most recent toolchain for ARC cores and it is based on top of upstream Binutils 2.27 and GCC 6.2.1. With updated major version of GCC we copied all GCC 6.x patches for ARC as well as Bintils 2.27 patches. Note that toochain sports ARCv4 ABI and so must be used with 4.8+ Linux kernels. Even though it will build v4.4 kernel perfectly fine on attempt to run user-space apps they won't work with older kernel. That said previuosly sent RFC patches with Linux kernel update are required: [1] https://patchwork.ozlabs.org/patch/726686/ [2] https://patchwork.ozlabs.org/patch/726687/ Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
* toolchain/gcc: reduce source directory size by about 420 MBFelix Fietkau2017-02-011-0/+6
| | | | | | Remove gcc testsuite, ada and libjava (if not selected) Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: update 6.x to 6.3.0Syrone Wong2016-12-241-2/+2
| | | | | | | | This is a bugfix release Build and run tested on mvebu/Linksys WRT1900AC v1 Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
* toolchain: remove ppl/cloog, disable graphite for gcc 4.8Felix Fietkau2016-12-241-5/+1
| | | | | | | | graphite is disabled by default and it's not worth carrying ppl and cloog for supporting this feature on the old gcc 4.8, which is only used for ARC Signed-off-by: Felix Fietkau <nbd@nbd.name>
* treewide: clean up download hashesFelix Fietkau2016-12-161-3/+3
| | | | | | Replace *MD5SUM with *HASH, replace MD5 hashes with SHA256 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain/gcc: bump GCC 6.1.0 to 6.2.0Syrone Wong2016-09-041-2/+2
| | | | | | Compile and run tested on ar71xx and mvebu Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
* gcc: optionally build gccgo compilerMatteo Croce2016-08-111-2/+10
| | | | | | Tested with eglibc on x86 and armv7 so far Signed-off-by: Matteo Croce <matteo.croce@canonical.com>
* 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-151-0/+4
| | | | | | | | | | | -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/gcc: clean up remaining references to the old linaro versionFelix Fietkau2016-07-151-5/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* gcc: update gcc to version 5.4.0Hauke Mehrtens2016-07-131-2/+2
| | | | | | 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-071-3/+23
| | | | | | | | 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>
* treewide: replace nbd@openwrt.org with nbd@nbd.nameFelix Fietkau2016-06-071-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain: Bump ARC tools to arc-2016.03Alexey Brodkin2016-05-191-4/+4
| | | | | | | | | | | | | | | | | 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>
* branding: add LEDE brandingJohn Crispin2016-03-241-3/+3
| | | | Signed-off-by: John Crispin <blogic@openwrt.org>
* gcc: update gcc 5 to version 5.3.0Felix Fietkau2016-02-291-2/+2
| | | | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48826
* toolchain: add support of ARCv2 architectureJohn Crispin2016-02-181-0/+1
| | | | | | | | | | | | | | | | | | | | 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
* gcc: drop version 4.8-linaroFelix Fietkau2016-01-201-22/+0
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48395
* gcc: remove v4.6 relictsFelix Fietkau2015-12-231-10/+0
| | | | | | | | | 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
* gcc: make colors optional based on the GCC_COLORS env varFelix Fietkau2015-11-251-0/+4
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 47642
* gcc: set the isl/cloog prefix when graphite is enabled, disable it ↵Felix Fietkau2015-11-131-0/+10
| | | | | | | | explicitly if it is disabled in the config Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 47465
* toolchain: add support of ARC architectureFelix Fietkau2015-11-101-9/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* gcc: use qstrip template to fix syntax highlightingFelix Fietkau2015-09-221-1/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 47023
* gcc: remove 4.6.3 leftoversFelix Fietkau2015-09-061-3/+0
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 46799
* gcc: remove version 4.9-linaroFelix Fietkau2015-09-061-8/+0
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 46798
* toolchain: gcc: add gcc 5.2.0Hauke Mehrtens2015-08-161-0/+3
| | | | | | | | This was boot tested on mipsel32, arm32 and x86 only. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 46611
* toolchain/gcc: upgrade Linaro GCC 4.9 to 4.9-2015.03Imre Kaloz2015-06-111-4/+4
| | | | | | Signed-off-by: Imre Kaloz <kaloz@openwrt.org> SVN-Revision: 45944
* gcc: remove 4.4.7 (only used by avr32)Felix Fietkau2015-03-241-8/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 44957
* gcc: update 4.9 to linaro 2014.10Felix Fietkau2014-10-201-3/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43003