Fix build when using alternate addressbook
[claws.git] / configure.ac
index 2669bdc6907ed3495fd05b180997699c1bc8ac66..e8e4ae427b4f5dd3b54f1ea05da555852b0886e8 100644 (file)
@@ -7,19 +7,39 @@ AC_CONFIG_MACRO_DIR([m4])
 PACKAGE=claws-mail
 
 dnl version number
-MAJOR_VERSION=3
-MINOR_VERSION=9
-MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=128
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
-if test \( $EXTRA_VERSION -eq 0 \) -o \( "x$EXTRA_RELEASE" != "x" \); then
-    VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
+if test \( -d .git \); then
+    AC_CHECK_PROG([GIT], [git], [yes], [no], [$PATH])
+    if test \( "$GIT" = "no" \); then
+       AC_MSG_ERROR([*** git not found. See http://git-scm.com/])
+    else
+       GIT_VERSION=`git describe --abbrev=6 --dirty --always`
+       echo "echo ${GIT_VERSION}" > ./version
+    fi
+else
+    GIT_VERSION=`sh -c ". ./$srcdir/version"`
+fi
+MAJOR_VERSION=${GIT_VERSION%%.*}
+MINOR_VERSION=${GIT_VERSION#*.}
+MINOR_VERSION=${MINOR_VERSION%%.*}
+MICRO_VERSION=${GIT_VERSION##*.}
+MICRO_VERSION=${MICRO_VERSION%%-*}
+EXTRA_VERSION=${GIT_VERSION#*-}
+EXTRA_VERSION=${EXTRA_VERSION%%-*}
+
+if test \( "x$EXTRA_VERSION" != "x" -a `echo -n $EXTRA_VERSION | wc -c` -lt 5 \); then
+    VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}git${EXTRA_VERSION}
 else
-    VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}cvs${EXTRA_VERSION}${EXTRA_GTK2_VERSION}
+    VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}
+    EXTRA_VERSION=0
+fi
+
+if test \( "x$EXTRA_RELEASE" != "x" \); then
+    VERSION=${VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
 fi
 
 dnl set $target
@@ -35,6 +55,7 @@ AC_SUBST(MAJOR_VERSION)
 AC_SUBST(MINOR_VERSION)
 AC_SUBST(MICRO_VERSION)
 AC_SUBST(EXTRA_VERSION)
+AC_SUBST(GIT_VERSION)
 
 AC_CHECK_PROG(HAVE_GTK_ICON_CACHE, gtk-update-icon-cache, yes, no)
 AM_CONDITIONAL(UPDATE_GTK_ICON_CACHE, test x"$HAVE_GTK_ICON_CACHE" = xyes)
@@ -44,10 +65,6 @@ if test x$PKG_CONFIG = xno ; then
   AC_MSG_ERROR([*** pkg-config not found. See http://www.freedesktop.org/software/pkgconfig/])
 fi
 
-dnl GNOME 2.x installed?
-PKG_CHECK_MODULES(GNOME2, libgnome-2.0 >= 2.0, ac_enable_gnome2=yes, ac_enable_gnome2=no)
-AM_CONDITIONAL(CLAWS_GNOME2, test x"$ac_enable_gnome2" = x"yes")
-
 dnl libtool versioning
 LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION
 LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE`
@@ -81,29 +98,37 @@ LT_INIT
 LT_AC_PROG_RC
 AC_LIBTOOL_RC
 AC_PROG_LIBTOOL
+AC_PROG_AWK
 
 AC_SYS_LARGEFILE
 
 dnl ******************************
 dnl Checks for host
-dnl Not needed anymore because we 
+dnl Not needed anymore because we
 dnl do AC_CANONICAL_SYSTEM above
 dnl ******************************
 dnl AC_CANONICAL_HOST
 
 dnl Copied from the official gtk+-2 configure.in
-AC_MSG_CHECKING([for some Win32 platform])
+AC_MSG_CHECKING([for host platform])
 case "$host" in
   *-*-mingw*|*-*-cygwin*)
     platform_win32=yes
-    LDFLAGS="$LDFLAGS -mwindows"
+    LDFLAGS="$LDFLAGS -mwindows -Wl,--export-all-symbols"
     ;;
+       *-apple-*)
+               platform_osx=yes
+               LDFLAGS="$LDFLAGS -Wl,-export_dynamic"
+               ;;
   *)
     platform_win32=no
+               platform_osx=no
+               LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
     ;;
 esac
-AC_MSG_RESULT([$platform_win32])
 AM_CONDITIONAL(PLATFORM_WIN32, test x"$platform_win32" = x"yes")
+AM_CONDITIONAL(PLATFORM_OSX, test x"$platform_osx" = x"yes")
+AC_MSG_RESULT([$host])
 
 AC_MSG_CHECKING([for native Win32])
 case "$host" in
@@ -148,7 +173,7 @@ fi
 CFLAGS="$CFLAGS -Wall"
 
 if test $USE_MAINTAINER_MODE = yes; then
-       CFLAGS="-g -Wall -Wno-pointer-sign"
+       CFLAGS="$CFLAGS -g -Wno-pointer-sign -DUSE_MAINTAINER_MODE"
 fi
 
 pthread_name=
@@ -157,10 +182,10 @@ case "$target" in
        CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
        ;;
 *-*-mingw*)
-        # Note that we need to link to pthreadGC2 in all cases. This
+        # Note that we need to link to pthread in all cases. This
         # is because some locking is used even when pthread support is
         # disabled.
-        pthread_name=pthreadGC2
+        pthread_name=pthread
        CFLAGS="$CFLAGS -mms-bitfields"
        LIBS="$LIBS -l${pthread_name} -lws2_32 -lregex"
        ;;
@@ -169,7 +194,7 @@ case "$target" in
        CFLAGS="$CFLAGS -std=gnu99 -DSOLARIS"
        ;;
 esac
-  
+
 dnl Checks for iconv
 AM_ICONV
 
@@ -185,12 +210,12 @@ AC_CHECK_FUNCS(bind_textdomain_codeset)
 LIBS=$syl_save_LIBS
 
 dnl for gettext
-ALL_LINGUAS="bg ca cs de en_GB es fi fr he hu id_ID it ja lt nl pl pt_BR pt_PT ru sk sv uk zh_CN zh_TW"
+ALL_LINGUAS="ca cs da de en_GB es fi fr he hu id_ID it nb nl pt_BR ru sk sv tr zh_TW"
 GETTEXT_PACKAGE=claws-mail
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
 
-AM_GNU_GETTEXT_VERSION([0.15])
+AM_GNU_GETTEXT_VERSION([0.18])
 AM_GNU_GETTEXT([external])
 
 AC_ARG_ENABLE(manual,
@@ -221,10 +246,6 @@ AC_ARG_ENABLE(generic-umpc,
                [  --enable-generic-umpc           Build generic UMPC code],
                [enable_generic_umpc=$enableval], [enable_generic_umpc=no])
 
-AC_ARG_ENABLE(maemo,
-               [  --enable-maemo                  Build for the Maemo platform],
-               [enable_maemo=$enableval], [enable_maemo=no])
-
 AC_ARG_ENABLE(compface,
                [  --disable-compface              Do not build compface support for X-Face],
                [enable_compface=$enableval], [enable_compface=yes])
@@ -261,9 +282,9 @@ AC_ARG_ENABLE(valgrind,
                [  --disable-valgrind              Do not build valgrind support for debugging],
                [enable_valgrind=$enableval], [enable_valgrind=yes])
 
-AC_ARG_ENABLE(new-addrbook,
-               [  --enable-new-addrbook           Build new external address book support],
-               [enable_new_addrbook=$enableval], [enable_new_addrbook=no])
+AC_ARG_ENABLE(alternate-addressbook,
+               [  --enable-alternate-addressbook  Build alternate external address book support],
+               [enable_alternate_addressbook=$enableval], [enable_alternate_addressbook=no])
 
 AC_ARG_ENABLE(gtk3,
                [  --enable-gtk3                   Build GTK3 support],
@@ -364,18 +385,6 @@ AC_CHECK_HEADERS(fcntl.h sys/file.h unistd.h paths.h \
 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
 AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
 
-dnl alf - Check for apache installation f*ck up. apache may also install an 
-dnl fnmatch, which includes their own regex stuff if USE_HSREGEX is defined
-AC_TRY_COMPILE([#include <stdlib.h>
-               #include <fnmatch.h>],
-       [int x = USE_HSREGEX;],
-       ac_cv_have_apache_fnmatch=yes, ac_cv_have_apache_fnmatch=no)
-if test $ac_cv_have_apache_fnmatch = yes; then
-       AC_DEFINE(HAVE_APACHE_FNMATCH, 1, Define if you need to work around apache regex/fnmatch !KLUDGE!)
-fi
-AC_MSG_CHECKING([whether to use Apache regex header kludge])
-AC_MSG_RESULT($ac_cv_have_apache_fnmatch)
-
 dnl Checks for typedefs, structures, and compiler characteristics.
 AC_C_CONST
 AC_TYPE_OFF_T
@@ -411,8 +420,8 @@ dnl ** common code **
 dnl *****************
 
 dnl check for glib
-PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.6 gmodule-2.0 >= 2.6 gobject-2.0 >= 2.6 gthread-2.0 >= 2.6)
-      
+PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.20 gmodule-2.0 >= 2.20 gobject-2.0 >= 2.20 gthread-2.0 >= 2.20)
+
 GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0`
 AC_SUBST(GLIB_GENMARSHAL)
 
@@ -431,13 +440,23 @@ AC_MSG_CHECKING([whether to use IPv6])
 if test x"$enable_ipv6" = xyes; then
        AC_MSG_RESULT(yes)
        AC_MSG_CHECKING([for IPv6 support])
-       AC_CACHE_VAL(ac_cv_ipv6,[
-               AC_TRY_COMPILE([#define INET6
-                               #include <sys/types.h>
-                               #include <netinet/in.h>],
-                       [int x = IPPROTO_IPV6; struct in6_addr a;],
-                       ac_cv_ipv6=yes, ac_cv_ipv6=no)
-       ])
+       if test x"$platform_win32" = xyes; then
+               AC_CACHE_VAL(ac_cv_ipv6,[
+                       AC_TRY_COMPILE([
+                                       #include <ws2tcpip.h>
+                               ], [struct in6_addr a;],
+                               ac_cv_ipv6=yes, ac_cv_ipv6=no)
+               ])
+       else
+               AC_CACHE_VAL(ac_cv_ipv6,[
+                       AC_TRY_COMPILE([
+                                       #define INET6
+                                       #include <sys/types.h>
+                                       #include <netinet/in.h>
+                               ], [int x = IPPROTO_IPV6; struct in6_addr a;],
+                               ac_cv_ipv6=yes, ac_cv_ipv6=no)
+               ])
+       fi
        AC_MSG_RESULT($ac_cv_ipv6)
        if test $ac_cv_ipv6 = yes; then
                AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
@@ -457,17 +476,18 @@ if test "x$enable_gnutls" != "xno"; then
         [
                 AC_DEFINE(USE_GNUTLS, 1, gnutls)
                 echo "Building with GnuTLS"
+               PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
+               [
+                       dnl No linking against libgcrypt needed
+               ],
+               [
+                       dnl linking against libgcrypt *is* needed
+                       GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
+               ])
         ],
         [
                 echo "Building without gnutls"
-        ])
-        PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
-        [
-                dnl No linking against libgcrypt needed
-        ],
-        [
-                dnl linking against libgcrypt *is* needed
-                GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
+               enable_gnutls=no
         ])
         AC_SUBST(GNUTLS_LIBS)
         AC_SUBST(GNUTLS_CFLAGS)
@@ -480,6 +500,8 @@ case $host_os in
        *dragonfly*)
                AC_SEARCH_LIBS(encrypt, cipher, [], AC_MSG_ERROR(['encrypt'-function not found.]))
        ;;
+       *freebsd*)
+       ;; # not used
        *)
                AC_SEARCH_LIBS(encrypt, crypt, [], AC_MSG_ERROR(['encrypt'-function not found.]))
        ;;
