*-*-freebsd*)
check_threads=true
;;
+ *-*-netbsd*)
+ check_threads=true
+ ;;
*-*-*bsd*)
check_threads=false
;;
AC_CHECK_FUNCS(setrlimit time ctime utime gettimeofday getrusage)
AC_CHECK_FUNCS(chmod fcntl stat fstat getenv putenv strerror)
AC_CHECK_FUNCS(getpid getgid getsid getpgid getpgrp getuid)
-AC_CHECK_FUNCS(setgroups initgroups nl_langinfo epoll_wait)
+AC_CHECK_FUNCS(setgroups initgroups nl_langinfo nanosleep)
AC_CHECK_FUNCS(strchr snprintf strstr strcpy strncpy memcpy memset memmove)
#ifdef SILC_DIST_SIM
;;
esac
+ # Check for threads
AC_CHECK_FUNC(pthread_create)
+
+ # Check for read/write locks
+ AC_CHECK_FUNC(pthread_rwlock_init,
+ [
+ AC_RUN_IFELSE(
+ [
+ #include <pthread.h>
+ int main()
+ {
+ pthread_rwlock_t rwlock;
+ pthread_rwlock_init(&rwlock, NULL);
+ pthread_rwlock_destroy(&rwlock);
+ return 0;
+ }
+ ],
+ [],
+ [
+ # Rwlock not defined
+ CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600"
+ ]
+ )
+ ],
+ [
+ # Rwlock not defined
+ CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600"
+ ])
+
AC_DEFINE([SILC_HAVE_PTHREAD], [], [HAVE_PTHREAD])
AC_DEFINE([SILC_THREADS], [], [HAVE_THREAD])
__SILC_HAVE_PTHREAD="#define __SILC_HAVE_PTHREAD 1"