jim 99/11/13 06:39:54
Modified: src/lib/apr acconfig.h configure.in
src/lib/apr/file_io/unix dir.c
Log:
Handle the fact that FreeBSD has threaded functions in
libc_r and not libpthread
Revision Changes Path
1.12 +2 -0 apache-2.0/src/lib/apr/acconfig.h
Index: acconfig.h
===================================================================
RCS file: /export/home/cvs/apache-2.0/src/lib/apr/acconfig.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- acconfig.h 1999/11/10 13:40:52 1.11
+++ acconfig.h 1999/11/13 14:39:51 1.12
@@ -39,6 +39,8 @@
#undef USE_PROC_PTHREAD_SERIALIZE
#undef USE_PTHREAD_SERIALIZE
+#undef READDIR_IS_THREAD_SAFE
+
#undef NEED_RLIM_T
#undef USEBCOPY
1.26 +5 -0 apache-2.0/src/lib/apr/configure.in
Index: configure.in
===================================================================
RCS file: /export/home/cvs/apache-2.0/src/lib/apr/configure.in,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- configure.in 1999/11/13 00:07:05 1.25
+++ configure.in 1999/11/13 14:39:52 1.26
@@ -86,7 +86,11 @@
AC_DEFINE_UNQUOTED($ac_decision)
AC_CHECK_LIB(pthread, pthread_mutex_init, AC_DEFINE(USE_PTHREAD_SERIALIZE))
+AC_CHECK_LIB(c_r, pthread_mutex_init, AC_DEFINE(USE_PTHREAD_SERIALIZE))
+ac_cv_define_READDIR_IS_THREAD_SAFE=no
+AC_CHECK_LIB(c_r, readdir, AC_DEFINE(READDIR_IS_THREAD_SAFE))
+
case "$OS" in
*-os2*)
CFLAGS="$CFLAGS -DOS2 -Zmt"
@@ -104,6 +108,7 @@
AC_CHECK_LIB(dl, dlopen)
AC_CHECK_LIB(pthread, pthread_mutex_init)
+AC_CHECK_LIB(c_r, pthread_mutex_init)
AC_CHECK_LIB(socket,socket)
AC_CHECK_LIB(crypt,crypt)
AC_CHECK_LIB(ufc,crypt)
1.16 +2 -1 apache-2.0/src/lib/apr/file_io/unix/dir.c
Index: dir.c
===================================================================
RCS file: /export/home/cvs/apache-2.0/src/lib/apr/file_io/unix/dir.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- dir.c 1999/11/04 07:26:20 1.15
+++ dir.c 1999/11/13 14:39:53 1.16
@@ -124,7 +124,8 @@
*/
ap_status_t ap_readdir(struct dir_t *thedir)
{
-#if APR_HAS_THREADS && defined(_POSIX_THREAD_SAFE_FUNCTIONS)
+#if APR_HAS_THREADS && defined(_POSIX_THREAD_SAFE_FUNCTIONS) \
+ && !defined(READDIR_IS_THREAD_SAFE)
ap_status_t ret;
ret = readdir_r(thedir->dirstruct, thedir->entry, &thedir->entry);
/* Avoid the Linux problem where at end-of-directory thedir->entry