lock.m4 | lock.m4 | |||
---|---|---|---|---|
# lock.m4 serial 10 (gettext-0.18) | # lock.m4 serial 13 (gettext-0.18.2) | |||
dnl Copyright (C) 2005-2010 Free Software Foundation, Inc. | dnl Copyright (C) 2005-2014 Free Software Foundation, Inc. | |||
dnl This file is free software; the Free Software Foundation | dnl This file is free software; the Free Software Foundation | |||
dnl gives unlimited permission to copy and/or distribute it, | dnl gives unlimited permission to copy and/or distribute it, | |||
dnl with or without modifications, as long as this notice is preserved. | dnl with or without modifications, as long as this notice is preserved. | |||
dnl From Bruno Haible. | dnl From Bruno Haible. | |||
AC_DEFUN([gl_LOCK], | AC_DEFUN([gl_LOCK], | |||
[ | [ | |||
AC_REQUIRE([gl_THREADLIB]) | AC_REQUIRE([gl_THREADLIB]) | |||
if test "$gl_threads_api" = posix; then | if test "$gl_threads_api" = posix; then | |||
# OSF/1 4.0 and MacOS X 10.1 lack the pthread_rwlock_t type and the | # OSF/1 4.0 and Mac OS X 10.1 lack the pthread_rwlock_t type and the | |||
# pthread_rwlock_* functions. | # pthread_rwlock_* functions. | |||
AC_CHECK_TYPE([pthread_rwlock_t], | AC_CHECK_TYPE([pthread_rwlock_t], | |||
[AC_DEFINE([HAVE_PTHREAD_RWLOCK], [1], | [AC_DEFINE([HAVE_PTHREAD_RWLOCK], [1], | |||
[Define if the POSIX multithreading library has read/write locks.] )], | [Define if the POSIX multithreading library has read/write locks.] )], | |||
[], | [], | |||
[#include <pthread.h>]) | [#include <pthread.h>]) | |||
# glibc defines PTHREAD_MUTEX_RECURSIVE as enum, not as a macro. | # glibc defines PTHREAD_MUTEX_RECURSIVE as enum, not as a macro. | |||
AC_TRY_COMPILE([#include <pthread.h>], | AC_COMPILE_IFELSE([ | |||
[#if __FreeBSD__ == 4 | AC_LANG_PROGRAM( | |||
[[#include <pthread.h>]], | ||||
[[ | ||||
#if __FreeBSD__ == 4 | ||||
error "No, in FreeBSD 4.0 recursive mutexes actually don't work." | error "No, in FreeBSD 4.0 recursive mutexes actually don't work." | |||
#elif (defined __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ \ | ||||
&& __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070) | ||||
error "No, in Mac OS X < 10.7 recursive mutexes actually don't work." | ||||
#else | #else | |||
int x = (int)PTHREAD_MUTEX_RECURSIVE; | int x = (int)PTHREAD_MUTEX_RECURSIVE; | |||
return !x; | return !x; | |||
#endif], | #endif | |||
]])], | ||||
[AC_DEFINE([HAVE_PTHREAD_MUTEX_RECURSIVE], [1], | [AC_DEFINE([HAVE_PTHREAD_MUTEX_RECURSIVE], [1], | |||
[Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE.])]) | [Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE.])]) | |||
fi | fi | |||
gl_PREREQ_LOCK | gl_PREREQ_LOCK | |||
]) | ]) | |||
# Prerequisites of lib/lock.c. | # Prerequisites of lib/glthread/lock.c. | |||
AC_DEFUN([gl_PREREQ_LOCK], [ | AC_DEFUN([gl_PREREQ_LOCK], [:]) | |||
AC_REQUIRE([AC_C_INLINE]) | ||||
]) | ||||
End of changes. 6 change blocks. | ||||
6 lines changed or deleted | 13 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |