summaryrefslogtreecommitdiffstats
path: root/unix/tcl.m4
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2004-11-25 01:31:54 (GMT)
committerdgp <dgp@users.sourceforge.net>2004-11-25 01:31:54 (GMT)
commit51720be334004d3e0c19d217e974419ec8342906 (patch)
tree311156ce049d6fc49473ae9d095697c8d9a32bd4 /unix/tcl.m4
parent87d3df0781d59d8f5d02e06ef8ce2dd68d972915 (diff)
downloadtcl-51720be334004d3e0c19d217e974419ec8342906.zip
tcl-51720be334004d3e0c19d217e974419ec8342906.tar.gz
tcl-51720be334004d3e0c19d217e974419ec8342906.tar.bz2
* unix/tcl.m4 (SC_ENABLE_THREADS): Corrected failure to determine
the number of arguments for readdir_r on SunOS systems. [Bug 1071701] * unix/configure: autoconf-2.13
Diffstat (limited to 'unix/tcl.m4')
-rw-r--r--unix/tcl.m419
1 files changed, 17 insertions, 2 deletions
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index ba0dd66..2ebb13a 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -435,6 +435,9 @@ AC_DEFUN(SC_ENABLE_THREADS, [
# allocator that significantly reduces lock contention
AC_DEFINE(USE_THREAD_ALLOC)
AC_DEFINE(_REENTRANT)
+ if test "`uname -s`" = "SunOS" ; then
+ AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
+ fi
AC_DEFINE(_THREAD_SAFE)
AC_CHECK_LIB(pthread,pthread_mutex_init,tcl_ok=yes,tcl_ok=no)
if test "$tcl_ok" = "no"; then
@@ -485,12 +488,24 @@ AC_DEFUN(SC_ENABLE_THREADS, [
AC_CACHE_VAL(tcl_cv_two_arg_readdir_r,
AC_TRY_COMPILE([#include <stdlib.h>
#include <sys/types.h>
-#include <sys/dir.h>], [readdir_r(NULL, NULL);],
+#ifdef NO_DIRENT_H
+# include <sys/dir.h> /* logic from tcl/compat/dirent.h *
+# define dirent direct * */
+#else
+# include <dirent.h>
+#endif
+], [readdir_r(NULL, NULL);],
tcl_cv_two_arg_readdir_r=yes, tcl_cv_two_arg_readdir_r=no))
AC_CACHE_VAL(tcl_cv_three_arg_readdir_r,
AC_TRY_COMPILE([#include <stdlib.h>
#include <sys/types.h>
-#include <sys/dir.h>], [readdir_r(NULL, NULL, NULL);],
+#ifdef NO_DIRENT_H
+# include <sys/dir.h> /* logic from tcl/compat/dirent.h *
+# define dirent direct * */
+#else
+# include <dirent.h>
+#endif
+], [readdir_r(NULL, NULL, NULL);],
tcl_cv_three_arg_readdir_r=yes, tcl_cv_three_arg_readdir_r=no))
if test "x$tcl_cv_two_arg_readdir_r" = "xyes" ; then
AC_MSG_RESULT([2])