X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fconfigure.ac;h=aff40386de8a1d9a66d750d93089c5baff5a104a;hb=b2971ed49d2cfe5128190ec1d5d8c0fa239f0004;hp=d32210b540e988f7b141162fa28da073c09e9613;hpb=64b4432d2cf2d6a2ae0a50d1d06b2e31bc9f0a5a;p=citadel.git diff --git a/citadel/configure.ac b/citadel/configure.ac index d32210b54..aff40386d 100644 --- a/citadel/configure.ac +++ b/citadel/configure.ac @@ -1,28 +1,146 @@ dnl Process this file with autoconf to produce a configure script. dnl $Id$ AC_PREREQ(2.52) -AC_INIT([Citadel/UX], [6.02], [http://uncensored.citadel.org/]) -AC_REVISION([$Revision$]) +AC_INIT([Citadel], [7.11], [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(BBSDIR, "$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(BBSDIR, "$prefix") + AC_DEFINE_UNQUOTED(CTDLDIR, "$prefix", [define this to the Citadel home directory]) + ssl_dir="$prefix/keys" fi -AC_ARG_ENABLE(autologin, [ --disable-autologin disable autologin (default is enabled if possible)]) -AC_ARG_ENABLE(chkpwd, [ --disable-chkpwd don't build 'chkpwd']) + +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,[],[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, [], [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, [], [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 + ] +) + + +dnl Checks for the run-dir for the sockets +AC_ARG_WITH(rundir, + [ --with-rundir directory to place runtime files (UDS) to?], + [ if test "x$withval" != "xno" ; then + 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", [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], + [ if test "x$withval" != "xno" ; then + 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(threaded-client, [ --disable-threaded-client disable multithreaded client]) +AC_ARG_ENABLE(pie, [ --enable-pie build position-independent executables]) + AC_ARG_WITH(pam, [ --with-pam use PAM if present (see PAM.txt before you try this)]) AC_ARG_WITH(kthread, [ --with-kthread use kernel threads (on FreeBSD) (not recommended yet)]) -AC_ARG_WITH(gdbm, [ --with-gdbm@<:@=DIR@:>@ use GDBM @<:@DIR=/usr/local@:>@]) AC_ARG_WITH(db, [ --with-db@<:@=DIR@:>@ use Sleepycat DB 3.x @<:@DIR=/usr/local/BerkeleyDB.3.@<:@123@:>@@:>@]) AC_ARG_WITH(ssl, - [ --with-ssl=PATH Specify path to OpenSSL installation ], + [ --with-ssl=PATH Specify path to OpenSSL installation ], [ if test "x$withval" != "xno" ; then tryssldir=$withval @@ -32,12 +150,9 @@ AC_ARG_WITH(ssl, 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]) - -if test "x$with_gdbm" != xno -a "x$with_gdbm" != xyes -a "$with_gdbm"; then - db_dir="$with_gdbm" - with_gdbm=yes -fi +AC_ARG_WITH(with_libsieve, [ --with-libsieve use libsieve mail sorting library]) if test "x$with_db" != xno -a "x$with_db" != xyes -a "$with_db"; then db_dir="$with_db" @@ -45,16 +160,11 @@ if test "x$with_db" != xno -a "x$with_db" != xyes -a "$with_db"; then else test -f /usr/local/lib/libdb.a -o -f /usr/local/lib/libdb.so \ -o -f /usr/local/lib/libdb4.a -o -f /usr/local/lib/libdb4.so \ - -o -f /usr/local/lib/libdb3.a -o -f /usr/local/lib/libdb3.so && db_dir=/usr/local - - test -d /usr/local/BerkeleyDB.3.1 && db_dir=/usr/local/BerkeleyDB.3.1 - test -d /usr/local/BerkeleyDB.3.2 && db_dir=/usr/local/BerkeleyDB.3.2 - test -d /usr/local/BerkeleyDB.3.3 && db_dir=/usr/local/BerkeleyDB.3.3 - test -d /usr/local/BerkeleyDB.4.0 && db_dir=/usr/local/BerkeleyDB.4.0 -fi + && db_dir=/usr/local -if test "x$with_gdbm" = xyes -a "x$with_db" = xyes; then - AC_MSG_ERROR(can't enable both gdbm and db) + 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 fi dnl By default, we only build the client (citadel and whobbs) unless we can @@ -63,20 +173,27 @@ TARGETS=client AC_CANONICAL_HOST PTHREAD_DEFS=-D_REENTRANT +AC_MSG_CHECKING([how to compile with POSIX threads]) case "$host" in dnl BSDI 3.0 wants relocatable object modules instead of shared libs dnl for dlopen(), and has a wrapper script to link with shared libs. 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 dnl build pthreads programs with gcc due to header problems. @@ -84,6 +201,7 @@ case "$host" in test -z "$CC" && CC=cc LIBS="-lpthread -lexc $LIBS" check_pthread=no + AC_MSG_RESULT([Tru64 or Digital UNIX]) ;; dnl FreeBSD is similar to Digital UNIX with DEC C, which has a -pthread flag: *-*-freebsd*) @@ -94,33 +212,66 @@ case "$host" in fi check_pthread=no PTHREAD_DEFS=-D_THREAD_SAFE + AC_MSG_RESULT([FreeBSD]) ;; *-*-openbsd*) LIBS="-pthread $LIBS" check_pthread=no PTHREAD_DEFS=-pthread + AC_MSG_RESULT([OpenBSD]) + ;; + *-*-linux*) + PTHREAD_DEFS="-D_REENTRANT -pthread" + AC_MSG_RESULT([Linux]) ;; *-*-solaris*) PTHREAD_DEFS="-D_REENTRANT -D_PTHREADS" + AC_MSG_RESULT([Solaris]) + ;; + *-*-cygwin*) + SERVER_LDFLAGS="-Wl,-subsystem,windows" + AC_MSG_RESULT([Cygwin]) + ;; + *) + AC_MSG_RESULT([default]) ;; esac -DEFS="$DEFS $PTHREAD_DEFS" +dnl DEFS="$DEFS $PTHREAD_DEFS" + dnl Checks for programs. AC_PROG_CC dnl Set up system-dependent compiler flags. if test "$GCC" = yes; then - case "$host" in - *-*-solaris*|alpha*-dec-osf*) - CFLAGS="$CFLAGS -Wall -Wcast-qual -Wcast-align -Wno-char-subscripts" - ;; - *) - CFLAGS="$CFLAGS -Wall -Wcast-qual -Wcast-align -Wstrict-prototypes" - ;; - esac + if test "$CC" = icc; then + CFLAGS="$CFLAGS -w1" + else + case "$host" in + *-*-solaris*|alpha*-dec-osf*) + CFLAGS="$CFLAGS -Wall -Wcast-qual -Wcast-align -Wno-char-subscripts $PTHREAD_DEFS" + ;; + *) + CFLAGS="$CFLAGS -Wall -Wcast-qual -Wcast-align -Wstrict-prototypes $PTHREAD_DEFS" + ;; + esac + fi +fi + +if test "x$enable_pie" = xyes; then + save_CFLAGS="$CFLAGS" + save_LDFLAGS="$LDFLAGS" + CFLAGS="$CFLAGS -fpie" + LDFLAGS="$LDFLAGS -pie -fpie" + AC_CACHE_CHECK([whether compiler accepts -pie -fpie], ac_cv_pie_fpie, + [AC_TRY_LINK([], [], + ac_cv_pie_fpie=yes, ac_cv_pie_fpie=no)]) + if test $ac_cv_pie_fpie = no; then + CFLAGS="$save_CFLAGS" + LDFLAGS="$save_LDFLAGS" + fi fi -AC_DISABLE_STATIC + AC_PROG_INSTALL AC_PROG_YACC missing_dir=`cd $ac_aux_dir && pwd` @@ -154,10 +305,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" @@ -179,16 +330,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") @@ -210,6 +351,8 @@ if test "$check_pthread" != no; then AC_CHECK_LIB(pthreads, pthread_create) fi +test -d /usr/kerberos/include && CPPFLAGS="$CPPFLAGS -I/usr/kerberos/include" + # The big search for OpenSSL if test "$with_ssl" != "no"; then saved_LIBS="$LIBS" @@ -291,7 +434,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 @@ -320,7 +463,7 @@ if test "$with_ssl" != "no"; then fi fi -if test "x$with_db" != xno -a "x$with_gdbm" != xyes; then +if test "x$with_db" != xno; then test "$db_dir" && LDFLAGS="$LDFLAGS -L$db_dir/lib" dblib="" @@ -328,40 +471,24 @@ if test "x$with_db" != xno -a "x$with_gdbm" != xyes; then if test -d "$db_dir/include/db4"; then CPPFLAGS="$CPPFLAGS -I$db_dir/include/db4" dblib="db4" - elif test -d "$db_dir/include/db3"; then - CPPFLAGS="$CPPFLAGS -I$db_dir/include/db3" - dblib="db3" elif test "$db_dir"; then CPPFLAGS="$CPPFLAGS -I$db_dir/include" elif test -d /usr/include/db4; then CPPFLAGS="$CPPFLAGS -I/usr/include/db4" dblib="db4" - elif test -d /usr/include/db3; then - CPPFLAGS="$CPPFLAGS -I/usr/include/db3" - dblib="db3" fi - AC_SEARCH_LIBS(db_env_create, [$dblib db db4 db3], [ - DATABASE=database_sleepycat.c - with_gdbm=no - ]) - -fi - -if test "x$with_gdbm" != xno -a "x$with_db" != xyes; then - test -f /usr/local/lib/libgdbm.a -o -f /usr/local/lib/libgdbm.so && db_dir=/usr/local - test "$db_dir" && LDFLAGS="$LDFLAGS -L$db_dir/lib" - test "$db_dir" && CPPFLAGS="$CPPFLAGS -I$db_dir/include" + AC_CHECK_DB([db db-4.1 db-4 db4], + [ + DATABASE=database_sleepycat.c + ], + AC_MSG_ERROR([[Can not locate a suitable Berkeley DB + library. Use --with-db=PATH to specify + the path]])) - AC_CHECK_LIB(gdbm, gdbm_open, - [LIBS="-lgdbm $LIBS" - DATABASE=database.c - with_db=no]) fi - - dnl Checks for the zlib compression library. if test "x$with_zlib" != xno ; then AC_CHECK_HEADERS(zlib.h, @@ -371,10 +498,44 @@ if test "x$with_zlib" != xno ; then fi if test "x$ok_zlib" = xyes ; then - LIBS="-lz $LIBS" - AC_DEFINE(HAVE_ZLIB) + SERVER_LIBS="-lz $SERVER_LIBS" + AC_DEFINE(HAVE_ZLIB, [], [define this if you have zlib compression available]) +fi + + + + +dnl Checks for the OpenLDAP client library. +if test "x$with_ldap" != xno ; then + AC_CHECK_HEADERS(ldap.h, + [AC_CHECK_LIB(ldap, ldap_init, + [ok_ldap=yes],, + )]) fi +if test "x$ok_ldap" = xyes ; then + SERVER_LIBS="-lldap $SERVER_LIBS" + AC_DEFINE(HAVE_LDAP, [], [define this if you have OpenLDAP client available]) +fi + + + + + +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_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 libical calendaring library. @@ -391,14 +552,12 @@ if test "x$ok_libical" = xyes ; then [ #include main() { - float v; - int i; - sscanf(ICAL_VERSION, "%f", &v); - printf("libical version: %0.2f\n", v); - v = v * 100.0; - i = (int) v; - if (i >= 24) { - printf("This version is ok.\n"); + int major, minor, v; + sscanf(ICAL_VERSION, "%d.%d", &major, &minor); + v = 100*major + minor; + printf("libical version: %i\n", v); + if (v >= 24) { + printf("This version is ok.\n"); return(0); } printf("libical 0.24 or newer required.\n"); @@ -407,14 +566,15 @@ main() { } ], [ - LIBS="-lical $LIBS" - AC_DEFINE(HAVE_LIBICAL) + SERVER_LIBS="-lical $SERVER_LIBS" + AC_DEFINE(HAVE_LIBICAL, [], [define this if you have the libical calendaring library available]) ] ) fi + dnl Checks for header files. AC_HEADER_DIRENT AC_HEADER_STDC @@ -424,7 +584,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 syslog.h unistd.h utmp.h utmpx.h paths.h db.h db3/db.h db4/db.h pthread.h netinet/in.h arpa/nameser.h) +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) dnl dnl need to check if this is actually compilable, sometimes there are @@ -434,7 +594,7 @@ if test "x$with_ncurses" != xno; then AC_CHECK_HEADERS(ncurses.h,,,[ ]) fi -AC_CHECK_HEADER(resolv.h, [SMTP=serv_smtp.o; DOMAIN=domain.c],, +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 #endif @@ -445,8 +605,6 @@ AC_CHECK_HEADER(resolv.h, [SMTP=serv_smtp.o; DOMAIN=domain.c],, #include #endif]) -AC_SUBST(SMTP) -AC_SUBST(DOMAIN) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -462,15 +620,65 @@ AC_CACHE_CHECK([for ut_type in struct utmp], ac_cv_struct_ut_type, #include ], [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 +#include ], + [ + 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 +#include +#include ], + [ + 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 #include ], [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. @@ -499,7 +707,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, @@ -516,35 +724,37 @@ 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` @@ -560,22 +770,27 @@ 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) AC_SUBST(DATABASE) +AC_SUBST(SERVER_LDFLAGS) +AC_SUBST(SERVER_LIBS) +AC_SUBST(SETUP_LIBS) AC_CONFIG_HEADER(sysdep.h) -AC_CONFIG_FILES([Makefile weekly]) -AC_OUTPUT +AC_CONFIG_FILES([Makefile]) +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 +echo 'Note: if you are not using Linux, make sure you are using GNU make' +echo '(gmake) to compile Citadel.' +echo