summaryrefslogtreecommitdiff
path: root/toolchain/toolchain-external
AgeCommit message (Collapse)Author
2012-08-02toolchain-external: microblaze toolchains are glibc-basedThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: make preinstall the default for custom toolchainsThomas Petazzoni
All the defconfig files used by the autobuilders that use pre-installed external toolchains are making the assumption that the default for a custom external toolchain is "pre-installed". We keep this default for now, since changing it breaks the autobuilders. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: add Sourcery CodeBench MIPS 2011.09Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: add Blackfin toolchain 2012R1-BETA1Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: remove ARM CodeSourcery 2009q3Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: remove Linaro 2012.01Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: add Linaro 2012.06Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: add Linaro 2012.05Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: line up comments with realityThomas De Schampheleire
Line-up with changes from commit 3367d5ce770ac409e7b3f5bba2c7ed1a819b3ef7 "external-toolchain: run checks even on extracted toolchains" Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-22toolchain-external: allow downloading a custom toolchainThomas De Schampheleire
This patch adds the possibility to download a custom external toolchain, in addition to the existing support of preinstalled custom external toolchains. With the modified configuration, the user is presented with the following options: - Toolchain type: Buildroot toolchain | External toolchain | Ct-ng toolchain In case of External toolchain: - Toolchain: the CodeSourcery toolchains | Custom toolchain - Toolchain origin: Toolchain to be downloaded and installed | Pre-installed toolchain In case of Toolchain to be downloaded, the user is presented with: - Toolchain URL In case of Pre-installed toolchain, the users sees: - Toolchain Path For CodeSourcery toolchains, the toolchain URL field is not used (the URLs are directly coded in ext-tool.mk). Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-21toolchain-external/Config.in: fix indentationThomas De Schampheleire
Fix the indentation of the external toolchain Config file, where tabs and spaces are mixed as indentation even within the same block. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-05-15ext-tool.mk: fix SUPPORT_LIB_DIR calculation for toolchains without libstdc++Peter Korsgaard
SUPPORT_LIB_DIR would get resolved to the main buildroot directory for external toolchains without C++ support, as: - gcc -print-file-name=<nonexisting-file> returns <nonexisting-file> - readlink -f <nonexisting-file> returns $PWD/<nonexisting-file> So fix it by ensuring output of gcc -print-file-name actually exists before using it. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-07external-toolchain: add support for Linaro 2012.04Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-05-07external-toolchain: add support for recent Linaro toolchainsThomas Petazzoni
Starting from 2012.03, the Linaro toolchains have separated the GCC support libraries (libstdc++, libgcc_s) from the sysroot itself. So we no longer have the case where all libraries are inside the sysroot, as we had for all the previously supported toolchains. Therefore, we add some logic to detect if such a separate directory is used for GCC support libraries, and if it's the case, we make sure that we take into account this directory when creating our own sysroot, and when copying libraries to the target filesystem. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-04-29external-toolchain: do not copy shared libraries when BR2_PREFER_STATIC_LIB=yThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-04toolchain/microblaze: fix up big-endian characteristicsGustavo Zacarias
The big-endian microblaze external toolchain is missing vital characteristics being set, such as LARGEFILE support, IPV6 and so on. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Tested-by: Stephan Hoffmann <sho@reLinux.de> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-30toolchain: add linaro 2012.03 external ARM toolchainPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-18Microblaze: added external toolchain from XilinxAlvaro G. M
Signed-off-by: Alvaro G. M <alvaro.gamez@hazent.com> Tested-by: Stephan Hoffmann <sho@relinux.de> Downloading Microblaze LE toolchain works on a clean install Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-18DOWNLOAD: change $1=DIRECTORY_URL, $2=FILE_NAME to $1=FULL_FILE_URL, ↵Alvaro G. M
$2=FILE_NAME This modifies the definition of DOWNLOAD to receive two arguments: the first one is the full URL of the file to download, whereas the second (and optional) is the name the file will have once downloaded. Same thing with the SOURCE_CHECK_WGET and SCP functions. All calls to these functions have been changed to the shortest form of the new API, except for toolchains acquisition. Since there is quite a number of different toolchains this call to DOWNLOAD is better set to the generic one. Signed-off-by: Alvaro G. M <alvaro.gamez@hazent.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: Stephan Hoffmann <sho@relinux.de> Downloading Microblaze LE toolchain works on a clean install Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-15debug: provide an option to copy the gdbserver to the targetThomas Petazzoni
When an external toolchain is used, it is very likely that it contains a pre-built version of a gdbserver that has the same version as the cross-gdb included in the external toolchain. So, we now provide an option that allows to copy this pre-built gdbserver to the target. As the location of the gdbserver in the external toolchain is not standardized, we only support the CodeSourcery and Crosstool-NG layouts for the moment. Other locations can be added later. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-15ext-toolchain: Automatically set -m64 if the architecture is x86_64Arnout Vandecappelle (Essensium/Mind)
Without the -m64, choosing the x86_64 architecture with a Sourcery external toolchain will result in a 32-bit rootfs. Also simplified the help text to reflect this change. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-06toolchain-external: add linaro 2012.02Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01external-toolchain: add support for Linaro 2012.01Thomas Petazzoni
Linaro has just released a new pre-built toolchain, available as a tarball, which is a pure toolchain (only the C library is included). This makes this new Linaro 2012.01 toolchain usable in Buildroot, so let's integrate the support for it. In addition to simply adding the new external toolchain at the usual locations, this patch allows need to adapt a few things to support Linaro toolchains. Most toolchains store their libraries in the "lib/" or "usr/lib" directories relative to the toolchain. Buildroot toolchains on the other hand, store the libraries in the "usr/<target-name>/lib" directory. And the Linaro toolchain has choosen to use the "lib/<target-name>" directory. Therefore, this patch adjust: * The logic to search a particular library when that library needs to be copied to the target directory * The logic to deduce the sysroot directory from the libc.a file location in the toolchain: removing "(usr/?)lib(64?)" is no longer sufficient, we need to take into account the "lib/<target-name>/" case. Since the Linaro toolchain generates code for Cortex-A processors only, the selection of this toolchain is limited to Cortex-A8 and Cortex-A9. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: fix description of PowerPC 2010.09 from Mentor GraphicsThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: run checks even on extracted toolchainsThomas Petazzoni
When the mechanism that allows Buildroot to download external toolchains automatically was added, all the sanity checks on the external toolchains were not performed. This commit re-enables those checks that we already do on external toolchains that are not downloaded/extracted by Buildroot. This makes the toolchain checks more consistent accross various configurations. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: details on selecting the multilib variantsThomas Petazzoni
Each multilib variant need to be selected using a special combination of flags, requiring specific choices of the Buildroot options. This commit documents those configuration choices to make it easier to use the various multilib variants. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: Blackfin.uclinux.org 2011R1-RC4Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: add Sourcery CodeBench x86/x86_64 2011.09Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: add Sourcery CodeBench PowerPC 2011.03Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: bump MIPS 2011.03 from -93 to -110Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: add Sourcery CodeBench ARM 2011.09Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01external-toolchain: remove 2009q1 ARM Sourcery toolchainThomas Petazzoni
We are going to add one more ARM Sourcery toolchain version, so it's time to remove the oldest version. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01Expand external toolchain wrapper to custom flagsThomas Petazzoni
The BR2_TARGET_OPTIMIZATION flags were not used by the external toolchain wrapper, which broke the multilib selection logic of multilib external toolchains. It also simplifies the compilation of external programs since all flags are properly passed automatically by the toolchain wrapper. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01Improve external toolchain logic to support IA32 Sourcery CodeBench toolchainThomas Petazzoni
The IA32 Sourcery CodeBench toolchain has a relatively special structure, with the following multilib variants: * Intel Pentium 4, 32 bits, the multilib variant is in ./ relative to the main sysroot, with the libraries in the lib/ directory. * Intel Xeon Nocona, 64 bits, the multilib variant is in ./ relative to the main sysroot, with the libraries in the lib64/ directory. * Intel Atom 32 bits, the multilib variant is in atom/ relative to the main sysroot, with the libraries in the lib/ directory. * Intel Core 2 64 bits, the multilib variant is in core2/ relative to the main sysroot, with the libraries in lib64/ directory. So the first two variants are in the same sysroot, only the name of the directory for the libraries is different. Therefore, we introduce a new ARCH_LIB_DIR variable, which contains either 'lib' or 'lib64'. This variable is defined according to the location of the libc.a file for the selected multilib variant, and is then used when copying the libraries to the target and to the staging directory. In addition to this, we no longer use the -print-multi-directory to get the ARCH_SUBDIR, since in the case of the 64 bits variants of this toolchain, it returns just '64' and not a real path. Instead, we simply compute the difference between the arch-specific sysroot and the main sysroot. We also take that opportunity to expand the documentation on the meaning of the different variables. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-11-24gdb: fix kconfig dependency handling with !BR_TOOLCHAIN_BUILDROOTPeter Korsgaard
Newer versions of GDB need pthread debugging support if threads are enabled, which is always the case for glibc but is a configure option for uClibc. We have solved this for internal toolchains by selecting the BR2_PTHREAD_DEBUG option from the GDB selection if needed, but as this option isn't available when ctng/external toolchains are used, mconf prints ugly warnings and the build may fail if an external uClibc toolchain without pthread debugging support is used. Fix it by introducing 2 more hidden config options: - BR2_TOOLCHAIN_HAS_THREADS_DEBUG - BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED The first tells us if the toolchain HAS pthreads debugging support, and is checked by check_uclibc_feature in helper.mk for external uClibc based toolchains. The second tells us if the toolchain is ABLE TO provide pthreads debugging support if threads are enabled, either because it's an internal toolchain where we can force enable it or an external glibc/eglibc toolchain or uClibc with the option enabled. Crosstool-ng forcibly enables this support, so those will always work. The preconfigured uClibc-based toolchains we have also all enable it. Finally, show a comment if this isn't the case so the (external toolchain) user knows why. This is placed outside the choice option, as menuconfig has a bug where it doesn't show choice selections which only contain comments. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-08toolchain-external: fix x86 codesourcery config symbol typoPeter Korsgaard
As noticed on irc. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-02toolchain: Add the possibility to have a mcpu option with wrapperStany MARCEL
Permit to define the mcpu of the external toolchain wrapper, based on BR2_GCC_TARGET_CPU. Signed-off-by: Stany MARCEL <stanypub@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-02toolchain: Correct test for external tools symlink creationStany MARCEL
When the external tools chain is installed in a path that match one of the first case test, all symlink are created to the external wrapper. The proposed solution is to test only the base name not the full path. Signed-off-by: Stany MARCEL <stanypub@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-10external-toolchain: Slightly optimize toolchain extractionThomas Petazzoni
Some CodeSourcery toolchains contain a huge number of locales that are not useful, even though they account for 70-80% of the total toolchain size. By skipping the extraction of those useless locales, we make the toolchain extraction process slightly faster, and also make the output directory size a lot smaller (host/opt/ is 213 MB instead of 1.5 GB with a 2010.09 ARM CodeSourcery toolchain). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-09ext-toolchain: Take into account Mentor Graphics acquisition of CodeSouceryThomas Petazzoni
Now that CodeSourcery has been bought by Mentor Graphics, the toolchains are named "Sourcery CodeBench". We rename the config short description and adjust the help text, but we keep the option name in order not to break existing configurations. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-09ext-toolchain: Add CodeSoucery x86 GNU/Linux 2010.09Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-09ext-toolchain: Add CodeSourcery SH GNU/Linux 2011.03Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-09ext-toolchain: Bump version of CodeSourcery MIPS 2011.03Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-09ext-toolchain: Add CodeSourcery SH uClinux 2011.03Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-09toolchain-external: allow specifying extra external librariesThomas De Schampheleire
Custom toolchains may provide extra libraries that need to be copied to the target. This patch adds a configuration option for this. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-12ext-toolchain: fix download urlSubramaniam C.A
The website for downloading the toolchain has changed from http://www.codesourcery.com to http://sourcery.mentor.com Signed-off-by: Subramaniam C.A <subramaniam.ca@ti.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-29Fix the CodeSourcery ARM 2009q3 toolchain useMaxime Ripard
The prefix is not set when selecting this toolchain, resulting in a build failure. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-04toolchain-external: fix some typos CodeSoucery -> CodeSourceryThomas De Schampheleire
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-04external toolchains: fix SuperH toolchain configurationThomas Petazzoni
The CodeSourcery toolchain for SH2-A platforms provide largefile support, inet RPC, wide char and threads, so adjust the configuration accordingly. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-07-27uClibc: drop BR2_PROGRAM_INVOCATION optionPeter Korsgaard
Remove the BR option and enable the configuration setting in the uClibc defconfigs. The BR2_PROGRAM_INVOCATION option only adds very little overhead to uClibc, and we have a number of packages needing it, so simply always enable it - Simplifying the kconfig logic and the number of choices users have to make. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>