]> code.citadel.org Git - citadel.git/blobdiff - citadel/configure.ac
* move arround some files in the configured build according to the suggestions of...
[citadel.git] / citadel / configure.ac
index c9ebd67cc946a014af79c84a2172d3736dfad6a8..9fbfe80aa9cc6fa55915aaceb83839c157ec622d 100644 (file)
@@ -1,14 +1,16 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl $Id$
 AC_PREREQ(2.52)
-AC_INIT([Citadel], [7.03], [http://www.citadel.org/])
-AC_REVISION([$Revision$])
+AC_INIT([Citadel], [7.10], [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")
+       ssl_dir="$ac_default_prefix/keys"
 else
        AC_DEFINE_UNQUOTED(CTDLDIR, "$prefix")
+       ssl_dir="$prefix/keys"
 fi
 
 
@@ -28,6 +30,34 @@ AC_ARG_WITH(datadir,
                        ]
 )
 
+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)
+                                                 AC_DEFINE_UNQUOTED(STATICDATA_DIR, "$withval")
+                                                 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],
@@ -53,6 +83,18 @@ AC_ARG_WITH(sysconfdir,
                        ]
 )
 
+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)
+                                               AC_DEFINE_UNQUOTED(UTILBIN_DIR, "$withval")
+                                               MAKE_UTILBIN_DIR=$withval
+                                               AC_SUBST(MAKE_UTILBIN_DIR)
+                         fi
+                       ]
+)
+
 
 dnl Checks for the run-dir for the sockets
 AC_ARG_WITH(rundir, 
@@ -148,8 +190,11 @@ case "$host" in
                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(HAVE_DARWIN)
                AC_MSG_RESULT([Mac OS X])
        ;;
        dnl Digital Unix has an odd way to build for pthreads, and we can't
@@ -588,6 +633,56 @@ if test $ac_cv_struct_ut_type = yes; then
        AC_DEFINE(HAVE_UT_TYPE)
 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)
+       AC_DEFINE(F_UID_T, "%ld")
+       AC_DEFINE(F_PID_T, "%ld")
+       AC_DEFINE(F_XPID_T, "%lx")
+else
+       AC_DEFINE(F_UID_T, "%d")
+       AC_DEFINE(F_PID_T, "%d")
+       AC_DEFINE(F_XPID_T, "%x")
+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;],
@@ -645,29 +740,29 @@ 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
+       ])
 
 
 
@@ -682,19 +777,7 @@ AC_CACHE_CHECK([under the bed], ac_cv_under_the_bed, [
                ;;
        esac
        ])
-AC_CANONICAL_HOST
-AC_MSG_CHECKING([for reality distorion field])
-case "$host" in
-       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(HAVE_DARWIN)
-               AC_MSG_RESULT([present])
-       ;;
-       *)
-               AC_MSG_RESULT([missing])
-       ;;
-esac
+
 dnl Done! Now write the Makefile and sysdep.h
 AC_SUBST(AUTH)
 AC_SUBST(CHKPWD)