configure.ac in citadel and webcit now looks
[citadel.git] / citadel / configure.ac
index cd32b4496a2ae7ed921d5431471d5daa1a767c58..e98fcedb4f1c26de428f14199aa05041466c0cbe 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.35], [http://www.citadel.org/])
+AC_INIT([Citadel], [7.38], [http://www.citadel.org/])
 AC_REVISION([$Revision: 5108 $])
 AC_CONFIG_SRCDIR([citserver.c])
 AC_PREFIX_DEFAULT(/usr/local/citadel)
@@ -29,7 +29,20 @@ AC_ARG_WITH(datadir,
                        ]
 )
 
-dnl Checks for the Datadir
+
+dnl Checks for the helpDatadir
+AC_ARG_WITH(helpdir, 
+                   [  --with-helpdir          directory to store the helpfiles under],
+                       [ if test "x$withval" != "xno" ; then
+                                             AC_DEFINE(HAVE_HELP_DIR,[],[use alternate database location?])
+                                             AC_DEFINE_UNQUOTED(HELP_DIR, "$withval",[define, if the user suplied a helpfile-directory to use.])
+                                             MAKE_HELP_DIR=$withval
+                                             AC_SUBST(MAKE_HELP_DIR)
+                         fi
+                       ]
+)
+
+dnl Checks for the Static Datadir
 AC_ARG_WITH(staticdatadir, 
                    [  --with-staticdatadir    directory to store citadels system messages under],
                        [ if test "x$withval" != "xno" ; then
@@ -46,7 +59,7 @@ 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],
+                   [  --with-ssldir           directory to store the ssl certificates under],
                        [ if test "x$withval" != "xno" ; then
                                              
                                                  ssl_dir="$withval"
@@ -84,7 +97,7 @@ 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],
+                       [  --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])
@@ -129,6 +142,65 @@ AC_ARG_WITH(docdir,
 )
 
 
+dnl Here is the check for a libc integrated iconv
+AC_ARG_ENABLE(iconv,
+       [  --disable-iconv         do not use iconv charset conversion],
+       ok_iconv=no, ok_iconv=yes)
+
+AC_MSG_CHECKING(Checking to see if your system supports iconv)
+AC_TRY_RUN([
+       #include <iconv.h>
+       main() {
+               iconv_t ic = (iconv_t)(-1) ;
+               ic = iconv_open("UTF-8", "us-ascii");
+               iconv_close(ic);
+               exit(0);
+       }
+ ],
+               [
+                 ok_iconv=yes
+                 AC_MSG_RESULT([yes])
+               ],
+               [ 
+                 ok_iconv=no
+                 AC_MSG_RESULT([no])
+               ]
+)
+
+dnl Check for iconv in external libiconv
+if test "$ok_iconv" = no; then
+       AC_MSG_CHECKING(Checking for an external libiconv)
+       OLD_LDFLAGS="$LDFLAGS"
+       LDFLAGS="$LDFLAGS -liconv"
+       AC_TRY_RUN([
+                       #include <iconv.h>
+                       main() {
+                               iconv_t ic = (iconv_t)(-1) ;
+                               ic = iconv_open("UTF-8", "us-ascii");
+                               iconv_close(ic);
+                       }
+               ],
+                       [
+                         ok_iconv=yes
+                         AC_MSG_RESULT([yes])
+                       ],
+                       [ 
+                         ok_iconv=no
+                         LDFLAGS="$OLD_LDFLAGS"
+                         AC_MSG_RESULT([no])
+                       ]
+               )
+fi     
+if test "$ok_iconv" != "no"; then
+       AC_MSG_RESULT(WebCit will be built with character set conversion.)
+       AC_DEFINE(HAVE_ICONV,[],[whether we have iconv for charset conversion])
+else
+       AC_MSG_RESULT(WebCit will be built without character set conversion.)
+fi
+
+AC_CHECK_LIB(intl, libintl_bindtextdomain, [LDFLAGS="$LDFLAGS -lintl"])
+
+
 
 AC_ARG_ENABLE(threaded-client, [  --disable-threaded-client
                          disable multithreaded client])
@@ -137,7 +209,7 @@ AC_ARG_ENABLE(pie, [  --enable-pie            build position-independent executa
 
 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(db, [  --with-db@<:@=DIR@:>@         use Sleepycat DB 3.x @<:@DIR=/usr/local/BerkeleyDB.3.@<:@123@:>@@:>@])
+AC_ARG_WITH(db, [  --with-db@<:@=DIR@:>@         use Berkeley DB 3.x @<:@DIR=/usr/local/BerkeleyDB.3.@<:@123@:>@@:>@])
 AC_ARG_WITH(ssl,
        [  --with-ssl=PATH         Specify path to OpenSSL installation ],
        [
@@ -309,7 +381,7 @@ AC_CHECK_FUNCS(crypt gethostbyname connect flock getpwnam_r getpwuid_r)
 
 dnl disable backtrace if we don't want it.
 AC_ARG_WITH(backtrace, 
-                   [  --with-backtrace          enable backtrace dumps in the syslog],
+                   [  --with-backtrace        enable backtrace dumps in the syslog],
                        [ if test "x$withval" != "xno" ; then
                             CFLAGS="$CFLAGS  -rdynamic "
                             LDFLAGS="$LDFLAGS  -rdynamic "
@@ -321,7 +393,7 @@ AC_ARG_WITH(backtrace,
 
 dnl disable backtrace if we don't want it.
 AC_ARG_WITH(gprof, 
-                   [  --with-gprof          enable profiling],
+                   [  --with-gprof            enable profiling],
                        [ if test "x$withval" != "xno" ; then
                             CFLAGS="$CFLAGS  -pg "
                             LDFLAGS="$LDFLAGS  -pg "
@@ -332,7 +404,7 @@ AC_ARG_WITH(gprof,
 
 dnl disable thread table reporting
 AC_ARG_WITH(threadlog,
-               [ --with-threadlog      enable logging of thread table],
+               [  --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
@@ -544,7 +616,7 @@ if test "x$with_db" != xno; then
 
        AC_CHECK_DB([db db-4.1 db-4 db4],
                    [
-                    DATABASE=database_sleepycat.c
+                    DATABASE=database.c
                    ],
                    AC_MSG_ERROR([[Can not locate a suitable Berkeley DB
                                  library.  Use --with-db=PATH to specify
@@ -645,8 +717,8 @@ AC_CHECK_HEADER(curl/curl.h,
 
 
 dnl Checks for the libical iCalendar library.
-AC_CHECK_HEADER(ical.h,
-       [AC_CHECK_LIB(ical, icalcomponent_new,
+AC_CHECK_HEADER(libical/ical.h,
+       [AC_CHECK_LIB(ical, icalcomponent_as_ical_string_r,
                [
                        SERVER_LIBS="-lical $SERVER_LIBS"
                ],
@@ -656,7 +728,7 @@ AC_CHECK_HEADER(ical.h,
        ,
        )],
        [
-               AC_MSG_ERROR(ical.h was not found and is required.  More info: http://www.citadel.org/doku.php/installation:start)
+               AC_MSG_ERROR(libical/ical.h was not found and is required.  More info: http://www.citadel.org/doku.php/installation:start)
        ]
 )
 
@@ -908,6 +980,7 @@ fi
 echo ------------------------------------------------------------------------
 echo 'zlib compression:                ' $ok_zlib
 echo 'LDAP support:                    ' $ok_ldap
+echo 'Character set conversion support:' $ok_iconv
 echo 'DSpam Scanning support:          ' $ok_libdspam
 echo 
 echo 'Note: if you are not using Linux, make sure you are using GNU make'