From: Martin Storsjö <[email protected]>
The "suncc" atomics implementation uses a suncc specific memory
barrier, but also relies on a few atomic functions from atomic.h,
that are not suncc specific but specific to solaris. This made
the current implementatioin fail on suncc on linux.
---
configure | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index 7f77b00..46635ce 100755
--- a/configure
+++ b/configure
@@ -1241,6 +1241,7 @@ HAVE_LIST="
arpa_inet_h
asm_mod_q
asm_mod_y
+ atomic_cas_ptr
atomics_native
attribute_may_alias
attribute_packed
@@ -3467,6 +3468,7 @@ check_func strtok_r
check_func sched_getaffinity
check_builtin sync_val_compare_and_swap "" "int *ptr; int oldval, newval;
__sync_val_compare_and_swap(ptr, oldval, newval)"
check_builtin machine_rw_barrier mbarrier.h "__machine_rw_barrier()"
+check_builtin atomic_cas_ptr atomic.h "void **ptr; void *oldval, *newval;
atomic_cas_ptr(ptr, oldval, newval)"
check_builtin MemoryBarrier windows.h "MemoryBarrier()"
check_func sysconf
check_func sysctl
@@ -3537,7 +3539,7 @@ for thread in $THREADS_LIST; do
done
enabled sync_val_compare_and_swap && enable atomics_gcc
-enabled machine_rw_barrier && enable atomics_suncc
+enabled machine_rw_barrier && enabled atomic_cas_ptr && enable atomics_suncc
enabled MemoryBarrier && enable atomics_win32
check_lib math.h sin -lm && LIBM="-lm"
--
1.7.10.4
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel