summaryrefslogtreecommitdiffstats
path: root/toolchain
Commit message (Collapse)AuthorAgeFilesLines
* Support multilib variants in sub-subdirectoriesThomas Petazzoni2012-03-011-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an external toolchain has multiple variants organized in sub-directories, Buildroot only copies the selected sysroot and not all sysroots. In order to make this work, Buildroot creates a symbolic link of the name of the original selected sysroot to the main sysroot to trick the compiler so that it finds its libraries at the expected location. I.e, if the toolchain as the following organization (example take on the ARM CodeSourcery toolchain) : . for ARMv5T armv4 for ARMv4T thumb2 for ARMv7-A/Thumb and ARMv4T is selected, then Buildroot will copy the contents of armv4t/ from the toolchain into its $(STAGING_DIR) and then create a $(STAGING_DIR)/armv4t symbolic link to $(STAGING_DIR). However, our logic to do so only works when there was one directory level for multilib sysroots. But in the MIPS CodeSourcery toolchain there are multiple levels. For example, the MIPS16 soft-float little-endian sysroot variant is in mips16/soft-float/el/ compared to the main sysroot. This patch improves our logic to support this case. The logic is a bit more complicated as we don't want to create a symbolic link to an absolute path, but a symbolic link to a relative path, because we want the host/ directory to be relocatable. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Improve external toolchain logic to support IA32 Sourcery CodeBench toolchainThomas Petazzoni2012-03-012-20/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* kernel-headers: bump 3.0.x / 3.2.x stable versionsPeter Korsgaard2012-03-012-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: rename 0.9.33 syscall_ncs patchPeter Korsgaard2012-02-271-0/+0
| | | | | | No need for double dashes - Purely cosmetical. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.2.x stable versionsPeter Korsgaard2012-02-242-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: add upstream 0.9.33 fixesPeter Korsgaard2012-02-162-0/+209
| | | | | | Fixes build on E.G. powerpc. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.2.x stable versionsPeter Korsgaard2012-02-142-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* dependencies: move from toolchain/ to support/Thomas De Schampheleire2012-02-095-198/+0
| | | | | | | | | | As suggested by Arnout Vandecappelle, move toolchain/dependencies to support/dependencies, as it really is not toolchain-specific anymore. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.2.x stable versionPeter Korsgaard2012-02-091-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* dependencies.sh: fix host g++ check when ccache is usedPeter Korsgaard2012-02-081-1/+1
| | | | | | Similar to how we do it for gcc. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.2.x stable versionsPeter Korsgaard2012-02-062-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: tweak 0.9.33 / snapshot configsPeter Korsgaard2012-02-022-2/+14
| | | | | | | With default values so it doesn't stop build and ask user. Also disable 2.4 modules support by default like upstream does. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain-buildroot: enable / default to NPTL fr uClibc 0.9.33 as wellPeter Korsgaard2012-02-021-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: add 0.9.33Peter Korsgaard2012-02-022-0/+278
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.2.x stable versionsPeter Korsgaard2012-01-262-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: add 7.4, mark 7.1 as deprecatedPeter Korsgaard2012-01-241-1/+9
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: also force ELF support for gdbhostPeter Korsgaard2012-01-241-0/+2
| | | | | | | | | | | | | | | | Similar to how we do for target (ee39d53ce3ee (Fix GDB BFD test linking)). Gdb comes with an embedded copy of libiberty, but binutils also installs libiberty.a into HOST_DIR. The gdb configure script tries to link against this one rather than the gdb version when it checks for ELF support. This may fail if those versions are not compatible, leading to obscure error messages from gdb at runtime such as: I'm sorry, Dave, I can't do that. Symbol format `elf32-$ARCH' unknown. Fix it by forcing ELF support. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* ctng: use gcc 4.4.6Peter Korsgaard2012-01-223-9/+9
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* ctng: use 3.0.4 kernel headersPeter Korsgaard2012-01-223-9/+9
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* ctng: use internal toolchain uClibc config, build uClibc 0.9.32Peter Korsgaard2012-01-223-250/+4
| | | | | | | So the uClibc configurations are kept in sync between the two toolchain methods. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.1.x stable versionPeter Korsgaard2012-01-181-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc-uclibc-4.x.mk: get rid of BR2_DEPENDS_DIRPeter Korsgaard2012-01-151-13/+0
| | | | | | Now that we have dropped the make-write-deps patch. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Fix typo buiding -> buildingThomas De Schampheleire2012-01-151-1/+1
| | | | | Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x, 3.1.x and 3.2.x seriesGustavo Zacarias2012-01-132-3/+3
| | | | | | | | Bump 3.0.x series to 3.0.17, 3.1.x series to 3.1.9 and 3.2.x series to 3.2.1 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Remove java supportPeter Korsgaard2012-01-122-31/+0
| | | | | | | Has been marked as broken since July 2010 (39e6ba1b), and nobody has stepped up to support it, so now finally remove it completely. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.1.x series to version 3.1.8Gustavo Zacarias2012-01-091-1/+1
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain: add powerpc SPE ABI supportGustavo Zacarias2012-01-072-1/+12
| | | | | | | | | | | | | | | | | Add the ability for buildroot to build an SPE ABI enabled toolchain. This is mandatory for e500v1/v2 cores since they don't support classic FPU mode as the e500mc does. Useful for Freescale's PowerQUICC III and single/dual-core QorIQ line of processors. The new TARGET_ABI variable is used rather than TARGET_CFLAGS for uclibc's UCLIBC_EXTRA_CFLAGS to avoid breakish CFLAGS leaking in, a good example being -mthumb for ARM. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0 & 3.1 stable versions, add 3.2Gustavo Zacarias2012-01-062-3/+7
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: bump 0.9.32.x version to 0.9.32.1Gustavo Zacarias2012-01-029-96/+1
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.1.x stable versionsPeter Korsgaard2011-12-212-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.1.x stable versionsSven Neumann2011-12-112-2/+2
| | | | | | [Peter: rename headers_install patch so it gets applied] Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: remove old 4.2.4 versionPeter Korsgaard2011-12-0818-776/+1
| | | | | | We unfortunately cannot remove the avr32 variant yet. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: default to 4.5.xPeter Korsgaard2011-12-081-1/+1
| | | | | | | | | The 4.3.x series is getting quite old, so let's use 4.5 instead. There were reports of problems in the past, which is why this is done early in the cycle. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uclibc: update internal toolchain buildGustavo Zacarias2011-12-071-0/+6
| | | | | | | | | Update the uClibc build procedure to accomodate for the new build system, otherwise it breaks with snapshot versions. As pointed by linuxjacques on IRC. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: add unshare() syscall supportGustavo Zacarias2011-12-072-0/+156
| | | | | | | | Add unshare() syscall support for uClibc 0.9.31 and 0.9.32 series. This is required by newer versions of iproute2. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: remove deprecated 0.9.30 seriesGustavo Zacarias2011-12-0711-615/+0
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* dependencies: check for extract tools as wellPeter Korsgaard2011-12-041-7/+1
| | | | | | | | | | | | Most of the extract tools (gzip/bzip/..) we already check for explicitly in dependencies.sh (as they are used outside GENTARGETS), but not for xzcat. The .xz format is used fairly rarely, and it is likely to not be available on build hosts, so an explicit (hardcoded) check for it isn't optimal. Instead, add the inflate tools used to DL_TOOLS_DEPENDENCIES, similar to how we do it for svn/git/bzr/... Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x / 3.1.x stable versionsPeter Korsgaard2011-11-292-2/+2
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: update to 3.1.3 and 3.0.11Sven Neumann2011-11-272-2/+2
| | | | | Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: remove trailer from linuxthreads-errno patches confusing modern patchPeter Korsgaard2011-11-242-4/+0
| | | | | | | | Modern versions of patch (2.6.1.81 / 85 tested) gets confused by the empty git trailer referencing uClibc_errno.h (from when patch was forward ported from 0.9.31), so drop it. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: fix kconfig dependency handling with !BR_TOOLCHAIN_BUILDROOTPeter Korsgaard2011-11-245-5/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* gdb: fix version logic for bfinPeter Korsgaard2011-11-231-1/+1
| | | | | | GDB should default to 6.6 on bfin, not on !bfin. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: update to 3.1.2 and 3.0.10Gustavo Zacarias2011-11-222-2/+2
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* dependencies: remove unused lzma checking scriptsThomas De Schampheleire2011-11-171-13/+0
| | | | | | | | | | Files package/lzma/lzmacheck.sh and toolchain/dependencies/check-host-lzma.sh are present since the very beginning of buildroot, but do not appear to be used (anymore). Let's remove them. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* dependencies: check core dependencies before anything elseThomas De Schampheleire2011-11-171-2/+4
| | | | | | | | | | | | | | | | | | | Currently, the dependencies target (that runs dependencies.sh) depends on DEPENDENCIES_HOST_PREREQ. This means that the dependencies listed in DEPENDENCIES_HOST_PREREQ (currently host-sstrip if sstrip is selected) are built *before* the dependencies.sh script is run. As a result, if e.g. there is no gcc compiler present on the build system, the dependencies in DEPENDENCIES_HOST_PREREQ will fail to build, and buildroot will fail non-gracefully. This patch makes sure that the DEPENDENCIES_HOST_PREREQ are checked *after* the dependencies.sh script, so that any problem in the build system is reported in a clean way by dependencies.sh. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* uClibc: fix sparc build breakageGustavo Zacarias2011-11-172-0/+22
| | | | | | | | | | | Closes #4021 Fix build breakage for sparc as reported in bug #4021 Patches from Konrad Eisele <konrad@gaisler.com> Submitted in the uclibc mailing list. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: bump 3.0.x stable versionPeter Korsgaard2011-11-142-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: update stable kernel version to 3.1.1Sven Neumann2011-11-141-1/+1
| | | | | Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* target gdb: depend on thread supportThomas Petazzoni2011-11-131-0/+1
| | | | | | | | | | Compiling gdb for the target requires thread support in the C library, otherwise: /home/test/outputs/test-888/toolchain/gdb-7.3.1/gdb/gdb_thread_db.h:37:21: fatal error: pthread.h: No such file or directory Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: do not allow native gdb on SuperH architectureThomas Petazzoni2011-11-131-0/+1
| | | | | | | | | | | | The gdb debugger does not have support for running as the native debugger on the SuperH architecture: configure: error: "*** Gdb does not support native target sh4-unknown-linux-gnu" See also http://lists.debian.org/debian-superh/2010/04/msg00000.html. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>