diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-04-22 21:35:03 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-04-22 21:35:03 +0000 |
commit | 6b7aeb5c1ecb6c590f5e246520793e4fe7547299 (patch) | |
tree | 0eab425211bfc11d7a3ffaba086bd5a35a3a7cf8 /configure.ac | |
parent | c6fe6d8afeb05b15b07e8abbebd278704d9ca533 (diff) |
Detect availability of pthread_rwlock_timedwrlock() before using it.
(closes issue #14930)
Reported by: tilghman
Patches:
20090420__bug14930.diff.txt uploaded by tilghman (license 14)
Tested by: mvanbaak, tilghman
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@190092 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index ad7743422..48fbb72b9 100644 --- a/configure.ac +++ b/configure.ac @@ -325,6 +325,27 @@ AC_LINK_IFELSE( AC_MSG_RESULT(no) ) +AC_MSG_CHECKING(for pthread_rwlock_timedwrlock() in pthread.h) +saved_LDFLAGS="${LDFLAGS}" +LDFLAGS="${LDFLAGS} -lpthread" +AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [#include <pthread.h> + #include <time.h>], + [pthread_rwlock_t foo; struct timespec bar; pthread_rwlock_timedwrlock(&foo, &bar)]) + ],[ + AC_MSG_RESULT(yes) + ac_cv_pthread_rwlock_timedwrlock="yes" + ],[ + AC_MSG_RESULT(no) + ac_cv_pthread_rwlock_timedwrlock="no" + ] +) +LDFLAGS="${saved_LDFLAGS}" +if test "${ac_cv_pthread_rwlock_timedwrlock}" = "yes"; then + AC_DEFINE([HAVE_PTHREAD_RWLOCK_TIMEDWRLOCK], 1, [Define if your system has pthread_rwlock_timedwrlock()]) +fi + AC_MSG_CHECKING(for compiler atomic operations) AC_LINK_IFELSE( AC_LANG_PROGRAM([], [int foo1; int foo2 = __sync_fetch_and_add(&foo1, 1);]), |