]> code.citadel.org Git - citadel.git/blobdiff - citadel/configure.ac
Began removing $Id$ tags. This will be an ongoing process.
[citadel.git] / citadel / configure.ac
index bde22474dac957eb432dbbfb8e53a377b6e00dd8..b4ec4a178e5450d5b52e9eba0956b2350aee747d 100644 (file)
@@ -1,9 +1,10 @@
 dnl Process this file with autoconf to produce a configure script.
-dnl $Id$
 AC_PREREQ(2.52)
-AC_INIT([Citadel], [7.60], [http://www.citadel.org/])
+AC_INIT([Citadel], [7.83], [http://www.citadel.org/])
 AC_REVISION([$Revision: 5108 $])
 AC_CONFIG_SRCDIR([citserver.c])
+AC_CONFIG_HEADER(sysdep.h)
+AC_CONFIG_MACRO_DIR([m4])
 AC_PREFIX_DEFAULT(/usr/local/citadel)
 if test "$prefix" = NONE; then
        AC_DEFINE_UNQUOTED(CTDLDIR, "$ac_default_prefix", [define this to the Citadel home directory])
@@ -163,7 +164,7 @@ if test "x$with_zlib" != xno ; then
 fi
 
 if test "x$ok_zlib" = xyes ; then
-dnl  libcitadel will bring libz, so we don't need it here.     LDFLAGS="-lz $LDFLAGS" 
+       LDFLAGS="-lz $LDFLAGS" 
        AC_DEFINE(HAVE_ZLIB, [], [define this if you have zlib compression available])
 fi
 
@@ -249,7 +250,8 @@ AC_ARG_WITH(ssl,
 AC_ARG_WITH(ncurses, [  --without-ncurses       don't use ncurses])
 
 AC_ARG_WITH(with_ldap, [  --with-ldap             use OpenLDAP client library])
-AC_ARG_WITH(with_libdspam, [  --with-libdspam         use libdspam mail spam scanning library])
+dnl AC_ARG_WITH(with_libdspam, [  --with-libdspam         use libdspam mail spam scanning library])
+AC_ARG_WITH(with_gc, [  --with-gc             use the Boehm-Demers-Weiser garbage collection library])
 
 if test "x$with_db" != xno -a "x$with_db" != xyes -a "$with_db"; then
        db_dir="$with_db"
@@ -403,8 +405,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 flock getpwnam_r getpwuid_r)
+AC_CHECK_FUNCS(crypt gethostbyname connect flock getpwnam_r getpwuid_r getloadavg)
+
+AC_CHECK_FUNCS(strftime_l uselocale gettext)
+
+if test "$ok_nls" != "no"; then
+       AC_CHECK_PROG(ok_xgettext, xgettext, yes, no)
+       ok_nls=$ok_xgettext
+fi
+
+if test "$ok_nls" != "no"; then
+       AC_CHECK_PROG(ok_msgmerge, msgmerge, yes, no)
+       ok_nls=$ok_msgmerge
+fi
+
+if test "$ok_nls" != "no"; then
+       AC_CHECK_PROG(ok_msgfmt, msgfmt, yes, no)
+       ok_nls=$ok_msgfmt
+fi
 
+if test "$ok_nls" != "no"; then
+       AC_MSG_RESULT(WebCit will be built with national language support.)
+       AC_DEFINE(ENABLE_NLS, [], [whether we have NLS support])
+       PROG_SUBDIRS="$PROG_SUBDIRS po"
+else
+       AC_MSG_RESULT(WebCit will be built without national language support.)
+fi
 
 dnl disable backtrace if we don't want it.
 AC_ARG_WITH(backtrace, 
@@ -454,13 +480,11 @@ dnl Determine the system's authentication capabilities.
 dnl We currently support PAM, standard getpwnam(), and getspnam()
 dnl (Linux shadow passwords)
 
-       if test "$with_pam" = yes; then
-               save_LIBS=$LIBS
-               AC_CHECK_LIB(pam, pam_start, [chkpwd_LIBS="-lpam $chkpwd_LIBS"
-                       LIBS="-lpam $LIBS"])
-               AC_CHECK_FUNCS(pam_start)
-               test "$enable_chkpwd" != no && LIBS=$save_LIBS
-       fi
+save_LIBS=$LIBS
+AC_CHECK_LIB(pam, pam_start, [chkpwd_LIBS="-lpam $chkpwd_LIBS"
+       LIBS="-lpam $LIBS"])
+AC_CHECK_FUNCS(pam_start)
+test "$enable_chkpwd" != no && LIBS=$save_LIBS
        if test "$ac_cv_func_pam_start" = no -o "$with_pam" != yes; then
                save_LIBS=$LIBS
                AC_SEARCH_LIBS(getspnam, shadow, [
@@ -707,21 +731,38 @@ 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],,
+dnl Checks for the Boehm-Demers-Weiser garbage collection library.
+if test "x$with_gc" != xno ; then
+       AC_CHECK_HEADERS(gc/gc_local_alloc.h,
+               [AC_CHECK_LIB(gc, GC_init,
+                       [ok_gc=yes],,
        )])
 fi
 
-if test "x$ok_libdspam" = xyes ; then
-       SERVER_LIBS="-ldspam $SERVER_LIBS"
-       AC_DEFINE(HAVE_LIBDSPAM, [], [(unfinished) define this if you have the libdspam mail spam scanning library available])
+if test "x$ok_gc" = xyes ; then
+       SERVER_LIBS="-lgc $SERVER_LIBS"
+       AC_DEFINE(HAVE_GC, [], [define this if you have Boehm-Demers-Weiser available])
 fi
 
 
 
+
+
+dnl Checks for the libdspam mail spam scanning library.
+dnl if test "x$with_libdspam" != xno ; then
+dnl    AC_CHECK_HEADERS(dspam/libdspam.h,
+dnl            [AC_CHECK_LIB(dspam, dspam_init,
+dnl                    [ok_libdspam=yes],,
+dnl    )])
+dnl fi
+dnl 
+dnl if test "x$ok_libdspam" = xyes ; then
+dnl    SERVER_LIBS="-ldspam $SERVER_LIBS"
+dnl    AC_DEFINE(HAVE_LIBDSPAM, [], [(unfinished) define this if you have the libdspam mail spam scanning library available])
+dnl fi
+
+
+
 dnl Checks for the Expat XML parser.
 AC_CHECK_HEADER(expat.h,
        [AC_CHECK_LIB(expat, XML_ParserCreateNS,
@@ -778,7 +819,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/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)
+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 syscall.h sys/syscall.h)
 
 dnl
 dnl need to check if this is actually compilable, sometimes there are
@@ -975,6 +1016,11 @@ AC_CACHE_CHECK([under the bed], ac_cv_under_the_bed, [
        esac
        ])
 
+
+STRUCT_UCRED
+
+
+
 dnl Done! Now write the Makefile and sysdep.h
 AC_SUBST(AUTH)
 AC_SUBST(RESOLV)
@@ -984,20 +1030,47 @@ AC_SUBST(DATABASE)
 AC_SUBST(SERVER_LDFLAGS)
 AC_SUBST(SERVER_LIBS)
 AC_SUBST(SETUP_LIBS)
-AC_CONFIG_HEADER(sysdep.h)
-./mk_module_init.sh
 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
 
+abs_srcdir="`cd $srcdir && pwd`"
+abs_builddir="`pwd`"
+if test "$abs_srcdir" != "$abs_builddir"; then
+   ln -sf $abs_srcdir/include $abs_builddir
+   ln -sf $abs_srcdir/Make_sources $abs_builddir
+   ln -sf $abs_srcdir/Make_modules $abs_builddir
+   for i in $abs_srcdir/*.h ; do
+      if test "$abs_srcdir/sysdep.h" != "$i"; then
+         ln -sf $i $abs_builddir
+      fi
+   done
+   for d in `/bin/ls $abs_srcdir/modules/`; do 
+       (mkdir -p $abs_builddir/modules/$d) 
+   done
+   if test -d "$abs_srcdir/user_modules/"; then
+      for d in `/bin/ls $abs_srcdir/user_modules/`; do 
+       (mkdir -p $abs_builddir/user_modules/$d) 
+       done
+   fi
+   mkdir -p $abs_builddir/utils
+   mkdir -p $abs_builddir/utillib
+   mkdir -p $abs_builddir/textclient
+fi
+
+if test -n "$srcdir"; then 
+   export srcdir=.
+fi
+
+
 echo ------------------------------------------------------------------------
 echo 'LDAP support:                    ' $ok_ldap
 echo 'Character set conversion support:' $ok_iconv
-echo 'DSpam Scanning support:          ' $ok_libdspam
+echo 'Boehm-Demers-Weiser support:     ' $ok_gc
+dnl echo 'DSpam Scanning support:          ' $ok_libdspam
 echo 
 echo 'Note: if you are not using Linux, make sure you are using GNU make'
 echo '(gmake) to compile Citadel.'