kumquat-buildroot/toolchain
Romain Naour b3d1fb26dc toolchain: libatomic is not built on "uclinux" platforms
The cairo package fails to build on some architectures:
BR2_TOOLCHAIN_HAS_LIBATOMIC is enabled, but libatomic is in fact not
available.

This happens because the gcc logic in libatomic/configure.tgt does not
recognize "uclinux" as a valid OS part of the target tuple, and
therefore it does not build libatomic.

The "uclinux" part of the tuple is used by Buildroot when
BR2_BINFMT_FLAT=y, so we make BR2_TOOLCHAIN_HAS_LIBATOMIC enabled only
if !BR2_BINFMT_FLAT.

It is worth mentioning that support for the uclinux tuple could most
likely very easily be added to gcc: it could rely on the generic
"posix" implementation of libatomic, which uses pthread locks,
available on all architectures where thread support is available.

Fixes:

 [arm]  http://autobuild.buildroot.net/results/3d8dc45e41a043d2c2c26bfb26c3617499fbe671
 [m68k] http://autobuild.buildroot.net/results/318e01406e3e92eb589ee5b2231c671a4dbb6da4

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: adjust dependency after analysis of the gcc code.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-02 23:33:46 +02:00
..
toolchain
toolchain-buildroot Replace (e)glibc by glibc 2016-06-28 22:19:22 +02:00
toolchain-external toolchain-external: musl toolchain on ARM is for MMU-systems only 2016-07-28 22:15:03 +02:00
Config.in uclibc: disable PIE for microblaze 2016-08-01 23:01:20 +02:00
helpers.mk toolchain/helpers: add fortran check 2016-07-03 16:58:11 +02:00
toolchain-common.in toolchain: libatomic is not built on "uclinux" platforms 2016-08-02 23:33:46 +02:00
toolchain-wrapper.c
toolchain-wrapper.mk
toolchain.mk toolchain: use the <PKG>_TARGET_FINALIZE_HOOKS 2016-07-18 23:30:46 +02:00