@@ -494,12 +516,51 @@ AC_SUBST(PASSCRYPT_KEY, $with_passcrypt_key)
 
 dnl RC dir (will be default at a certain point in time)
 AC_ARG_WITH(config-dir,    [  --with-config-dir=RCDIR      Local configuration dir (default: .claws-mail)],
-             ac_cv_with_config_dir="$withval", ac_cv_with_config_dir=".claws-mail")
+             ac_cv_with_config_dir="$withval", ac_cv_with_config_dir="")
+
+dnl Set correct default value based on platform
 if test x"$ac_cv_with_config_dir" = x""; then
-       ac_cv_with_config_dir=".claws-mail"
-fi 
+       if test x"$platform_win32" = xyes; then
+               ac_cv_with_config_dir="Claws-mail"
+       else
+               ac_cv_with_config_dir=".claws-mail"
+       fi
+fi
 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
 
+AC_ARG_WITH(password-encryption, [  --with-password-encryption=PROVIDER    Which cryptographic library to use for encrypting stored passwords (gnutls, old, default)],
+                                               pwd_crypto="$withval", pwd_crypto="default")
+
+if test x"$pwd_crypto" = xdefault; then
+       if test x"$enable_gnutls" = xyes; then
+               if `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
+                       pwd_crypto="gnutls"
+               fi
+       fi
+fi
+if test x"$pwd_crypto" = xdefault; then
+       pwd_crypto="old"
+fi
+
+case $pwd_crypto in
+       gnutls)
+               if test x"$enable_gnutls" = xno; then
+                       AC_MSG_ERROR([GnuTLS password encryption requested but GnuTLS is not available.])
+               fi
+               if ! `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
+                       AC_MSG_ERROR([GnuTLS version at least 3.0 is required for password encryption.])
+               fi
+               AC_DEFINE(PASSWORD_CRYPTO_GNUTLS, 1, Use GnuTLS for stored password encryption)
+               ;;
+       old)
+               AC_DEFINE(PASSWORD_CRYPTO_OLD, 1, Use old insecure method for stored password encryption)
+               ;;
+       *)
+               AC_MSG_ERROR([Unknown password encryption provider requested.])
+               ;;
+esac
+
+
 dnl ************************
 dnl ** GTK user interface **
 dnl ************************
