summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2009-02-06 21:20:16 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2009-02-24 13:09:45 +0100
commit1ca5268698acfcf043d06782baaa92c26eb999f1 (patch)
treec2027259e3c6a0d3395fbeb5154d3be6728087b5 /configure.ac
parent6685cd0c482f4fbd2e0e750f05e2c847a7a417e5 (diff)
downloadrsyslog-1ca5268698acfcf043d06782baaa92c26eb999f1.tar.gz
rsyslog-1ca5268698acfcf043d06782baaa92c26eb999f1.tar.xz
rsyslog-1ca5268698acfcf043d06782baaa92c26eb999f1.zip
Separate macro file for atomic operations
To unclutter configure.ac and to make it easier re-usable, move the check for atomic operations into a separate m4 macro file and call the macro RS_ATOMIC_OPERATIONS (RS for RSyslog)
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac47
1 files changed, 1 insertions, 46 deletions
diff --git a/configure.ac b/configure.ac
index bb02ec3c..2e9a654f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -111,52 +111,7 @@ AC_TRY_COMPILE([
)
# check for availability of atomic operations
-# rgerhards, 2008-09-18, added based on
-# http://svn.apache.org/repos/asf/apr/apr/trunk/configure.in
-
-AC_CACHE_CHECK([whether the compiler provides atomic builtins], [ap_cv_atomic_builtins],
-[AC_TRY_RUN([
-int main()
-{
- unsigned long val = 1010, tmp, *mem = &val;
-
- if (__sync_fetch_and_add(&val, 1010) != 1010 || val != 2020)
- return 1;
-
- tmp = val;
-
- if (__sync_fetch_and_sub(mem, 1010) != tmp || val != 1010)
- return 1;
-
- if (__sync_sub_and_fetch(&val, 1010) != 0 || val != 0)
- return 1;
-
- tmp = 3030;
-
- if (__sync_val_compare_and_swap(mem, 0, tmp) != 0 || val != tmp)
- return 1;
-
- if (__sync_lock_test_and_set(&val, 4040) != 3030)
- return 1;
-
- mem = &tmp;
-
- if (__sync_val_compare_and_swap(&mem, &tmp, &val) != &tmp)
- return 1;
-
- __sync_synchronize();
-
- if (mem != &val)
- return 1;
-
- return 0;
-}], [ap_cv_atomic_builtins=yes], [ap_cv_atomic_builtins=no], [ap_cv_atomic_builtins=no])])
-
-if test "$ap_cv_atomic_builtins" = "yes"; then
- AC_DEFINE(HAVE_ATOMIC_BUILTINS, 1, [Define if compiler provides atomic builtins])
-fi
-
-
+RS_ATOMIC_OPERATIONS
# Additional module directories