From 556094f04a447660afaf9c0007bdc46420870199 Mon Sep 17 00:00:00 2001 From: Ralph Boehme Date: Fri, 12 Jul 2019 10:49:13 +0200 Subject: [PATCH] ctdb: fix compilation on systems with glibc robust mutexes On older systems like SLES 11 without POSIX robust mutexes, but with glib robust mutexes where all the functions are available but have a "_np" suffix, compilation fails in: ctdb/tests/src/test_mutex_raw.c.239.o: In function `worker': /root/samba-4.10.6/bin/default/../../ctdb/tests/src/test_mutex_raw.c:129: undefined reference to `pthread_mutex_consistent' ctdb/tests/src/test_mutex_raw.c.239.o: In function `main': /root/samba-4.10.6/bin/default/../../ctdb/tests/src/test_mutex_raw.c:285: undefined reference to `pthread_mutex_consistent' /root/samba-4.10.6/bin/default/../../ctdb/tests/src/test_mutex_raw.c:332: undefined reference to `pthread_mutexattr_setrobust' /root/samba-4.10.6/bin/default/../../ctdb/tests/src/test_mutex_raw.c:363: undefined reference to `pthread_mutex_consistent' collect2: ld returned 1 exit status This could be fixed by using libreplace system/threads.h instead of pthreads.h directly, but as there has been a desire to keep test_mutex_raw.c standalone and compilable without other external depenencies then libc and libpthread, make the tool developer build only. This should get the average user over the cliff. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14038 RN: Fix compiling ctdb on older systems lacking POSIX robust mutexes Signed-off-by: Ralph Boehme Reviewed-by: Martin Schwenke --- ctdb/wscript | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ctdb/wscript b/ctdb/wscript index dd319a3ce7b..fd615752406 100644 --- a/ctdb/wscript +++ b/ctdb/wscript @@ -1034,7 +1034,7 @@ def build(bld): ib_deps, install_path='${CTDB_TEST_LIBEXECDIR}') - if bld.env.HAVE_ROBUST_MUTEXES and sys.platform.startswith('linux'): + if bld.env.HAVE_ROBUST_MUTEXES and sys.platform.startswith('linux') and bld.env.DEVELOPER: bld.SAMBA_BINARY('test_mutex_raw', source='tests/src/test_mutex_raw.c', deps='pthread', -- 2.17.1