summaryrefslogtreecommitdiffstats
path: root/package/gcc
Commit message (Collapse)AuthorAgeFilesLines
...
* mpd: fix build for ARCZakharov Vlad2017-03-011-0/+34
| | | | | | | | | | | | | | | | | | | | | mpd package fails for both internal and external ARC toolchain as check for pthread support fails. Such checks fails because _REENTRANT flag is not defined in gcc even when -pthread is passed. So we add patch to gcc that defines _REENTRANT on ARC when -pthread is passed. Also it disables mpd package for external ARC toolchain as it fails due to the same issue. This patch should be reverted as soon as the patch for GCC becomes a part of ARC toolchain. Fixes: http://autobuild.buildroot.net/results/7d7/7d70b62ad996830fbeca46dffcc7a1dc030e575d// Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: add patches for or1k specific gcc versionThomas Petazzoni2017-02-205-0/+371
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a number of patches from package/gcc/5.4.0 to package/gcc/musl-5.4.0, so that they apply to the or1k specific gcc version. All patches from package/gcc/5.4.0 that are not architecture specific and not related to the musl C library have been added to package/gcc/musl-5.4.0/. Note that doing a symbolic link does not work, as some patches from package/gcc/5.4.0 do not apply as-is to the or1k gcc version. The most important patch is 850-libstdcxx-uclibc-c99.patch, which fixes a number of build issues. Fixes: http://autobuild.buildroot.net/results/eebf4ce5ecb896e54912cfa21268e81ff5fb6593/ (alljoyn) http://autobuild.buildroot.net/results/8dbf406898a59e36ac6a1e16f543b6260da775c8/ (jsoncpp) http://autobuild.buildroot.net/results/206fbd5473c8c6840489990cb2552566c62ef3c8/ (dawgic) Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: fix build on or1k without flex/bison on hostWaldemar Brodkorb2017-01-281-1/+1
| | | | | | | | Similar to arc architecture this is required. Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* arch: add OpenRISC architecture supportWaldemar Brodkorb2017-01-253-5/+18
| | | | | | | | | | | | | | | | | | | Add support for OpenRISC. See here for more details about OpenRISC http://openrisc.io. All buildroot included upstream binutils versions are supported. Gcc support is not upstream, to be able to enable musl C library support later, we use the branch with musl support. At the moment it is possible to build a musl based toolchain, but bootup in Qemu fails. Gdb is only working to debug bare-metal code, there is no support for gdbserver/gdb on Linux, yet. [Peter: drop ?= for GCC_SOURCE] Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Tested-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: bump 6.x series to version 6.3.0Gustavo Zacarias2016-12-2118-3/+3
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* toolchain: Bump ARC tools to arc-2016.09 releaseZakharov Vlad2016-12-195-2/+2
| | | | | | | | | | | As described at: 4520524ba055706236db9f00dd79f1b2e2e87fde this commit continues a series of updates of ARC tools. This time we're updating tools to arc-2016.09 release version. Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: fix powerpc64le arch config nameErico Nunes2016-12-061-3/+3
| | | | | | | | Buildroot references powerpc64 little endian as BR2_powerpc64le and not BR2_powerpc64el. Signed-off-by: Erico Nunes <nunes.erico@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: disallow 4.9.x for ARM cortex-a72Peter Korsgaard2016-12-061-1/+1
| | | | | | | | a72 support was only added in the 5.1 cycle. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: disallow 4.8.x for ARMv8 coresPeter Korsgaard2016-12-061-1/+1
| | | | | | | | | | | Notice: A53/A57 were in fact supported in aarch64 mode in 4.8 (in aarch32 mode only from 4.9), but it doesn't handle --with-abi, and as there is unlikely to be any aarch64 based legacy projects unwilling to use a newer GCC version it is simpler to disallow it for all modes. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* toolchain: Bump ARC tools to arc-2016.09-rc2Zakharov Vlad2016-12-025-2/+2
| | | | | | | | | | | | As described at: 4520524ba055706236db9f00dd79f1b2e2e87fde this commit continues a series of updates of ARC tools. This time we're updating tools to arc-2016.09-rc2. This change contains a set of minor fixes and updates. Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* Merge branch 'next'Peter Korsgaard2016-12-011-13/+0
|\ | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * gcc: the special workaround for ARC is no longer requiredWaldemar Brodkorb2016-11-231-13/+0
| | | | | | | | | | | | | | | | | | It seems with the change to gcc 6.x based toolchain this workaround is no longer required. Tested with an arc hs toolchain. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Acked-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | package/gcc: fix ICE on xtensa, 5.x and 6.x, PR target/78603Max Filippov2016-11-302-0/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Zero overhead loop optimization pass may incorrectly put start of the loop between a call and its CALL_ARG_LOCATION note, resulting in the following build error: ../src/pjlib-test/thread.c: In function 'thread_test': ../src/pjlib-test/thread.c:328:1: internal compiler error: in dwarf2out_var_location, at dwarf2out.c:21846 Fixes: http://autobuild.buildroot.net/results/d919e1276ce1d39b4b3eb09937927d5959cd69a3/ Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | package/gcc: fix ICE on xtensa, 6.2, PR target/78118Max Filippov2016-11-301-0/+320
| | | | | | | | | | | | | | This fixes gcc build for xtensa configurations with call0 ABI. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | gcc: add patch to support musl on ppcWaldemar Brodkorb2016-11-271-0/+75
| | | | | | | | | | | | | | Tested with a boot in Qemu (g3beige). Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | gcc: backport upstream patch for sync_8 in !glibcArnout Vandecappelle2016-11-262-0/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc 4.7 introduced the sync_8 builtin functions for ARM. For ARM < v7, this requires calling into the kernel. However, the failure path of that call reports an error with the __write() function, which is a glibc internal function. Therefore, it fails to link with uClibc or musl. This was fixed in gcc 5.2.0, by replacing the __write() with a plain write(). For sync_8 itself we have solved this with the conditions on BR2_TOOLCHAIN_ARM_HAS_SYNC_8. However, the same function is also used for the implementation of atomics. For the internal toolchain, we can fix this by backporting the patch to 4.9.4 and 4.8.5. Fixes: http://autobuild.buildroot.net/results/1db64b4830f499621e44523e0ef68191505e2ce9 Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | package/gcc: backport xtensa trap pattern for 5.xMax Filippov2016-11-141-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc 5.x uses trap pattern extensively to mark locations where program execution should never get. Default pattern implementation emits a call to 'abort' function. This function however is not always available, e.g. it's not available for the libc dynamic linker. Backport implementation of the trap pattern for xtensa that does not result in a call to 'abort'. Fixes: http://autobuild.buildroot.net/results/0fbcc4475545904bf88f25a3bdf3ee552bf4960e http://autobuild.buildroot.net/results/cb7f5bdfac615d774f3bcd1b802f8d74460bc557 http://autobuild.buildroot.net/results/cf3dc9ae4f74ff28b285f1a862b71d96384d7651 Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | toolchain: Bump ARC tools to arc-2016.09-rc1Zakharov Vlad2016-11-145-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As described at: 4520524ba055706236db9f00dd79f1b2e2e87fde this commit continues a series of updates of ARC tools. This time we're updating tools to arc-2016.09-rc1. This update contains a lot of important fixes, e.g. it fixes: http://autobuild.buildroot.net/results/4c7/4c77f33c842b37bf28cb931edf1b290e1bf4d93c// http://autobuild.buildroot.net/results/902/902729a0b98675ad803939e3ecdcf230065a6012// and other failures. Other important change is that we also update gdb. Now we are using gdb 7.12. This version of gdb requires C++ toolchain support so we add corresponding dependency to gdb Config.in file. Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> [Thomas: - fix dependency on C++ of gdb, it must use BR2_INSTALL_LIBSTDCPP - add comment about the C++ dependency of gdb on ARC.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | MIPS: rename M6201 core to M6250Vicente Olivert Riera2016-11-091-2/+2
| | | | | | | | | | | | | | | | | | m6201 is the -march option for GCC, but the real core name is M6250. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | MIPS: rename M5101 core to M5150Vicente Olivert Riera2016-11-091-1/+1
| | | | | | | | | | | | | | | | m5101 is the -march option for GCC, but the real core name is M5150. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | MIPS: remove M5100 coreVicente Olivert Riera2016-11-091-3/+2
|/ | | | | | | | | This is a microcontroller class (MCU) core which is not suitable for running Linux. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* microblaze: fix musl supportWaldemar Brodkorb2016-10-283-24/+39
| | | | | | | | | | | | | | For musl we need patches for bintils 2.25.1 and 2.26.1. Binutils 2.27 and gcc 6.2.x does not work for microblaze, even not for uClibc-ng or glibc. For gcc 5.4.x the existing patch need reworking so that musl and uClibc-ng is supported. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> [Thomas: - Add proper description for the binutils patches - Use BR2_microblaze instead of BR2_microblazeel and BR2_microblazebz] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* toolchain/wrapper: fix 'reinstall'Jérôme Pouiller2016-10-242-2/+4
| | | | | | | | | | toolchain-wrapper was not reinstalled. So rules toolchain-external-reinstall, gcc-initial-reinstall, gcc-final-reinstall didn't work as expected. In add, normalize variable name: s/TOOLCHAIN_BUILD_WRAPPER/TOOLCHAIN_WRAPPER_BUILD/ Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/gcc: disable libmpx for gcc6-based musl buildsBernd Kuhls2016-10-231-0/+5
| | | | | | | | | | | | | | | | | | | | | | | Building this minimal defconfig BR2_TOOLCHAIN_BUILDROOT_MUSL=y BR2_GCC_VERSION_6_X=y fails: In file included from ../../../../libmpx/mpxrt/mpxrt.c:54:0: ../../../../libmpx/mpxrt/mpxrt.c: In function 'read_mpx_status_sig': ../../../../libmpx/mpxrt/mpxrt.h:52:42: error: invalid application of 'sizeof' to incomplete type 'struct _libc_fpstate' #define XSAVE_OFFSET_IN_FPMEM sizeof (struct _libc_fpstate) To fix disable libmpx for musl builds, other projects did the same: https://github.com/crosstool-ng/crosstool-ng/commit/3ec2211548a853203e070af6810f49825ec46a6a http://git.alpinelinux.org/cgit/aports/commit/main/gcc/APKBUILD?id=1830e485126ea9a95d763317fb0c508c1ff297d2 Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* MIPS: add support for M6201 coresVicente Olivert Riera2016-10-191-2/+3
| | | | | | | | | | | | | | | -march=m6201 is not yet supported in GCC upstream, so disabling all versions when selecting this core. Note that M6201 implies a MIPS R6 CPU, and some GCC versions are already disabled for R6, so we don't need to disable those ones for M6201 as well. The external Codescape IMG GNU Linux Toolchain has support for this core. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: remove BR2_GCC_SUPPORTS_GRAPHITEArnout Vandecappelle2016-10-161-9/+0
| | | | | | | | | | The blind option BR2_GCC_SUPPORTS_GRAPHITE was used to distinguish gcc versions that support the graphite loop optimizer. But since a while already, all the versions we support do support graphite. So this symbol isn't needed anymore. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: gcc arc supports graphiteArnout Vandecappelle2016-10-161-1/+1
| | | | | | | | | | | The ARC version of gcc does support graphite. It was probably just forgotten when the BR2_GCC_VERSION_ARC symbol was introduced. While we're at it, also remove a redundant newline. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Cc: ARC Maintainers <arc-buildroot@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: remove BR2_GCC_NEEDS_MPCArnout Vandecappelle2016-10-162-13/+2
| | | | | | | | | | The blind option BR2_GCC_NEEDS_MPC was used to distinguish gcc versions that rely on the mpc library and the ones that don't. But since a while already, all the versions we support do need the mpc library. So this symbol isn't needed anymore. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: remove deprecated 4.7.xArnout Vandecappelle2016-10-1515-1587/+0
| | | | | | | We will remove BR2_DEPRECATED, so remove this deprecated option. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: add patches to fix PR70473Thomas Petazzoni2016-10-152-0/+137
| | | | | | | | | | | | | gcc 5.x introduced a regression in the ARM build, which causes the s-automata program to consume a very significant amount of RAM during the gcc build. This causes numerous failures with our Travis-CI based testing of defconfigs. In order to address this, this commit backports a commit from the gcc master branch, to both our gcc 5.x and gcc 6.x support. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: add support for MIPS R6 MuslVicente Olivert Riera2016-10-152-0/+86
| | | | | | | | | Backport upstream patch to add support for MIPS R6 Musl: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=83717065090bb8b954556d1216dd9dc397dc0243 Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add support for P6600 coresVicente Olivert Riera2016-10-151-1/+3
| | | | | | | | | | | | | | | -march=p6600 is not yet supported in GCC upstream, so disabling all versions when selecting this core. Note that P6600 implies a MIPS R6 CPU, and some GCC versions are already disabled for R6, so we don't need to disable those ones for P6600 as well. The external Codescape IMG GNU Linux Toolchain has support for this core. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add support for I6400 coresVicente Olivert Riera2016-10-151-1/+1
| | | | | | | | | | | | -march=i6400 support starts from GCC-6, so disable previous versions when selecting this core. Note that I6400 implies a MIPS R6 CPU, and some GCC versions are already disabled for R6, so we don't need to disable those ones for I6400 as well. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add support for M5101 coresVicente Olivert Riera2016-10-151-1/+2
| | | | | | | | | | | | | | -march=m5101 support starts from GCC-6, so disable previous versions when selecting this core. Note that M5101 implies a MIPS R5 CPU, and some GCC versions are already disabled for R5, so we don't need to disable those ones for M5101 as well. Also disable external toolchains that don't support this core. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add support for M5100 coresVicente Olivert Riera2016-10-151-1/+1
| | | | | | | | | | | | | | -march=m5100 support starts from GCC-6, so disable previous versions when selecting this core. Note that M5100 implies a MIPS R5 CPU, and some GCC versions are already disabled for R5, so we don't need to disable those ones for M5100 as well. Also disable external toolchains that don't support this core. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add support for interAptiv coresVicente Olivert Riera2016-10-151-0/+8
| | | | | | | | | | -march=interaptiv support starts from GCC-6, so disable previous versions when selecting this core. Also disable external toolchains that don't support this core. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add mips64r5 generic architecture variantVicente Olivert Riera2016-10-151-3/+3
| | | | | | | | -march=mips64r5 support started from GCC-5, so disable previous versions when the CPU is R5. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: add mips32r5 generic architecture variantVicente Olivert Riera2016-10-151-0/+6
| | | | | | | | -march=mips32r5 support started from GCC-5, so disable previous versions when the CPU is R5. Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* MIPS: replace every BR2_mips_* with the new MIPS CPU optionsVicente Olivert Riera2016-10-151-3/+3
| | | | | Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package/gcc: nios2 Backport nios2 r31 fixRomain Naour2016-10-091-0/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As reported on the mailing list, gcc5 with binutils 2.26.1 produce some assembler error "r31 cannot be used with jmp; use ret instead" [1] The bug is reported upstream [2], but gcc 5.4 needs an upstream patch to fix this issue. Note: openembedded backported the same patch for gcc 5.3 [3] Fixes: alsa-lib: http://autobuild.buildroot.net/results/1fc9806a62b813b085c39d36000f4d9d18f779df http://autobuild.buildroot.net/results/03eb11b6a783da1985c19858f6c5f69027e0ed9c http://autobuild.buildroot.net/results/d620812ae79c4e8252d2b0c410f94e9cdcbcfbc3 http://autobuild.buildroot.net/results/04b7609f5decc71bf25e981f14756029715fc621 http://autobuild.buildroot.net/results/e85be7ffd62e7ab95c4dd0049b0c67ae98f75543 freeswitch: http://autobuild.buildroot.net/results/96f69b7be1978f85271e2827c2e18d4ed8de8dfc flac: http://autobuild.buildroot.net/results/fb3/fb36a9939cac82dc187b64fae93720ea1930f343 libmodplug: http://autobuild.buildroot.net/results/f12/f12a5d5b4f5338438fbb053ec013e69559eaaa0c [1] http://lists.busybox.net/pipermail/buildroot/2016-September/172932.html [2] https://sourceware.org/bugzilla/show_bug.cgi?id=20674 [3] http://lists.openembedded.org/pipermail/openembedded-core/2016-February/117633.html Signed-off-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* toolchain: Bump ARC tools to arc-2016.09-eng015Zakharov Vlad2016-10-035-2/+2
| | | | | | | | | | | | | | | | | | | | | | As described at: 4520524ba055706236db9f00dd79f1b2e2e87fde this commit continues a series of updates of ARC tools. This time we're updating tools to arc-2016.09-eng015. This tag introduces following changes: 1. binutils: Rebase onto upstream master. 2. gcc: Fix devdf3 emulation for arcem, disable TP register when building for bare metal. We still keep GDB as it is of arc-2016.03 release because there're some issues we'd like to resolve before releasing it to wider audience. So again note this is next engineering builds of arc-2016.09 series and it might have all kinds of breakages, please don't use it for production builds. Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: enable _REENTRANT for bfin when -lpthread is usedWaldemar Brodkorb2016-10-021-0/+17
| | | | | | | | See here, why this should be always enabled: https://lists.gnu.org/archive/html/autoconf-archive-maintainers/2016-06/msg00001.html Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: switch to gcc 5.x as the defaultThomas Petazzoni2016-09-211-1/+1
| | | | | | | | | | | | | | | gcc 4.9.4 was the last release of the 4.9.x branch, and the gcc developes will now only be maintaining gcc 5.x and 6.x: https://gcc.gnu.org/ml/gcc-announce/2016/msg00002.html Therefore, it is time to use gcc 5.x as the default version in Buildroot. We have been having toolchains in the autobuilders with gcc 5.x for a while, so the vast majority of the problems should have already been solved. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* gcc: rename option for ARC gccThomas Petazzoni2016-09-202-6/+6
| | | | | | | | | | | The ARC gcc version is now based on gcc 6.x and no longer gcc 4.8.x, which makes the option BR2_GCC_VERSION_4_8_ARC a bit irrelevant, as is the prompt of this option. This commit therefore renames this option to BR2_GCC_VERSION_ARC, and adjust its prompt as well. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* toolchain: Bump ARC tools to arc-2016.09-eng013Zakharov Vlad2016-09-175-2/+2
| | | | | | | | | | | | | | | | | | | | | | | As described at: 4520524ba055706236db9f00dd79f1b2e2e87fde this commit continues a series of updates of ARC tools. This time we're updating tools to arc-2016.09-eng013. This engenering build contains some important GCC updatesthat fixes some failures for ARC, such as: http://autobuild.buildroot.net/results/f80/f80ad8a07d9d58b46592c2c99b227197b0f808d3// http://autobuild.buildroot.net/results/e59/e59e6592fc697cceda359e421387dd905ff04701// http://autobuild.buildroot.net/results/521/52157aa2b5d75b5338f3bde7ae5beb3d300283d3// We still keep GDB as it is of arc-2016.03 release because there're some issues we'd like to resolve before releasing it to wider audience. So again note this is next engineering builds of arc-2016.09 series and it might have all kinds of breakages, please don't use it for production builds. Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc/gcc-final: Disable libcilkrts when using static libsFloris Bos2016-09-081-1/+2
| | | | | | | | | | | | | | Disable libcilkrts when building static, as there is no static version: https://software.intel.com/en-us/articles/intel-cilk-plus-runtime-library-libcilkrts-can-only-be-linked-dynamically/ Fixes the following toolchain build error when building for i386 and BR2_STATIC_LIBS=y + BR2_TOOLCHAIN_BUILDROOT_CXX=y is set: ../../../libcilkrts/runtime/sysdep-unix.c:603:19: fatal error: dlfcn.h: No such file or directory Signed-off-by: Floris Bos <bos@je-eigen-domein.nl> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc: bump 6.x series to 6.2.0Gustavo Zacarias2016-09-0713-52/+6
| | | | | | | | Adjust some patches to avoid patching the ChangeLog which isn't quite the same. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* toolchain: Bump ARC tools to arc-2016.09-eng011Zakharov Vlad2016-09-055-2/+2
| | | | | | | | | | | | | | | | | | | | | As described at: 4520524ba055706236db9f00dd79f1b2e2e87fde this commit continues a series of updates of ARC tools. This time we're updating tools to arc-2016.09-eng011. This engenering build contains the following updates: 1. rebase binutils on top of the latest upstream master 2. update GCC to version 6.2 We still keep GDB as it is of arc-2016.03 release because there're some issues we'd like to resolve before releasing it to wider audience. So again note this is next engineering builds of arc-2016.09 series and it might have all kinds of breakages, please don't use it for production builds. Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Merge branch 'next'Peter Korsgaard2016-09-022-11/+30
|\ | | | | | | | | | | Quite some conflicts, so here goes .. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * gcc: remove BR2_GCC_ENABLE_TLS optionThomas Petazzoni2016-08-312-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current BR2_GCC_ENABLE_TLS can cause users to make incorrect choices, and is not very useful. This options allows to decide whether we pass --enable-tls or --disable-tls to gcc, to enable or disable support for Thread Local Storage. Its behavior is: - The option is default to "y" but only exists if we're using uClibc/NPTL or glibc. - When we're using uClibc, the option can be disabled. So, in practice, this means that currently: - TLS support is always on for glibc - TLS support is on by default for uClibc/NPTL, but can be disabled in the configuration. This is in fact bad and causes the build failure reported in bug #7424 (this bug is still reproducible on master) - TLS support is always disabled for uClibc/no-thread and uClibc/linuxthreads. - TLS support is always disabled for musl. This does not cause any build failure, but musl can use TLS support, and therefore be more efficient. According to http://www.openwall.com/lists/musl/2012/10/04/1, "Note that if you've been building gcc with --disable-tls, __thread was already working but gets emulated (very poorly; it's slow and will abort() if it runs out of memory) through libgcc.". So, this commit completely removes the BR2_GCC_ENABLE_TLS and instead makes the right choice inside gcc.mk directly: - TLS support enabled for glibc, musl and uClibc/NPTL - TLS support in other cases, i.e uClibc/no-thread and uClibc/linuxthreads. We have intentionally *not* added the option to Config.in.legacy. Indeed, the new behavior is *exactly* the same as the older behavior, with the exception of: - People can no longer disable TLS support in uClibc/NPTL, which was anyway causing a build failure and therefore was not used. - TLS support is now enabled on musl, but people using musl already had BR2_GCC_ENABLE_TLS not set, so they wouldn't get the legacy warning. Fixes bug #7424. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
OpenPOWER on IntegriCloud