Fix test for git to allow tarball builds.
[claws.git] / configure.ac
index 48668a71a5d0de9c835e78f2df3bfbdbe808e322..0f433b88357f92169f5d3a010a630efa60bbd442 100644 (file)
@@ -7,19 +7,38 @@ 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=77
 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`
+    fi
+else
+    GIT_VERSION=`sh -c '. ./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,20 +54,10 @@ AC_SUBST(MAJOR_VERSION)
 AC_SUBST(MINOR_VERSION)
 AC_SUBST(MICRO_VERSION)
 AC_SUBST(EXTRA_VERSION)
+AC_SUBST(GIT_VERSION)
 
-dnl GNOME installed?
-AC_PATH_PROG(GNOME_CONFIG, gnome-config, no)
-if test "$GNOME_CONFIG" != no; then
-       gnomedatadir="`gnome-config --datadir`"
-       gnomeprefix="`gnome-config --prefix`"
-       if test "${prefix}" = "NONE"; then
-               gnomedatadir="${ac_default_prefix}/${gnomedatadir#${gnomeprefix}}"
-       else
-               gnomedatadir="${prefix}/${gnomedatadir#${gnomeprefix}}"
-       fi
-       AC_SUBST(gnomedatadir)
-fi
-AM_CONDITIONAL(CLAWS_GNOME, test -n "$gnomedatadir")
+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)
 
 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
 if test x$PKG_CONFIG = xno ; then
@@ -97,7 +106,7 @@ 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
@@ -159,7 +168,7 @@ fi
 CFLAGS="$CFLAGS -Wall"
 
 if test $USE_MAINTAINER_MODE = yes; then
-       CFLAGS="-g -Wall -Wno-pointer-sign"
+       CFLAGS="-g -Wall -Wno-pointer-sign -DUSE_MAINTAINER_MODE"
 fi
 
 pthread_name=
@@ -180,7 +189,7 @@ case "$target" in
        CFLAGS="$CFLAGS -std=gnu99 -DSOLARIS"
        ;;
 esac
-  
+
 dnl Checks for iconv
 AM_ICONV
 
@@ -196,7 +205,7 @@ AC_CHECK_FUNCS(bind_textdomain_codeset)
 LIBS=$syl_save_LIBS
 
 dnl for gettext
-ALL_LINGUAS="bg ca cs de en_GB es fi fr hu id_ID it ja lt nl pl pt_BR pt_PT ru sk sv uk zh_CN zh_TW"
+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"
 GETTEXT_PACKAGE=claws-mail
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
@@ -204,16 +213,92 @@ AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
 AM_GNU_GETTEXT_VERSION([0.15])
 AM_GNU_GETTEXT([external])
 
