diff options
author | mdejong <mdejong> | 2004-11-22 22:40:31 (GMT) |
---|---|---|
committer | mdejong <mdejong> | 2004-11-22 22:40:31 (GMT) |
commit | ef4b091cbe98d05b7498a99ef0e793e55986e3e2 (patch) | |
tree | 3758dcfd85bf95084418f687dbd39900c691434b /unix/tcl.m4 | |
parent | 586e32dd0e46d891670556611f65277053f070c3 (diff) | |
download | tcl-ef4b091cbe98d05b7498a99ef0e793e55986e3e2.zip tcl-ef4b091cbe98d05b7498a99ef0e793e55986e3e2.tar.gz tcl-ef4b091cbe98d05b7498a99ef0e793e55986e3e2.tar.bz2 |
* unix/configure: Regen.
* unix/tcl.m4 (SC_ENABLE_THREADS): Check for a 2
argument version of readdir_r that is known to
exists under IRIX 5.3.
* unix/tclUnixThrd.c (TclpReaddir): Use either
2 arg or 3 arg version of readdir_r.
[Bug 1001325]
Diffstat (limited to 'unix/tcl.m4')
-rw-r--r-- | unix/tcl.m4 | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/unix/tcl.m4 b/unix/tcl.m4 index 4dce1cb..1dbd59f 100644 --- a/unix/tcl.m4 +++ b/unix/tcl.m4 @@ -511,6 +511,25 @@ AC_DEFUN(SC_ENABLE_THREADS, [ fi LIBS=$ac_saved_libs AC_CHECK_FUNCS(readdir_r) + if test "x$ac_cv_func_readdir_r" = "xyes"; then + # IRIX 5.3 has a 2 arg version of readdir_r + # while other systems have a 3 arg version. + AC_CACHE_VAL(tcl_cv_two_arg_readdir_r, + AC_TRY_COMPILE([#include <sys/types.h> +#include <sys/dir.h>], [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 <sys/types.h> +#include <sys/dir.h>], [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_DEFINE(HAVE_TWO_ARG_READDIR_R) + elif test "x$tcl_cv_three_arg_readdir_r" = "xyes" ; then + AC_DEFINE(HAVE_THREE_ARG_READDIR_R) + else + AC_MSG_ERROR([unknown number of args for readdir_r]) + fi + fi else TCL_THREADS=0 AC_MSG_RESULT([no (default)]) |