summaryrefslogtreecommitdiffstats
path: root/toolchain/toolchain-external
Commit message (Collapse)AuthorAgeFilesLines
* toolchain-external: fix bfin external toolchain downloadPeter Korsgaard2013-07-111-2/+2
| | | | | | | | | | | | Fixes http://autobuild.buildroot.org/results/7d0/7d0eee796407880a4554474e5affbe98b8caa271/ Commit 1cbffbd (eliminate double slashes caused by FOO_SITE ending in a slash) added a double replacement for the special bfin external toolchain download, breaking it. Fix it by removing the 2nd replacement. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Make the microblaze toolchains easily distinguishableJan Viktorin2013-07-081-2/+2
| | | | | | | | | It was confusing to have two different toolchains with the same label. Signed-off-by: Jan Viktorin <xvikto03@stud.fit.vutbr.cz> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Introduce BR2_TOOLCHAIN_USES_{UCLIBC, GLIBC}Thomas Petazzoni2013-07-041-7/+2
| | | | | | | | | | | | | | | | | Currently, when we need to do a conditional on the type of C library used, we need to take into account the three toolchain backends. As we are going to add eglibc support to the Buildroot toolchain backend, it would become even uglier, so this patch introduces two new hidden options: BR2_TOOLCHAIN_USES_UCLIBC and BR2_TOOLCHAIN_USES_GLIBC, that exist regardless of the toolchain backend. The entire Buildroot code base is converted to use those options. Note that we have intentionally created only one option (BR2_TOOLCHAIN_USES_GLIBC) for both glibc and eglibc, since they are essentially the same, as far as Buildroot is concerned. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Use more sensible names for the external/ctng targetsThomas Petazzoni2013-07-041-3/+2
| | | | | | | | | Instead of using the 'uclibc' target for all toolchain backends, introduce more sensible target names for the external toolchain and Crosstool-NG toolchain backend make targets. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: bump to Linaro AArch64 2013.06Thomas Petazzoni2013-06-232-10/+11
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: bump to Linaro ARM 2013.06Thomas Petazzoni2013-06-232-14/+14
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: Install blackfin FDPIC and FLAT librariesSonic Zhang2013-06-112-12/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | For certain situations, users may want to install shared FLAT libraries to the target filesystem even if FDPIC is used as the primary binary format, or symmetrically users may want to install FDPIC libraries to the target filesystem even if shared FLAT is used as the primary binary format. This commit allows that by: * Offering additional Kconfig options to install shared FLAT or FDPIC libraries even when those libraries are not selected as the primary binary format. * Preserving all Blackfin toolchain folders under the TOOLCHAIN_EXTERNAL_DIR, instead of keeping only the one related to the selected binary format. * Adding some additional install targets that do the installation of either the shared FLAT or FDPIC libraries when requested. [Thomas: refactored code, adjusted commit log] Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* ext-toolchain-wrapper: force hash-style to 'both'Patrick Ziegler2013-06-111-1/+3
| | | | | | | | | | | If ext-toolchain-wrapper was built with a gcc that uses hash-style 'gnu' by default, the resulting binary might be unusable on other systems. The error in this case is "Floating point exception". Using hash-style 'both' solves this issue. Signed-off-by: Patrick Ziegler <patrick.ziegler@fh-kl.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add arch conditionals on Arago ARMv5TE toolchainThomas Petazzoni2013-06-111-0/+3
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: use BR2_GCC_TARGET_ARCH for toolchain conditionalsThomas Petazzoni2013-06-111-5/+5
| | | | | | | | | | | | | Instead of a long list of the ARMv7-A Cortex-A, use a conditional based on BR2_GCC_TARGET_ARCH to hide/show toolchains that are only usable on ARMv7-A. However, in the comment related to Linaro toolchains, we keep mentioning Cortex-A{5,8,9,15} because that's what users see when they select their architecture variant. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for Arago 2011.09 ARMv5Thomas Petazzoni2013-06-112-0/+22
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for Arago 2011.09 ARMv7AThomas Petazzoni2013-06-112-0/+26
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: bump Linaro AArch64 toolchains to 2013.04 and 2013.05Thomas Petazzoni2013-06-112-15/+17
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: bump Linaro ARM toolchains to 2013.04 and 2013.05Thomas Petazzoni2013-06-112-18/+18
| | | | | | | | We add support for Linaro 2013.04 and Linaro 2013.05 and remove support for Linaro 2013.01 and Linaro 2013.02. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: Version bump to 2013.05 release for MIPSMarkos Chandras2013-06-102-24/+24
| | | | | | | | | Remove old 2011.09 release. Allow MIPS64 cores on 2013.05 release since they are supported by the toolchain. Signed-off-by: Markos Chandras <markos.chandras@imgtec.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Merge branch 'next'Peter Korsgaard2013-06-022-29/+29
|\
| * toolchain-external: remove support for 'Sourcery CodeBench ARM 2011.03'Fabio Porcedda2013-05-282-29/+1
| | | | | | | | | | | | Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
| * toolchain-external: add support for 'Sourcery CodeBench ARM 2013.05'Fabio Porcedda2013-05-272-0/+28
| | | | | | | | | | | | Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* | ext-toolchain-wrapper: fix paths if executable was resolved by PATHPatrick Ziegler2013-05-311-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If ext-toolchain-wrapper or any symbolic link to it was resolved by PATH, the wrapper takes the working directory to calculate the relative paths. Now '/proc/self/exe' is used to resolve the absolute path to the toolchain directory if the wrapper was called neither with a relative nor an absolute path. [Peter: fix off-by-one, swap value == var checks around] Signed-off-by: Patrick Ziegler <patrick.ziegler@fh-kl.de> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* | toolchain: blackfin: Remove Blackfin toolchain 2011R1 release.Sonic Zhang2013-05-272-26/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | ADI officially supports the buildroot and related GNU toolchain for Blackfin since ADI's 2012R1 release only. In order to avoid confusion, it is better to remove the 2011R1 GNU toolchain for Blackfin. In addition, the 2011R1 GNU toolchain for Blackfin doesn't support the BF60x processors. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* | toolchain-external: fix bug #5054Gustavo Zacarias2013-05-111-1/+1
|/ | | | | | | | | | | | | | | | | | | | The external toolchain logic checks (and finds) the proper ARCH_LIB_DIR and forcibly copies it to */lib even if it's in */lib64 This is all well until the check is done for create_lib64_symlinks which only verifies if ARCH_SYSROOT_DIR/lib64 is a symlink, which in some toolchain it's a real directory (like sourcery x86_64 2012.09) and thus doesn't make the symlink in the target. Fix this by also checking for a real directory. Easily reproducible by running "make qemu_x86_64_defconfig", switching to an external toolchain before build, building and then trying to run the resulting image. Closes bug #5054 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: toolchain: Introduce target CPU revision.Sonic Zhang2013-05-051-0/+4
| | | | | | | | | Adds the possibility to have a free-form CPU revision string and append it to the target CPU. Only Blackfin actually uses this option. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: toolchain: Introduce binary formats BINFMT_*.Sonic Zhang2013-05-053-6/+13
| | | | | | | | | Just introduce the symbol and options in arch generic Config.in. Append FLAT format link flags to external toolchain wrapper. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* eliminate double slashes caused by FOO_SITE ending in a slashShawn J. Goff2013-04-151-2/+2
| | | | | | | | | | When a FOO_SITE variable ends in a slash and gets joined with a FOO_SOURCE variable like $(FOO_SITE)/$(FOO_SOURCE), the resulting URI has a double slash. While double-slashes are fine in unix paths, they are reserved in URIs - the part following '//' must be an authority. Signed-off-by: Shawn J. Goff <shawn7400@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: fix Linaro ARM URLThomas Petazzoni2013-04-131-1/+1
| | | | | | | | | | Commit 79828fc01d92cee84f8703d25f72121f52880ee9 (toolchain-external: update ARM Linaro toolchains) accidently broke the URL for the Linaro 2013.01 toolchain by replacing a .bz2 extension by .bz. This patch fixes this problem. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: support more gdbserver locationsThomas Petazzoni2013-04-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | The x86/x86-64 CodeSourcery toolchains use some weird locations for the gdbserver binary: $ find . -name 'gdbserver' ./i686-pc-linux-gnu/libc/atom/usr/bin/gdbserver ./i686-pc-linux-gnu/libc/atom/usr/lib/bin/gdbserver ./i686-pc-linux-gnu/libc/core2/usr/bin/gdbserver ./i686-pc-linux-gnu/libc/core2/usr/lib64/bin/gdbserver ./i686-pc-linux-gnu/libc/usr/lib/bin/gdbserver ./i686-pc-linux-gnu/libc/usr/lib64/bin/gdbserver Notice that it's sometimes hidden in a usr/{lib,lib64}/bin directory. This patch changes the gdbserver logic to also try in this location. Originally based on work done by Daniel Nilsson, visible at http://patchwork.ozlabs.org/patch/155767/. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: convert to the package infrastructureThomas Petazzoni2013-04-111-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit converts gdb to the package infrastructure, and therefore moves it from toolchain/gdb to package/gdb. The target package is now visible in "Package selection for the target" => "Debugging, profiling and benchmark". The main option, "gdb", forcefully selects the "gdbserver" sub-option by default. Another sub-option, "full debugger" allows to install the complete gdb on the target. When this option is enabled, then "gdbserver" is no longer forcefully selected. This ensures that at least gdbserver or the full debugger gets built/installed, so that the package is not a no-op. The host debugger is still enabled through a configuration option in "Toolchain". It is now visible regardless of the toolchain type (it used to be hidden for External Toolchains). The configuration options relative to the host debugger are now in package/gdb/Config.in.host, similar to how we have package/binutils/Config.in.host. Since gdb is now a proper package, it is no longer allowed to 'select BR2_PTHREADS_DEBUG' to ensure thread debugging is available when needed. Instead, it now 'depends on BR2_TOOLCHAIN_HAS_THREADS_DEBUG'. This option, in turn, is selected by the different toolchain backends when appropriate. The 'BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED' option is removed, since we no longer need to know when it is allowed to 'select BR2_PTHREADS_DEBUG'. Also, the 'BR2_PTHREADS_DEBUG' option is moved to appear right below the thread implementation selection (in the case of the Buildroot toolchain backend). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: Only show MICROBLAZEBE_14_3 toolchain for BE systemsPeter Korsgaard2013-04-111-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: get old microblaze toolchains from sources.buildroot.netPeter Korsgaard2013-04-111-2/+2
| | | | | | | | git.xilinx.com is no longer available (moved to github), and github doesn't allow downloading the tarball blobs directly, so use a local mirror on sources.buildroot.net instead. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: fix typo in Blackfin toolchain config optionThomas Petazzoni2013-04-101-1/+1
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: update AArch64 Linaro toolchainsThomas Petazzoni2013-04-102-14/+14
| | | | | | | | Add the AArch64 Linaro toolchains 2013.02 and 2013.03, remove 2012.11 and 2012.12. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: update ARM Linaro toolchainsThomas Petazzoni2013-04-102-18/+18
| | | | | | | | Add the ARM Linaro toolchains 2013.02 and 2013.03, remove 2012.11 and 2012.12. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add new Microblaze toolchainsThomas Petazzoni2013-02-232-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | The existing Microblaze toolchains that we have have the annoying property of being based on a very old glibc version: 2.3.6. Xilinx provides newer toolchains with glibc 2.14, generated by Crosstool-NG, but they are only available as part of a huge Git repository that contains the gcc, Linux, binutils, glibc sources unpacked (4.4 GB total), which makes is very unpractical. I contacted the Xilinx person who did those toolchains, but they apparently didn't intend to change that anytime soon. So, we have created a tarball for those toolchains, adding a README.txt file in the tarball that points back to the original location that contains the source code for them. Those tarballs are hosted on sources.buildroot.net. This commit then adds support for those two new external toolchains, one for little endian Microblaze, another one for big endian Microblaze. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Make external toolchain relocatableArnout Vandecappelle2013-02-052-21/+59
| | | | | | | | | | | | | | | | | | | | | | The external toolchain wrapper sets sysroot etc. to an absolute path. By changing this to a relative path, it is possible to move the host directory to a different location and still have a working build system. This only works for a downloaded external toolchain. For a pre-installed external toolchain, it is possible to move the host directory to a different location, but not the external toolchain directory (it does work if the external toolchain directory lies within the host directory). For an internal or crosstool-ng toolchain, there is no wrapper so updating the sysroot path should be done in a different way. See http://lists.busybox.net/pipermail/buildroot/2012-February/050371.html for information about others things to do to make the host directory relocatable. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: remove support for AArch64 Linaro 2012.10 toolchainThomas Petazzoni2013-02-022-15/+0
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for AArch64 Linaro 2013.01 toolchainThomas Petazzoni2013-02-022-0/+15
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add linaro 2013.01, remove 2012.10Peter Korsgaard2013-02-022-13/+13
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* blackfin: add 2012r2 and remove 2010rc1 toolchainsGustavo Zacarias2013-02-022-15/+15
| | | | | | | | | | Remove the old 2010RC1 toolchain and add the new 2012R2-RC2 toolchain. On related good news the new toolchain fixes: http://autobuild.buildroot.net/results/eac5bd4f4766d98431e72a3c81492a962c85fa98/ since it's got unshare() support now. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/external: sprinkle with some calls to MESSAGEYann E. MORIN2013-01-201-3/+5
| | | | | | | | | Thus, the failing step can be easily extracted by autobuilders, to ease with post-mortem analysis. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: use BR2_HOSTARCH_NEEDS_IA32_LIBS where neededThomas Petazzoni2013-01-061-0/+25
| | | | | | | | | All supported pre-built external toolchains are built for x86 Linux, so we add the BR2_HOSTARCH_NEEDS_IA32_LIBS select. [Peter: microblaze toolchains are 64bit] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add dependency on BR2_HOST_ARCHThomas Petazzoni2013-01-061-0/+27
| | | | | | | | | The pre-build external toolchains are all built for x86, so they are only available if the build machine is a x86 or x86-64 machine. [Peter: microblaze toolchains are 64bit] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: remove support for 'Linaro ARM 2012.09'Thomas Petazzoni2012-12-212-21/+0
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for 'Linaro ARM 2012.12'Thomas Petazzoni2012-12-212-0/+21
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for 'Linaro AArch64 12.12'Thomas Petazzoni2012-12-212-0/+13
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for 'Linaro AArch64 12.11'Thomas Petazzoni2012-12-212-0/+13
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: simplify many Sourcery CodeBench download URLsThomas Petazzoni2012-12-211-8/+8
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: remove support for 'Sourcery CodeBench MIPS 2011.03'Thomas Petazzoni2012-12-212-54/+0
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: remove support for 'Sourcery CodeBench MIPS 4.4'Thomas Petazzoni2012-12-212-54/+0
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for 'Sourcery CodeBench MIPS 2012.09'Thomas Petazzoni2012-12-212-0/+72
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-external: add support for 'Sourcery CodeBench MIPS 2012.03'Thomas Petazzoni2012-12-212-0/+72
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>