From 773db053aabfddb72134a363ecb31c1dac0b8c75 Mon Sep 17 00:00:00 2001 From: Alessandro Ghedini Date: Mon, 30 Dec 2013 16:30:30 +0100 Subject: build: check for libatomic and __atomic operations Add check in old-configure as well. Reformat the check to use a maximum of 80 columns in the wscript. Signed-off-by: Stefano Pigozzi --- old-configure | 16 ++++++++++++++++ wscript | 7 +++++++ 2 files changed, 23 insertions(+) diff --git a/old-configure b/old-configure index 5a7f1880d7..34c553695b 100755 --- a/old-configure +++ b/old-configure @@ -1329,6 +1329,21 @@ if test "$_pthreads" = no ; then die "Unable to find pthreads support." fi + +echocheck "compiler support for __atomic built-ins" +_atomic=no +for _ld_tmp in "" "-latomic" ; do + statement_check stdint.h 'int64_t test = 0; test = __atomic_add_fetch(&test, 1, __ATOMIC_SEQ_CST)' $_ld_tmp && + libs_mplayer="$libs_mplayer $_ld_tmp" && _atomic=yes && break +done +if test "$_atomic" = yes ; then + def_atomic="#define HAVE_ATOMIC_BUILTINS 1" +else + def_atomic="#define HAVE_ATOMIC_BUILTINS 0" +fi +echores "$_atomic" + + if test "$_pthreads" = yes ; then # Cargo-cult for -lrt, which is needed on not so recent glibc version for @@ -3521,6 +3536,7 @@ $def_avresample_has_set_channel_mapping $def_fast_64bit $def_pthreads +$def_atomic #define HAVE_INLINE_ASM 1 diff --git a/wscript b/wscript index 0e23e57560..7a6ee4fb02 100644 --- a/wscript +++ b/wscript @@ -98,6 +98,13 @@ main_dependencies = [ 'func': check_pthreads, 'req': True, 'fmsg': 'Unable to find pthreads support.' + }, { + 'name': 'atomic_builtins', + 'desc': 'compiler support for __atomic built-ins', + 'func': check_libs(['atomic'], + check_statement('stdint.h', + 'int64_t test = 0;' + 'test = __atomic_add_fetch(&test, 1, __ATOMIC_SEQ_CST)')) }, { 'name': 'librt', 'desc': 'linking with -lrt', -- cgit v1.2.3