X-Git-Url: https://git.lttng.org/?p=urcu.git;a=blobdiff_plain;f=configure.ac;h=b62f587e8d8e42de3394beb74ad0f1819eb47bfb;hp=4d1a1dfe659beffbbaf9f24a39dac775ca4348c6;hb=109267f653502cf5ef5ada5d098167b9726daa2d;hpb=447c9339d4f21fe5bba1aa77eccc9f94745e6447 diff --git a/configure.ac b/configure.ac index 4d1a1df..b62f587 100644 --- a/configure.ac +++ b/configure.ac @@ -1,9 +1,9 @@ AC_PREREQ(2.59) -AC_INIT([userspace-rcu],[0.11.0-pre],[mathieu dot desnoyers at efficios dot com], [], [http://liburcu.org/]) +AC_INIT([userspace-rcu],[0.12.0],[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 -AC_SUBST([URCU_LIBRARY_VERSION], [6:0:0]) +AC_SUBST([URCU_LIBRARY_VERSION], [7:0:1]) AC_CONFIG_HEADERS([include/config.h include/urcu/config.h]) AC_CONFIG_AUX_DIR([config]) @@ -12,7 +12,7 @@ AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_TARGET AC_CANONICAL_HOST -AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip nostdinc]) +AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip nostdinc]) AM_MAINTAINER_MODE([enable]) # Enable silent rules if available (Introduced in AM 1.11) @@ -29,6 +29,7 @@ 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.]) +AH_TEMPLATE([CONFIG_CDS_LFHT_ITER_DEBUG], [Enable extra debugging checks for lock-free hash table iterator traversal. Alters the rculfhash ABI. Make sure to compile both library and application with matching configuration.]) # Allow requiring the operating system to support the membarrier system # call. Applies to default and bulletproof flavors. @@ -44,20 +45,13 @@ AC_ARG_ENABLE([compiler-tls], [def_compiler_tls=$enableval], [def_compiler_tls="yes"]) -# If not overridden, use ax_tls.m4 to check if TLS is available. -AS_IF([test "x$def_compiler_tls" = "xyes"], - [AX_TLS([def_tls_detect=$ac_cv_tls], [:])], - [:]) - -AS_IF([test "x$def_tls_detect" = "x"], - [:], - [AC_DEFINE_UNQUOTED([CONFIG_RCU_TLS], $def_tls_detect)]) - # Checks for C compiler AC_USE_SYSTEM_EXTENSIONS AC_PROG_CC AC_PROG_CC_STDC +AS_IF([test "x$def_compiler_tls" = "xyes"], AC_DEFINE([CONFIG_RCU_TLS], [1]), [:]) + # Checks for programs. AC_PROG_AWK AC_PROG_MAKE_SET @@ -268,6 +262,13 @@ AS_IF([test "x$enable_rcu_debug" = "xyes"], [ AC_DEFINE([CONFIG_RCU_DEBUG], [1]) ]) +# rculfhash iterator debugging +AC_ARG_ENABLE([cds-lfht-iter-debug], + AS_HELP_STRING([--enable-cds-lfht-iter-debug], [Enable extra debugging checks for lock-free hash table iterator traversal. Alters the rculfhash ABI. Make sure to compile both library and application with matching configuration.])) +AS_IF([test "x$enable_cds_lfht_iter_debug" = "xyes"], [ + AC_DEFINE([CONFIG_CDS_LFHT_ITER_DEBUG], [1]) +]) + # From the sched_setaffinity(2)'s man page: # ~~~~ # The CPU affinity system calls were introduced in Linux kernel 2.5.8. @@ -324,7 +325,7 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ #include int main() { - cpu_set_t foo, mask; CPU_SET(0, &foo); + cpu_set_t foo; CPU_SET(0, &foo); return 0; } ]]) @@ -373,7 +374,7 @@ AC_CHECK_FUNCS([sched_setaffinity],[ AM_CPPFLAGS="-include config.h" AC_SUBST(AM_CPPFLAGS) -AM_CFLAGS="-Wall -Wextra -Wno-unused-parameter -Wno-sign-compare $AM_CFLAGS" +AM_CFLAGS="-Wall -Wextra -Wno-unused-parameter $AM_CFLAGS" AC_SUBST(AM_CFLAGS) AC_CONFIG_LINKS([ @@ -493,7 +494,7 @@ test "x$compat_futex_test" = "x0" && value=1 || value=0 PPRINT_PROP_BOOL([Futex support], $value) # TLS -test "x$def_tls_detect" = "x" && value="pthread_getspecific()" || value="$def_tls_detect" +test "x$def_compiler_tls" = "xyes" && value="compiler TLS" || value="pthread_getspecific()" PPRINT_PROP_STRING([Thread Local Storage (TLS)], [$value]) # clock_gettime() available @@ -508,6 +509,10 @@ PPRINT_PROP_BOOL([Require membarrier], $value) test "x$enable_rcu_debug" = "xyes" && value=1 || value=0 PPRINT_PROP_BOOL([Internal debugging], $value) +# rculfhash iterator debug enabled/disabled +test "x$enable_cds_lfht_iter_debug" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([Lock-free hash table iterator debugging], $value) + PPRINT_PROP_BOOL([Multi-flavor support], 1) report_bindir="`eval eval echo $bindir`"