+AC_ARG_ENABLE(manual,
+               [  --disable-manual                Do not build user manual],
+               [enable_manual=$enableval], [enable_manual=yes])
+
+AC_ARG_ENABLE(libsm,
+               [  --disable-libsm                 Do not build libSM support for session management],
+               [enable_libsm=$enableval], [enable_libsm=yes])
+
+AC_ARG_ENABLE(ipv6,
+               [  --disable-ipv6                  Do not build IPv6 support],
+               [enable_ipv6=$enableval], [enable_ipv6=yes])
+
+AC_ARG_ENABLE(gnutls,
+               [  --disable-gnutls                Do not build GnuTLS support for SSL/TLS],
+                   [enable_gnutls=$enableval], [enable_gnutls=yes])
+
+AC_ARG_ENABLE(enchant,
+               [  --disable-enchant               Do not build Enchant support for spell-checking],
+               [enable_enchant=$enableval], [enable_enchant=yes])
+
+AC_ARG_ENABLE(crash-dialog,
+               [  --enable-crash-dialog           Build crash dialog],
+               [enable_crash_dialog=$enableval], [enable_crash_dialog=no])
+
+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])
+
+AC_ARG_ENABLE(pthread,
+               [  --disable-pthread               Do not build pthread support],
+               [enable_pthread=$enableval], [enable_pthread=yes])
+
+AC_ARG_ENABLE(startup-notification,
+               [  --disable-startup-notification  Do not startup notification support],
+               [enable_startup_notification=$enableval], [enable_startup_notification=yes])
+
+AC_ARG_ENABLE(dbus,
+               [  --disable-dbus                  Do not build DBUS support],
+               [enable_dbus=$enableval], [enable_dbus=yes])
+
+AC_ARG_ENABLE(ldap,
+               [  --disable-ldap                  Do not build LDAP support],
+               [enable_ldap=$enableval], [enable_ldap=yes])
+
+AC_ARG_ENABLE(jpilot,
+               [  --disable-jpilot                Do not build JPilot support],
+               [enable_jpilot=$enableval], [enable_jpilot=yes])
+
+AC_ARG_ENABLE(networkmanager,
+               [  --disable-networkmanager        Do not build NetworkManager support],
+               [enable_networkmanager=$enableval], [enable_networkmanager=yes])
+
+AC_ARG_ENABLE(libetpan,
+               [  --disable-libetpan              Do not build libetpan support for IMAP4/NNTP],
+               [enable_libetpan=$enableval], [enable_libetpan=yes])
+
+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(gtk3,
+               [  --enable-gtk3                   Build GTK3 support],
+               [enable_gtk3=$enableval], [enable_gtk3=no])
+
+AC_ARG_ENABLE(deprecated,
+               [  --disable-deprecated            Disable deprecated GTK functions],
+               [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
+
 manualdir='${docdir}/manual'
 AC_ARG_WITH(manualdir,
        [  --with-manualdir=DIR    Manual directory],
        [manualdir="$withval"])
 AC_SUBST(manualdir)
 
-AC_ARG_ENABLE(manual,
-       [  --disable-manual           do not build manual],
-       [ac_cv_enable_manual=$enableval], [ac_cv_enable_manual=yes])
-
 dnl ******************************
 dnl ** Check for required tools **
 dnl ** to build manuals         **
@@ -229,16 +314,16 @@ AM_CONDITIONAL(MANUAL_TXT, test -n "$DOCBOOK2TXT")
 AM_CONDITIONAL(MANUAL_PDF, test -n "$DOCBOOK2PDF")
 AM_CONDITIONAL(MANUAL_PS, test -n "$DOCBOOK2PS")
 
-if test x"$ac_cv_enable_manual" = x"yes"; then
+if test x"$enable_manual" = x"yes"; then
     if test -n "$DOCBOOK2TXT" -o -n "$DOCBOOK2HTML" \
        -o -n "$DOCBOOK2PS" -o -n "$DOCBOOK2PDF"; then
-           ac_cv_enable_manual=yes
+           enable_manual=yes
        else
-           ac_cv_enable_manual=no
+           enable_manual=no
     fi
 fi
 
-AM_CONDITIONAL(BUILD_MANUAL, test x"$ac_cv_enable_manual" = xyes)
+AM_CONDITIONAL(BUILD_MANUAL, test x"$enable_manual" = xyes)
 
 dnl Set PACKAGE_DATA_DIR in config.h.
 if test "x${datarootdir}" = 'x${prefix}/share'; then
@@ -255,17 +340,14 @@ AC_CHECK_LIB(xpg4, setlocale)
 
 SM_LIBS=""
 dnl Check for LibSM
-AC_ARG_ENABLE(libsm,
-       [  --disable-libsm    disable libSM support for session management.],
-       [ac_cv_enable_libsm=$enableval], [ac_cv_enable_libsm=yes])
 AC_MSG_CHECKING([whether to use LibSM])
-if test x"$ac_cv_enable_libsm" = xyes; then
+if test x"$enable_libsm" = xyes; then
        AC_MSG_RESULT(yes)
        AC_CHECK_LIB(SM, SmcSaveYourselfDone,
-               [SM_LIBS="$X_LIBS -lSM -lICE"],ac_cv_enable_libsm=no,
+               [SM_LIBS="$X_LIBS -lSM -lICE"],enable_libsm=no,
                $X_LIBS -lICE)
-       AC_CHECK_HEADERS(X11/SM/SMlib.h,,ac_cv_enable_libsm=no)
-       if test x"$ac_cv_enable_libsm" = xyes; then
+       AC_CHECK_HEADERS(X11/SM/SMlib.h,,enable_libsm=no)
+       if test x"$enable_libsm" = xyes; then
                AC_DEFINE(HAVE_LIBSM, 1, [Define to 1 if you have libSM installed])
        else
                AC_MSG_RESULT(not found)
@@ -302,7 +384,7 @@ 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 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>],
@@ -350,7 +432,7 @@ 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)
-      
+
 GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0`
 AC_SUBST(GLIB_GENMARSHAL)
 
@@ -364,13 +446,9 @@ AC_CHECK_FUNCS(bind_textdomain_codeset)
 LIBS=$syl_save_LIBS
 
 dnl check for IPv6 option
-AC_ARG_ENABLE(ipv6,
-       [  --disable-ipv6           disable build IPv6 support],
-       [ac_cv_enable_ipv6=$enableval], [ac_cv_enable_ipv6=yes])
-
 dnl automated checks for IPv6 support.
 AC_MSG_CHECKING([whether to use IPv6])
-if test x"$ac_cv_enable_ipv6" = xyes; then
+if test x"$enable_ipv6" = xyes; then
        AC_MSG_RESULT(yes)
        AC_MSG_CHECKING([for IPv6 support])
        AC_CACHE_VAL(ac_cv_ipv6,[
@@ -385,7 +463,7 @@ if test x"$ac_cv_enable_ipv6" = xyes; then
                AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
        else
                AC_MSG_WARN(*** IPv6 will not be supported ***)
-               ac_cv_enable_ipv6=no
+               enable_ipv6=no
        fi
 else
        AC_MSG_RESULT(no)
@@ -393,11 +471,8 @@ fi
 
 dnl GNUTLS
 AC_MSG_CHECKING([whether to use GnuTLS])
-AC_ARG_ENABLE(gnutls,    [  --enable-gnutls      enable GnuTLS support],
-            [ac_cv_enable_gnutls=$enableval], [ac_cv_enable_gnutls=yes])
-
-AC_MSG_RESULT($ac_cv_enable_gnutls)
-if test "x$ac_cv_enable_gnutls" != "xno"; then
+AC_MSG_RESULT($enable_gnutls)
+if test "x$enable_gnutls" != "xno"; then
         PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.2,
         [
                 AC_DEFINE(USE_GNUTLS, 1, gnutls)
@@ -442,7 +517,7 @@ AC_ARG_WITH(config-dir,    [  --with-config-dir=RCDIR      Local configuration d
              ac_cv_with_config_dir="$withval", ac_cv_with_config_dir=".claws-mail")
 if test x"$ac_cv_with_config_dir" = x""; then
        ac_cv_with_config_dir=".claws-mail"
-fi 
+fi
 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
 
 dnl ************************
@@ -450,120 +525,97 @@ dnl ** GTK user interface **
 dnl ************************
 
 dnl Checks for GTK
-AC_ARG_ENABLE(gtk3,
-       AS_HELP_STRING([--enable-gtk3],
-               [Determines whether to use Gtk+ 3.0.]),
-               [ac_cv_enable_gtk3=$enableval],[ac_cv_enable_gtk3=no])
 AM_CONDITIONAL(GTK3, false)
 AM_CONDITIONAL(GTK2, true)
-if test x"$ac_cv_enable_gtk3" = x"yes"; then
+if test x"$enable_gtk3" = x"yes"; then
        PKG_CHECK_MODULES(GTK, gtk+-3.0 >= 3.0 cairo)
        AM_CONDITIONAL(GTK3, true)
        AM_CONDITIONAL(GTK2, false)
 else
        PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.16)
-
-       dnl --disable-deprecated switch for GTK2 purification
-       AC_ARG_ENABLE(deprecated, [  --disable-deprecated  disable deprecated GTK functions. ],
-                         [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
 fi
 AC_SUBST(GTK_CFLAGS)
 AC_SUBST(GTK_LIBS)
 
 dnl enchant is used for spell checking
 AC_MSG_CHECKING([whether to use enchant])
-AC_ARG_ENABLE(enchant,
-       [  --disable-enchant         disable enchant support],
-       [ac_cv_enable_enchant=$enableval], [ac_cv_enable_enchant=yes])
-AC_MSG_RESULT($ac_cv_enable_enchant)
-if test $ac_cv_enable_enchant = yes; then
+AC_MSG_RESULT($enable_enchant)
+if test $enable_enchant = yes; then
        PKG_CHECK_MODULES(ENCHANT, enchant >= 1.0.0,
        [
                AC_DEFINE(USE_ENCHANT, 1, enchant)
                echo "Building with enchant"
-               ac_cv_enable_enchant=yes
+               enable_enchant=yes
                CFLAGS="$CFLAGS `$PKG_CONFIG --cflags enchant`"
        ],
        [
                echo "Building without enchant-notification"
-               ac_cv_enable_enchant=no
+               enable_enchant=no
        ])
        AC_SUBST(ENCHANT_CFLAGS)
        AC_SUBST(ENCHANT_LIBS)
 fi
 
 dnl want crash dialog
-AC_ARG_ENABLE(crash-dialog,
-       [  --enable-crash-dialog   Enable crash dialog [default=no]],
-       [ac_cv_enable_crash_dialog=$enableval], [ac_cv_enable_crash_dialog=no])
-if test $ac_cv_enable_crash_dialog = yes; then
+if test $enable_crash_dialog = yes; then
 dnl check if GDB is somewhere
-       AC_CHECK_PROG(ac_cv_enable_crash_dialog, gdb, yes, no)
+       AC_CHECK_PROG(enable_crash_dialog, gdb, yes, no)
        AC_MSG_CHECKING([whether to use crash dialog])
-       if test $ac_cv_enable_crash_dialog = yes; then
+       if test $enable_crash_dialog = yes; then
                AC_DEFINE(CRASH_DIALOG, 1, Pop up crash dialog)
        fi
-       AC_MSG_RESULT($ac_cv_enable_crash_dialog)
+       AC_MSG_RESULT($enable_crash_dialog)
 fi
 
 dnl generic umpc
-AC_ARG_ENABLE(generic-umpc,
-       [  --enable-generic-umpc   Enable generic UMPC code [default=no]],
-       [ac_cv_enable_generic_umpc=$enableval], [ac_cv_enable_generic_umpc=no])
-if test $ac_cv_enable_generic_umpc = yes; then
+if test $enable_generic_umpc = yes; then
        AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
-       AC_MSG_RESULT($ac_cv_enable_generic_umpc)
+       AC_MSG_RESULT($enable_generic_umpc)
 fi
 
 dnl Maemo platform
-AC_ARG_ENABLE(maemo,
-       [  --enable-maemo   build for the Maemo platform [default=no]],
-       [ac_cv_enable_maemo=$enableval], [ac_cv_enable_maemo=no])
-if test $ac_cv_enable_maemo = yes; then
-       PKG_CHECK_MODULES(MAEMO, libosso hildon-libs hildon-fm gnome-vfs-2.0, ac_cv_enable_maemo=yes,
-                 ac_cv_enable_maemo=no)
+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 $ac_cv_enable_maemo = no; then
+       if test $enable_maemo = no; then
                #test for chinook
-               PKG_CHECK_MODULES(MAEMO, libosso hildon-1 hildon-fm-2 gnome-vfs-2.0 hal, ac_cv_enable_maemo=yes,
-                         ac_cv_enable_maemo=no)
+               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 $ac_cv_enable_maemo = no; then
+               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)
-                       ac_cv_enable_generic_umpc=yes
+                       enable_generic_umpc=yes
                fi
        else
                AC_DEFINE(MAEMO, 1, Build for maemo)
                AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
-               ac_cv_enable_generic_umpc=yes
+               enable_generic_umpc=yes
        fi
 fi
 
-PKG_CHECK_MODULES(CONIC, conic, ac_cv_enable_conic=yes,
-         ac_cv_enable_conic=no)
+PKG_CHECK_MODULES(CONIC, conic, enable_conic=yes,
+         enable_conic=no)
 AC_SUBST(CONIC_CFLAGS)
 AC_SUBST(CONIC_LIBS)
-if test $ac_cv_enable_conic = yes; then
+if test $enable_conic = yes; then
        AC_DEFINE(CONIC, 1, Have conic lib)
 fi
 
 dnl Check for X-Face support
-AC_ARG_ENABLE(compface,
-       [  --disable-compface      disable compface (X-Face) support],
-       [ac_cv_enable_compface=$enableval], [ac_cv_enable_compface=yes])
 AC_MSG_CHECKING([whether to use compface])
-if test x"$ac_cv_enable_compface" = xyes; then
+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.)],
-               [ac_cv_enable_compface=no])
-       if test x"$ac_cv_enable_compface" = xyes; then
+               [enable_compface=no])
+       if test x"$enable_compface" = xyes; then
                COMPFACE_LIBS="-lcompface"
        else
                COMPFACE_LIBS=""
@@ -574,11 +626,8 @@ else
 fi
 
 dnl check for pthread support
-AC_ARG_ENABLE(pthread,
-       [  --disable-pthread           disable pthread support],
-       [ac_cv_enable_pthread=$enableval], [ac_cv_enable_pthread=yes])
 AC_MSG_CHECKING([whether to use pthread])
-if test x$ac_cv_enable_pthread = xno; then
+if test x$enable_pthread = xno; then
        AC_MSG_RESULT(no)
 else
        AC_MSG_RESULT(yes)
@@ -588,13 +637,13 @@ else
         # library installed under a different name.  Checking for the
         # header is okay.
         if test -n "${pthread_name}" ; then
-           ac_cv_enable_pthread=yes
+           enable_pthread=yes
         else
-       AC_CHECK_LIB(pthread, pthread_create, :, ac_cv_enable_pthread=no)
+       AC_CHECK_LIB(pthread, pthread_create, :, enable_pthread=no)
         fi
-       AC_CHECK_HEADERS(pthread.h, :, ac_cv_enable_pthread=no)
+       AC_CHECK_HEADERS(pthread.h, :, enable_pthread=no)
 
-       if test x$ac_cv_enable_pthread = xyes; then
+       if test x$enable_pthread = xyes; then
                AC_DEFINE(USE_PTHREAD, 1, Define if you have pthread)
                 if test -z "${pthread_name}" ; then
                PTHREAD_LIBS="-lpthread"
@@ -636,8 +685,6 @@ LIBS="$LIBS $LIBRESOLV"
 dnl #######################################################################
 dnl # Check for startup notification
 dnl #######################################################################
-AC_ARG_ENABLE(startup-notification, [  --disable-startup-notification    disable startup notification support],,enable_startup_notification=yes)
-
 if test "x$enable_startup_notification" = "xyes"; then
        PKG_CHECK_MODULES(STARTUP_NOTIFICATION, libstartup-notification-1.0 >= 0.5,
        [
@@ -657,8 +704,6 @@ fi
 dnl #######################################################################
 dnl # Check for D-Bus support
 dnl #######################################################################
-AC_ARG_ENABLE(dbus, [  --disable-dbus    disable dbus support],,enable_dbus=yes)
-
 if test "x$enable_dbus" = "xyes"; then
        PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60, dbus-glib-1 >= 0.60],
        [
@@ -684,7 +729,6 @@ AC_MSG_CHECKING([whether DBUS support for new 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])
-       AC_ARG_ENABLE(new-addrbook, [  --enable-new-addrbook     enable new address book],,enable_new_addrbook=no)
        if test x"$enable_new_addrbook" = xyes; then
                AC_MSG_RESULT([yes])
                PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
@@ -712,16 +756,13 @@ dnl #######################################################################
 if test x"$enable_new_addrbook" = xno; then
        dnl for LDAP support in addressbook
        dnl no check for libraries; dynamically loaded
-       AC_ARG_ENABLE(ldap,
-               [  --disable-ldap         disable LDAP support],
-               [ac_cv_enable_ldap=$enableval], [ac_cv_enable_ldap=yes])
        AC_MSG_CHECKING([whether to use LDAP])
-       if test x"$ac_cv_enable_ldap" = xno; then
+       if test x"$enable_ldap" = xno; then
                AC_MSG_RESULT(no)
-       elif test x"$ac_cv_enable_ldap" = xyes -a x"$ac_cv_enable_pthread" = xno; then
+       elif test x"$enable_ldap" = xyes -a x"$enable_pthread" = xno; then
                AC_MSG_RESULT(no - LDAP support needs pthread support)
 
-               ac_cv_enable_ldap=no
+               enable_ldap=no
        elif test x"$platform_win32" = xyes; then
                AC_MSG_RESULT(yes)
                AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
@@ -738,13 +779,13 @@ if test x"$enable_new_addrbook" = xno; then
                                 $LDAP_LIBS)
 
                AC_CHECK_HEADERS(ldap.h lber.h,
-                                [ ac_cv_enable_ldap=yes ],
-                                [ ac_cv_enable_ldap=no ])
+                                [ enable_ldap=yes ],
+                                [ enable_ldap=no ])
 
-               if test "$ac_cv_enable_ldap" = yes; then
+               if test "$enable_ldap" = yes; then
                        AC_CHECK_LIB(ldap, ldap_open,
-                                        [ ac_cv_enable_ldap=yes ],
-                                        [ ac_cv_enable_ldap=no ],
+                                        [ enable_ldap=yes ],
+                                        [ enable_ldap=no ],
                                         $LDAP_LIBS)
 
                        AC_CHECK_LIB(ldap, ldap_start_tls_s,
@@ -754,12 +795,12 @@ if test x"$enable_new_addrbook" = xno; then
                fi
 
                AC_MSG_CHECKING([whether ldap library is available])
-               AC_MSG_RESULT($ac_cv_enable_ldap)
+               AC_MSG_RESULT($enable_ldap)
 
                AC_MSG_CHECKING([whether TLS library is available])
                AC_MSG_RESULT($ac_cv_have_tls)
 
-               if test "$ac_cv_enable_ldap" = yes; then
+               if test "$enable_ldap" = yes; then
                        AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
                        LDAP_LIBS="$LDAP_LIBS -lldap"
                        AC_SUBST(LDAP_LIBS)
@@ -794,23 +835,20 @@ if test x"$enable_new_addrbook" = xno; then
 
        dnl for JPilot support in addressbook
        dnl no check for libraries; these are dynamically loaded
-       AC_ARG_ENABLE(jpilot,
-               [  --disable-jpilot         disable JPilot support],
-               [ac_cv_enable_jpilot=$enableval], [ac_cv_enable_jpilot=yes])
        AC_MSG_CHECKING([whether to use JPilot])
-       if test "$ac_cv_enable_jpilot" = yes; then
+       if test "$enable_jpilot" = yes; then
                AC_MSG_RESULT(yes)
                AC_CHECK_HEADERS(pi-args.h pi-appinfo.h pi-address.h pi-version.h,
                                 [ AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ],
-                                [ ac_cv_enable_jpilot=no ])
-               if test "$ac_cv_enable_jpilot" = no; then
+                                [ enable_jpilot=no ])
+               if test "$enable_jpilot" = no; then
                        AC_CHECK_HEADERS(libpisock/pi-args.h libpisock/pi-appinfo.h libpisock/pi-address.h libpisock/pi-version.h,
-                                        [ ac_cv_enable_jpilot=yes
+                                        [ enable_jpilot=yes
                                           AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
                fi
 
-               AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" ac_cv_enable_jpilot="no"])
-               if test x"$ac_cv_enable_jpilot" = xyes; then
+               AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" enable_jpilot="no"])
+               if test x"$enable_jpilot" = xyes; then
                        AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
                else
                        AC_MSG_NOTICE([JPilot support not available])
@@ -827,621 +865,1003 @@ dnl #######################################################################
 dnl # Check for NetworkManager support
 dnl #######################################################################
 if test x"$enable_dbus_glib" = xyes; then
-       AC_ARG_ENABLE(networkmanager-support, [  --disable-networkmanager-support  disable NetworkManager support],,enable_networkmanager_support=yes)
-       if test x"$enable_networkmanager_support" = xyes; then
+       if test x"$enable_networkmanager" = xyes; then
                PKG_CHECK_MODULES(NETWORKMANAGER_SUPPORT, NetworkManager >= 0.6.2,
                [
                        AC_DEFINE(HAVE_NETWORKMANAGER_SUPPORT, 1, [Define if NetworkManager support is to be included.])
                        echo "Building with NetworkManager support"
-                       enable_networkmanager_support=yes
+                       enable_networkmanager=yes
                ],
                [
                        echo "NetworkManager not found."
-                       enable_networkmanager_support=no
+                       enable_networkmanager=no
                ])
                AC_SUBST(NETWORKMANAGER_SUPPORT_CFLAGS)
        fi
 else
        echo "NetworkManager support deactivated as D-Bus requirements were not met."
-       enable_networkmanager_support=no
+       enable_networkmanager=no
+fi
+
+dnl Libetpan
+AC_MSG_CHECKING([whether to use libetpan])
+if test x"$enable_libetpan" = xyes; then
+       AC_MSG_RESULT(yes)
+       libetpan_result=no
+       AC_PATH_PROG(libetpanconfig, [libetpan-config])
+       if test "x$libetpanconfig" != "x"; then
+         CPPFLAGS="$CPPFLAGS `$libetpanconfig --cflags 2>/dev/null`"
+         AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
+         if test "x$libetpan_result" = "xyes"; then
+           AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
+           LIBS="$LIBS `$libetpanconfig --libs 2>/dev/null`"
+           AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
+           AC_MSG_RESULT([$libetpan_result])
+         fi
+       fi
+       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
+               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])
+          fi
+          AC_SUBST(LIBETPAN_FLAGS)
+          AC_SUBST(LIBETPAN_LIBS)
+          AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNTP support.)
+       else
+          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])
+       fi
+else
+       AC_MSG_RESULT(no)
+fi
+AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
+
+AC_MSG_CHECKING([whether to use valgrind])
+if test x$enable_valgrind = xyes; then
+       AC_MSG_RESULT(yes)
+       PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
+                         enable_valgrind=yes, enable_valgrind=no)
+       if test x"$enable_valgrind" = xyes; then
+               AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
+       else
+               AC_MSG_RESULT(not found)
+       fi
+else
+       AC_MSG_RESULT(no)
 fi
+AM_CONDITIONAL(CLAWS_VALGRIND, test x"$enable_valgrind" = x"yes")
 
 dnl *************************
 dnl ** section for plugins **
 dnl *************************
 
 PLUGINS=""
+DISABLED_PLUGINS=""
+MISSING_DEPS_PLUGINS=""
+
+dnl First we set the enabled status - either enabled (yes), auto-enabled (auto)
+dnl or (auto-)disabled (no for both)
+dnl
+dnl All plugins are auto-enabled except for Demo which is just there to help
+dnl potential plugins writers.
 
-dnl Find curl-config, used by fancy, vcalendar
-PKG_CHECK_MODULES(CURL, libcurl)
+AC_ARG_ENABLE(acpi_notifier-plugin,
+               [  --disable-acpi_notifier-plugin  Do not build acpi_notifier plugin],
+               [enable_acpi_notifier_plugin=$enableval], [enable_acpi_notifier_plugin=auto])
+
+AC_ARG_ENABLE(address_keeper-plugin,
+               [  --disable-address_keeper-plugin Do not build address_keeper plugin],
+               [enable_address_keeper_plugin=$enableval], [enable_address_keeper_plugin=auto])
+
+AC_ARG_ENABLE(archive-plugin,
+               [  --disable-archive-plugin        Do not build archive plugin],
+               [enable_archive_plugin=$enableval], [enable_archive_plugin=auto])
+
+AC_ARG_ENABLE(att_remover-plugin,
+               [  --disable-att_remover-plugin    Do not build att_remover plugin],
+               [enable_att_remover_plugin=$enableval], [enable_att_remover_plugin=auto])
+
+AC_ARG_ENABLE(attachwarner-plugin,
+               [  --disable-attachwarner-plugin   Do not build attachwarner plugin],
+               [enable_attachwarner_plugin=$enableval], [enable_attachwarner_plugin=auto])
+
+AC_ARG_ENABLE(bogofilter-plugin,
+               [  --disable-bogofilter-plugin     Do not build bogofilter plugin],
+               [enable_bogofilter_plugin=$enableval], [enable_bogofilter_plugin=auto])
+
+AC_ARG_ENABLE(bsfilter-plugin,
+               [  --disable-bsfilter-plugin       Do not build bsfilter plugin],
+               [enable_bsfilter_plugin=$enableval], [enable_bsfilter_plugin=auto])
+
+AC_ARG_ENABLE(clamd-plugin,
+               [  --disable-clamd-plugin          Do not build clamd plugin],
+               [enable_clamd_plugin=$enableval], [enable_clamd_plugin=auto])
+
+AC_ARG_ENABLE(fancy-plugin,
+               [  --disable-fancy-plugin          Do not build fancy plugin],
+               [enable_fancy_plugin=$enableval], [enable_fancy_plugin=auto])
+
+AC_ARG_ENABLE(fetchinfo-plugin,
+               [  --disable-fetchinfo-plugin      Do not build fetchinfo plugin],
+               [enable_fetchinfo_plugin=$enableval], [enable_fetchinfo_plugin=auto])
+
+AC_ARG_ENABLE(gdata-plugin,
+               [  --disable-gdata-plugin          Do not build gdata plugin],
+               [enable_gdata_plugin=$enableval], [enable_gdata_plugin=auto])
+
+AC_ARG_ENABLE(geolocation-plugin,
+               [  --disable-geolocation-plugin    Do not build geolocation plugin],
+               [enable_geolocation_plugin=$enableval], [enable_geolocation_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(newmail-plugin,
+               [  --disable-newmail-plugin        Do not build newmail plugin],
+               [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
+
+AC_ARG_ENABLE(notification-plugin,
+               [  --disable-notification-plugin   Do not build notification plugin],
+               [enable_notification_plugin=$enableval], [enable_notification_plugin=auto])
+
+AC_ARG_ENABLE(pdf_viewer-plugin,
+               [  --disable-pdf_viewer-plugin     Do not build pdf_viewer plugin],
+               [enable_pdf_viewer_plugin=$enableval], [enable_pdf_viewer_plugin=auto])
+
+AC_ARG_ENABLE(perl-plugin,
+               [  --disable-perl-plugin           Do not build perl plugin],
+               [enable_perl_plugin=$enableval], [enable_perl_plugin=auto])
+
+AC_ARG_ENABLE(python-plugin,
+               [  --disable-python-plugin         Do not build python plugin],
+               [enable_python_plugin=$enableval], [enable_python_plugin=auto])
+
+AC_ARG_ENABLE(pgpcore-plugin,
+               [  --disable-pgpcore-plugin        Do not build pgpcore plugin],
+               [enable_pgpcore_plugin=$enableval], [enable_pgpcore_plugin=auto])
+
+AC_ARG_ENABLE(pgpmime-plugin,
+               [  --disable-pgpmime-plugin        Do not build pgpmime plugin],
+               [enable_pgpmime_plugin=$enableval], [enable_pgpmime_plugin=auto])
+
+AC_ARG_ENABLE(pgpinline-plugin,
+               [  --disable-pgpinline-plugin      Do not build pgpinline plugin],
+               [enable_pgpinline_plugin=$enableval], [enable_pgpinline_plugin=auto])
+
+AC_ARG_ENABLE(rssyl-plugin,
+               [  --disable-rssyl-plugin          Do not build rssyl plugin],
+               [enable_rssyl_plugin=$enableval], [enable_rssyl_plugin=auto])
+
+AC_ARG_ENABLE(smime-plugin,
+               [  --disable-smime-plugin          Do not build smime plugin],
+               [enable_smime_plugin=$enableval], [enable_smime_plugin=auto])
+
+AC_ARG_ENABLE(spamassassin-plugin,
+               [  --disable-spamassassin-plugin   Do not build spamassassin plugin],
+               [enable_spamassassin_plugin=$enableval], [enable_spamassassin_plugin=auto])
+
+AC_ARG_ENABLE(spam_report-plugin,
+               [  --disable-spam_report-plugin    Do not build spam_report plugin],
+               [enable_spam_report_plugin=$enableval], [enable_spam_report_plugin=auto])
+
+AC_ARG_ENABLE(tnef_parse-plugin,
+               [  --disable-tnef_parse-plugin     Do not build tnef_parse plugin],
+               [enable_tnef_parse_plugin=$enableval], [enable_tnef_parse_plugin=auto])
+
+AC_ARG_ENABLE(vcalendar-plugin,
+               [  --disable-vcalendar-plugin      Do not build vcalendar plugin],
+               [enable_vcalendar_plugin=$enableval], [enable_vcalendar_plugin=auto])
+
+dnl disabled by default
+AC_ARG_ENABLE(demo-plugin,
+               [  --enable-demo-plugin         Build demo plugin],
+               [enable_demo_plugin=$enableval], [enable_demo_plugin=no])
+
+
+dnl Then we check (unconditionnaly) for plugins dependencies
+dnl Some dependencies are optional, some mandatories. This is taken care of
+dnl later.
+dnl
+dnl During this dependancy check we do the checks themselves, define HAVE_X to
+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 Geolocation                libchamplain, libsoup
+dnl Notification:      optionally libnotify libindicate libcanberra_gtk hotkey
+dnl Pdf-Viewer:                libpoppler
+dnl Perl:              sed perl
+dnl PGP/Core:          libgpgme
+dnl PGP/Mime:          pgpcore libgpgme
+dnl PGP/Inline:                pgpcore libgpgme
+dnl S/Mime:            pgpcore libgpgme
+dnl Python:            Python
+dnl RSSyl:             libxml2 libcurl
+dnl SpamReport:                libcurl
+dnl vCalendar:         libcurl
+
+dnl libcurl ********************************************************************
+PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
 AC_SUBST(CURL_LIBS)
 AC_SUBST(CURL_CFLAGS)
 
-dnl --- acpi_notifier ---
-AC_ARG_ENABLE(acpi_notifier-plugin,
-       [  --enable-acpi_notifier-plugin              build acpi_notifier plugin],
-       [ac_cv_enable_acpi_notifier_plugin=$enableval], [ac_cv_enable_acpi_notifier_plugin=yes])
-if test x"$ac_cv_enable_acpi_notifier_plugin" = xyes; then
-       PLUGINS="acpi_notifier $PLUGINS"
-       AC_MSG_RESULT(yes)
+dnl libxml2 ********************************************************************
+PKG_CHECK_MODULES(LIBXML, libxml-2.0, HAVE_LIBXML=yes, HAVE_LIBXML=no)
+AC_SUBST(LIBXML_LIBS)
+AC_SUBST(LIBXML_CFLAGS)
+
+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)
+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])
+fi
+AC_SUBST(LIBSOUP_GNOME_CFLAGS)
+AC_SUBST(LIBSOUP_GNOME_LIBS)
+
+dnl libarchive *****************************************************************
+AC_SEARCH_LIBS([archive_read_new], [archive],
+                      ARCHIVE_LIBS=-larchive
+                      HAVE_ARCHIVE=yes
+                      AC_SUBST(ARCHIVE_LIBS),
+                      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
-       AC_MSG_RESULT(no)
+       PKG_CHECK_MODULES(GDATA, libgdata >= 0.9, HAVE_GDATA=yes, HAVE_GDATA=no)
 fi
-AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN, test x"$ac_cv_enable_acpi_notifier_plugin" = xyes)
-       
-dnl --- address_keeper ---
-AC_ARG_ENABLE(address_keeper-plugin,
-       [  --enable-address_keeper-plugin              build address_keeper plugin],
-       [ac_cv_enable_address_keeper_plugin=$enableval], [ac_cv_enable_address_keeper_plugin=yes])
-if test x"$ac_cv_enable_address_keeper_plugin" = xyes; then
-       PLUGINS="address_keeper $PLUGINS"
+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
+AC_SUBST(GDATA_CFLAGS)
+AC_SUBST(GDATA_LIBS)
+
+dnl Poppler ********************************************************************
+PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.4.2, HAVE_POPPLER=yes, HAVE_POPPLER=no)
+AC_SUBST(POPPLER_LIBS)
+AC_SUBST(POPPLER_CFLAGS)
+
+dnl check for Poppler extra features that we conditionally support
+if test x"$HAVE_POPPLER" = xyes; then
+       OLD_CFLAGS=$CFLAGS
+       CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
+       AC_CHECK_DECL(POPPLER_DEST_NAMED,
+               [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
+               ,[#include <poppler-action.h>])
+       AC_CHECK_DECL(POPPLER_DEST_XYZ,
+               [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
+               ,[#include <poppler-action.h>])
+       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
+       AC_MSG_CHECKING(for perl >= 5.8.0)
+       PERL_VER=`perl -e 'print $] > 5.0079999?"yes":"no"'`
+       if test "$PERL_VER" = "yes"; then
+               AC_MSG_RESULT(yes)
+       else
+               AC_MSG_RESULT(no)
+               HAVE_PERL=no
+       fi
+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)
+       fi
+       PERL="perl"
+       AC_SUBST(PERL)
+       AC_SUBST(PERL_CFLAGS)
+       AC_SUBST(PERL_LDFLAGS)
+fi
+
+dnl Gpgme **********************************************************************
+AM_PATH_GPGME(1.0.0, HAVE_GPGME=yes, HAVE_GPGME=no)
+if test x"$HAVE_GPGME" = xyes; then
+       AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.)
+       AM_PATH_GPGME(1.1.1, AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1, [Define if GPGME supports PKA.]))
+fi
+
+dnl Python *********************************************************************
+AM_PATH_PYTHON([2.5], [
+       AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config)
+       if test x"$PYTHON_CONFIG" = x"" ; then
+               AC_PATH_PROG(PYTHON_CONFIG, python-config)
+       fi
+       if test x"$PYTHON_CONFIG" != x""; then
+               PYTHON_CFLAGS=`$PYTHON_CONFIG --includes`
+               PYTHON_LIBS=`$PYTHON_CONFIG --libs`
+               PYTHON_PREFIX=`$PYTHON_CONFIG --prefix`
+               HAVE_PYTHON=yes
+       else
+               AC_MSG_WARN(python-config not found. Maybe you need to install development packages for Python.)
+               HAVE_PYTHON=no
+       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\"))"`
+               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.)
+                       HAVE_PYTHON=no
+               fi
+       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)
+       fi
+])
+AC_SUBST(PYTHON_SHARED_LIB)
+AC_SUBST(PYTHON_CFLAGS)
+AC_SUBST(PYTHON_LIBS)
+AC_SUBST(PYGTK_CFLAGS)
+AC_SUBST(PYGTK_LIBS)
+
+dnl libnotify ******************************************************************
+PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
+if test x"$HAVE_LIBNOTIFY" = xyes; then
+       AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
+fi
+AC_SUBST(libnotify_CFLAGS)
+AC_SUBST(libnotify_LIBS)
+
+dnl libcanberra-gtk ************************************************************
+PKG_CHECK_MODULES(libcanberra_gtk, libcanberra-gtk >= 0.6, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
+if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
+       AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk support is enabled])
+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])
+fi
+AC_SUBST(libindicate_CFLAGS)
+AC_SUBST(libindicate_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)
+if test x"$HAVE_HOTKEYS" = xyes; then
+       AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
+fi
+AC_SUBST(CM_NP_HOTKEY_CFLAGS)
+AC_SUBST(CM_NP_HOTKEY_LIBS)
+
+dnl libchamplain ***************************************************************
+CHAMPLAIN_MODULE=champlain-gtk-0.4
+CHAMPLAIN_VERSION=0.4.0
+PKG_CHECK_EXISTS(champlain-gtk-0.6 > 0.6.0,[CHAMPLAIN_MODULE=champlain-gtk-0.6
+       CHAMPLAIN_VERSION=0.6.0], [])
+PKG_CHECK_EXISTS(champlain-gtk-0.8 > 0.8.0,[CHAMPLAIN_MODULE=champlain-gtk-0.8
+       CHAMPLAIN_VERSION=0.8.0], [])
+PKG_CHECK_MODULES(CHAMPLAIN, [$CHAMPLAIN_MODULE >= $CHAMPLAIN_VERSION clutter-gtk-0.10], HAVE_CHAMPLAIN=yes, HAVE_CHAMPLAIN=no)
+AC_SUBST(CHAMPLAIN_CFLAGS)
+AC_SUBST(CHAMPLAIN_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.
+
+AC_MSG_CHECKING([whether to build acpi_notifier plugin])
+if test x"$enable_acpi_notifier_plugin" != xno; then
+       PLUGINS="$PLUGINS acpi_notifier"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN, test x"$ac_cv_enable_address_keeper_plugin" = xyes)
-       
-dnl --- archive ---
-AC_ARG_ENABLE(archive-plugin,
-       [  --enable-archive-plugin              build archive plugin],
-       [ac_cv_enable_archive_plugin=$enableval], [ac_cv_enable_archive_plugin=yes])
-if test x"$ac_cv_enable_archive_plugin" = xyes; then
-       AC_SEARCH_LIBS([archive_read_new], [archive],
-                      ARCHIVE_LIBS=-larchive
-                      AC_SUBST(ARCHIVE_LIBS),
-                      echo "You need to install libarchive"
-                      exit 1
-                      )
-       PLUGINS="archive $PLUGINS"
+
+AC_MSG_CHECKING([whether to build address_keeper plugin])
+if test x"$enable_address_keeper_plugin" != xno; then
+       PLUGINS="$PLUGINS address_keeper"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN, test x"$ac_cv_enable_archive_plugin" = xyes)
 
