summaryrefslogtreecommitdiffstats
path: root/toolchain
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* kernel-headers: bump 3.{0, 4, 8, 9}.x stable versionGustavo Zacarias2013-05-082-4/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/crostool-NG: mark as deprecatedYann E. MORIN2013-05-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | For the following reasons: - it used to be broken without anyone noticing for a long time, - it is still not fully integrated within the Buildroot set of options, - it has not gained much traction (not even I use it), - I've always argued that sustained development should use an external toolchain, and not rely on building one with Buildroot, - I did not submit any of the enhancements requested during the last developpers' day in Brussels, - I have neither the incentive nor the time to maintain and enhance it, it is time to deprecate the crosstool-NG backend for the 2013.05 release. Then, it will be entirely removed early in the 2013.08 cycle, to let some time for those that rely on it to voice their opinions. ;-) Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Peter Korsgaard <jacmet@uclibc.org> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gcc: Enable --with-float for powerpcMaxime Ripard2013-05-061-1/+2
| | | | | | | | | | | Commit 8d929f4b ("toolchain/gcc: Only enable --with-float when it makes sense") restricted the --with-float use to only MIPS, ARM and SPARC, while it seems that powerpc needs it as well. Fixes the qemu_ppc_virtex_ml507_defconfig build. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: toolchain: Introduce target CPU revision.Sonic Zhang2013-05-052-1/+9
| | | | | | | | | 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>
* kernel-headers: Add support for ARC kernel headersMischa Jonker2013-05-041-5/+9
| | | | | | | Also make sure that older kernels are not selected for ARC. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/toolchain-buildroot: Disable NPTL for ARCMischa Jonker2013-05-041-0/+1
| | | | | | | NPTL is not yet supported for ARC. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gcc: Only enable --with-float when it makes senseMischa Jonker2013-05-041-0/+3
| | | | | | | | | According to gcc/config.gcc, only ARM, MIPS and SPARC have the "--with-float" option when configuring gcc. [Peter: sort list] Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arc: Make sure that libgcc doesn't get included when it doesn't exist yetMischa Jonker2013-05-041-2/+13
| | | | | | | | | | | | | For ARC, libgcc is always included, even when -nostdlib is given. This is related to some small pieces of code that are not always generated by the compiler; a call to libgcc is used in those cases instead. During the initial stages of building the toolchain, this is a problem, as libgcc does not exist yet. The ARC compiler supports -really-nostdlib to override the default behavior. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arc: Add support for ARC-specific uClibcMischa Jonker2013-05-043-2/+14
| | | | | | [Peter: fix whitespace] Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arc: add gcc for ARCMischa Jonker2013-05-043-8/+46
| | | | | | | | ARC needs a specific GCC for now, while we wait for ARC support to get upstreamed. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arc: disable Crosstool-NG for ARCMischa Jonker2013-05-041-1/+1
| | | | | Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 4, 8}.x stable versionGustavo Zacarias2013-05-022-3/+3
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/arm: add support for Marvell PJ4Gustavo Zacarias2013-04-291-5/+5
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.8.10, add 3.9Peter Korsgaard2013-04-291-2/+6
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 2, 4, 8}.x stable versionGustavo Zacarias2013-04-262-4/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 4, 8}.x stable versionGustavo Zacarias2013-04-172-3/+3
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* eliminate double slashes caused by FOO_SITE ending in a slashShawn J. Goff2013-04-154-8/+8
| | | | | | | | | | 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/gcc: bump 4.6.x versionPeter Korsgaard2013-04-138-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 2, 4, 8}.x stable versionGustavo Zacarias2013-04-132-4/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> 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-1118-1136/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/gcc: bump 4.7.x series to 4.7.3Gustavo Zacarias2013-04-118-40/+42
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/arm: drop generic and old, add fa526/626, unify strongarmGustavo Zacarias2013-04-114-9/+9
| | | | | | | | | | | | | | | | | * Add Faraday FA526/626 as suggested on bug #1291 Note however that these cores are v4 and NOT v4t. * Make the sa110 & sa1110 cores -> strongarm since they're the same. * Drop all of the ARM variants lower than v4 including generic, there's no point in supporting obsolete targets. * Fix uClibc USE_BX logic, it was always on, this would break the new FA526/626 support and broke StrongARM since it's a v4 core. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Acked-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>
* kernel-headers: bump 3.{0, 4, 8}.x stable version and EOL 3.7.x seriesGustavo Zacarias2013-04-102-3/+4
| | | | | | | | The 3.7.x series is EOLed upstream so match that marking it as deprecated. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 2, 4, 8}.x stable versionGustavo Zacarias2013-03-302-4/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain: default to gcc 4.7.xPeter Korsgaard2013-03-251-1/+1
| | | | | | | | | With 4.8.x released, it makes sense to update our default gcc version before 4.6.x becomes unmaintained. At the same time simplify the kconfig logic a bit. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gcc: disable makeinfoGustavo Zacarias2013-03-241-0/+3
| | | | | | | | | Newer versions of texinfo (>=5) break the gcc makeinfo routine, so just disable it. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Tested-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain: update crosstool-NG project URLThomas Petazzoni2013-03-241-1/+1
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: add missing $(Q)Thomas Petazzoni2013-03-241-1/+1
| | | | | | | | Add a missing $(Q) in front of a MESSAGE call, which leads to the message being displayed but also the command that shows the message. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: add missing $(Q)Thomas Petazzoni2013-03-241-1/+1
| | | | | | | | Add a missing $(Q) in front of a MESSAGE call, which leads to the message being displayed but also the command that shows the message. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: add missing $(Q)Thomas Petazzoni2013-03-241-1/+1
| | | | | | | | Add a missing $(Q) in front of a MESSAGE call, which leads to the message being displayed but also the command that shows the message. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: introduce BR2_GCC_NEEDS_MPC to reduce code duplicationThomas Petazzoni2013-03-242-43/+9
| | | | | | | | | | For each version of gcc, we need to check whether it requires mpc as a dependency. Since this is true for 4.5, 4.6, 4.7, snapshots and now 4.8, let's factorize this code a bit by using a Kconfig symbol that tells us whether we are using a gcc version that requires mpc. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: add support for gcc 4.8Thomas Petazzoni2013-03-249-0/+292
| | | | | | | | | This commit adds support for the recently released gcc 4.8. We re-add the same patch series as the one used for 4.7.x, after refreshing the patches. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: fix location of snapshotsThomas Petazzoni2013-03-241-1/+1
| | | | | | | | | The gcc snapshots are now located at ftp://gcc.gnu.org/pub/gcc/snapshots/. This has been tested with a recent 4.8.0-RC snapshot. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 2, 4, 8}.x stable versionGustavo Zacarias2013-03-242-4/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/crosstool-NG: do not depend on the top-level Buildroot's .configYann E. MORIN2013-03-181-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the crosstool-NG backend did depend on the top-level Buildroot's .config to detect changes in the toolchain options, using a tentatively-clever heuristic, which also included the full Buildroot's version string to push down to set the components' versions strings. In doing so, any commit in the Buildroot tree would imply a complete rebuild of the toolchain, even in the case the toolchain options did not change, thus being a large annoyance (to say the least). As Buildroot never guaranteed that toolchain options would be detected, even less handled, and that the internal backend does neither detect nor act on toolchain options changes, and delegate that to the user, there is no point in individualising the crosstool-NG backend's behaviour. This reasoning also applies to the depdency on the crosstool-NG's bundled .config file, too. So, just drop the not-so-clever heuristic, and just build the toolchain once, leaving to the user the responsibility to explictly ask Buildroot to rebuild the toolchain. Reported-by: "Przemyslaw Wrzos" <przemyslaw.wrzos@calyptech.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: "Przemyslaw Wrzos" <przemyslaw.wrzos@calyptech.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 2, 4, 8}.x stable versionGustavo Zacarias2013-03-152-4/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 4, 8}.x stable versionGustavo Zacarias2013-03-042-3/+3
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.{0, 2, 4, 7}.x stable version and add 3.8.1Gustavo Zacarias2013-03-012-5/+10
| | | | | | | Also mark 3.6.x as deprecated to match upstream EOL. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Merge branch 'next'Peter Korsgaard2013-03-012-0/+32
|\
| * 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>
* | kernel-headers: remove legacy codeThomas Petazzoni2013-02-261-9/+0
| | | | | | | | | | | | | | | | The BR2_KERNEL_HEADERS_2_6_35 symbol no longer exists since some time, so get rid of code that was specific to this kernel version. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>