HUGE PATCH. This moves all of mime_parser.c and all
[citadel.git] / citadel / configure.ac
index 90b0b5e9e501896c0e55a71215d083c462e94c58..74e707208efad53ded8cc3b96064d192e6dcd1de 100644 (file)
@@ -1,44 +1,96 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl $Id$
 AC_PREREQ(2.52)
-AC_INIT([Citadel], [6.15], [http://uncensored.citadel.org/])
-AC_REVISION([$Revision$])
+AC_INIT([Citadel], [7.24], [http://www.citadel.org/])
+AC_REVISION([$Revision: 5108 $])
 AC_CONFIG_SRCDIR([citserver.c])
 AC_PREFIX_DEFAULT(/usr/local/citadel)
 if test "$prefix" = NONE; then
-       AC_DEFINE_UNQUOTED(CTDLDIR, "$ac_default_prefix")
+       AC_DEFINE_UNQUOTED(CTDLDIR, "$ac_default_prefix", [define this to the Citadel home directory])
+       ssl_dir="$ac_default_prefix/keys"
 else
-       AC_DEFINE_UNQUOTED(CTDLDIR, "$prefix")
+       AC_DEFINE_UNQUOTED(CTDLDIR, "$prefix", [define this to the Citadel home directory])
+       ssl_dir="$prefix/keys"
 fi
 
+
+dnl Make sure we see all GNU and Solaris extensions.
+AC_GNU_SOURCE
+
+
 dnl Checks for the Datadir
 AC_ARG_WITH(datadir, 
                    [  --with-datadir          directory to store the databases under],
                        [ if test "x$withval" != "xno" ; then
-                                             AC_DEFINE(HAVE_DATA_DIR)
-                                                 AC_DEFINE_UNQUOTED(DATA_DIR, "$withval")
+                                             AC_DEFINE(HAVE_DATA_DIR,[],[use alternate database location?])
+                                             AC_DEFINE_UNQUOTED(DATA_DIR, "$withval",[define, if the user suplied a data-directory to use.])
+                                             MAKE_DATA_DIR=$withval
+                                             AC_SUBST(MAKE_DATA_DIR)
                          fi
                        ]
 )
 
+dnl Checks for the Datadir
+AC_ARG_WITH(staticdatadir, 
+                   [  --with-staticdatadir    directory to store citadels system messages under],
+                       [ if test "x$withval" != "xno" ; then
+                                                 AC_DEFINE(HAVE_STATICDATA_DIR, [], [should we activate an alternate static text location?])
+                                                 AC_DEFINE_UNQUOTED(STATICDATA_DIR, "$withval", [where do we put our static text data?])
+                                                 MAKE_STATICDATA_DIR=$withval
+                                                 AC_SUBST(MAKE_STATICDATA_DIR)
+                         fi
+                       ]
+)
+
+
+dnl Checks for the SSLdir
+dnl this is a bit different than the rest, 
+dnl because of the citadel used to have a keys/ subdir.
+AC_ARG_WITH(ssldir, 
+                   [  --with-ssldir          directory to store the ssl certificates under],
+                       [ if test "x$withval" != "xno" ; then
+                                             
+                                                 ssl_dir="$withval"
+                         fi
+                       AC_SUBST(MAKE_SSL_DIR)
+                       ]
+)
+AC_DEFINE_UNQUOTED(SSL_DIR, "$ssl_dir", [were should we put our keys?])
+
+
 dnl Checks for the spooldir
 AC_ARG_WITH(spooldir, 
                        [  --with-spooldir         directory to keep queues under],
                        [ if test "x$withval" != "xno" ; then
-                                           AC_DEFINE(HAVE_SPOOL_DIR)
-                                               AC_DEFINE_UNQUOTED(SPOOL_DIR,"$withval")
+                                               AC_DEFINE(HAVE_SPOOL_DIR, [], [enable alternate spool dir?])
+                                               AC_DEFINE_UNQUOTED(SPOOL_DIR,"$withval", [where do we place our spool dirs?])
+                                               MAKE_SPOOL_DIR=$withval
+                                               AC_SUBST(MAKE_SPOOL_DIR)
                           fi
                        ]
 )
 
 
-
 dnl Checks for the Configdir
 AC_ARG_WITH(sysconfdir, 
                        [  --with-sysconfdir       directory to store the configs under],
                        [ if test "x$withval" != "xno" ; then
-                                           AC_DEFINE(HAVE_ETC_DIR)
-                                               AC_DEFINE_UNQUOTED(ETC_DIR, "$withval")
+                                           AC_DEFINE(HAVE_ETC_DIR, [], [should we search our system config in an alternate place?])
+                                               AC_DEFINE_UNQUOTED(ETC_DIR, "$withval", [where to search our config files])
+                                               MAKE_ETC_DIR=$withval
+                                               AC_SUBST(MAKE_ETC_DIR)
+                         fi
+                       ]
+)
+
+dnl Checks for where to put our utilities
+AC_ARG_WITH(utility-bindir, 
+                       [  --with-utility-bindir       directory where to find helper binaries],
+                       [ if test "x$withval" != "xno" ; then
+                                           AC_DEFINE(HAVE_UTILBIN_DIR,[],[should we put our helper binaries to another location?])
+                                               AC_DEFINE_UNQUOTED(UTILBIN_DIR, "$withval", [were to put our helper programs])
+                                               MAKE_UTILBIN_DIR=$withval
+                                               AC_SUBST(MAKE_UTILBIN_DIR)
                          fi
                        ]
 )
@@ -46,30 +98,38 @@ AC_ARG_WITH(sysconfdir,
 
 dnl Checks for the run-dir for the sockets
 AC_ARG_WITH(rundir, 
-                       [  --with-rundir       directory to store the configs under],
+                       [  --with-rundir           directory to place runtime files (UDS) to?],
                        [ if test "x$withval" != "xno" ; then
-                                           AC_DEFINE(HAVE_RUN_DIR)
-                                               AC_DEFINE_UNQUOTED(RUN_DIR, "$withval")
+                                           AC_DEFINE(HAVE_RUN_DIR, [], [should we put our non volatile files elsewhere?])
+                                               AC_DEFINE_UNQUOTED(RUN_DIR, "$withval", [define, where the config should go in unix style])
+                                               MAKE_RUN_DIR=$withval
+                                               AC_SUBST(MAKE_RUN_DIR)
                          fi
                        ]
 )
 
 
 dnl Checks for the Pseudo Random Generator sockets TODO: this keeps being default.
-AC_DEFINE_UNQUOTED(EGD_POOL, "/var/run/egd-pool")
+AC_DEFINE_UNQUOTED(EGD_POOL, "/var/run/egd-pool", [place to keep our pseudo random generator file])
 AC_ARG_WITH(egdpool, 
-                       [  --with-egdpool       the socket from Pseudo Random Generator, defaults to /var/run/egd-pool],
+                       [  --with-egdpool          the socket from Pseudo Random Generator, defaults to /var/run/egd-pool],
                        [ if test "x$withval" != "xno" ; then
-                                               AC_DEFINE_UNQUOTED(EGD_POOL, "$withval")
+                                               AC_DEFINE_UNQUOTED(EGD_POOL, "$withval", [the socket from Pseudo Random Generator])
                          fi
                        ]
 )
 
 
+AC_ARG_WITH(docdir,
+                       [  --with-docdir           where to install the documentation. default: /usr/local/citadel/],
+                       [ if test "x$withval" != "xno" ; then
+                                       MAKE_DOC_DIR=$withval
+                                       AC_SUBST(MAKE_DOC_DIR)
+                         fi
+                       ]
+)
 
 
-AC_ARG_ENABLE(autologin, [  --disable-autologin     disable autologin (default is enabled if possible)])
-AC_ARG_ENABLE(chkpwd, [  --disable-chkpwd        don't build 'chkpwd'])
 
 AC_ARG_ENABLE(threaded-client, [  --disable-threaded-client
                          disable multithreaded client])
@@ -92,7 +152,8 @@ AC_ARG_WITH(ncurses, [  --without-ncurses       don't use ncurses])
 AC_ARG_WITH(with_zlib, [  --with-zlib             use zlib compression if present])
 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_newt, [  --with-newt             use newt window library])
+AC_ARG_WITH(with_libsieve, [  --with-libsieve         use libsieve mail sorting 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"
@@ -105,6 +166,8 @@ else
        test -d /usr/local/BerkeleyDB.4.1 && db_dir=/usr/local/BerkeleyDB.4.1
        test -d /usr/local/BerkeleyDB.4.2 && db_dir=/usr/local/BerkeleyDB.4.2
        test -d /usr/local/BerkeleyDB.4.3 && db_dir=/usr/local/BerkeleyDB.4.3
+       test -d /usr/local/BerkeleyDB.4.4 && db_dir=/usr/local/BerkeleyDB.4.4
+       test -d /usr/local/BerkeleyDB.4.5 && db_dir=/usr/local/BerkeleyDB.4.5
 fi
 
 dnl By default, we only build the client (citadel and whobbs) unless we can
@@ -120,16 +183,19 @@ case "$host" in
        dnl Also has stupid non-reentrant gethostbyaddr() and friends.
        *-*-bsdi[123]*)
                test -z "$CC" -a -x /usr/bin/shlicc2 && CC=shlicc2
-               AC_DEFINE(HAVE_NONREENTRANT_NETDB)
+               AC_DEFINE(HAVE_NONREENTRANT_NETDB,[], [define this if the OS has broken non-reentrant gethostby{name,addr}() ])
                AC_MSG_RESULT([Old BSDI])
        ;;
        *-*-bsdi*)
-               AC_DEFINE(HAVE_NONREENTRANT_NETDB)
+               AC_DEFINE(HAVE_NONREENTRANT_NETDB, [], [define this if the OS has broken non-reentrant gethostby{name,addr}() ])
                AC_MSG_RESULT([BSD/OS])
        ;;
        dnl Curses support on Mac OS X is kind of screwed at the moment.
+       dnl TCP buffering isn't ideal under OS X. This define should also be
+       dnl checked in other cases of OS X-Linux differences.
        *-*-darwin*)
-               AC_DEFINE(DISABLE_CURSES)
+               AC_DEFINE(DISABLE_CURSES,[],[define this to disable use of curses])
+               AC_DEFINE(HAVE_DARWIN, [], [define if using OS X/Darwin])
                AC_MSG_RESULT([Mac OS X])
        ;;
        dnl Digital Unix has an odd way to build for pthreads, and we can't
@@ -179,6 +245,8 @@ dnl DEFS="$DEFS $PTHREAD_DEFS"
 dnl Checks for programs.
 AC_PROG_CC
 
+
+
 dnl Set up system-dependent compiler flags.
 if test "$GCC" = yes; then
        if test "$CC" = icc; then
@@ -209,6 +277,15 @@ if test "x$enable_pie" = xyes; then
        fi
 fi
 
+AC_MSG_CHECKING([how to create dependancy checks])
+                if test -n "`$CC -V 2>&1 |grep Sun`"; then 
+                       DEPEND_FLAG=-xM;
+                else 
+                       DEPEND_FLAG=-M
+                fi
+AC_SUBST(DEPEND_FLAG)
+
+
 AC_PROG_INSTALL
 AC_PROG_YACC
 missing_dir=`cd $ac_aux_dir && pwd`
@@ -222,6 +299,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.
@@ -229,7 +307,32 @@ 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)
+AC_CHECK_FUNCS(crypt gethostbyname connect flock)
+
+
+dnl disable backtrace if we don't want it.
+AC_ARG_WITH(backtrace, 
+                   [  --with-backtrace          enable backtrace dumps in the syslog],
+                       [ if test "x$withval" != "xno" ; then
+                            CFLAGS="$CFLAGS  -rdynamic "
+                            LDFLAGS="$LDFLAGS  -rdynamic "
+                            SERVER_LDFLAGS="$SERVER_LDFLAGS  -rdynamic "
+                             AC_CHECK_FUNCS(backtrace)
+                         fi
+                       ]
+)
+
+dnl disable backtrace if we don't want it.
+AC_ARG_WITH(gprof, 
+                   [  --with-gprof          enable profiling],
+                       [ if test "x$withval" != "xno" ; then
+                            CFLAGS="$CFLAGS  -pg "
+                            LDFLAGS="$LDFLAGS  -pg "
+                            SERVER_LDFLAGS="$SERVER_LDFLAGS  -pg "
+                         fi
+                       ]
+)
+
 
 if test "$ac_cv_func_gethostbyname" = no; then
        AC_CHECK_LIB(nsl, gethostbyname)
@@ -242,10 +345,10 @@ fi
 dnl Check for Solaris realtime support
 AC_CHECK_LIB(rt, sched_yield)
 
-dnl Determine the system's authentication capabilities, if autologin is
-dnl requested. We currently support PAM, standard getpwnam(), and getspnam()
+dnl Determine the system's authentication capabilities.
+dnl We currently support PAM, standard getpwnam(), and getspnam()
 dnl (Linux shadow passwords)
-if test "$enable_autologin" != no; then
+
        if test "$with_pam" = yes; then
                save_LIBS=$LIBS
                AC_CHECK_LIB(pam, pam_start, [chkpwd_LIBS="-lpam $chkpwd_LIBS"
@@ -267,16 +370,6 @@ if test "$enable_autologin" != no; then
                                        LIBS="-lcrypt $LIBS"])
                fi
        fi
-       if test "$ac_cv_func_crypt" = yes -o "$ac_cv_lib_crypt_crypt" = yes -o "$ac_cv_func_pam_start" = yes; then
-               AC_DEFINE(ENABLE_AUTOLOGIN)
-               if test "$enable_chkpwd" != no; then
-                       AC_DEFINE(ENABLE_CHKPWD)
-                       CHKPWD=chkpwd
-               else
-                       AUTH=auth.lo
-               fi
-       fi
-fi
 
 test -f /usr/local/lib/libresolv.a && LDFLAGS="$LDFLAGS -L/usr/local/lib"
 AC_CHECK_LIB(resolv, res_query, RESOLV="$RESOLV -lresolv")
@@ -300,6 +393,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"
@@ -381,7 +494,7 @@ if test "$with_ssl" != "no"; then
        CFLAGS="$saved_CFLAGS"
        
        if test "x$ac_cv_openssldir" != "xno" ; then
-               AC_DEFINE(HAVE_OPENSSL)
+               AC_DEFINE(HAVE_OPENSSL, [], [Define if you have OpenSSL.])
                LIBS="-lssl -lcrypto $LIBS"
                dnl Need to recover ssldir - test above runs in subshell
                ssldir=$ac_cv_openssldir
@@ -446,7 +559,7 @@ fi
 
 if test "x$ok_zlib" = xyes ; then
        SERVER_LIBS="-lz $SERVER_LIBS"
-       AC_DEFINE(HAVE_ZLIB)
+       AC_DEFINE(HAVE_ZLIB, [], [define this if you have zlib compression available])
 fi
 
 
@@ -462,28 +575,43 @@ fi
 
 if test "x$ok_ldap" = xyes ; then
        SERVER_LIBS="-lldap $SERVER_LIBS"
-       AC_DEFINE(HAVE_LDAP)
+       AC_DEFINE(HAVE_LDAP, [], [define this if you have OpenLDAP client available])
 fi
 
 
 
 
-dnl Checks for the newt window library.
-if test "x$with_newt" != xno ; then
-       AC_CHECK_HEADERS(newt.h,
-               [AC_CHECK_LIB(newt, newtInit,
-                       [ok_newt=yes],,
+
+dnl Checks for the libsieve mailbox sorting library.
+if test "x$with_libsieve" != xno ; then
+       AC_CHECK_HEADERS(sieve2.h,
+               [AC_CHECK_LIB(sieve, sieve2_license,
+                       [ok_libsieve=yes],,
        )])
 fi
 
-if test "x$ok_newt" = xyes ; then
-       SETUP_LIBS="-lnewt $SETUP_LIBS"
-       AC_DEFINE(HAVE_NEWT)
+if test "x$ok_libsieve" = xyes ; then
+       SERVER_LIBS="-lsieve $SERVER_LIBS"
+       AC_DEFINE(HAVE_LIBSIEVE, [], [define this if you have the libsieve mailbox filtering 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.
@@ -515,7 +643,7 @@ main() {
                ], 
                [
                        SERVER_LIBS="-lical $SERVER_LIBS"
-                       AC_DEFINE(HAVE_LIBICAL)
+                       AC_DEFINE(HAVE_LIBICAL, [], [define this if you have the libical calendaring library available])
                ]
        )
 fi
@@ -532,7 +660,7 @@ dnl
 dnl TODO: for the DB header checks, we should check whether the headers
 dnl define db_env_create, somehow
 dnl
-AC_CHECK_HEADERS(curses.h dl.h fcntl.h limits.h malloc.h termios.h sys/ioctl.h sys/select.h sys/time.h sys/prctl.h syslog.h unistd.h utmp.h utmpx.h paths.h db.h db4/db.h pthread.h netinet/in.h arpa/nameser.h arpa/nameser_compat.h)
+AC_CHECK_HEADERS(curses.h dl.h fcntl.h limits.h malloc.h termios.h sys/ioctl.h sys/select.h sys/stat.h sys/time.h sys/prctl.h syslog.h unistd.h utmp.h utmpx.h paths.h db.h db4/db.h pthread.h netinet/in.h arpa/nameser.h arpa/nameser_compat.h)
 
 dnl
 dnl need to check if this is actually compilable, sometimes there are
@@ -542,7 +670,7 @@ if test "x$with_ncurses" != xno; then
        AC_CHECK_HEADERS(ncurses.h,,,[ ])
 fi
 
-AC_CHECK_HEADER(resolv.h,AC_DEFINE(HAVE_RESOLV_H),,
+AC_CHECK_HEADER(resolv.h,AC_DEFINE(HAVE_RESOLV_H, [], [define this if you have the resolv.h header file.]),,
 [#ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
 #endif
@@ -568,15 +696,65 @@ AC_CACHE_CHECK([for ut_type in struct utmp], ac_cv_struct_ut_type,
 #include <utmp.h>], [struct utmp ut; ut.ut_type;],
 ac_cv_struct_ut_type=yes, ac_cv_struct_ut_type=no)])
 if test $ac_cv_struct_ut_type = yes; then
-       AC_DEFINE(HAVE_UT_TYPE)
+       AC_DEFINE(HAVE_UT_TYPE, [], [define this if struct utmp has an ut_type member])
+fi
+
+AC_CACHE_CHECK(
+       [for call semantics from getpwuid_r], 
+       ac_cv_call_getpwuid_r,
+       [AC_TRY_COMPILE([#include <sys/types.h>
+#include <pwd.h>], 
+                         [
+                               struct passwd pw, *pwp;
+                               char pwbuf[64];
+                               uid_t uid;
+
+                               getpwuid_r(uid, &pw, pwbuf, sizeof(pwbuf), &pwp);
+                       ],
+                       ac_cv_call_getpwuid_r=yes, 
+                       ac_cv_call_getpwuid_r=no)
+       ])
+
+if test $ac_cv_call_getpwuid_r = no; then
+       AC_DEFINE(SOLARIS_GETPWUID,[],[do we need to use solaris call syntax?])
+       AC_DEFINE(F_UID_T, "%ld", [whats the matching format string for uid_t?])
+       AC_DEFINE(F_PID_T, "%ld",  [whats the matching format string for pid_t?])
+       AC_DEFINE(F_XPID_T, "%lx",  [whats the matching format string for xpid_t?])
+else
+       AC_DEFINE(F_UID_T, "%d",  [whats the matching format string for uid_t?])
+       AC_DEFINE(F_PID_T, "%d",  [whats the matching format string for pid_t?])
+       AC_DEFINE(F_XPID_T, "%x",  [whats the matching format string for xpid_t?])
 fi
 
+dnl AC_CHECK_FUNCS(res_query)
+AC_CACHE_CHECK([for the resolver calls], 
+              ac_cv_resquery_ok, 
+[AC_TRY_COMPILE([#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>], 
+               [
+                       char *domain="www.google.com";
+                       u_char *answer;
+                       int len;
+                       len = res_query( domain, C_IN, T_A, answer, PACKETSZ );
+               ],
+                ac_cv_resquery_ok=yes,
+               ac_cv_resquery_ok=no)
+])
+echo "resquery: $ac_cv_resquery_ok"
+
+dnl if test "$ac_cv_resquery_ok" = "no" ; then
+dnl    AC_DEFINE(RES_QUERY_GONE, "#error resquery not here. can't continue.")
+dnl fi
+
+
+
 AC_CACHE_CHECK([for ut_host in struct utmp], ac_cv_struct_ut_host,
 [AC_TRY_COMPILE([#include <sys/types.h>
 #include <utmp.h>], [struct utmp ut; ut.ut_host;],
 ac_cv_struct_ut_host=yes, ac_cv_struct_ut_host=no)])
 if test $ac_cv_struct_ut_host = yes; then
-       AC_DEFINE(HAVE_UT_HOST)
+       AC_DEFINE(HAVE_UT_HOST, [], [define this if struct utmp has an ut_host member])
 fi
 
 dnl Checks for library functions.
@@ -605,7 +783,7 @@ AC_CACHE_CHECK([for pthread_cancel], ac_cv_func_pthread_cancel,
 #endif],
 ac_cv_func_pthread_cancel=yes, ac_cv_func_pthread_cancel=no)])
 if test "$ac_cv_func_pthread_cancel" = yes; then
-       AC_DEFINE(HAVE_PTHREAD_CANCEL)
+       AC_DEFINE(HAVE_PTHREAD_CANCEL, [], [define this if you have the pthread_cancel() function])
 fi
 
 AC_CACHE_CHECK([for pthread_create], ac_cv_func_pthread_create,
@@ -622,35 +800,38 @@ ac_cv_func_pthread_create=yes, ac_cv_func_pthread_create=no)])
 if test "$ac_cv_func_pthread_create" = yes; then
        test "$DATABASE" && TARGETS="client server utils"
        if test "x$enable_threaded_client" != xno; then
-               AC_DEFINE(THREADED_CLIENT)
+               AC_DEFINE(THREADED_CLIENT, [], [define this if you want to enable the multithreaded client])
        fi
 fi
 
 AC_REPLACE_FUNCS(snprintf getutline)
 
-# AC_CACHE_CHECK([the weather], ac_cv_weather, [
-#      sleep 1
-#      echo $ECHO_N "opening your window... $ECHO_C" >&6
-#      sleep 2
-#      month=`date | cut -f 2 -d ' '`
-#      case $month in
-#      Dec | Jan | Feb)
-#              ac_cv_weather="it's cold!"
-#              ;;
-#      Mar | Apr)
-#              ac_cv_weather="it's wet!"
-#              ;;
-#      Jul | Aug)
-#              ac_cv_weather="it's hot!"
-#              ;;
-#      Oct | Nov)
-#              ac_cv_weather="it's cool"
-#              ;;
-#      May | Jun | Sep | *)
-#              ac_cv_weather="it's fine"
-#              ;;
-#      esac
-#      ])
+AC_CACHE_CHECK([the weather], ac_cv_weather, [
+       sleep 1
+       echo $ECHO_N "opening your window... $ECHO_C" >&6
+       sleep 2
+       month=`date | cut -f 2 -d ' '`
+       case $month in
+       Dec | Jan | Feb)
+               ac_cv_weather="it's cold!"
+               ;;
+       Mar | Apr)
+               ac_cv_weather="it's wet!"
+               ;;
+       Jul | Aug)
+               ac_cv_weather="it's hot!"
+               ;;
+       Oct | Nov)
+               ac_cv_weather="it's cool"
+               ;;
+       May | Jun | Sep | *)
+               ac_cv_weather="it's fine"
+               ;;
+       esac
+       ])
+
+
+
 
 AC_CACHE_CHECK([under the bed], ac_cv_under_the_bed, [
        number=`date | cut -c 19`
@@ -666,7 +847,6 @@ AC_CACHE_CHECK([under the bed], ac_cv_under_the_bed, [
 
 dnl Done! Now write the Makefile and sysdep.h
 AC_SUBST(AUTH)
-AC_SUBST(CHKPWD)
 AC_SUBST(RESOLV)
 AC_SUBST(chkpwd_LIBS)
 AC_SUBST(TARGETS)
@@ -676,15 +856,19 @@ AC_SUBST(SERVER_LIBS)
 AC_SUBST(SETUP_LIBS)
 AC_CONFIG_HEADER(sysdep.h)
 AC_CONFIG_FILES([Makefile])
-AC_OUTPUT
+AC_OUTPUT(database_cleanup.sh)
 
 if test -z "$DATABASE"; then
        AC_MSG_WARN([No database driver was found. Please install Berkeley DB.])
 fi
 
-echo ...
-echo ...
-echo "... On many operating systems, you must use GNU make (gmake) to compile"
-echo ... Citadel.
-echo ...
-echo ...
+echo ------------------------------------------------------------------------
+echo 'zlib compression:                ' $ok_zlib
+echo 'Calendar support:                ' $ok_libical
+echo 'LDAP support:                    ' $ok_ldap
+echo 'Sieve mailbox filtering support: ' $ok_libsieve
+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.'
+echo