-dnl --- att_remover ---
-AC_ARG_ENABLE(att_remover-plugin,
-       [  --enable-att_remover-plugin              build att_remover plugin],
-       [ac_cv_enable_att_remover_plugin=$enableval], [ac_cv_enable_att_remover_plugin=yes])
-if test x"$ac_cv_enable_att_remover_plugin" = xyes; then
-       PLUGINS="att_remover $PLUGINS"
-       AC_MSG_RESULT(yes)
+AC_MSG_CHECKING([whether to build archive plugin])
+if test x"$enable_archive_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_ARCHIVE" = xno; then
+               dependencies_missing="libarchive $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS archive"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_archive_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
+               enable_archive_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
+       else
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
+       fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN, test x"$ac_cv_enable_att_remover_plugin" = xyes)
 
-dnl --- attachwarner ---
-AC_ARG_ENABLE(attachwarner-plugin,
-       [  --enable-attachwarner-plugin              build attachwarner plugin],
-       [ac_cv_enable_attachwarner_plugin=$enableval], [ac_cv_enable_attachwarner_plugin=yes])
-if test x"$ac_cv_enable_attachwarner_plugin" = xyes; then
-       PLUGINS="attachwarner $PLUGINS"
+AC_MSG_CHECKING([whether to build att_remover plugin])
+if test x"$enable_att_remover_plugin" != xno; then
+       PLUGINS="$PLUGINS att_remover"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN, test x"$ac_cv_enable_attachwarner_plugin" = xyes)
 