@@ -553,46 +614,11 @@ if test $enable_generic_umpc = yes; then
        AC_MSG_RESULT($enable_generic_umpc)
 fi
 
-dnl Maemo platform
-if test $enable_maemo = yes; then
-       PKG_CHECK_MODULES(MAEMO, libosso hildon-libs hildon-fm gnome-vfs-2.0, enable_maemo=yes,
-                 enable_maemo=no)
-       AC_SUBST(MAEMO_CFLAGS)
-       AC_SUBST(MAEMO_LIBS)
-       if test $enable_maemo = no; then
-               #test for chinook
-               PKG_CHECK_MODULES(MAEMO, libosso hildon-1 hildon-fm-2 gnome-vfs-2.0 hal, enable_maemo=yes,
-                         enable_maemo=no)
-               AC_SUBST(MAEMO_CFLAGS)
-               AC_SUBST(MAEMO_LIBS)
-               if test $enable_maemo = no; then
-                       AC_MSG_ERROR(one of libosso hildon-libs hildon-fm hildon-1 hildon-fm-2 not found)
-               else
-                       AC_DEFINE(MAEMO, 1, Build for maemo)
-                       AC_DEFINE(CHINOOK, 1, Maemo chinook)
-                       AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
-                       enable_generic_umpc=yes
-               fi
-       else
-               AC_DEFINE(MAEMO, 1, Build for maemo)
-               AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
-               enable_generic_umpc=yes
-       fi
-fi
-
-PKG_CHECK_MODULES(CONIC, conic, enable_conic=yes,
-         enable_conic=no)
-AC_SUBST(CONIC_CFLAGS)
-AC_SUBST(CONIC_LIBS)
-if test $enable_conic = yes; then
-       AC_DEFINE(CONIC, 1, Have conic lib)
-fi
-
 dnl Check for X-Face support
 AC_MSG_CHECKING([whether to use compface])
 if test x"$enable_compface" = xyes; then
        AC_MSG_RESULT(yes)
