X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=configure.ac;h=dcbb61f2bd61337e65480262b951ed152fcc2c0b;hb=d4e640c06c2c999d5fc8f8375bc2f61da06c9cda;hp=eb54f4eb78f692f346b147a455fce330b5420638;hpb=6893800a4d1cc14dff0395ddcd660a5138db183d;p=userspace-rcu.git diff --git a/configure.ac b/configure.ac index eb54f4e..dcbb61f 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ(2.59) -AC_INIT([userspace-rcu],[0.9.0],[mathieu dot desnoyers at efficios dot com], [], [http://liburcu.org/]) +AC_INIT([userspace-rcu],[0.10.0-pre],[mathieu dot desnoyers at efficios dot com], [], [http://liburcu.org/]) # Following the numbering scheme proposed by libtool for the library version # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html @@ -25,6 +25,16 @@ AH_TEMPLATE([CONFIG_RCU_COMPAT_ARCH], [Compatibility mode for i386 which lacks c AH_TEMPLATE([CONFIG_RCU_ARM_HAVE_DMB], [Use the dmb instruction if available for use on ARM.]) AH_TEMPLATE([CONFIG_RCU_TLS], [TLS provided by the compiler.]) AH_TEMPLATE([CONFIG_RCU_HAVE_CLOCK_GETTIME], [clock_gettime() is detected.]) +AH_TEMPLATE([CONFIG_RCU_FORCE_SYS_MEMBARRIER], [Require the operating system to support the membarrier system call for default and bulletproof flavors.]) +AH_TEMPLATE([CONFIG_RCU_DEBUG], [Enable internal debugging self-checks. Introduce performance penalty.]) + +# Allow requiring the operating system to support the membarrier system +# call. Applies to default and bulletproof flavors. +AC_ARG_ENABLE([sys-membarrier-fallback], + AS_HELP_STRING([--disable-sys-membarrier-fallback], [Abort if sys-membarrier is needed but not available rather than using a fallback.]), + [def_sys_membarrier_fallback=$enableval], + [def_sys_membarrier_fallback="yes"]) +AS_IF([test "x$def_sys_membarrier_fallback" != "xyes"], [AC_DEFINE([CONFIG_RCU_FORCE_SYS_MEMBARRIER], [1])]) # Allow overriding storage used for TLS variables. AC_ARG_ENABLE([compiler-tls], @@ -84,7 +94,6 @@ CFLAGS="$CFLAGS $PTHREAD_CFLAGS" CC="$PTHREAD_CC" # Checks for library functions. -AC_FUNC_MALLOC AC_FUNC_MMAP AC_FUNC_FORK AC_CHECK_FUNCS([ \ @@ -95,12 +104,16 @@ AC_CHECK_FUNCS([ \ memeset \ memset \ munmap \ + rand_r \ sched_getcpu \ strerror \ strtoul \ sysconf \ ]) +# AC_FUNC_MALLOC causes problems when cross-compiling. +#AC_FUNC_MALLOC + # Check for headers AC_HEADER_STDBOOL AC_CHECK_HEADERS([ \ @@ -241,6 +254,13 @@ AC_ARG_ENABLE([smp-support], [def_smp_support="yes"]) AS_IF([test "x$def_smp_support" = "xyes"], [AC_DEFINE([CONFIG_RCU_SMP], [1])]) +# RCU debugging option +AC_ARG_ENABLE([rcu-debug], + AS_HELP_STRING([--enable-rcu-debug], [Enable internal debugging + self-checks. Introduce performance penalty.])) +AS_IF([test "x$enable_rcu_debug" = "xyes"], [ + AC_DEFINE([CONFIG_RCU_DEBUG], [1]) +]) # From the sched_setaffinity(2)'s man page: # ~~~~