-dnl --- Bogofilter ---
-AC_MSG_CHECKING([whether to build Bogofilter plugin])
-AC_ARG_ENABLE(bogofilter-plugin,
-       [  --disable-bogofilter-plugin      do not build bogofilter plugin],
-       [ac_cv_enable_bogofilter_plugin=$enableval], [ac_cv_enable_bogofilter_plugin=yes])
-if test x"$ac_cv_enable_bogofilter_plugin" = xyes; then
+AC_MSG_CHECKING([whether to build attachwarner plugin])
+if test x"$enable_attachwarner_plugin" != xno; then
+       PLUGINS="$PLUGINS attachwarner"
        AC_MSG_RESULT(yes)
-       PLUGINS="bogofilter $PLUGINS"
-       AC_DEFINE(USE_BOGOFILTER_PLUGIN, 1, Define if bogofilter plugin is being built.)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN, test x"$ac_cv_enable_bogofilter_plugin" = xyes)
 
-dnl --- bsfilter ---
-AC_MSG_CHECKING([whether to build bsfilter plugin])
-AC_ARG_ENABLE(bsfilter-plugin,
-       [  --disable-bsfilter-plugin      do not build bsfilter plugin],
-       [ac_cv_enable_bsfilter_plugin=$enableval], [ac_cv_enable_bsfilter_plugin=yes])
-if test x"$ac_cv_enable_bsfilter_plugin" = xyes; then
-       PLUGINS="bsfilter $PLUGINS"
+AC_MSG_CHECKING([whether to build bogofilter plugin])
+if test x"$enable_bogofilter_plugin" != xno; then
+       PLUGINS="$PLUGINS bogofilter"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN, test x"$ac_cv_enable_bsfilter_plugin" = xyes)
 