-       AC_CHECK_LIB(compface, uncompface, 
+       AC_CHECK_LIB(compface, uncompface,
                [AC_DEFINE(HAVE_LIBCOMPFACE, 1, Define if you want compface support.)],
                [enable_compface=no])
        if test x"$enable_compface" = xyes; then
@@ -703,37 +729,37 @@ dnl # Configure address book support
 dnl #######################################################################
 
 dnl #######################################################################
-dnl # Check for new address book support
+dnl # Check for alternate address book support
 dnl #######################################################################
-AC_MSG_CHECKING([whether DBUS support for new address book is present])
+AC_MSG_CHECKING([whether DBUS support for alternate address book is present])
 if test x"$enable_dbus_glib" = xyes; then
        AC_MSG_RESULT([yes])
-       AC_MSG_CHECKING([whether to enable new address book])
-       if test x"$enable_new_addrbook" = xyes; then
+       AC_MSG_CHECKING([whether to enable alternate address book])
+       if test x"$enable_alternate_addressbook" = xyes; then
                AC_MSG_RESULT([yes])
                PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
                [
-                       AC_DEFINE(USE_NEW_ADDRBOOK, 1, [Define if new address book is to be activated.])
-                       enable_new_addrbook=yes
+                       AC_DEFINE(USE_ALT_ADDRBOOK, 1, [Define if alternate address book is to be activated.])
+                       enable_alternate_addressbook=yes
                        AC_SUBST(CONTACTS_CFLAGS)
                        AC_SUBST(CONTACTS_LIBS)
                ],
                [
-                       enable_new_addrbook=no
+                       enable_alternate_addressbook=no
                ])
        else
                AC_MSG_RESULT([no])
-               enable_new_addrbook=no
+               enable_alternate_addressbook=no
        fi
 else
        AC_MSG_RESULT([no])
-       enable_new_addrbook=no
+       enable_alternate_addressbook=no
 fi
 
 dnl #######################################################################
 dnl # Check for old address book support
 dnl #######################################################################
-if test x"$enable_new_addrbook" = xno; then
+if test x"$enable_alternate_addressbook" = xno; then
        dnl for LDAP support in addressbook
        dnl no check for libraries; dynamically loaded
        AC_MSG_CHECKING([whether to use LDAP])
@@ -839,7 +865,7 @@ if test x"$enable_new_addrbook" = xno; then
        fi
 fi
 
-AM_CONDITIONAL(BUILD_NEWADDRBOOK, test x"$enable_new_addrbook" = x"yes")
+AM_CONDITIONAL(BUILD_ALTADDRBOOK, test x"$enable_alternate_addressbook" = x"yes")
 
 dnl #######################################################################
 dnl # Check for NetworkManager support
@@ -882,12 +908,8 @@ if test x"$enable_libetpan" = xyes; then
        if test "x$libetpan_result" = "xyes"; then
           LIBETPAN_CPPFLAGS="`$libetpanconfig --cflags`"
           LIBETPAN_LIBS="`$libetpanconfig --libs`"
-           LIBETPAN_STABLE=`$libetpanconfig --version | grep -v ^0`
-          LIBETPAN_VERSION=`$libetpanconfig --version | sed "s/\.//g" | sed "s/-.*$//"`
-           if test x"$LIBETPAN_STABLE" != "x"; then
-                LIBETPAN_VERSION="100"
-           fi
-          if test "$LIBETPAN_VERSION" -lt "057"; then
+          LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 100) + $2}'`
+          if test "$LIBETPAN_VERSION" -lt "57"; then
                AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/])
                AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
                 AC_MSG_ERROR([libetpan 0.57 not found])
@@ -966,6 +988,10 @@ AC_ARG_ENABLE(clamd-plugin,
                [  --disable-clamd-plugin          Do not build clamd plugin],
                [enable_clamd_plugin=$enableval], [enable_clamd_plugin=auto])
 
+AC_ARG_ENABLE(dillo-plugin,
+               [  --disable-dillo-plugin          Do not build dillo plugin],
+               [enable_dillo_plugin=$enableval], [enable_dillo_plugin=auto])
+
 AC_ARG_ENABLE(fancy-plugin,
                [  --disable-fancy-plugin          Do not build fancy plugin],
                [enable_fancy_plugin=$enableval], [enable_fancy_plugin=auto])
@@ -978,10 +1004,18 @@ AC_ARG_ENABLE(gdata-plugin,
                [  --disable-gdata-plugin          Do not build gdata plugin],
                [enable_gdata_plugin=$enableval], [enable_gdata_plugin=auto])
 
