])dnl
dnl
dnl ====================================================================
+dnl
+AC_DEFUN(AC_COMPILE_CHECK_SIZEOF,
+[changequote(<<, >>)dnl
+dnl The name to #define.
+define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
+dnl The cache variable name.
+define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
+changequote([, ])dnl
+AC_MSG_CHECKING(size of $1)
+AC_CACHE_VAL(AC_CV_NAME,
+[for ac_size in 4 8 1 2 16 $2 ; do # List sizes in rough order of prevalence.
+ AC_TRY_COMPILE([#include "confdefs.h"
+#include <sys/types.h>
+$2
+], [switch (0) case 0: case (sizeof ($1) == $ac_size):;], AC_CV_NAME=$ac_size)
+ if test x$AC_CV_NAME != x ; then break; fi
+done
+])
+if test x$AC_CV_NAME = x ; then
+ AC_MSG_ERROR([cannot determine a size for $1])
+fi
+AC_MSG_RESULT($AC_CV_NAME)
+AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1])
+undefine([AC_TYPE_NAME])dnl
+undefine([AC_CV_NAME])dnl
+])
+dnl ====================================================================
dnl check if hard links are supported.
dnl
AC_DEFUN([OL_PROG_LN_H], [# test for ln hardlink support
/* this check could be improved */
# ifdef DB_VERSION_MAJOR
# if DB_VERSION_MAJOR == 2
- __db_version_2
+ __db_version_2;
# endif
# endif
], ol_cv_header_db2=yes, ol_cv_header_db2=no)])
dnl defines ol_cv_lib_db2 to '-ldb' or 'no'
dnl
dnl uses:
-dnl AC_CHECK_LIB(db,db_open)
+dnl AC_CHECK_LIB(db,db_appexit)
dnl
AC_DEFUN([OL_LIB_BERKELEY_DB2],
[AC_CACHE_CHECK([for DB2 library], [ol_cv_lib_db2],
[ ol_LIBS="$LIBS"
- AC_CHECK_LIB(db,db_open,[ol_cv_lib_db2=-ldb],[ol_cv_lib_db2=no])
+ AC_CHECK_LIB(db,db_appexit,[ol_cv_lib_db2=-ldb],[ol_cv_lib_db2=no])
LIBS="$ol_LIBS"
])
])dnl
fi
])dnl
dnl
+dnl
+dnl --------------------------------------------------------------------
+dnl Check if Berkeley db2 supports DB_THREAD
+AC_DEFUN([OL_BERKELEY_DB2_DB_THREAD],
+[AC_CACHE_CHECK([for DB_THREAD support], [ol_cv_berkeley_db2_db_thread], [
+ ol_LIBS="$LIBS"
+ if test $ol_cv_lib_db2 != yes ; then
+ LIBS="$ol_cv_lib_db2"
+ fi
+
+ AC_TRY_RUN([
+#include <db.h>
+#ifndef NULL
+#define NULL ((void *)0)
+#endif
+main()
+{
+ int rc;
+ DB_ENV env;
+ u_int32_t flags = DB_CREATE | DB_THREAD;
+
+ memset( &env, '\0', sizeof(env) );
+
+ rc = db_appinit( NULL, NULL, &env, flags );
+
+ if( rc == 0 ) {
+ db_appexit( &env );
+ }
+
+ return rc;
+}],
+ [ol_cv_berkeley_db2_db_thread=yes],
+ [ol_cv_berkeley_db2_db_thread=no],
+ [ol_cv_berkeley_db2_db_thread=cross])
+
+ LIBS="$ol_LIBS"
+
+ if test $ol_cv_berkeley_db2_db_thread != no ; then
+ AC_DEFINE(HAVE_BERKELEY_DB2_DB_THREAD, 1,
+ [define if BerkeleyDB2 has DB_THREAD support])
+ fi
+])])dnl
dnl ====================================================================
dnl Check for db.h/db_185.h is Berkeley DB
dnl
# include <pthread.h>
/* this check could be improved */
# ifdef PTHREAD_ONCE_INIT
- pthread_version_final
+ pthread_version_final;
# endif
], ol_pthread_final=yes, ol_pthread_final=no)
# include <pthread.h>
/* this check could be improved */
# ifdef pthread_once_init
- pthread_version_draft4
+ pthread_version_draft4;
# endif
], ol_pthread_draft4=yes, ol_pthread_draft4=no)
[AC_EGREP_CPP(__gnu_pth__,
[#include <pthread.h>
#ifdef _POSIX_THREAD_IS_GNU_PTH
- __gnu_pth__
+ __gnu_pth__;
#endif
],
[ol_cv_header_gnu_pth_pthread_h=yes],
])
])dnl
dnl ====================================================================
+dnl Check for NT Threads
+AC_DEFUN([OL_NT_THREADS], [
+ AC_CACHE_CHECK([for NT Threads], [ol_cv_nt_threads], [
+ AC_CHECK_FUNC(_beginthread,
+ [ol_cv_nt_threads=yes],
+ [ol_cv_nt_threads=no])
+ ])
+
+ if test $ol_cv_nt_threads = yes ; then
+ AC_DEFINE(HAVE_NT_THREADS,1,[if you have NT Threads])
+ fi
+])
+dnl ====================================================================
dnl Check LinuxThreads Header
dnl
dnl defines ol_cv_header linux_threads to 'yes' or 'no'
AC_TRY_COMPILE([
#include <stdio.h>
#include <sys/types.h>
-#include <errno.h> ],
+#include <errno.h>
+#ifdef WINNT
+#include <stdlib.h>
+#endif ],
[char *c = (char *) *sys_errlist],
[ol_cv_dcl_sys_errlist=yes
ol_cv_have_sys_errlist=yes],
[AC_CACHE_CHECK(number of arguments of ctime_r, ol_cv_func_ctime_r_nargs,
[AC_TRY_COMPILE([#include <time.h>],
[time_t ti; char *buffer; ctime_r(&ti,buffer,32);],
- ol_cv_func_ctime_r_nargs=3,
- [AC_TRY_COMPILE([#include <time.h>],
- [time_t ti; char *buffer; ctime_r(&ti,buffer);],
- ol_cv_func_ctime_r_nargs=2,
- ol_cv_func_ctime_r_nargs=0)])])
+ ol_cv_func_ctime_r_nargs3=yes,
+ ol_cv_func_ctime_r_nargs3=no)
+
+ AC_TRY_COMPILE([#include <time.h>],
+ [time_t ti; char *buffer; ctime_r(&ti,buffer);],
+ ol_cv_func_ctime_r_nargs2=yes,
+ ol_cv_func_ctime_r_nargs2=no)
+
+ if test $ol_cv_func_ctime_r_nargs3 = yes -a \
+ $ol_cv_func_ctime_r_nargs2 = no ; then
+
+ ol_cv_func_ctime_r_nargs=3
+
+ elif test $ol_cv_func_ctime_r_nargs3 = no -a \
+ $ol_cv_func_ctime_r_nargs2 = yes ; then
+
+ ol_cv_func_ctime_r_nargs=2
+
+ else
+ ol_cv_func_ctime_r_nargs=0
+ fi
+ ])
+
if test $ol_cv_func_ctime_r_nargs -gt 1 ; then
- AC_DEFINE_UNQUOTED(CTIME_R_NARGS, $ol_cv_func_ctime_r_nargs,
+ AC_DEFINE_UNQUOTED(CTIME_R_NARGS, $ol_cv_func_ctime_r_nargs,
[set to the number of arguments ctime_r() expects])
fi
])dnl
int bufsize=BUFSIZE;int h_errno;
(void)gethostbyname_r("segovia.cs.purdue.edu", &hent,
buffer, bufsize, &h_errno);],
- ol_cv_func_gethostbyname_r_nargs=5,
- [AC_TRY_COMPILE([#include <sys/types.h>
+ ol_cv_func_gethostbyname_r_nargs5=yes,
+ ol_cv_func_gethostbyname_r_nargs5=no)
+
+ AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define BUFSIZE (sizeof(struct hostent)+10)],
- [struct hostent hent;struct hostent *rhent;
- char buffer[BUFSIZE];
- int bufsize=BUFSIZE;int h_errno;
- (void)gethostbyname_r("localhost", &hent, buffer, bufsize,
- &rhent, &h_errno);],
- ol_cv_func_gethostbyname_r_nargs=6,
- ol_cv_func_gethostbyname_r_nargs=0)])])
+ [struct hostent hent;struct hostent *rhent;
+ char buffer[BUFSIZE];
+ int bufsize=BUFSIZE;int h_errno;
+ (void)gethostbyname_r("localhost", &hent, buffer, bufsize,
+ &rhent, &h_errno);],
+ ol_cv_func_gethostbyname_r_nargs6=yes,
+ ol_cv_func_gethostbyname_r_nargs6=no)
+
+ if test $ol_cv_func_gethostbyname_r_nargs5 = yes -a \
+ $ol_cv_func_gethostbyname_r_nargs6 = no ; then
+
+ ol_cv_func_gethostbyname_r_nargs=5
+
+ elif test $ol_cv_func_gethostbyname_r_nargs5 = no -a \
+ $ol_cv_func_gethostbyname_r_nargs6 = yes ; then
+
+ ol_cv_func_gethostbyname_r_nargs=6
+
+ else
+ ol_cv_func_gethostbyname_r_nargs=0
+ fi
+ ])
if test $ol_cv_func_gethostbyname_r_nargs -gt 1 ; then
AC_DEFINE_UNQUOTED(GETHOSTBYNAME_R_NARGS,
$ol_cv_func_gethostbyname_r_nargs,
int bufsize=BUFSIZE;int h_errno;
(void)gethostbyaddr_r( (void *)&(add.s_addr),
alen, AF_INET, &hent, buffer, bufsize, &h_errno);],
- ol_cv_func_gethostbyaddr_r_nargs=7,
- [AC_TRY_COMPILE([#include <sys/types.h>
+ ol_cv_func_gethostbyaddr_r_nargs7=yes,
+ ol_cv_func_gethostbyaddr_r_nargs7=no)
+
+ AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define BUFSIZE (sizeof(struct hostent)+10)],
- [struct hostent hent;
- struct hostent *rhent; char buffer[BUFSIZE];
- struct in_addr add;
- size_t alen=sizeof(struct in_addr);
- int bufsize=BUFSIZE;int h_errno;
- (void)gethostbyaddr_r( (void *)&(add.s_addr),
- alen, AF_INET, &hent, buffer, bufsize,
- &rhent, &h_errno);],
- ol_cv_func_gethostbyaddr_r_nargs=8,
- ol_cv_func_gethostbyaddr_r_nargs=0)])])
+ [struct hostent hent;
+ struct hostent *rhent; char buffer[BUFSIZE];
+ struct in_addr add;
+ size_t alen=sizeof(struct in_addr);
+ int bufsize=BUFSIZE;int h_errno;
+ (void)gethostbyaddr_r( (void *)&(add.s_addr),
+ alen, AF_INET, &hent, buffer, bufsize,
+ &rhent, &h_errno);],
+ ol_cv_func_gethostbyaddr_r_nargs8=yes,
+ ol_cv_func_gethostbyaddr_r_nargs8=no)
+
+ if test $ol_cv_func_gethostbyaddr_r_nargs7 = yes -a \
+ $ol_cv_func_gethostbyaddr_r_nargs8 = no ; then
+
+ ol_cv_func_gethostbyaddr_r_nargs=7
+
+ elif test $ol_cv_func_gethostbyaddr_r_nargs7 = no -a \
+ $ol_cv_func_gethostbyaddr_r_nargs8 = yes ; then
+
+ ol_cv_func_gethostbyaddr_r_nargs=8
+
+ else
+ ol_cv_func_gethostbyaddr_r_nargs=0
+ fi
+ ])
if test $ol_cv_func_gethostbyaddr_r_nargs -gt 1 ; then
AC_DEFINE_UNQUOTED(GETHOSTBYADDR_R_NARGS,
$ol_cv_func_gethostbyaddr_r_nargs,