-dnl --- clamd ---
-AC_MSG_CHECKING([whether to build clamd plugin])
-AC_ARG_ENABLE(clamd-plugin,
-       [  --disable-clamd-plugin      do not build clamd plugin],
-       [ac_cv_enable_clamd_plugin=$enableval], [ac_cv_enable_clamd_plugin=yes])
-if test x"$ac_cv_enable_clamd_plugin" = xyes; then
-       PLUGINS="clamd $PLUGINS"
+AC_MSG_CHECKING([whether to build bsfilter plugin])
+if test x"$enable_bsfilter_plugin" != xno; then
+       PLUGINS="$PLUGINS bsfilter"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_CLAMD_PLUGIN, test x"$ac_cv_enable_clamd_plugin" = xyes)
 
-dnl --- Demo ---
-AC_ARG_ENABLE(demo-plugin,
-       [  --enable-demo-plugin              build demo plugin],
-       [ac_cv_enable_demo_plugin=$enableval], [ac_cv_enable_demo_plugin=no])
-if test x"$ac_cv_enable_demo_plugin" = xyes; then
-       PLUGINS="demo $PLUGINS"
+AC_MSG_CHECKING([whether to build clamd plugin])
+if test x"$enable_clamd_plugin" != xno; then
+       PLUGINS="$PLUGINS clamd"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_DEMO_PLUGIN, test x"$ac_cv_enable_demo_plugin" = xyes)
 
-dnl --- Dillo Viewer ---
-AC_MSG_CHECKING([whether to build Dillo plugin])
-AC_ARG_ENABLE(dillo-viewer-plugin,
-       [  --disable-dillo-viewer-plugin     do not build Dillo plugin for html mail rendering],
-       [ac_cv_enable_dillo_viewer_plugin=$enableval], [ac_cv_enable_dillo_viewer_plugin=yes])
-if test x"$ac_cv_enable_dillo_viewer_plugin" = xyes; then
+AC_MSG_CHECKING([whether to build demo plugin])
+if test x"$enable_demo_plugin" != xno; then
+       PLUGINS="$PLUGINS demo"
        AC_MSG_RESULT(yes)
-       PLUGINS="dillo-viewer $PLUGINS"
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_DILLO_VIEWER_PLUGIN, test x"$ac_cv_enable_dillo_viewer_plugin" = xyes)
 
-dnl --- Fancy ---
-AC_MSG_CHECKING([whether to build Fancy plugin])
-AC_ARG_ENABLE(fancy-plugin,
-       [  --disable-fancy-plugin     do not build Fancy plugin for html mail rendering],
-       [ac_cv_enable_fancy_plugin=$enableval], [ac_cv_enable_fancy_plugin=yes])
-if test x"$ac_cv_enable_fancy_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       dnl Check for WebKit
-       PKG_CHECK_MODULES(WEBKIT, webkit-1.0,
-               [ 
-                       PLUGINS="fancy $PLUGINS"
-               ],
-               [
-                       echo "webkit-1.0 not found."
-                       ac_cv_enable_fancy_plugin=no
-               ])
-               AC_SUBST(WEBKIT_LIBS)
-               AC_SUBST(WEBKIT_CFLAGS)
-fi
-if test x"$ac_cv_enable_fancy_plugin" = xyes; then
-       dnl Check for libsoup-gnome
-       PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, ac_cv_enable_soup_gnome=yes, ac_cv_enable_soup_gnome=no)        
-       if test x$ac_cv_enable_soup_gnome = xyes; then
-                       AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, Define if you want soup gnome proxy support)
+AC_MSG_CHECKING([whether to build fancy plugin])
+if test x"$enable_fancy_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_WEBKIT" = xno; then
+               dependencies_missing="libwebkit-1.0 $dependencies_missing"
        fi
-       AC_SUBST(LIBSOUP_GNOME_CFLAGS)
-       AC_SUBST(LIBSOUP_GNOME_LIBS)
-       
-       PKG_CHECK_MODULES(GTKPRINTUNIX, gtk+-unix-print-2.0, ac_cv_enable_gtkprint=yes, ac_cv_enable_gtkprint=no)        
-       if test x$ac_cv_enable_gtkprint = xyes; then
-               AC_DEFINE(USE_PRINTUNIX, 1, Define if you want gtk+-unix-print support)
+       if test x"$HAVE_CURL" = xno; then
+               dependencies_missing="libcurl $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS fancy"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_fancy_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
+               enable_fancy_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
        else