+AC_ARG_ENABLE(libravatar-plugin,
+               [  --disable-libravatar-plugin     Do not build libravatar  plugin],
+               [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
+
 AC_ARG_ENABLE(mailmbox-plugin,
                [  --disable-mailmbox-plugin       Do not build mailmbox plugin],
                [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
 
+AC_ARG_ENABLE(managesieve-plugin,
+               [  --disable-managesieve-plugin    Do not build managesieve plugin],
+               [enable_managesieve_plugin=$enableval], [enable_managesieve_plugin=auto])
+
 AC_ARG_ENABLE(newmail-plugin,
                [  --disable-newmail-plugin        Do not build newmail plugin],
                [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
@@ -1054,7 +1088,9 @@ dnl either yes or no, and do the AC_SUBST calls.
 dnl Archive:           libarchive
 dnl Fancy:             Webkit, curl, optionally libsoup-gnome
 dnl Gdata:             libgdata
-dnl Notification:      optionally libnotify libindicate libcanberra_gtk hotkey
+dnl Libravatar:                libcurl
+dnl Notification:      optionally libnotify  unity/messaging-menu
+dnl                               libcanberra_gtk hotkey
 dnl Pdf-Viewer:                libpoppler
 dnl Perl:              sed perl
 dnl PGP/Core:          libgpgme
@@ -1062,63 +1098,75 @@ dnl PGP/Mime:           pgpcore libgpgme
 dnl PGP/Inline:                pgpcore libgpgme
 dnl S/Mime:            pgpcore libgpgme
 dnl Python:            Python
-dnl RSSyl:             libxml2 libcurl
+dnl RSSyl:             expat libcurl
 dnl SpamReport:                libcurl
-dnl vCalendar:         libcurl
+dnl vCalendar:         libcurl, libical
 
 dnl libcurl ********************************************************************
 PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
 AC_SUBST(CURL_LIBS)
 AC_SUBST(CURL_CFLAGS)
 
-dnl libxml2 ********************************************************************
-PKG_CHECK_MODULES(LIBXML, libxml-2.0, HAVE_LIBXML=yes, HAVE_LIBXML=no)
-AC_SUBST(LIBXML_LIBS)
-AC_SUBST(LIBXML_CFLAGS)
+dnl expat **********************************************************************
+PKG_CHECK_MODULES(EXPAT, expat, HAVE_EXPAT=yes, HAVE_EXPAT=no)
+
+if test x"$HAVE_EXPAT" = xno; then
+       AC_CHECK_HEADER(expat.h, [expat_header=yes], [expat_header=no])
+       AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [expat_lib=no])
+       if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
+               HAVE_EXPAT=yes
+               EXPAT_CFLAGS=""
+               EXPAT_LIBS="-lexpat"
+       fi
+fi
+
+AC_SUBST(EXPAT_CFLAGS)
+AC_SUBST(EXPAT_LIBS)
 
 dnl webkit *********************************************************************
 PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 1.1.14, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
 AC_SUBST(WEBKIT_LIBS)
 AC_SUBST(WEBKIT_CFLAGS)
 
+dnl libsoup ********************************************************************
+PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
+if test x"$HAVE_LIBSOUP" = xyes; then
+       AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
+fi
+AC_SUBST(LIBSOUP_CFLAGS)
+AC_SUBST(LIBSOUP_LIBS)
+
 dnl libsoup-gnome **************************************************************
 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
-       AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup is available])
+       AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
 fi
 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
 AC_SUBST(LIBSOUP_GNOME_LIBS)
 
 dnl libarchive *****************************************************************
-AC_SEARCH_LIBS([archive_read_new], [archive],
+PKG_CHECK_MODULES(LIBARCHIVE, libarchive, HAVE_ARCHIVE=yes, HAVE_ARCHIVE=no)
+AC_SUBST(ARCHIVE_LIBS)
+AC_SUBST(ARCHIVE_CFLAGS)
+AC_CHECK_LIB([archive], [archive_read_new],
                       ARCHIVE_LIBS=-larchive
                       HAVE_ARCHIVE=yes
-                      AC_SUBST(ARCHIVE_LIBS),
+                      AC_SUBST(ARCHIVE_LIBS,ARCHIVE_CFLAGS),
                       HAVE_ARCHIVE=no
                       )
 
 dnl libgdata *******************************************************************
-dnl Plugin handles compatibility back to 0.6.4 so there are multiple checks.
-PKG_CHECK_MODULES(GDATA, libgdata >= 0.9.1, HAVE_GDATA=yes, HAVE_GDATA=no)
-if test x"$HAVE_GDATA" = xyes; then
-       AC_DEFINE(HAVE_GDATA_VERSION_0_9_1, 1, [at least version 0.9.1 of libgdata is available])
-       AC_DEFINE(HAVE_GDATA_VERSION_0_9, 1, [at least version 0.9 of libgdata is available])
-else
-       PKG_CHECK_MODULES(GDATA, libgdata >= 0.9, HAVE_GDATA=yes, HAVE_GDATA=no)
-fi
-if test x"$HAVE_GDATA" = xyes; then
-       AC_DEFINE(HAVE_GDATA_VERSION_0_9, 1, [at least version 0.9 of libgdata is available])
-else
-       PKG_CHECK_MODULES(GDATA, libgdata >= 0.6.4, HAVE_GDATA=yes, HAVE_GDATA=no)
-fi
-if test x"$HAVE_GDATA" = xyes; then
-       AC_DEFINE(CM_GDATA_CLIENT_ID, ["Claws Mail GData plugin"], [client id])
-fi
+PKG_CHECK_MODULES(GDATA, libgdata >= 0.17.2, HAVE_GDATA=yes, HAVE_GDATA=no)
 AC_SUBST(GDATA_CFLAGS)
 AC_SUBST(GDATA_LIBS)
 
+dnl libical ********************************************************************
+PKG_CHECK_MODULES(LIBICAL, libical >= 2.0, HAVE_LIBICAL=yes, HAVE_LIBICAL=no)
+AC_SUBST(LIBICAL_CFLAGS)
+AC_SUBST(LIBICAL_LIBS)
+
 dnl Poppler ********************************************************************
-PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.4.2, HAVE_POPPLER=yes, HAVE_POPPLER=no)
+PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
 AC_SUBST(POPPLER_LIBS)
 AC_SUBST(POPPLER_CFLAGS)
 
@@ -1135,9 +1183,6 @@ if test x"$HAVE_POPPLER" = xyes; then
        CFLAGS=$OLD_CFLAGS
 fi
 
-dnl sed ************************************************************************
-AC_CHECK_PROG(HAVE_SED, sed, yes, no)
-
 dnl perl ***********************************************************************
 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
 if test x"$HAVE_PERL" = xyes; then
@@ -1152,17 +1197,29 @@ if test x"$HAVE_PERL" = xyes; then
 fi
 if test x"$HAVE_PERL" = xyes; then
        AC_MSG_CHECKING(for Perl compile flags)
-       if test x"$HAVE_SED" = xno; then
-               AC_MSG_RESULT(no - missing sed)
-               HAVE_PERL=no
-       else
-               PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
-               PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
-               PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm//'`
-               PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb//'`
-               PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm//'`
-               PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc//'`
-               AC_MSG_RESULT(ok)
+       PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
+       PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
+       PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm//'`
+       PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb//'`
+       PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm//'`
+       PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc//'`
+       AC_MSG_RESULT(ok)
+       AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
+       
+       if test x"$HAVE_PERL" = xyes; then
+               AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)], 
+                                            [ HAVE_LIBPERL=no ])
+       fi
+       if test x"$HAVE_LIBPERL" = xno; then
+               LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
+               LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
+               AC_MSG_CHECKING([for libperl.so])
+               if test -f "$LIBPERL_PREFIX/libperl.so"; then
+                       AC_MSG_RESULT(yes)
+                       HAVE_LIBPERL=yes
+               else
+                       AC_MSG_RESULT(no)
+               fi      
        fi
        PERL="perl"
        AC_SUBST(PERL)
