dnl Process this file with autoconf to produce a configure script.
dnl $Id$
-AC_INIT(webserver.c)
+AC_INIT([WebCit], [7.37], [http://www.citadel.org/])
-PACKAGE=webcit
-VERSION=7.13
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [our package name])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [our package version])
-AC_SUBST(PACKAGE)
-AC_SUBST(VERSION)
-
AC_SUBST(PROG_SUBDIRS)
AC_DEFINE(PROG_SUBDIRS, [], [Program dirs])
AC_CANONICAL_HOST
ssl_dir="$prefix/keys"
fi
-AC_ARG_WITH(with_libical, [ --with-libical use libical calendaring library])
AC_ARG_WITH(with_zlib, [ --with-zlib use zlib compression if present])
AC_ARG_WITH(ssl,
[ --with-ssl=PATH Specify path to OpenSSL installation ],
dnl Checks for header files.
AC_HEADER_STDC
dnl AC_HEADER_SYS_WAIT
-AC_CHECK_HEADERS(fcntl.h limits.h sys/time.h unistd.h)
AC_TYPE_SIGNAL
dnl AC_FUNC_VPRINTF
AC_REPLACE_FUNCS(snprintf)
+AC_CHECK_HEADERS(fcntl.h limits.h sys/time.h unistd.h iconv.h)
-dnl Checks for the libical calendaring library.
-if test "x$with_libical" != xno ; then
- AC_CHECK_HEADERS(ical.h,
- [AC_CHECK_LIB(ical, icalcomponent_new,
- [ok_libical=yes],,
- )])
+
+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
-if test "x$ok_libical" = xyes ; then
+AC_CHECK_LIB(intl, libintl_bindtextdomain, [LDFLAGS="$LDFLAGS -lintl"])
- AC_TRY_RUN(
+dnl Check for libcitadel
+AC_CHECK_HEADER(libcitadel.h,
+ [AC_CHECK_LIB(citadel, libcitadel_version_string,
[
-#include <ical.h>
-main() {
- 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");
- printf("Citadel will be built without calendar support.\n");
- return(1);
-}
- ],
+ LIBS="-lcitadel $LIBS"
+ ],
[
- LIBS="-lical $LIBS"
- AC_DEFINE(HAVE_LIBICAL,[],[whether we have libical available])
+ AC_MSG_ERROR(libcitadel was not found or is not usable. Please install libcitadel.)
]
- )
-fi
+ ,
+ )],
+ [
+ AC_MSG_ERROR(libcitadel.h was not found or is not usable. Please install libcitadel.)
+ ]
+)
+dnl Checks for the libical iCalendar library.
+AC_CHECK_HEADER(ical.h,
+ [AC_CHECK_LIB(ical, icalcomponent_new,
+ [
+ LIBS="-lical $LIBS"
+ ],
+ [
+ AC_MSG_ERROR(libical was not found and is required. More info: http://www.citadel.org/doku.php/installation:start)
+ ]
+ ,
+ )],
+ [
+ AC_MSG_ERROR(ical.h was not found and is required. More info: http://www.citadel.org/doku.php/installation:start)
+ ]
+)
+
dnl Checks for the zlib compression library.
if test "x$with_zlib" != xno ; then
)
AC_DEFINE_UNQUOTED(SSL_DIR, "$ssl_dir", [were should we put our keys?])
-dnl Here is the check for a usable iconv
-AC_ARG_ENABLE(iconv,
- [ --disable-iconv do not use iconv charset conversion],
- ok_iconv=no, ok_iconv=yes)
-if test "$ok_nls" != "no"; then
- AC_MSG_RESULT(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,
- ok_iconv=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
-
-
-
-dnl Here is the check for libintl etc.
-
-AC_ARG_ENABLE(nls,
- [ --disable-nls do not use Native Language Support],
- ok_nls=no, ok_nls=yes)
-
-if test "$ok_nls" != "no"; then
- AC_MSG_RESULT(Checking for per-thread NLS support...)
- AC_TRY_RUN([
- #define _GNU_SOURCE
- #include <libintl.h>
- #include <locale.h>
- #include <time.h>
- main() {
- char *foo = NULL;
- char baz[32];
- struct tm *tm;
- uselocale(LC_GLOBAL_LOCALE);
- foo = gettext("bar");
- if (0) {
- strftime_l(baz, sizeof baz, "%c", tm, LC_GLOBAL_LOCALE);
- }
- exit(0);
- }
- ],
- ok_uselocale=yes,
- ok_uselocale=no
- )
- ok_nls=$ok_uselocale
-fi
+AC_CHECK_FUNCS(strftime_l uselocale gettext)
if test "$ok_nls" != "no"; then
AC_CHECK_PROG(ok_xgettext, xgettext, yes, no)
]
)
AC_DEFINE_UNQUOTED(LOCALEDIR, "$localedir",[where to find our pot files])
+LOCALEDIR=$localedir
+AC_SUBST(LOCALEDIR)
dnl Checks where to put our templates
AC_ARG_WITH(wwwdir,
]
)
AC_DEFINE_UNQUOTED(WWWDIR, "$wwwdir", [where to find our templates and pics])
-
+WWWDIR=$wwwdir
+AC_SUBST(WWWDIR)
dnl Checks for the run-dir for the sockets
echo ------------------------------------------------------------------------
echo 'zlib compression: ' $ok_zlib
-echo 'Calendar support: ' $ok_libical
echo 'Character set conversion support:' $ok_iconv
echo 'National language support: ' $ok_nls
echo