-               AC_MSG_RESULT(not found)
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
        fi
-       AC_SUBST(GTKPRINTUNIX_CFLAGS)
-       AC_SUBST(GTKPRINTUNIX_LIBS)
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
+       AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_FANCY_PLUGIN, test x"$ac_cv_enable_fancy_plugin" = xyes)
 
-dnl --- fetchinfo ---
 AC_MSG_CHECKING([whether to build fetchinfo plugin])
-AC_ARG_ENABLE(fetchinfo-plugin,
-       [  --disable-fetchinfo-plugin      do not build fetchinfo plugin],
-       [ac_cv_enable_fetchinfo_plugin=$enableval], [ac_cv_enable_fetchinfo_plugin=yes])
-if test x"$ac_cv_enable_fetchinfo_plugin" = xyes; then
-       PLUGINS="fetchinfo $PLUGINS"
+if test x"$enable_fetchinfo_plugin" != xno; then
+       PLUGINS="$PLUGINS fetchinfo"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN, test x"$ac_cv_enable_fetchinfo_plugin" = xyes)
 
-dnl --- gdata ---
 AC_MSG_CHECKING([whether to build gdata plugin])
-AC_ARG_ENABLE(gdata-plugin,
-       [  --disable-gdata-plugin      do not build gdata plugin],
-       [ac_cv_enable_gdata_plugin=$enableval], [ac_cv_enable_gdata_plugin=yes])
-if test x"$ac_cv_enable_gdata_plugin" = xyes; then
-       PKG_CHECK_MODULES(GDATA, libgdata >= 0.9.1, [ac_cv_enable_gdata_plugin=yes], [ac_cv_enable_gdata_plugin=no])
-       if test x"$ac_cv_enable_gdata_plugin" = 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.0 of libgdata is available])
+if test x"$enable_gdata_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_GDATA" = xno; then
+               dependencies_missing="libgdata $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS gdata"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_gdata_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
+               enable_gdata_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
        else
-               PKG_CHECK_MODULES(GDATA, libgdata >= 0.6.4, [ac_cv_enable_gdata_plugin=yes], [ac_cv_enable_gdata_plugin=no])
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
+       fi
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
+       AC_MSG_RESULT(no)
+fi
+
+if test x"$enable_geolocation_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_CHAMPLAIN" = xno; then
+               dependencies_missing="libchamplain $dependencies_missing"
        fi
-       if test x"$ac_cv_enable_gdata_plugin" = xyes; then
-               AC_SUBST(GDATA_CFLAGS)
-               AC_SUBST(GDATA_LIBS)
-               AC_DEFINE(CM_GDATA_CLIENT_ID, ["Claws Mail GData plugin"], [client id])
 
-               PLUGINS="gdata $PLUGINS"
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS geolocation"
                AC_MSG_RESULT(yes)
+       elif test x"$enable_geolocation_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin geolocation will not be built; missing $dependencies_missing")
+               enable_geolocation_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS geolocation"
        else
-               AC_MSG_ERROR(libgdata is not available)
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin geolocation cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS geolocation"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_GDATA_PLUGIN, test x"$ac_cv_enable_gdata_plugin" = xyes)
 
-dnl --- mailmbox ---
 AC_MSG_CHECKING([whether to build mailmbox plugin])
-AC_ARG_ENABLE(mailmbox-plugin,
-       [  --disable-mailmbox-plugin      do not build mailmbox plugin],
-       [ac_cv_enable_mailmbox_plugin=$enableval], [ac_cv_enable_mailmbox_plugin=yes])
-if test x"$ac_cv_enable_mailmbox_plugin" = xyes; then
-       PLUGINS="mailmbox $PLUGINS"
+if test x"$enable_mailmbox_plugin" != xno; then
+       PLUGINS="$PLUGINS mailmbox"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN, test x"$ac_cv_enable_mailmbox_plugin" = xyes)
 
-dnl --- newmail ---
 AC_MSG_CHECKING([whether to build newmail plugin])
-AC_ARG_ENABLE(newmail-plugin,
-       [  --disable-newmail-plugin      do not build newmail plugin],
-       [ac_cv_enable_newmail_plugin=$enableval], [ac_cv_enable_newmail_plugin=yes])
-if test x"$ac_cv_enable_newmail_plugin" = xyes; then
-       PLUGINS="newmail $PLUGINS"
+if test x"$enable_newmail_plugin" != xno; then
+       PLUGINS="$PLUGINS newmail"
        AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN, test x"$ac_cv_enable_newmail_plugin" = xyes)
 
-dnl --- notification - disabled - too many autofoo annoyances for today ---
 AC_MSG_CHECKING([whether to build notification plugin])
-AC_ARG_ENABLE(notification-plugin,
-       [  --disable-notification-plugin      do not build notification plugin],
-       [ac_cv_enable_notification_plugin=$enableval], [ac_cv_enable_notification_plugin=yes])
-if test x"$ac_cv_enable_notification_plugin" = xyes; then
-       LIBNOTIFY_REQUIRED=0.4.3
-       PKG_CHECK_MODULES(libnotify, libnotify >= $LIBNOTIFY_REQUIRED,
-               [AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])],
-               [AC_MSG_ERROR([libnotify not found])])
-       AC_SUBST(libnotify_CFLAGS)
-       AC_SUBST(libnotify_LIBS)
+if test x"$enable_notification_plugin" != xno; then
+       PLUGINS="$PLUGINS notification"
+       AC_MSG_RESULT(yes)
 
        AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
        AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
        AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
        AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
-       AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
-       #AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for indicators])
-       
-       PLUGINS="notification $PLUGINS"
-       AC_MSG_RESULT(yes)
+       if test x"$platform_win32" = xno; then
+               AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
+       fi
+
+       notification_features="banner command"
+       notification_missing_dependencies=""
+       if test x"$HAVE_HOTKEYS" = xyes; then
+               notification_features="$notification_features hotkeys"
+       else
+               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"
+       else
+               notification_missing_dependencies="$notification_missing_dependencies libindicate"
+       fi
+       if test x"$HAVE_LIBNOTIFY" = xyes; then
+               notification_features="$notification_features libnotify"
+       else
+               notification_missing_dependencies="$notification_missing_dependencies libnotify"
+       fi
+       if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
+               notification_features="$notification_features libcanberra-gtk"
+       else
+               notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk"
+       fi
+       notification_features="$notification_features popup trayicon"
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN, test x"$ac_cv_enable_notification_plugin" = xyes)
 
-dnl --- pdf_viewer ---
 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
