From b94384c0525ff159b7605c8010c8543388f3e71d Mon Sep 17 00:00:00 2001 From: Michael Jeanson Date: Fri, 4 Jun 2021 15:15:38 -0400 Subject: [PATCH] fix: allow building with userspace-rcu 0.13 The liburcu detection code was checking for the 'synchronize_rcu_bp' symbol in liburcu-bp which was dropped from the ABI in 0.13, add a fallback check for 'urcu_bp_synchronize_rcu' which replaced it. Also drop the check for 'call_rcu_bp' which we don't use and was just a leftover of version check for 0.6 which has since been superseded. Both those changes allow to build against liburcu >= 0.13. Change-Id: I85c613fa0a41a4f78466501280768c4a4d4de12e Signed-off-by: Michael Jeanson Signed-off-by: Mathieu Desnoyers --- configure.ac | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index d51bed46..a4fb3082 100644 --- a/configure.ac +++ b/configure.ac @@ -276,10 +276,12 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ ]) # urcu - check that URCU lib is available to compilation -AC_CHECK_LIB([urcu-bp], [synchronize_rcu_bp], [], [AC_MSG_ERROR([Cannot find liburcu-bp lib. Use [LDFLAGS]=-Ldir to specify its location.])]) +# Check for 'synchronize_rcu_bp' and then failback to 'urcu_bp_synchronize_rcu' as the former was +# removed from the ABI in liburcu 0.13. +AC_CHECK_LIB([urcu-bp], [synchronize_rcu_bp], [], [ + AC_CHECK_LIB([urcu-bp], [urcu_bp_synchronize_rcu], [], [AC_MSG_ERROR([Cannot find liburcu-bp lib. Use [LDFLAGS]=-Ldir to specify its location.])]) +]) -# urcu - check that URCU lib is at least version 0.6 -AC_CHECK_LIB([urcu-bp], [call_rcu_bp], [], [AC_MSG_ERROR([liburcu 0.6 or newer is needed, please update your version or use [LDFLAGS]=-Ldir to specify the right location.])]) # numa.h integration AS_IF([test "x$NO_NUMA" = "x1"],[ -- 2.34.1