diff options
Diffstat (limited to 'storage/xtradb/plug.in')
-rw-r--r-- | storage/xtradb/plug.in | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/storage/xtradb/plug.in b/storage/xtradb/plug.in index b68b59725d4..2e0c873094a 100644 --- a/storage/xtradb/plug.in +++ b/storage/xtradb/plug.in @@ -140,17 +140,24 @@ MYSQL_PLUGIN_ACTIONS(xtradb, [ ) AC_MSG_CHECKING(whether Solaris libc atomic functions are available) - # either define HAVE_IB_SOLARIS_ATOMICS or not - AC_CHECK_FUNCS(atomic_cas_ulong \ + # Define HAVE_IB_SOLARIS_ATOMICS if _all_ of the following + # functions are present. + AC_CHECK_FUNCS(atomic_add_long_nv \ atomic_cas_32 \ atomic_cas_64 \ - atomic_add_long_nv \ - atomic_swap_uchar, - - AC_DEFINE([HAVE_IB_SOLARIS_ATOMICS], [1], - [Define to 1 if Solaris libc atomic functions \ - are available]) - ) + atomic_cas_ulong \ + atomic_swap_uchar) + + if test "${ac_cv_func_atomic_add_long_nv}" = "yes" -a \ + "${ac_cv_func_atomic_cas_32}" = "yes" -a \ + "${ac_cv_func_atomic_cas_64}" = "yes" -a \ + "${ac_cv_func_atomic_cas_ulong}" = "yes" -a \ + "${ac_cv_func_atomic_swap_uchar}" = "yes" ; then + + AC_DEFINE([HAVE_IB_SOLARIS_ATOMICS], [1], + [Define to 1 if Solaris libc atomic functions are available] + ) + fi AC_MSG_CHECKING(whether pthread_t can be used by Solaris libc atomic functions) # either define HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS or not |