-AC_ARG_ENABLE(pdf_viewer-plugin,
-       [  --disable-pdf_viewer-plugin      do not build pdf_viewer plugin],
-       [ac_cv_enable_pdf_viewer_plugin=$enableval], [ac_cv_enable_pdf_viewer_plugin=yes])
-if test x"$ac_cv_enable_pdf_viewer_plugin" = xyes; then
-       PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.4.2, ,
-                                         AC_MSG_ERROR([Can't find Poppler >= 0.4.2 Glib wrapper]))
-       AC_SUBST(POPPLER_LIBS)
-       AC_SUBST(POPPLER_CFLAGS)
+if test x"$enable_pdf_viewer_plugin" != xno; then
+       dependencies_missing=""
 
-       OLD_CFLAGS=$CFLAGS
-       CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
-       AC_CHECK_DECL(POPPLER_DEST_NAMED,
-               [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
-               ,[#include <poppler-action.h>])
-       AC_CHECK_DECL(POPPLER_DEST_XYZ,
-               [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
-               ,[#include <poppler-action.h>])
-       CFLAGS=$OLD_CFLAGS
-       PLUGINS="pdf_viewer $PLUGINS"
-       AC_MSG_RESULT(yes)
+       if test x"$HAVE_POPPLER" = xno; then
+               dependencies_missing="libpoppler-glib $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS pdf_viewer"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_pdf_viewer_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
+               enable_pdf_viewer_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
+       else
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
+       fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN, test x"$ac_cv_enable_pdf_viewer_plugin" = xyes)
 
-dnl --- perl ---
 AC_MSG_CHECKING([whether to build perl plugin])
-AC_ARG_ENABLE(perl-plugin,
-       [  --disable-perl-plugin      do not build perl plugin],
-       [ac_cv_enable_perl_plugin=$enableval], [ac_cv_enable_perl_plugin=yes])
-if test x"$ac_cv_enable_perl_plugin" = xyes; then
-       AC_PATH_PROG(sedpath, sed, no)
-       if test x$sedpath = xno ; then
-         AC_MSG_ERROR(Test for sed failed.)
-       fi
+if test x"$enable_perl_plugin" != xno; then
+       dependencies_missing=""
 
-       dnl Perl
-       AC_PATH_PROG(PERL_PATH, perl, no)
-       if test x$PERL_PATH = xno ; then
-         AC_MSG_ERROR(Test for Perl failed)
+       if test x"$HAVE_PERL" = xno; then
+               dependencies_missing="perl $dependencies_missing"
        fi
-       AC_MSG_CHECKING(for perl >= 5.8.0)
-       PERL_VER=`$PERL_PATH -e 'print $] > 5.0079999?"yes":"no"'`
-       if test "$PERL_VER" = "yes"; then
-         AC_MSG_RESULT(yes)
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS perl"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_perl_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
+               enable_perl_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
        else
-         AC_MSG_RESULT(no)
-         AC_MSG_ERROR(Your Perl version is too old.)
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
        fi
-       AC_MSG_CHECKING(for Perl compile flags)
-       PERL_CFLAGS=`$PERL_PATH -MExtUtils::Embed -e ccopts`
-       PERL_CFLAGS=`echo $PERL_CFLAGS | $sedpath 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
-       PERL_LDFLAGS=`$PERL_PATH -MExtUtils::Embed -e ldopts |$sedpath 's/-lgdbm//'`
-       PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-ldb//'`
-       PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lndbm//'`
-       PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lc//'`
-       AC_MSG_RESULT(ok)
-       AC_SUBST(PERL_CFLAGS)
-       AC_SUBST(PERL_LDFLAGS)
-       PLUGINS="perl $PLUGINS"
-       AC_MSG_RESULT(yes)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_PERL_PLUGIN, test x"$ac_cv_enable_perl_plugin" = xyes)
 
-dnl --- python ---
 AC_MSG_CHECKING([whether to build python plugin])
-AC_ARG_ENABLE(python-plugin,
-       [  --disable-python-plugin      do not build python plugin],
-       [ac_cv_enable_python_plugin=$enableval], [ac_cv_enable_python_plugin=yes])
-if test x"$ac_cv_enable_python_plugin" = xyes; then
-       AM_PATH_PYTHON([2.5], [
-           AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config)
-           if test x"$PYTHON_CONFIG" = x"" ; then
-               AC_PATH_PROG(PYTHON_CONFIG, python-config)
-           fi
-           if test x"$PYTHON_CONFIG" != x""; then
-               PYTHON_CFLAGS=`$PYTHON_CONFIG --includes`
-               PYTHON_LIBS=`$PYTHON_CONFIG --libs`
-               PYTHON_PREFIX=`$PYTHON_CONFIG --prefix`
-           else
-                  AC_MSG_ERROR(python-config not found. Maybe you need to install development packages for Python.)
-           fi
-
-           # 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\"))"`
-               fi
-               if test x"$found_libpython_so" != x"yes"; then
-                  AC_MSG_ERROR(Could not find Python shared libary: $PYTHON_SO_FILE does not exist. Maybe you need to install development packages for Python.)
-               fi
+if test x"$enable_python_plugin" != xno; then
+       dependencies_missing=""
 
-               # PyGTK
-           PKG_CHECK_MODULES(PYGTK,
-                             [pygtk-2.0 >= 2.10.3],
-                             [
-                               AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])
-                             ])
-       ])
-
-       AC_SUBST(PYTHON_SHARED_LIB)
-       AC_SUBST(PYTHON_CFLAGS)
-       AC_SUBST(PYTHON_LIBS)
-       AC_SUBST(PYGTK_CFLAGS)
-       AC_SUBST(PYGTK_LIBS)
+       if test x"$HAVE_PYTHON" = xno; then
+               dependencies_missing="python $dependencies_missing"
+       fi
 
-       PLUGINS="python $PLUGINS"
-       AC_MSG_RESULT(yes)
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS python"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_python_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
+               enable_python_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
+       else
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
+       fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS python"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_PYTHON_PLUGIN, test x"$ac_cv_enable_python_plugin" = xyes)
 
-dnl --- PGP/CORE ---
-AC_MSG_CHECKING([whether to build PGP/CORE plugin])
-AC_ARG_ENABLE(pgpcore-plugin,
-       [  --disable-pgpcore-plugin           do not build PGP/Core plugin],
-       [ac_cv_enable_pgpcore_plugin=$enableval], [ac_cv_enable_pgpcore_plugin=yes])
-if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       AM_PATH_GPGME(1.0.0, AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.),
-                     [ac_cv_enable_pgpcore_plugin=no])
-       if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
-               PLUGINS="pgpcore $PLUGINS"
-                AM_PATH_GPGME(1.1.1,
-                              AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1,
-                                        [Define if GPGME supports PKA.]))
-               #needed to get GPGME_LIBS and al correctly
-               AM_PATH_GPGME(1.0.0, AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.),
-                         [ac_cv_enable_pgpcore_plugin=no])
+AC_MSG_CHECKING([whether to build pgpcore plugin])
+if test x"$enable_pgpcore_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_GPGME" = xno; then
+               dependencies_missing="libgpgme $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS pgpcore"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_pgpcore_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
+               enable_pgpcore_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
        else
-               AC_MSG_WARN([*** PGP/CORE plugin will not be built ***])
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN, test x"$ac_cv_enable_pgpcore_plugin" = xyes)
 
-AC_MSG_CHECKING([whether to build PGP/MIME plugin])
-AC_ARG_ENABLE(pgpmime-plugin,
-       [  --disable-pgpmime-plugin           do not build PGP/MIME plugin],
-       [ac_cv_enable_pgpmime_plugin=$enableval], [ac_cv_enable_pgpmime_plugin=yes])
-if test x"$ac_cv_enable_pgpmime_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
-               PLUGINS="pgpmime $PLUGINS"
+AC_MSG_CHECKING([whether to build pgpmime plugin])
+if test x"$enable_pgpmime_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_GPGME" = xno; then
+               dependencies_missing="libgpgme $dependencies_missing"
+       fi
+       if test x"$enable_pgpcore_plugin" = xno; then
+               dependencies_missing="pgpcore plugin $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS pgpmime"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_pgpmime_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
+               enable_pgpmime_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
        else
-               AC_MSG_WARN([*** PGP/MIME plugin cannot be built ***])
-               AC_MSG_WARN([*** without the PGP/CORE plugin     ***])
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN, test x"$ac_cv_enable_pgpmime_plugin" = xyes)
 
-AC_MSG_CHECKING([whether to build PGP/Inline plugin])
-AC_ARG_ENABLE(pgpinline-plugin,
-       [  --disable-pgpinline-plugin           do not build PGP/Inline plugin],
-       [ac_cv_enable_pgpinline_plugin=$enableval], [ac_cv_enable_pgpinline_plugin=yes])
-if test x"$ac_cv_enable_pgpinline_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
-               PLUGINS="pgpinline $PLUGINS"
+AC_MSG_CHECKING([whether to build pgpinline plugin])
+if test x"$enable_pgpinline_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_GPGME" = xno; then
+               dependencies_missing="libgpgme $dependencies_missing"
+       fi
+       if test x"$enable_pgpcore_plugin" = xno; then
+               dependencies_missing="pgpcore plugin $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS pgpinline"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_pgpinline_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
+               enable_pgpinline_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
        else
-               AC_MSG_WARN([*** PGP/Inline plugin cannot be built ***])
-               AC_MSG_WARN([*** without the PGP/CORE plugin     ***])
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN, test x"$ac_cv_enable_pgpinline_plugin" = xyes)
 
-dnl --- RSSyl ---
-AC_MSG_CHECKING([whether to build RSSyl plugin])
-AC_ARG_ENABLE(rssyl-plugin,
-       [  --disable-rssyl-plugin     do not build rssyl plugin for RSS and Atom feeds],
-       [ac_cv_enable_rssyl_plugin=$enableval], [ac_cv_enable_rssyl_plugin=yes])
-if test x"$ac_cv_enable_rssyl_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       PKG_CHECK_MODULES(LIBXML, "libxml-2.0",,
-               [AC_MSG_ERROR(libxml library is missing)])
-       PLUGINS="rssyl $PLUGINS"
-       AC_SUBST(LIBXML_CFLAGS)
-       AC_SUBST(LIBXML_LIBS)
-fi
-AM_CONDITIONAL(BUILD_RSSYL_PLUGIN, test x"$ac_cv_enable_rssyl_plugin" = xyes)
+AC_MSG_CHECKING([whether to build rssyl plugin])
+if test x"$enable_rssyl_plugin" != xno; then
+       dependencies_missing=""
 
-AC_MSG_CHECKING([whether to build S/Mime plugin])
-AC_ARG_ENABLE(smime-plugin,
-       [  --disable-smime-plugin           do not build S/Mime plugin],
-       [ac_cv_enable_smime_plugin=$enableval], [ac_cv_enable_smime_plugin=yes])
-if test x"$ac_cv_enable_smime_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
-               PLUGINS="smime $PLUGINS"
+       if test x"$HAVE_LIBXML" = xno; then
+               dependencies_missing="libxml2 $dependencies_missing"
+       fi
+       if test x"$HAVE_CURL" = xno; then
+               dependencies_missing="libcurl $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS rssyl"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_rssyl_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
+               enable_rssyl_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
        else
-               AC_MSG_WARN([*** S/Mime plugin cannot be built ***])
-               AC_MSG_WARN([*** without the PGP/CORE plugin     ***])
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_SMIME_PLUGIN, test x"$ac_cv_enable_smime_plugin" = xyes)
-dnl --- SpamAssassin ---
-AC_MSG_CHECKING([whether to build SpamAssassin plugin])
-AC_ARG_ENABLE(spamassassin-plugin,
-       [  --disable-spamassassin-plugin      do not build SpamAssassin plugin],
-       [ac_cv_enable_spamassassin_plugin=$enableval], [ac_cv_enable_spamassassin_plugin=yes])
-if test x"$ac_cv_enable_spamassassin_plugin" = xyes; then
+
+AC_MSG_CHECKING([whether to build spamassassin plugin])
+if test x"$enable_spamassassin_plugin" != xno; then
+       PLUGINS="$PLUGINS spamassassin"
        AC_MSG_RESULT(yes)
        AC_SPAMASSASSIN
-       PLUGINS="spamassassin $PLUGINS"
-       AC_DEFINE(USE_SPAMASSASSIN_PLUGIN, 1, Define if spamassassin plugin is being built.)
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN, test x"$ac_cv_enable_spamassassin_plugin" = xyes)
 
-dnl --- Trayicon ---
-AC_MSG_CHECKING([whether to build Trayicon plugin])
-AC_ARG_ENABLE(trayicon-plugin,
-       [  --disable-trayicon-plugin         do not build System Tray Icon plugin],
-       [ac_cv_enable_trayicon_plugin=$enableval], [ac_cv_enable_trayicon_plugin=yes])
-if test x"$ac_cv_enable_trayicon_plugin" = xyes; then
-       AC_MSG_RESULT(yes)
-       PLUGINS="trayicon $PLUGINS"
-else
-       AC_MSG_RESULT(no)
-fi
-AM_CONDITIONAL(BUILD_TRAYICON_PLUGIN, test x"$ac_cv_enable_trayicon_plugin" = xyes)
+AC_MSG_CHECKING([whether to build smime plugin])
+if test x"$enable_smime_plugin" != xno; then
+       dependencies_missing=""
 