@@ -1194,21 +1251,31 @@ AM_PATH_PYTHON([2.5], [
        fi
 
        if test x"$HAVE_PYTHON" = xyes; then
-               # libpython.so
-               PYTHON_SO_FILE="libpython${PYTHON_VERSION}.so"
-               found_libpython_so="no"
-               if test -f "$PYTHON_PREFIX/lib/$PYTHON_SO_FILE"; then
-                       found_libpython_so="yes"
-                       PYTHON_SHARED_LIB=`python -c "import os,sys; print os.path.basename(os.path.realpath(\"$PYTHON_PREFIX/lib/$PYTHON_SO_FILE\"))"`
-               fi
-               if test -f "$PYTHON_PREFIX/lib64/$PYTHON_SO_FILE"; then
-                       found_libpython_so="yes"
-                       PYTHON_SHARED_LIB=`python -c "import os,sys; print os.path.basename(os.path.realpath(\"$PYTHON_PREFIX/lib64/$PYTHON_SO_FILE\"))"`
+               _save_libs="$LIBS"
+               if test x"$platform_win32" = xno; then
+                       # libpython.so
+                       PYTHON_SHARED_LIB="libpython${PYTHON_VERSION}.so"
+                       AC_CHECK_LIB(dl, dlopen, [LIBS="-ldl"])
+                       AC_MSG_CHECKING([whether to dlopen $PYTHON_SHARED_LIB works])
+                       AC_RUN_IFELSE(
+                               [AC_LANG_PROGRAM(
+                                       [#include <dlfcn.h>
+                                        #define PYTHON_SO_FILE "${PYTHON_SHARED_LIB}"
+                                       ],
+                                       [if (!dlopen(PYTHON_SO_FILE, RTLD_NOW | RTLD_GLOBAL)) return 1; return 0;])
+                               ],
+                               [found_libpython_so="yes"],
+                               [found_libpython_so="no"],
+                               [AC_MSG_FAILURE([cross-compiling not supported])])
                fi
                if test x"$found_libpython_so" != x"yes"; then
-                       AC_MSG_WARN(Could not find Python shared libary: $PYTHON_SO_FILE does not exist. Maybe you need to install development packages for Python.)
+                       AC_MSG_RESULT(no)
+                       AC_MSG_WARN(Could not find Python shared libary: ${PYTHON_SHARED_LIB}. Maybe you need to install development packages for Python.)
                        HAVE_PYTHON=no
+               else
+                       AC_MSG_RESULT(yes)
                fi
+               LIBS="$_save_libs";
        fi
        if test x"$HAVE_PYTHON" = xyes; then
                PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.10.3, [AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])], HAVE_PYTHON=no)
