summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2021-07-21 12:12:26 +0200
committerAlbrecht Schlosser <albrechts.fltk@online.de>2021-07-21 12:16:20 +0200
commitc6eccf6137fae2c2f158af6bdc393d70d832b9e9 (patch)
tree2e63401119d1f9804d407bf6205e4de9305a45f6 /configure.ac
parent15f1b6b5c4783695769d3342b85b26b3e7bd29bd (diff)
Call pthread's recursive mutex on Linux (Issue #245)
Add CMake test for PTHREAD_MUTEX_RECURSIVE Add autoconf/configure compile test for PTHREAD_MUTEX_RECURSIVE Replace "#ifdef PTHREAD_MUTEX_RECURSIVE" with "#ifdef HAVE_PTHREAD_MUTEX_RECURSIVE" and define HAVE_PTHREAD_MUTEX_RECURSIVE in config.h
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac18
1 files changed, 18 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 0543c453c..68ca0a5ab 100644
--- a/configure.ac
+++ b/configure.ac
@@ -870,10 +870,28 @@ AS_IF([test "x$enable_threads" != xno -a x$check_pthread = xyes], [
])
])
done
+
+ dnl Check if we have PTHREAD_MUTEX_RECURSIVE
+ AC_CACHE_CHECK([whether we have PTHREAD_MUTEX_RECURSIVE], ac_cv_pthread_mutex_recursive,[
+ AC_LANG_PUSH([C])
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <pthread.h>
+ ]], [[
+ return PTHREAD_MUTEX_RECURSIVE;
+ ]])],
+ [ac_cv_pthread_mutex_recursive=yes],
+ [ac_cv_pthread_mutex_recursive=no])
+ AC_LANG_POP([])
+ ])
+ AS_IF([test x$ac_cv_pthread_mutex_recursive = xyes], [
+ AC_DEFINE([HAVE_PTHREAD_MUTEX_RECURSIVE])
+ ])
])
])
AC_SUBST([PTHREAD_FLAGS])
+AC_SUBST([HAVE_PTHREAD_MUTEX_RECURSIVE])
dnl Define OS-specific stuff...