-dnl --- vCalendar ---
-AC_MSG_CHECKING([whether to build vCalendar plugin])
-AC_ARG_ENABLE(vcalendar-plugin,
-       [  --disable-vcalendar-plugin     do not build vcalendar plugin for ical rendering],
-       [ac_cv_enable_vcalendar_plugin=$enableval], [ac_cv_enable_vcalendar_plugin=yes])
-if test x"$ac_cv_enable_vcalendar_plugin" = xyes; then
-       AC_CHECK_PROGS(PERL, perl5 perl)
-       if test x"$PERL" != x; then
+       if test x"$HAVE_GPGME" = xno; then
+               dependencies_missing="libgpgme $dependencies_missing"
+       fi
+       if test x"$enable_pgpcore_plugin" = xno; then
+               dependencies_missing="pgpcore plugin $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS smime"
                AC_MSG_RESULT(yes)
-               PLUGINS="vcalendar $PLUGINS"
+       elif test x"$enable_smime_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
+               enable_smime_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
        else
                AC_MSG_RESULT(no)
-               ac_cv_enable_vcalendar_plugin=no
+               AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
        fi
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
+       AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN, test x"$ac_cv_enable_vcalendar_plugin" = xyes)
 
+AC_MSG_CHECKING([whether to build spam_report plugin])
+if test x"$enable_spam_report_plugin" != xno; then
+       dependencies_missing=""
 
-dnl Libetpan
-AC_MSG_CHECKING([whether to use libetpan])
-AC_ARG_ENABLE(libetpan,
-       [  --disable-libetpan           disable IMAP4/NNTP (libetpan) support],
-       [ac_cv_enable_libetpan=$enableval], [ac_cv_enable_libetpan=yes])
-if test x"$ac_cv_enable_libetpan" = xyes; then
-       AC_MSG_RESULT(yes)
-       libetpan_result=no
-       AC_PATH_PROG(libetpanconfig, [libetpan-config])
-       if test "x$libetpanconfig" != "x"; then
-         CPPFLAGS="$CPPFLAGS `$libetpanconfig --cflags 2>/dev/null`"
-         AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
-         if test "x$libetpan_result" = "xyes"; then
-           AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
-           LIBS="$LIBS `$libetpanconfig --libs 2>/dev/null`"
-           AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
-           AC_MSG_RESULT([$libetpan_result])
-         fi
+       if test x"$HAVE_CURL" = xno; then
+               dependencies_missing="libcurl $dependencies_missing"
        fi
-       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
-               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])
-          fi
-          AC_SUBST(LIBETPAN_FLAGS)
-          AC_SUBST(LIBETPAN_LIBS)
-          AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNTP support.)
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS spam_report"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_spam_report_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
+               enable_spam_report_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
        else
-          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])
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
 
-AC_MSG_CHECKING([whether to use valgrind])
-AC_ARG_ENABLE(valgrind,
-       [  --disable-valgrind           disable valgrind support for debugging],
-       [ac_cv_enable_valgrind=$enableval], [ac_cv_enable_valgrind=yes])
-if test x$ac_cv_enable_valgrind = xyes; then
+AC_MSG_CHECKING([whether to build tnef_parse plugin])
+if test x"$enable_tnef_parse_plugin" != xno; then
+       PLUGINS="$PLUGINS tnef_parse"
        AC_MSG_RESULT(yes)
-       PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
-                         ac_cv_enable_valgrind=yes, ac_cv_enable_valgrind=no)
-       if test x"$ac_cv_enable_valgrind" = xyes; then
-               AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
+       AC_MSG_RESULT(no)
+fi
+
+AC_MSG_CHECKING([whether to build vcalendar plugin])
+if test x"$enable_vcalendar_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_CURL" = xno; then
+               dependencies_missing="libcurl $dependencies_missing"
+       fi
+
+       if test x"$HAVE_PERL" = xno; then
+               dependencies_missing="perl $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS vcalendar"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_vcalendar_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
+               enable_vcalendar_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
        else
-               AC_MSG_RESULT(not found)
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
        fi
 else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
        AC_MSG_RESULT(no)
 fi
-AM_CONDITIONAL(CLAWS_VALGRIND, test x"$ac_cv_enable_valgrind" = x"yes")
+
+dnl And finally the automake conditionals.
+
+AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN,     test x"$enable_acpi_notifier_plugin" != xno)
+AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN,    test x"$enable_address_keeper_plugin" != xno)
+AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN,           test x"$enable_archive_plugin" != xno)
+AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN,       test x"$enable_att_remover_plugin" != xno)
+AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN,      test x"$enable_attachwarner_plugin" != xno)
+AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN,                test x"$enable_bogofilter_plugin" != xno)
+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_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_GEOLOCATION_PLUGIN,       test x"$enable_geolocation_plugin" != xno)
+AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN,          test x"$enable_mailmbox_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)
+AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN,                test x"$enable_pdf_viewer_plugin" != xno)
+AM_CONDITIONAL(BUILD_PERL_PLUGIN,              test x"$enable_perl_plugin" != xno)
+AM_CONDITIONAL(BUILD_PYTHON_PLUGIN,            test x"$enable_python_plugin" != xno)
+AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN,           test x"$enable_pgpcore_plugin" != xno)
+AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN,           test x"$enable_pgpmime_plugin" != xno)
+AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN,         test x"$enable_pgpinline_plugin" != xno)
+AM_CONDITIONAL(BUILD_RSSYL_PLUGIN,             test x"$enable_rssyl_plugin" != xno)
+AM_CONDITIONAL(BUILD_SMIME_PLUGIN,             test x"$enable_smime_plugin" != xno)
+AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN,      test x"$enable_spamassassin_plugin" != xno)
+AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN,       test x"$enable_spam_report_plugin" != xno)
+AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN,                test x"$enable_tnef_parse_plugin" != xno)
+AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN,         test x"$enable_vcalendar_plugin" != xno)
+
 
 dnl ****************************
 dnl ** Final configure output **
@@ -1468,23 +1888,27 @@ src/plugins/bsfilter/Makefile
 src/plugins/clamd/Makefile
 src/plugins/clamd/libclamd/Makefile
 src/plugins/demo/Makefile
-src/plugins/dillo_viewer/Makefile
 src/plugins/fancy/Makefile
 src/plugins/fetchinfo/Makefile
 src/plugins/gdata/Makefile
+src/plugins/geolocation/Makefile
 src/plugins/mailmbox/Makefile
 src/plugins/newmail/Makefile
 src/plugins/notification/Makefile
+src/plugins/notification/gtkhotkey/Makefile
 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/smime/Makefile
 src/plugins/spamassassin/Makefile
-src/plugins/trayicon/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
@@ -1527,6 +1951,7 @@ manual/de/dist/ps/Makefile
 manual/de/dist/html/Makefile
 manual/de/dist/txt/Makefile
 claws-mail.pc
+version
 ])
 
 dnl Output the configuration summary
@@ -1537,25 +1962,55 @@ if test x"$enable_new_addrbook" = xyes; then
        echo "Using Address Book : New experimental interface"
 else
        echo "Using Address Book : Old stable interface"
-       echo "JPilot             : $ac_cv_enable_jpilot"
-       echo "LDAP               : $ac_cv_enable_ldap"
+       echo "JPilot             : $enable_jpilot"
+       echo "LDAP               : $enable_ldap"
 fi
-echo "gnuTLS             : $ac_cv_enable_gnutls"
+echo "gnuTLS             : $enable_gnutls"
 echo "iconv              : $am_cv_func_iconv"
-echo "compface           : $ac_cv_enable_compface"
-echo "IPv6               : $ac_cv_enable_ipv6"
-echo "enchant            : $ac_cv_enable_enchant"
-echo "IMAP4              : $ac_cv_enable_libetpan"
-echo "NNTP               : $ac_cv_enable_libetpan"
-echo "Crash dialog       : $ac_cv_enable_crash_dialog"
-echo "LibSM              : $ac_cv_enable_libsm"
+echo "compface           : $enable_compface"
+echo "IPv6               : $enable_ipv6"
+echo "enchant            : $enable_enchant"
+echo "IMAP4              : $enable_libetpan"
+echo "NNTP               : $enable_libetpan"
+echo "Crash dialog       : $enable_crash_dialog"
+echo "LibSM              : $enable_libsm"
 echo "DBUS               : $enable_dbus"
-echo "NetworkManager     : $enable_networkmanager_support"
-echo "Manual             : $ac_cv_enable_manual"
-echo "Plugins            : $PLUGINS"
-echo "Generic UMPC code  : $ac_cv_enable_generic_umpc"
-echo "Maemo  build       : $ac_cv_enable_maemo"
+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 "Plugins"
+echo "   Built:"
+for plugin in $PLUGINS; do
+echo "            - $plugin"
+if test x"$plugin" = xnotification; then
+       echo "                Features:"
+       for notif_feature in $notification_features; do
+               echo "                    $notif_feature"
+       done;
+       if test "x$notification_missing_dependencies" != x; then
+               echo "                Disabled due to missing dependencies:"
+               for notif_miss_dep in $notification_missing_dependencies; do
+                       echo "                    $notif_miss_dep"
+               done;
+       fi
+fi
+done;
+if test "x$DISABLED_PLUGINS" != x; then
+echo "   Disabled:"
+for plugin in $DISABLED_PLUGINS; do
+echo "            - $plugin"
+done;
+fi
+
+if test "x$MISSING_DEPS_PLUGINS" != x; then
+echo "   Disabled due to missing dependencies:"
+for plugin in $MISSING_DEPS_PLUGINS; do
+echo "            - $plugin"
+done;
+fi
 echo ""
 echo "The binary will be installed in $prefix/bin"
 echo ""