+dnl ------ Threads
+AC_ARG_ENABLE(threads, [ --disable-threads disable threads],[enable_threads=$enableval],[enable_threads=yes])
+if test "$enable_threads" = "yes"; then
+ AC_CHECK_LIB(pthread,main)
+ AC_MSG_CHECKING(for working POSIX Threads)
+ AC_TRY_LINK([#include <pthread.h>
+ int func(void *p) { return 0; }
+ ],[
+ pthread_t pthread_id;
+ int r = pthread_create (&pthread_id, 0, func, 0);],
+ thread_ok=yes,thread_ok=no)
+ if test "$thread_ok" = "yes"; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_PTHREAD_H)
+ AC_DEFINE(_REENTRANT)
+ else
+ AC_MSG_RESULT(no)
+ fi
+fi
+dnl
+dnl ------ Look for Tcl
+dnl See if user has specified location of tclConfig.sh; otherwise
+dnl see if tclConfig.sh exists in same prefix lcoation as tclsh; otherwise
+dnl disable Tcl.
+TCL_LIB=""
+TCL_INCLUDE=""
+tclconfig=NONE
+AC_ARG_WITH(tclconfig, [ --with-tclconfig=DIR tclConfig.sh in DIR], [tclconfig=$withval])
+if test "x$tclconfig" = xNONE; then
+ saveprefix=${prefix}
+ AC_PREFIX_PROGRAM(tclsh)
+ tclconfig=${prefix}/lib
+ prefix=${saveprefix}
+fi
+AC_MSG_CHECKING(for Tcl)
+if test -r ${tclconfig}/tclConfig.sh; then
+ . ${tclconfig}/tclConfig.sh
+ if test -r ${tclconfig}/../generic/tcl.h; then
+ TCL_INCLUDE=-I${tclconfig}/../generic
+ TCL_LIB="$TCL_BUILD_LIB_SPEC $TCL_LIBS"
+ else
+ TCL_INCLUDE=-I${TCL_PREFIX}/include
+ TCL_LIB="$TCL_LIB_SPEC $TCL_LIBS"
+ fi
+ SHLIB_CFLAGS=$TCL_SHLIB_CFLAGS
+ SHLIB_LD=$TCL_SHLIB_LD
+ SHLIB_SUFFIX=$TCL_SHLIB_SUFFIX
+ SHLIB_VERSION=$TCL_SHLIB_VERSION
+ AC_MSG_RESULT($TCL_VERSION)
+ AC_DEFINE(HAVE_TCL_H,1)
+else
+ AC_MSG_RESULT(Not found)
+ AC_DEFINE(HAVE_TCL_H,0)
+fi
+dnl
+dnl ------ times
+AC_CHECK_HEADERS(sys/times.h)
+dnl
+dnl ------- BZIP2
+AC_CHECK_LIB(bz2,bzCompressInit)
+if test "$ac_cv_lib_bz2_bzCompressInit" = "yes"; then
+ AC_CHECK_HEADERS(bzlib.h)
+fi
+dnl ------- 64 bit files
+AC_MSG_CHECKING(for large files)
+AC_TRY_RUN([#define _FILE_OFFSET_BITS 64
+#include <unistd.h>
+#include <string.h>
+#include <stdio.h>
+int main(int argc, char **argv)
+{
+ off_t o;
+ char tmp_str[32];
+ if (sizeof(off_t) == 8) {
+ o = 2000000000;
+ sprintf (tmp_str, "%Ld", o+o+o);
+ if (!strcmp (tmp_str, "6000000000"))
+ exit (0);
+ }
+ exit (1);
+}
+],bits=64,bits=32,bits=32)
+if test "$bits" = "64"; then
+ AC_DEFINE(_FILE_OFFSET_BITS,64)
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+fi
+dnl
+dnl ------ ANSI C Header files