* openbsd doesn't like pam. so... if we don't have the calls don't use 'em
[citadel.git] / citadel / configure.ac
index 3dd88c4d9b4e4ae735e0d99e89bd9c9de4aec9dc..cb7ed9be863357c5004bf0ca36e52cfcdede4b57 100644 (file)
@@ -1,7 +1,7 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl $Id$
 AC_PREREQ(2.52)
-AC_INIT([Citadel], [7.11], [http://www.citadel.org/])
+AC_INIT([Citadel], [7.24], [http://www.citadel.org/])
 AC_REVISION([$Revision: 5108 $])
 AC_CONFIG_SRCDIR([citserver.c])
 AC_PREFIX_DEFAULT(/usr/local/citadel)
@@ -153,6 +153,8 @@ AC_ARG_WITH(with_zlib, [  --with-zlib             use zlib compression if presen
 AC_ARG_WITH(with_ldap, [  --with-ldap             use OpenLDAP client library])
 AC_ARG_WITH(with_libical, [  --with-libical          use libical calendaring library])
 AC_ARG_WITH(with_libsieve, [  --with-libsieve         use libsieve mail sorting library])
+AC_ARG_WITH(with_libdspam, [  --with-libdspam         use libdspam mail spam scanning library])
+AC_ARG_WITH(with_expat, [  --with-expat            use Expat XML parser])
 
 if test "x$with_db" != xno -a "x$with_db" != xyes -a "$with_db"; then
        db_dir="$with_db"
@@ -276,8 +278,7 @@ if test "x$enable_pie" = xyes; then
        fi
 fi
 
-echo $CC snaothus---------------------
-AC_MSG_CHECKING([how to compile with POSIX threads])
+AC_MSG_CHECKING([how to create dependancy checks])
                 if test -n "`$CC -V 2>&1 |grep Sun`"; then 
                        DEPEND_FLAG=-xM;
                 else 
@@ -285,6 +286,7 @@ AC_MSG_CHECKING([how to compile with POSIX threads])
                 fi
 AC_SUBST(DEPEND_FLAG)
 
+
 AC_PROG_INSTALL
 AC_PROG_YACC
 missing_dir=`cd $ac_aux_dir && pwd`
@@ -298,6 +300,7 @@ AC_CHECK_SIZEOF(char, 0)
 AC_CHECK_SIZEOF(short, 0)
 AC_CHECK_SIZEOF(int, 0)
 AC_CHECK_SIZEOF(long, 0)
+AC_CHECK_SIZEOF(size_t, 0)
 dnl AC_CHECK_SIZEOF(long long, 0)
 
 dnl Checks for libraries.
@@ -305,7 +308,7 @@ dnl Checks for libraries.
 dnl We want to test for the following in libc before checking for their
 dnl respective libraries, because some systems (like Irix) have both, and the
 dnl non-libc versions may be broken.
-AC_CHECK_FUNCS(crypt gethostbyname connect flock)
+AC_CHECK_FUNCS(crypt gethostbyname connect flock getpwnam_r getpwuid_r)
 
 
 dnl disable backtrace if we don't want it.
@@ -331,6 +334,15 @@ AC_ARG_WITH(gprof,
                        ]
 )
 
+dnl disable thread table reporting
+AC_ARG_WITH(threadlog,
+               [ --with-threadlog      enable logging of thread table],
+                       [ if test "x$withval" != "xno" ; then
+                               AC_DEFINE(WITH_THREADLOG, [], [Define if you want logging of the thread tables.])
+                         fi
+                       ]
+)
+
 
 if test "$ac_cv_func_gethostbyname" = no; then
        AC_CHECK_LIB(nsl, gethostbyname)
@@ -370,7 +382,12 @@ dnl (Linux shadow passwords)
        fi
 
 test -f /usr/local/lib/libresolv.a && LDFLAGS="$LDFLAGS -L/usr/local/lib"
-AC_CHECK_LIB(resolv, res_query, RESOLV="$RESOLV -lresolv")
+AC_CHECK_LIB(resolv, res_query,
+       RESOLV="$RESOLV -lresolv",
+       [
+               AC_MSG_ERROR(libresolv was not found.  Citadel requires the resolver library.)
+       ]
+)
 
 if test "x$with_ncurses" != "xno"; then
        AC_SEARCH_LIBS(tgetent, [ncurses curses termcap])
@@ -391,6 +408,26 @@ fi
 
 test -d /usr/kerberos/include && CPPFLAGS="$CPPFLAGS -I/usr/kerberos/include"
 
+
+dnl Check for libcitadel
+AC_CHECK_HEADER(libcitadel.h,
+       [AC_CHECK_LIB(citadel, libcitadel_version_string,
+               [
+                       AC_MSG_RESULT(OK)
+                       LIBS="-lcitadel $LIBS"
+               ],
+               [
+                       AC_MSG_ERROR(libcitadel was not found or is not usable.  Please install libcitadel.)
+               ]
+       ,
+       )],
+       [
+               AC_MSG_ERROR(libcitadel.h was not found or is not usable.  Please install libcitadel.)
+       ]
+)
+
+
+
 # The big search for OpenSSL
 if test "$with_ssl" != "no"; then
        saved_LIBS="$LIBS"
@@ -574,6 +611,36 @@ if test "x$ok_libsieve" = xyes ; then
 fi
 
 
+dnl Checks for the libdspam mail spam scanning library.
+if test "x$with_libdspam" != xno ; then
+       AC_CHECK_HEADERS(dspam/libdspam.h,
+               [AC_CHECK_LIB(dspam, dspam_init,
+                       [ok_libdspam=yes],,
+       )])
+fi
+
+if test "x$ok_libdspam" = xyes ; then
+       SERVER_LIBS="-ldspam $SERVER_LIBS"
+       AC_DEFINE(HAVE_LIBDSPAM, [], [define this if you have the libdspam mail spam scanning library available])
+fi
+
+
+
+
+dnl Checks for the Expat XML parser.
+if test "x$with_expat" != xno ; then
+       AC_CHECK_HEADERS(expat.h,
+               [AC_CHECK_LIB(expat, XML_ParserCreateNS,
+                       [ok_expat=yes],,
+       )])
+fi
+
+if test "x$ok_expat" = xyes ; then
+       SERVER_LIBS="-lexpat $SERVER_LIBS"
+       AC_DEFINE(HAVE_EXPAT, [], [define this if you have the Expat XML parser available])
+fi
+
+
 
 
 dnl Checks for the libical calendaring library.
@@ -829,6 +896,8 @@ echo 'zlib compression:                ' $ok_zlib
 echo 'Calendar support:                ' $ok_libical
 echo 'LDAP support:                    ' $ok_ldap
 echo 'Sieve mailbox filtering support: ' $ok_libsieve
+echo 'DSpam Scanning support:          ' $ok_libdspam
+echo 'Expat XML parser present:        ' $ok_expat
 echo 
 echo 'Note: if you are not using Linux, make sure you are using GNU make'
 echo '(gmake) to compile Citadel.'