@@ -1236,18 +1303,13 @@ fi
 AC_SUBST(libcanberra_gtk_CFLAGS)
 AC_SUBST(libcanberra_gtk_LIBS)
 
-dnl libindicate ****************************************************************
-dnl We support either 0.3+ or 0.5+
-LIBINDICATE_MODULE=indicate
-LIBINDICATE_REQUIRED=0.3.0
-
-PKG_CHECK_EXISTS(indicate-0.5 >= 0.5.0, LIBINDICATE_MODULE=indicate-0.5)
-PKG_CHECK_MODULES(libindicate, $LIBINDICATE_MODULE >= $LIBINDICATE_REQUIRED, HAVE_LIBINDICATE=yes, HAVE_LIBINDICATE=no)
-if test x"$HAVE_LIBINDICATE" = xyes; then
-       AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for indicators])
+dnl unity/messaging-menu *******************************************************
+PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
+if test x"$HAVE_UNITY" = xyes; then
+       AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
 fi
-AC_SUBST(libindicate_CFLAGS)
-AC_SUBST(libindicate_LIBS)
+AC_SUBST(unity_CFLAGS)
+AC_SUBST(unity_LIBS)
 
 dnl hotkeys ********************************************************************
 PKG_CHECK_MODULES(CM_NP_HOTKEY, [gio-2.0 >= 2.15.6 gio-unix-2.0 >= 2.15.6], HAVE_HOTKEYS=yes, HAVE_HOTKEYS=no)
@@ -1257,7 +1319,6 @@ fi
 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
 AC_SUBST(CM_NP_HOTKEY_LIBS)
 
-
 dnl Third, we now cross the requested plugins and the available dependencies
 dnl If some dependencies are missing and the plugin was explicitely enabled,
 dnl we error out, else we only inform.
@@ -1359,6 +1420,15 @@ else
        AC_MSG_RESULT(no)
 fi
 
+AC_MSG_CHECKING([whether to build Dillo plugin])
+if test x"$enable_dillo_plugin" != xno; then
+       PLUGINS="$PLUGINS dillo"
+       AC_MSG_RESULT(yes)
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
+       AC_MSG_RESULT(no)
+fi
+
 AC_MSG_CHECKING([whether to build fancy plugin])
 if test x"$enable_fancy_plugin" != xno; then
        dependencies_missing=""
@@ -1421,6 +1491,31 @@ else
        AC_MSG_RESULT(no)
 fi
 
+AC_MSG_CHECKING([whether to build libravatar plugin])
+if test x"$enable_libravatar_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_CURL" = xno; then
+               dependencies_missing="libcurl $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS libravatar"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_libravatar_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
+               enable_libravatar_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
+       else
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
+       fi
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
+       AC_MSG_RESULT(no)
+fi
+
 AC_MSG_CHECKING([whether to build mailmbox plugin])
 if test x"$enable_mailmbox_plugin" != xno; then
        PLUGINS="$PLUGINS mailmbox"
@@ -1430,6 +1525,15 @@ else
        AC_MSG_RESULT(no)
 fi
 
+AC_MSG_CHECKING([whether to build managesieve plugin])
+if test x"$enable_managesieve_plugin" != xno; then
+       PLUGINS="$PLUGINS managesieve"
+       AC_MSG_RESULT(yes)
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
+       AC_MSG_RESULT(no)
+fi
+
 AC_MSG_CHECKING([whether to build newmail plugin])
 if test x"$enable_newmail_plugin" != xno; then
        PLUGINS="$PLUGINS newmail"
@@ -1460,10 +1564,10 @@ if test x"$enable_notification_plugin" != xno; then
                notification_missing_dependencies="$notification_missing_dependencies hotkeys"
        fi
        notification_features="$notification_features lcdproc"
-       if test x"$HAVE_LIBINDICATE" = xyes; then
-               notification_features="$notification_features libindicate"
+       if test x"$HAVE_UNITY" = xyes; then
+               notification_features="$notification_features unity/messaging-menu"
        else
-               notification_missing_dependencies="$notification_missing_dependencies libindicate"
+               notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
        fi
        if test x"$HAVE_LIBNOTIFY" = xyes; then
                notification_features="$notification_features libnotify"
@@ -1510,8 +1614,8 @@ AC_MSG_CHECKING([whether to build perl plugin])
 if test x"$enable_perl_plugin" != xno; then
        dependencies_missing=""
 
-       if test x"$HAVE_PERL" = xno; then
-               dependencies_missing="perl $dependencies_missing"
+       if test x"$HAVE_LIBPERL" = xno; then
+               dependencies_missing="libperl $dependencies_missing"
        fi
 
        if test x"$dependencies_missing" = x; then
@@ -1641,8 +1745,8 @@ AC_MSG_CHECKING([whether to build rssyl plugin])
 if test x"$enable_rssyl_plugin" != xno; then
        dependencies_missing=""
 
-       if test x"$HAVE_LIBXML" = xno; then
-               dependencies_missing="libxml2 $dependencies_missing"
+       if test x"$HAVE_EXPAT" = xno; then
+               dependencies_missing="expat $dependencies_missing"
        fi
        if test x"$HAVE_CURL" = xno; then
                dependencies_missing="libcurl $dependencies_missing"
@@ -1745,6 +1849,10 @@ if test x"$enable_vcalendar_plugin" != xno; then
                dependencies_missing="libcurl $dependencies_missing"
        fi
 
