[glib] fix atomic ops detection
- From: Antoine Jacoutot <ajacoutot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] fix atomic ops detection
- Date: Wed, 28 Aug 2013 10:02:05 +0000 (UTC)
commit 996edb0c46356d8a326f886b91a77a6af9a2de3e
Author: Antoine Jacoutot <antoine mtier org>
Date: Wed Aug 28 09:35:27 2013 +0200
fix atomic ops detection
AC_TRY_LINK should be used instead of AC_TRY_COMPILE because the code
will compile everywhere, either producing ``atomic'' code, or an
external reference to __sync_bool_compare_and_swap.
https://bugzilla.gnome.org/show_bug.cgi?id=706958
configure.ac | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 826204e..3c2e142 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2454,7 +2454,7 @@ AC_CACHE_CHECK([for lock-free atomic intrinsics], glib_cv_g_atomic_lock_free, [
glib_cv_g_atomic_lock_free=yes
;;
*)
- AC_TRY_COMPILE([],
+ AC_TRY_LINK([],
[volatile int atomic = 2;\
__sync_bool_compare_and_swap (&atomic, 2, 3);],
[glib_cv_g_atomic_lock_free=yes],
@@ -2462,7 +2462,7 @@ AC_CACHE_CHECK([for lock-free atomic intrinsics], glib_cv_g_atomic_lock_free, [
if test "$glib_cv_g_atomic_lock_free" = "no"; then
SAVE_CFLAGS="${CFLAGS}"
CFLAGS="-march=i486"
- AC_TRY_COMPILE([],
+ AC_TRY_LINK([],
[volatile int atomic = 2;\
__sync_bool_compare_and_swap (&atomic, 2, 3);],
[AC_MSG_ERROR([GLib must be build with -march=i486 or later.])],
@@ -2480,7 +2480,7 @@ case $host in
# Some compilers support atomic operations but do not define
# __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4, like clang
if test x"$glib_cv_g_atomic_lock_free" = xyes; then
- AC_TRY_COMPILE([],
+ AC_TRY_LINK([],
[__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4;],
[],
[AC_DEFINE(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4, 1, [ compiler supports atomic
operations])])
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]