diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-03-27 19:26:19 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2013-04-03 09:22:31 +0200 |
commit | f9f6402e9c9ce3642df981b48507df3a2d956f65 (patch) | |
tree | a2048ccf4ac1e312f0cdcde048d15e23544788ed | |
parent | 0933fd1533560fbc718026e12f19a4824b041237 (diff) | |
download | ffmpeg-f9f6402e9c9ce3642df981b48507df3a2d956f65.tar.gz |
configure: prettify atomics handling.
Add simpler names and a shorthand for native atomics (as opposed to
pthreads fallback).
-rwxr-xr-x | configure | 13 | ||||
-rw-r--r-- | libavutil/Makefile | 6 | ||||
-rw-r--r-- | libavutil/atomic.c | 2 | ||||
-rw-r--r-- | libavutil/atomic.h | 6 |
4 files changed, 20 insertions, 7 deletions
@@ -1122,6 +1122,12 @@ THREADS_LIST=' w32threads ' +ATOMICS_LIST=' + atomics_gcc + atomics_win32 + atomics_suncc +' + ARCH_LIST=' aarch64 alpha @@ -1226,6 +1232,7 @@ HAVE_LIST=" $HAVE_LIST_CMDLINE $HAVE_LIST_PUB $THREADS_LIST + $ATOMICS_LIST $MATH_FUNCS aligned_malloc aligned_stack @@ -1234,6 +1241,7 @@ HAVE_LIST=" arpa_inet_h asm_mod_q asm_mod_y + atomics_native attribute_may_alias attribute_packed cdio_paranoia_h @@ -3528,6 +3536,10 @@ for thread in $THREADS_LIST; do fi done +enabled sync_val_compare_and_swap && enable atomics_gcc +enabled machine_rw_barrier && enable atomics_suncc +enabled MemoryBarrier && enable atomics_win32 + check_lib math.h sin -lm && LIBM="-lm" enabled vaapi && require vaapi va/va.h vaInitialize -lva @@ -3791,6 +3803,7 @@ case $target_os in esac enabled_any $THREADS_LIST && enable threads +enabled_any $ATOMICS_LIST && enable atomics_native enabled asm || { arch=c; disable $ARCH_LIST $ARCH_EXT_LIST; } diff --git a/libavutil/Makefile b/libavutil/Makefile index 68a8386751..8a7e680ab3 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -103,9 +103,9 @@ OBJS += $(COMPAT_OBJS:%=../compat/%) SKIPHEADERS = old_pix_fmts.h -SKIPHEADERS-$(HAVE_MACHINE_RW_BARRIER) += atomic_suncc.h -SKIPHEADERS-$(HAVE_MEMORYBARRIER) += atomic_win32.h -SKIPHEADERS-$(HAVE_SYNC_VAL_COMPARE_AND_SWAP) += atomic_gcc.h +SKIPHEADERS-$(HAVE_ATOMICS_SUNCC) += atomic_suncc.h +SKIPHEADERS-$(HAVE_ATOMICS_WIN32) += atomic_win32.h +SKIPHEADERS-$(HAVE_ATOMICS_GCC) += atomic_gcc.h TESTPROGS = adler32 \ aes \ diff --git a/libavutil/atomic.c b/libavutil/atomic.c index 37e796f05f..add489a26e 100644 --- a/libavutil/atomic.c +++ b/libavutil/atomic.c @@ -20,7 +20,7 @@ #include "atomic.h" -#if !HAVE_MEMORYBARRIER && !HAVE_SYNC_VAL_COMPARE_AND_SWAP && !HAVE_MACHINE_RW_BARRIER +#if !HAVE_ATOMICS_NATIVE #if HAVE_PTHREADS diff --git a/libavutil/atomic.h b/libavutil/atomic.h index 773c5df1bd..a5c5fe86bf 100644 --- a/libavutil/atomic.h +++ b/libavutil/atomic.h @@ -23,11 +23,11 @@ #include "config.h" -#if HAVE_SYNC_VAL_COMPARE_AND_SWAP +#if HAVE_ATOMICS_GCC #include "atomic_gcc.h" -#elif HAVE_MEMORYBARRIER +#elif HAVE_ATOMICS_WIN32 #include "atomic_win32.h" -#elif HAVE_MACHINE_RW_BARRIER +#elif HAVE_ATOMICS_SUNCC #include "atomic_suncc.h" #else |