+  if test x"$HAVE_LIBICAL" = xno; then
+    dependencies_missing="libical $dependencies_missing"
+  fi
+
        if test x"$HAVE_PERL" = xno; then
                dependencies_missing="perl $dependencies_missing"
        fi
@@ -1777,10 +1885,13 @@ AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN,         test x"$enable_bogofilter_plugin" != xn
 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN,          test x"$enable_bsfilter_plugin" != xno)
 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN,             test x"$enable_clamd_plugin" != xno)
 AM_CONDITIONAL(BUILD_DEMO_PLUGIN,              test x"$enable_demo_plugin" != xno)
+AM_CONDITIONAL(BUILD_DILLO_PLUGIN,             test x"$enable_dillo_plugin" != xno)
 AM_CONDITIONAL(BUILD_FANCY_PLUGIN,             test x"$enable_fancy_plugin" != xno)
 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN,         test x"$enable_fetchinfo_plugin" != xno)
 AM_CONDITIONAL(BUILD_GDATA_PLUGIN,             test x"$enable_gdata_plugin" != xno)
+AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN,                test x"$enable_libravatar_plugin" != xno)
 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN,          test x"$enable_mailmbox_plugin" != xno)
+AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN,               test x"$enable_managesieve_plugin" != xno)
 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN,           test x"$enable_newmail_plugin" != xno)
 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN,      test x"$enable_notification_plugin" != xno)
 AM_CONDITIONAL(BUILD_HOTKEYS,                  test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
@@ -1823,10 +1934,13 @@ src/plugins/bsfilter/Makefile
 src/plugins/clamd/Makefile
 src/plugins/clamd/libclamd/Makefile
 src/plugins/demo/Makefile
+src/plugins/dillo/Makefile
 src/plugins/fancy/Makefile
 src/plugins/fetchinfo/Makefile
 src/plugins/gdata/Makefile
+src/plugins/libravatar/Makefile
 src/plugins/mailmbox/Makefile
+src/plugins/managesieve/Makefile
 src/plugins/newmail/Makefile
 src/plugins/notification/Makefile
 src/plugins/notification/gtkhotkey/Makefile
@@ -1834,20 +1948,17 @@ src/plugins/pdf_viewer/Makefile
 src/plugins/perl/Makefile
 src/plugins/perl/tools/Makefile
 src/plugins/python/Makefile
+src/plugins/python/examples/Makefile
 src/plugins/pgpcore/Makefile
 src/plugins/pgpmime/Makefile
 src/plugins/pgpinline/Makefile
 src/plugins/rssyl/Makefile
+src/plugins/rssyl/libfeed/Makefile
 src/plugins/smime/Makefile
 src/plugins/spamassassin/Makefile
 src/plugins/spam_report/Makefile
 src/plugins/tnef_parse/Makefile
 src/plugins/vcalendar/Makefile
-src/plugins/vcalendar/libical/Makefile
-src/plugins/vcalendar/libical/libical/icalversion.h
-src/plugins/vcalendar/libical/libical/Makefile
-src/plugins/vcalendar/libical/design-data/Makefile
-src/plugins/vcalendar/libical/scripts/Makefile
 doc/Makefile
 doc/man/Makefile
 tools/Makefile
@@ -1865,24 +1976,12 @@ manual/fr/dist/pdf/Makefile
 manual/fr/dist/ps/Makefile
 manual/fr/dist/html/Makefile
 manual/fr/dist/txt/Makefile
-manual/pl/Makefile
-manual/pl/dist/Makefile
-manual/pl/dist/pdf/Makefile
-manual/pl/dist/ps/Makefile
-manual/pl/dist/html/Makefile
-manual/pl/dist/txt/Makefile
 manual/es/Makefile
 manual/es/dist/Makefile
 manual/es/dist/pdf/Makefile
 manual/es/dist/ps/Makefile
 manual/es/dist/html/Makefile
 manual/es/dist/txt/Makefile
-manual/de/Makefile
-manual/de/dist/Makefile
-manual/de/dist/pdf/Makefile
-manual/de/dist/ps/Makefile
-manual/de/dist/html/Makefile
-manual/de/dist/txt/Makefile
 claws-mail.pc
 ])
 
@@ -1890,10 +1989,10 @@ dnl Output the configuration summary
 echo ""
 echo "$PACKAGE $VERSION"
 echo ""
-if test x"$enable_new_addrbook" = xyes; then
-       echo "Using Address Book : New experimental interface"
+if test x"$enable_alternate_addressbook" = xyes; then
+       echo "Using Address Book : Alternate experimental interface"
 else
-       echo "Using Address Book : Old stable interface"
+       echo "Using Address Book : Original stable interface"
        echo "JPilot             : $enable_jpilot"
        echo "LDAP               : $enable_ldap"
 fi
@@ -1910,8 +2009,8 @@ echo "DBUS               : $enable_dbus"
 echo "NetworkManager     : $enable_networkmanager"
 echo "Manual             : $enable_manual"
 echo "Generic UMPC code  : $enable_generic_umpc"
-echo "Maemo build        : $enable_maemo"
 echo "Config dir         : $ac_cv_with_config_dir"
+echo "Password crypto    : $pwd_crypto"
 
 echo "Plugins"
 echo "   Built:"