As stated in commit [1], sparc toolchains doesn't have
any of __sync_*() family of functions implementation.
When __sync_add_and_fetch() is missing, ltp fallback to a local
implementation of tst_atomic_add_return() specific for each
supported architecture.
But there is none for sparc.
So add a dependency on BR2_TOOLCHAIN_HAS_SYNC_4 except for
architectures where a specific implementation is provided
in ltp-testsuite.
Fixes:
http://autobuild.buildroot.net/results/d7c/
d7c3b145a64ed3916b89ddb4090050f3b9205e37
[1]
6856e417da4f3aa77e2a814db2a89429af072f7d
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
config BR2_PACKAGE_LTP_TESTSUITE_ARCH_SUPPORTS
bool
- default y
+ # Needs __sync*() built-ins for 4-byte data, except on a few
+ # architectures for which a specific implementation is
+ # provided in ltp-testsuite
+ default y if BR2_TOOLCHAIN_HAS_SYNC_4
+ default y if BR2_arc
+ default y if BR2_i386
+ default y if BR2_powerpc
+ default y if BR2_powepc64
+ default y if BR2_powerpc64le
+ default y if BR2_x86_64
# does not build on nios2, cachectl.h issue
depends on !BR2_nios2