4 AC_CONFIG_AUX_DIR(config)
5 AC_CONFIG_MACRO_DIR([m4])
15 if test \( -d .git \); then
16 AC_CHECK_PROG([GIT], [git], [yes], [no], [$PATH])
17 if test \( "$GIT" = "no" \); then
18 AC_MSG_ERROR([*** git not found. See http://git-scm.com/])
20 GIT_VERSION=`git describe --abbrev=6 --dirty --always`
21 echo "echo ${GIT_VERSION}" > ./version
24 GIT_VERSION=`sh -c ". $srcdir/version"`
27 if test \( -z "$GIT_VERSION" \); then
28 AC_MSG_ERROR([*** could not determine program version])
31 MAJOR_VERSION=${GIT_VERSION%%.*}
32 MINOR_VERSION=${GIT_VERSION#*.}
33 MINOR_VERSION=${MINOR_VERSION%%.*}
34 MICRO_VERSION=${GIT_VERSION##*.}
35 MICRO_VERSION=${MICRO_VERSION%%-*}
36 EXTRA_VERSION=${GIT_VERSION#*-}
37 EXTRA_VERSION=${EXTRA_VERSION%%-*}
39 if test \( "x$EXTRA_VERSION" != "x" -a `echo -n $EXTRA_VERSION | wc -c` -lt 5 \); then
40 VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}git${EXTRA_VERSION}
42 VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}
46 if test \( "x$EXTRA_RELEASE" != "x" \); then
47 VERSION=${VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
54 AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
55 dnl AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
56 dnl AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
59 AC_SUBST(MAJOR_VERSION)
60 AC_SUBST(MINOR_VERSION)
61 AC_SUBST(MICRO_VERSION)
62 AC_SUBST(EXTRA_VERSION)
65 AC_CHECK_PROG(HAVE_GTK_ICON_CACHE, gtk-update-icon-cache, yes, no)
66 AM_CONDITIONAL(UPDATE_GTK_ICON_CACHE, test x"$HAVE_GTK_ICON_CACHE" = xyes)
68 dnl Require pkg-config
69 m4_ifndef([PKG_PROG_PKG_CONFIG],
70 [m4_fatal([Could not locate the pkg-config autoconf macros. These
71 are usually located in /usr/share/aclocal/pkg.m4. If your macros
72 are in a different location, try setting the environment variable
73 ACLOCAL_FLAGS before running ./autogen.sh or autoreconf again. E.g.:
74 export ACLOCAL_FLAGS="-I/other/macro/dir"])
78 dnl libtool versioning
79 LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION
80 LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE`
81 LT_REVISION=$INTERFACE_AGE
82 LT_AGE=`expr $BINARY_AGE - $INTERFACE_AGE`
88 dnl Specify a header configuration file
89 AC_CONFIG_HEADERS(config.h)
90 AC_CONFIG_HEADERS(claws-features.h)
95 dnl Checks for programs.
114 dnl AC_PROG_CXX will set CXX=g++ even if it finds no useable C++
115 dnl compiler, so we have to check whether the program named by
118 AC_PATH_PROG(REAL_CXX, $CXX)
120 if test -n "$REAL_CXX"; then
126 dnl ******************************
128 dnl Not needed anymore because we
129 dnl do AC_CANONICAL_SYSTEM above
130 dnl ******************************
131 dnl AC_CANONICAL_HOST
133 dnl Copied from the official gtk+-2 configure.in
134 AC_MSG_CHECKING([for host platform])
136 *-*-mingw*|*-*-cygwin*)
138 LDFLAGS="$LDFLAGS -mwindows -Wl,--export-all-symbols"
142 LDFLAGS="$LDFLAGS -Wl,-export_dynamic"
147 LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
150 AM_CONDITIONAL(PLATFORM_WIN32, test x"$platform_win32" = x"yes")
151 AM_CONDITIONAL(PLATFORM_OSX, test x"$platform_osx" = x"yes")
152 AC_MSG_RESULT([$host])
154 AC_MSG_CHECKING([for native Win32])
163 AC_MSG_RESULT([$os_win32])
164 AM_CONDITIONAL(OS_WIN32, test x"$os_win32" = x"yes")
166 AC_MSG_CHECKING([for Cygwin])
175 AC_MSG_RESULT([$env_cygwin])
176 AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
178 AC_MSG_CHECKING([for time_t format specifier])
179 _gcc_cflags_save=$CFLAGS
180 CFLAGS="-Wformat -Werror"
185 ]],[[printf("%lld", time(NULL));]])],
186 [time_t_long_long=yes],
187 [time_t_long_long=no])
188 CFLAGS=$_gcc_cflags_save
190 if test x"$time_t_long_long" = xyes; then
195 AC_MSG_RESULT([$time_t_fmt])
196 AC_DEFINE_UNQUOTED([CM_TIME_FORMAT], ["$time_t_fmt"],
197 [Define printf format specifier for time_t])
200 if test $USE_MAINTAINER_MODE = yes; then
201 AM_CFLAGS="$AM_CFLAGS -g"
204 AC_MSG_CHECKING([if gcc supports -Wno-pointer-sign])
205 _gcc_cflags_save=$CFLAGS
206 CFLAGS="-Wno-pointer-sign"
207 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],_gcc_psign=yes,_gcc_psign=no)
208 AC_MSG_RESULT($_gcc_psign)
209 CFLAGS=$_gcc_cflags_save;
210 if test x"$_gcc_psign" = xyes ; then
211 AM_CFLAGS="$AM_CFLAGS -Wno-pointer-sign"
217 AM_CFLAGS="$AM_CFLAGS -no-cpp-precomp -fno-common"
220 # Note that we need to link to pthread in all cases. This
221 # is because some locking is used even when pthread support is
224 AM_CFLAGS="$AM_CFLAGS -mms-bitfields"
225 LIBS="$LIBS -l${pthread_name} -lws2_32 -lregex"
228 AM_CFLAGS="$AM_CFLAGS -std=gnu99"
229 AC_DEFINE([SOLARIS], [], [Target is Solaris])
238 dnl floor and ceil are in -lm
242 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
245 LIBS="$LIBS $GTK_LIBS"
246 AC_CHECK_FUNCS(bind_textdomain_codeset)
250 ALL_LINGUAS="ca cs da de el_GR en_GB es fi fr hu id_ID it ja nb nl pl pt_BR pt_PT ro ru sk sv tr zh_TW"
251 GETTEXT_PACKAGE=claws-mail
252 AC_SUBST(GETTEXT_PACKAGE)
253 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
255 AM_GNU_GETTEXT_VERSION([0.18])
256 AM_GNU_GETTEXT([external])
258 AC_ARG_ENABLE(manual,
259 [ --disable-manual Do not build user manual],
260 [enable_manual=$enableval], [enable_manual=yes])
263 [ --disable-libsm Do not build libSM support for session management],
264 [enable_libsm=$enableval], [enable_libsm=yes])
267 [ --disable-ipv6 Do not build IPv6 support],
268 [enable_ipv6=$enableval], [enable_ipv6=yes])
270 AC_ARG_ENABLE(gnutls,
271 [ --disable-gnutls Do not build GnuTLS support for TLS],
272 [enable_gnutls=$enableval], [enable_gnutls=yes])
274 AC_ARG_ENABLE(enchant,
275 [ --disable-enchant Do not build Enchant support for spell-checking],
276 [enable_enchant=$enableval], [enable_enchant=yes])
278 AC_ARG_ENABLE(crash-dialog,
279 [ --enable-crash-dialog Build crash dialog],
280 [enable_crash_dialog=$enableval], [enable_crash_dialog=no])
282 AC_ARG_ENABLE(generic-umpc,
283 [ --enable-generic-umpc Build generic UMPC code],
284 [enable_generic_umpc=$enableval], [enable_generic_umpc=no])
286 AC_ARG_ENABLE(compface,
287 [ --disable-compface Do not build compface support for X-Face],
288 [enable_compface=$enableval], [enable_compface=yes])
290 AC_ARG_ENABLE(pthread,
291 [ --disable-pthread Do not build pthread support],
292 [enable_pthread=$enableval], [enable_pthread=yes])
294 AC_ARG_ENABLE(startup-notification,
295 [ --disable-startup-notification Do not startup notification support],
296 [enable_startup_notification=$enableval], [enable_startup_notification=yes])
299 [ --disable-dbus Do not build DBUS support],
300 [enable_dbus=$enableval], [enable_dbus=yes])
303 [ --disable-ldap Do not build LDAP support],
304 [enable_ldap=$enableval], [enable_ldap=yes])
306 AC_ARG_ENABLE(jpilot,
307 [ --disable-jpilot Do not build JPilot support],
308 [enable_jpilot=$enableval], [enable_jpilot=yes])
310 AC_ARG_ENABLE(networkmanager,
311 [ --disable-networkmanager Do not build NetworkManager support],
312 [enable_networkmanager=$enableval], [enable_networkmanager=yes])
314 AC_ARG_ENABLE(libetpan,
315 [ --disable-libetpan Do not build libetpan support for IMAP4/NNTP],
316 [enable_libetpan=$enableval], [enable_libetpan=yes])
318 AC_ARG_ENABLE(valgrind,
319 [ --disable-valgrind Do not build valgrind support for debugging],
320 [enable_valgrind=$enableval], [enable_valgrind=yes])
322 AC_ARG_ENABLE(alternate-addressbook,
323 [ --enable-alternate-addressbook Build alternate external address book support],
324 [enable_alternate_addressbook=$enableval], [enable_alternate_addressbook=no])
327 [ --disable-svg Do not build SVG support],
328 [enable_svg=$enableval], [enable_svg=yes])
331 [ --enable-tests Build unit tests],
332 [enable_tests=$enableval], [enable_tests=no])
334 manualdir='${docdir}/manual'
335 AC_ARG_WITH(manualdir,
336 [ --with-manualdir=DIR Manual directory],
337 [manualdir="$withval"])
340 dnl ******************************
341 dnl ** Check for required tools **
342 dnl ** to build manuals **
343 dnl ******************************
345 AC_PATH_PROG(DOCBOOK2HTML, docbook2html)
346 AC_PATH_PROG(DOCBOOK2TXT, docbook2txt)
347 AC_PATH_PROG(DOCBOOK2PS, docbook2ps)
348 AC_PATH_PROG(DOCBOOK2PDF, docbook2pdf)
350 AM_CONDITIONAL(MANUAL_HTML, test -n "$DOCBOOK2HTML")
351 AM_CONDITIONAL(MANUAL_TXT, test -n "$DOCBOOK2TXT")
352 AM_CONDITIONAL(MANUAL_PDF, test -n "$DOCBOOK2PDF")
353 AM_CONDITIONAL(MANUAL_PS, test -n "$DOCBOOK2PS")
355 if test x"$enable_manual" = x"yes"; then
356 if test -n "$DOCBOOK2TXT" -o -n "$DOCBOOK2HTML" \
357 -o -n "$DOCBOOK2PS" -o -n "$DOCBOOK2PDF"; then
364 AM_CONDITIONAL(BUILD_MANUAL, test x"$enable_manual" = xyes)
366 dnl Set PACKAGE_DATA_DIR in config.h.
367 if test "x${datarootdir}" = 'x${prefix}/share'; then
368 if test "x${prefix}" = "xNONE"; then
369 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
371 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
374 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datarootdir}/${PACKAGE}",[PACKAGE_DATA_DIR])
377 AC_CHECK_LIB(xpg4, setlocale)
381 AC_MSG_CHECKING([whether to use LibSM])
382 if test x"$enable_libsm" = xyes; then
384 AC_CHECK_LIB(SM, SmcSaveYourselfDone,
385 [SM_LIBS="$X_LIBS -lSM -lICE"],enable_libsm=no,
387 AC_CHECK_HEADERS(X11/SM/SMlib.h,,enable_libsm=no)
388 if test x"$enable_libsm" = xyes; then
389 AC_DEFINE(HAVE_LIBSM, 1, [Define to 1 if you have libSM installed])
391 AC_MSG_RESULT(not found)
392 AC_MSG_WARN([*** LibSM will not be supported ***])
399 dnl Check for __VA_OPT__ macro
400 AC_CACHE_CHECK([for __VA_OPT__],
402 [AC_TRY_COMPILE([#include <stdio.h>],
403 [#define va_opt_printf(format, ...) fprintf(stderr, format __VA_OPT__(,) __VA_ARGS__)
404 va_opt_printf("success\n");],
408 if test "$ac_cv_va_opt" = yes; then
409 AC_DEFINE([HAVE_VA_OPT], [1], [Define if __VA_OPT__ macro works])
412 dnl Check for d_type member in struct dirent
413 AC_MSG_CHECKING([whether struct dirent has d_type member])
414 AC_CACHE_VAL(ac_cv_dirent_d_type,[
415 AC_TRY_COMPILE([#include <dirent.h>],
416 [struct dirent d; d.d_type = DT_REG;],
417 ac_cv_dirent_d_type=yes, ac_cv_dirent_d_type=no)
419 AC_MSG_RESULT($ac_cv_dirent_d_type)
420 if test $ac_cv_dirent_d_type = yes; then
421 AC_DEFINE(HAVE_DIRENT_D_TYPE, 1,
422 Define if `struct dirent' has `d_type' member.)
425 # Check whether mkdir does not take the permission argument.
426 GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
428 dnl Checks for header files.
432 AC_CHECK_HEADERS(fcntl.h sys/file.h unistd.h paths.h \
433 sys/param.h sys/utsname.h sys/select.h \
434 wchar.h wctype.h locale.h netdb.h)
435 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
436 AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
438 dnl Checks for typedefs, structures, and compiler characteristics.
445 dnl AC_CHECK_TYPE(wint_t, unsigned int) does not work because wint_t
446 dnl may be defined only in wchar.h (this happens with gcc-2.96).
447 dnl So we need to use this extended macro.
448 CLAWS_CHECK_TYPE(wint_t, unsigned int,
453 ], Define to `unsigned int' if <stddef.h> or <wchar.h> doesn't define.)
455 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF, Used to test for a u32 typedef)
456 AC_CHECK_SIZEOF(unsigned short, 2)
457 AC_CHECK_SIZEOF(unsigned int, 4)
458 AC_CHECK_SIZEOF(unsigned long, 4)
460 dnl Checks for library functions.
462 AC_CHECK_FUNCS(gethostname mkdir mktime socket strstr strchr strcasestr \
463 uname flock lockf inet_aton inet_addr \
464 fchmod mkstemp truncate getuid regcomp)
466 AC_CHECK_FUNCS(fgets_unlocked fgetc_unlocked fputs_unlocked fputc_unlocked fread_unlocked fwrite_unlocked feof_unlocked ferror_unlocked fmemopen)
468 dnl *****************
469 dnl ** common code **
470 dnl *****************
473 PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.36 gmodule-2.0 >= 2.36 gobject-2.0 >= 2.36 gthread-2.0 >= 2.36])
475 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
476 AC_SUBST(GLIB_GENMARSHAL)
478 AC_SUBST(GLIB_CFLAGS)
481 PKG_CHECK_MODULES(GDK_PIXBUF, [gdk-pixbuf-2.0 >= 2.26])
483 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
485 LIBS="$LIBS $GTK_LIBS"
486 AC_CHECK_FUNCS(bind_textdomain_codeset)
489 dnl check for IPv6 option
490 dnl automated checks for IPv6 support.
491 AC_MSG_CHECKING([whether to use IPv6])
492 if test x"$enable_ipv6" = xyes; then
494 AC_MSG_CHECKING([for IPv6 support])
495 if test x"$platform_win32" = xyes; then
496 AC_CACHE_VAL(ac_cv_ipv6,[
498 #include <ws2tcpip.h>
499 ], [struct in6_addr a;],
500 ac_cv_ipv6=yes, ac_cv_ipv6=no)
503 AC_CACHE_VAL(ac_cv_ipv6,[
506 #include <sys/types.h>
507 #include <netinet/in.h>
508 ], [int x = IPPROTO_IPV6; struct in6_addr a;],
509 ac_cv_ipv6=yes, ac_cv_ipv6=no)
512 AC_MSG_RESULT($ac_cv_ipv6)
513 if test $ac_cv_ipv6 = yes; then
514 AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
516 AC_MSG_WARN(*** IPv6 will not be supported ***)
524 AC_MSG_CHECKING([whether to use GnuTLS])
525 AC_MSG_RESULT($enable_gnutls)
526 if test "x$enable_gnutls" != "xno"; then
527 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.2,
529 AC_DEFINE(USE_GNUTLS, 1, gnutls)
530 echo "Building with GnuTLS"
531 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
533 dnl No linking against libgcrypt needed
536 dnl linking against libgcrypt *is* needed
537 GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
541 echo "Building without GnuTLS"
542 AC_MSG_RESULT([*** GnuTLS support is recommended ])
543 AC_MSG_RESULT([*** You can use --disable-gnutls if you don't need it.])
544 AC_MSG_ERROR([GnuTLS not found])
546 AC_SUBST(GNUTLS_LIBS)
547 AC_SUBST(GNUTLS_CFLAGS)
550 PKG_CHECK_MODULES(NETTLE, nettle)
551 AC_SUBST(NETTLE_LIBS)
553 AC_ARG_WITH(passcrypt-key, [ --with-passcrypt-key=KEY Key used to encode passwords (8 byte string)],
554 with_passcrypt_key="$withval", with_passcrypt_key="passkey0")
555 AC_SUBST(PASSCRYPT_KEY, $with_passcrypt_key)
557 dnl RC dir (will be default at a certain point in time)
558 AC_ARG_WITH(config-dir, [ --with-config-dir=RCDIR Local configuration dir (default: .claws-mail)],
559 ac_cv_with_config_dir="$withval", ac_cv_with_config_dir="")
561 dnl Set correct default value based on platform
562 if test x"$ac_cv_with_config_dir" = x""; then
563 if test x"$platform_win32" = xyes; then
564 ac_cv_with_config_dir="Claws-mail"
566 ac_cv_with_config_dir=".claws-mail"
569 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
571 AC_ARG_WITH(password-encryption, [ --with-password-encryption=PROVIDER Which cryptographic library to use for encrypting stored passwords (gnutls, old, default)],
572 pwd_crypto="$withval", pwd_crypto="default")
574 if test x"$pwd_crypto" = xdefault; then
575 if test x"$enable_gnutls" = xyes; then
576 if `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
581 if test x"$pwd_crypto" = xdefault; then
587 if test x"$enable_gnutls" = xno; then
588 AC_MSG_ERROR([GnuTLS password encryption requested but GnuTLS is not available.])
590 if ! `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
591 AC_MSG_ERROR([GnuTLS version at least 3.0 is required for password encryption.])
593 AC_DEFINE(PASSWORD_CRYPTO_GNUTLS, 1, Use GnuTLS for stored password encryption)
596 AC_DEFINE(PASSWORD_CRYPTO_OLD, 1, Use old insecure method for stored password encryption)
599 AC_MSG_ERROR([Unknown password encryption provider requested.])
604 dnl ************************
605 dnl ** GTK user interface **
606 dnl ************************
609 PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.24)
611 AC_ARG_ENABLE(deprecated,
612 [ --disable-deprecated Disable deprecated GTK functions],
613 gtkdeprecated=$enableval)
614 AC_MSG_CHECKING([whether to use deprecated GTK functions])
615 if test x"$gtkdeprecated" != xno; then
618 GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
622 dnl Make sure the code does not regress to using deprecated GTK stuff...
623 GTK_CFLAGS="$GTK_CFLAGS -DGTK_DISABLE_SINGLE_INCLUDES -DGSEAL_ENABLE"
628 dnl enchant is used for spell checking
629 AC_MSG_CHECKING([whether to use enchant])
630 AC_MSG_RESULT($enable_enchant)
631 if test $enable_enchant = yes; then
632 PKG_CHECK_MODULES(ENCHANT, enchant >= 1.4.0,
634 AC_DEFINE(USE_ENCHANT, 1, enchant)
635 echo "Building with enchant"
639 PKG_CHECK_MODULES(ENCHANT, enchant-2 >= 2.0.0,
641 AC_DEFINE(USE_ENCHANT, 1, enchant-2)
642 echo "Building with enchant-2"
646 echo "Building without enchant-notification"
650 AC_SUBST(ENCHANT_CFLAGS)
651 AC_SUBST(ENCHANT_LIBS)
654 dnl want crash dialog
655 if test $enable_crash_dialog = yes; then
656 dnl check if GDB is somewhere
657 AC_CHECK_PROG(enable_crash_dialog, gdb, yes, no)
658 AC_MSG_CHECKING([whether to use crash dialog])
659 if test $enable_crash_dialog = yes; then
660 AC_DEFINE(CRASH_DIALOG, 1, Pop up crash dialog)
662 AC_MSG_RESULT($enable_crash_dialog)
666 if test $enable_generic_umpc = yes; then
667 AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
668 AC_MSG_RESULT($enable_generic_umpc)
671 dnl Check for X-Face support
672 AC_MSG_CHECKING([whether to use compface])
673 if test x"$enable_compface" = xyes; then
675 AC_CHECK_LIB(compface, uncompface,
676 [AC_DEFINE(HAVE_LIBCOMPFACE, 1, Define if you want compface support.)],
677 [enable_compface=no])
678 if test x"$enable_compface" = xyes; then
679 COMPFACE_LIBS="-lcompface"
683 AC_SUBST(COMPFACE_LIBS)
688 dnl check for pthread support
689 AC_MSG_CHECKING([whether to use pthread])
690 if test x$enable_pthread = xno; then
695 # For W32 we need to use a special ptrhead lib. In this case we can't
696 # use AC_CHECK_LIB because it has no means of checking for a
697 # library installed under a different name. Checking for the
699 if test -n "${pthread_name}" ; then
702 AC_CHECK_LIB(pthread, pthread_create, :, enable_pthread=no)
704 AC_CHECK_HEADERS(pthread.h, :, enable_pthread=no)
706 if test x$enable_pthread = xyes; then
707 AC_DEFINE(USE_PTHREAD, 1, Define if you have pthread)
708 if test -z "${pthread_name}" ; then
709 PTHREAD_LIBS="-lpthread"
714 AC_SUBST(PTHREAD_LIBS)
717 dnl Check whether we need to pass -lresolv
718 dnl We know that we don't need it for W32.
720 if test x$os_win32 = xno; then
723 ac_cv_var__res_options=no
724 AC_TRY_LINK([#include <sys/types.h>
725 #include <sys/socket.h>
726 #include <netinet/in.h>
727 #include <arpa/nameser.h>
728 #include <resolv.h>],
729 [_res.options = RES_INIT;],
730 ac_cv_var__res_options=yes);
731 if test "$ac_cv_var__res_options" != "yes"; then
736 if test "x$LIBRESOLV" = "x"; then
737 AC_CHECK_LIB(resolv, res_query, [LIBRESOLV=-lresolv])
743 LIBS="$LIBS $LIBRESOLV"
745 dnl #######################################################################
746 dnl # Check for startup notification
747 dnl #######################################################################
748 if test "x$enable_startup_notification" = "xyes"; then
749 PKG_CHECK_MODULES(STARTUP_NOTIFICATION, libstartup-notification-1.0 >= 0.5,
751 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, [Define if we're using libstartup-notification.])
752 echo "Building with libstartup-notification"
753 enable_startup_notification=yes
756 echo "Building without libstartup-notification"
757 enable_startup_notification=no
760 AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
761 AC_SUBST(STARTUP_NOTIFICATION_LIBS)
764 dnl #######################################################################
765 dnl # Check for D-Bus support
766 dnl #######################################################################
767 if test "x$enable_dbus" = "xyes"; then
768 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60, dbus-glib-1 >= 0.60],
770 AC_DEFINE(HAVE_DBUS_GLIB, 1, [Define if glib bindings of D-Bus are available])
774 echo "D-Bus requirements not met. D-Bus support not activated."
777 AC_SUBST(DBUS_CFLAGS)
781 dnl #######################################################################
782 dnl # Configure address book support
783 dnl #######################################################################
785 dnl #######################################################################
786 dnl # Check for alternate address book support
787 dnl #######################################################################
788 AC_MSG_CHECKING([whether DBUS support for alternate address book is present])
789 if test x"$enable_dbus" = xyes; then
791 AC_MSG_CHECKING([whether to enable alternate address book])
792 if test x"$enable_alternate_addressbook" = xyes; then
794 PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
796 AC_DEFINE(USE_ALT_ADDRBOOK, 1, [Define if alternate address book is to be activated.])
797 enable_alternate_addressbook=yes
798 AC_SUBST(CONTACTS_CFLAGS)
799 AC_SUBST(CONTACTS_LIBS)
802 enable_alternate_addressbook=no
806 enable_alternate_addressbook=no
810 enable_alternate_addressbook=no
813 dnl #######################################################################
814 dnl # Check for old address book support
815 dnl #######################################################################
816 if test x"$enable_alternate_addressbook" = xno; then
817 dnl for LDAP support in addressbook
818 dnl no check for libraries; dynamically loaded
819 AC_MSG_CHECKING([whether to use LDAP])
820 if test x"$enable_ldap" = xno; then
822 elif test x"$enable_ldap" = xyes -a x"$enable_pthread" = xno; then
823 AC_MSG_RESULT(no - LDAP support needs pthread support)
826 elif test x"$platform_win32" = xyes; then
828 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
829 LDAP_LIBS="-lwldap32"
834 dnl check for available libraries, and pull them in
835 AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
836 AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
837 AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
838 AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
841 AC_CHECK_HEADERS(ldap.h lber.h,
845 if test "$enable_ldap" = yes; then
846 AC_CHECK_LIB(ldap, ldap_open,
851 AC_CHECK_LIB(ldap, ldap_start_tls_s,
852 [ ac_cv_have_tls=yes ],
853 [ ac_cv_have_tls=no ])
857 AC_MSG_CHECKING([whether ldap library is available])
858 AC_MSG_RESULT($enable_ldap)
860 AC_MSG_CHECKING([whether TLS library is available])
861 AC_MSG_RESULT($ac_cv_have_tls)
863 if test "$enable_ldap" = yes; then
864 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
865 LDAP_LIBS="$LDAP_LIBS -lldap"
867 if test "$ac_cv_have_tls" = yes; then
868 AC_DEFINE(USE_LDAP_TLS, 1, Define if you want LDAP TLS support in addressbook.)
870 dnl As of OpenLDAP API version 3000 a number of functions has
871 dnl been deprecated. As Claws-mail compiles and runs on many
872 dnl platforms and many versions of OpenLDAP we need to be able
873 dnl to switch between the old and new API because new API has
874 dnl added new functions replacing old ones and at the same time
875 dnl old functions has been changed.
876 dnl If cross-compiling defaults to enable deprecated features
877 dnl for maximum portability
878 AC_MSG_CHECKING([The API version of OpenLDAP])
882 [if (LDAP_API_VERSION >= 3000)
885 [AC_MSG_RESULT([version < 3000])
886 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)],
887 [AC_MSG_RESULT([version >= 3000])
888 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 1, Define if OpenLDAP API is at least version 3000.)],
889 [AC_MSG_RESULT([Enabling deprecated features in OpenLDAP])
890 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)
891 AC_DEFINE(LDAP_DEPRECATED, 1, Define to activate deprecated features in OpenLDAP)]
896 dnl for JPilot support in addressbook
897 dnl no check for libraries; these are dynamically loaded
898 AC_MSG_CHECKING([whether to use JPilot])
899 if test "$enable_jpilot" = yes; then
901 AC_CHECK_HEADERS(pi-args.h pi-appinfo.h pi-address.h pi-version.h,
902 [ AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ],
903 [ enable_jpilot=no ])
904 if test "$enable_jpilot" = no; then
905 AC_CHECK_HEADERS(libpisock/pi-args.h libpisock/pi-appinfo.h libpisock/pi-address.h libpisock/pi-version.h,
907 AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
910 AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" enable_jpilot="no"])
911 if test x"$enable_jpilot" = xyes; then
912 AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
914 AC_MSG_NOTICE([JPilot support not available])
916 AC_SUBST(JPILOT_LIBS)
922 AM_CONDITIONAL(BUILD_ALTADDRBOOK, test x"$enable_alternate_addressbook" = x"yes")
924 dnl #######################################################################
925 dnl # Check for NetworkManager support
926 dnl #######################################################################
927 if test x"$enable_dbus" = xyes; then
928 if test x"$enable_networkmanager" = xyes; then
929 PKG_CHECK_MODULES(NETWORKMANAGER_SUPPORT, libnm,
931 AC_DEFINE(HAVE_NETWORKMANAGER_SUPPORT, 1, [Define if NetworkManager support is to be included.])
932 echo "Building with NetworkManager support"
933 enable_networkmanager=yes
936 echo "NetworkManager not found."
937 enable_networkmanager=no
939 AC_SUBST(NETWORKMANAGER_SUPPORT_CFLAGS)
942 echo "NetworkManager support deactivated as D-Bus requirements were not met."
943 enable_networkmanager=no
947 AC_MSG_CHECKING([whether to use libetpan])
948 if test x"$enable_libetpan" = xyes; then
953 libetpan_versiontype=0
955 # since 1.9.4, libetpan uses pkg-config
956 PKG_CHECK_MODULES([LIBETPAN], [libetpan >= 1.9.4],
958 LIBETPAN_VERSION=`pkg-config --modversion libetpan | $AWK -F. '{printf "%d", ($1 * 10000) + ($2 * 100) + $3}'`
962 # before 1.9.4, libetpan uses its own libetpan-config script
963 AC_PATH_PROG(libetpanconfig, [libetpan-config])
964 if test "x$libetpanconfig" != "x"; then
965 LIBETPAN_CFLAGS="`$libetpanconfig --cflags`"
966 LIBETPAN_LIBS="`$libetpanconfig --libs`"
967 # support libetpan version like x.x and x.x.x
968 libetpan_versiontype=`$libetpanconfig --version | tr -dc . | wc -c`
969 if test $libetpan_versiontype -eq 1; then
970 LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 100) + $2}'`
972 LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 10000) + ($2 * 100) + $3}'`
977 if test "x$libetpan_config" = "xyes"; then
978 AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
979 if test "x$libetpan_result" = "xyes"; then
980 AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
981 LIBS="$LIBS $LIBETPAN_LIBS"
982 AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
983 AC_MSG_RESULT([$libetpan_result])
986 if test "x$libetpan_result" = "xyes"; then
987 if test $libetpan_versiontype -eq 1; then
988 if test "$LIBETPAN_VERSION" -lt "57"; then
989 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/])
990 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
991 AC_MSG_ERROR([libetpan 0.57 not found])
994 AC_SUBST(LIBETPAN_CFLAGS)
995 AC_SUBST(LIBETPAN_LIBS)
996 AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNTP support.)
998 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/ ])
999 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
1000 AC_MSG_ERROR([libetpan 0.57 not found])
1005 AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
1008 AC_MSG_CHECKING([whether to use librsvg])
1009 if test x"$enable_svg" = xyes; then
1011 PKG_CHECK_MODULES([SVG], [librsvg-2.0 >= 2.39.0 cairo >= 1.0.0],
1013 AC_SUBST(SVG_CFLAGS)
1015 AC_DEFINE(HAVE_SVG, 1, [Define if librsvg2 is available for SVG support])
1019 AC_MSG_NOTICE([SVG support deactivated as librsvg2 >= 2.39.0 was not found])
1026 AC_MSG_CHECKING([whether to use valgrind])
1027 if test x$enable_valgrind = xyes; then
1029 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1030 enable_valgrind=yes, enable_valgrind=no)
1031 if test x"$enable_valgrind" = xyes; then
1032 AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
1034 AC_MSG_RESULT(not found)
1039 AM_CONDITIONAL(CLAWS_VALGRIND, test x"$enable_valgrind" = x"yes")
1041 AC_MSG_CHECKING([whether to build unit tests])
1042 if test x$enable_tests = xyes; then
1047 AM_CONDITIONAL(BUILD_TESTS, test "x$enable_tests" = "xyes")
1049 dnl *************************
1050 dnl ** section for plugins **
1051 dnl *************************
1055 MISSING_DEPS_PLUGINS=""
1057 dnl First we set the enabled status - either enabled (yes), auto-enabled (auto)
1058 dnl or (auto-)disabled (no for both)
1060 dnl All plugins are auto-enabled except for Demo which is just there to help
1061 dnl potential plugins writers.
1063 AC_ARG_ENABLE(acpi_notifier-plugin,
1064 [ --disable-acpi_notifier-plugin Do not build acpi_notifier plugin],
1065 [enable_acpi_notifier_plugin=$enableval], [enable_acpi_notifier_plugin=auto])
1067 AC_ARG_ENABLE(address_keeper-plugin,
1068 [ --disable-address_keeper-plugin Do not build address_keeper plugin],
1069 [enable_address_keeper_plugin=$enableval], [enable_address_keeper_plugin=auto])
1071 AC_ARG_ENABLE(archive-plugin,
1072 [ --disable-archive-plugin Do not build archive plugin],
1073 [enable_archive_plugin=$enableval], [enable_archive_plugin=auto])
1075 AC_ARG_ENABLE(att_remover-plugin,
1076 [ --disable-att_remover-plugin Do not build att_remover plugin],
1077 [enable_att_remover_plugin=$enableval], [enable_att_remover_plugin=auto])
1079 AC_ARG_ENABLE(attachwarner-plugin,
1080 [ --disable-attachwarner-plugin Do not build attachwarner plugin],
1081 [enable_attachwarner_plugin=$enableval], [enable_attachwarner_plugin=auto])
1083 AC_ARG_ENABLE(bogofilter-plugin,
1084 [ --disable-bogofilter-plugin Do not build bogofilter plugin],
1085 [enable_bogofilter_plugin=$enableval], [enable_bogofilter_plugin=auto])
1087 AC_ARG_ENABLE(bsfilter-plugin,
1088 [ --disable-bsfilter-plugin Do not build bsfilter plugin],
1089 [enable_bsfilter_plugin=$enableval], [enable_bsfilter_plugin=auto])
1091 AC_ARG_ENABLE(clamd-plugin,
1092 [ --disable-clamd-plugin Do not build clamd plugin],
1093 [enable_clamd_plugin=$enableval], [enable_clamd_plugin=auto])
1095 AC_ARG_ENABLE(dillo-plugin,
1096 [ --disable-dillo-plugin Do not build dillo plugin],
1097 [enable_dillo_plugin=$enableval], [enable_dillo_plugin=auto])
1099 AC_ARG_ENABLE(fancy-plugin,
1100 [ --disable-fancy-plugin Do not build fancy plugin],
1101 [enable_fancy_plugin=$enableval], [enable_fancy_plugin=auto])
1103 AC_ARG_ENABLE(fetchinfo-plugin,
1104 [ --disable-fetchinfo-plugin Do not build fetchinfo plugin],
1105 [enable_fetchinfo_plugin=$enableval], [enable_fetchinfo_plugin=auto])
1107 AC_ARG_ENABLE(gdata-plugin,
1108 [ --disable-gdata-plugin Do not build gdata plugin],
1109 [enable_gdata_plugin=$enableval], [enable_gdata_plugin=auto])
1111 AC_ARG_ENABLE(keyword_warner-plugin,
1112 [ --disable-keyword_warner-plugin Do not build keyword_warner plugin],
1113 [enable_keyword_warner_plugin=$enableval], [enable_keyword_warner_plugin=auto])
1115 AC_ARG_ENABLE(libravatar-plugin,
1116 [ --disable-libravatar-plugin Do not build libravatar plugin],
1117 [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
1119 AC_ARG_ENABLE(litehtml_viewer-plugin,
1120 [ --disable-litehtml_viewer-plugin Do not build litehtml_viewer plugin],
1121 [enable_litehtml_viewer_plugin=$enableval], [enable_litehtml_viewer_plugin=auto])
1123 AC_ARG_ENABLE(mailmbox-plugin,
1124 [ --disable-mailmbox-plugin Do not build mailmbox plugin],
1125 [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
1127 AC_ARG_ENABLE(managesieve-plugin,
1128 [ --disable-managesieve-plugin Do not build managesieve plugin],
1129 [enable_managesieve_plugin=$enableval], [enable_managesieve_plugin=auto])
1131 AC_ARG_ENABLE(newmail-plugin,
1132 [ --disable-newmail-plugin Do not build newmail plugin],
1133 [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
1135 AC_ARG_ENABLE(notification-plugin,
1136 [ --disable-notification-plugin Do not build notification plugin],
1137 [enable_notification_plugin=$enableval], [enable_notification_plugin=auto])
1139 AC_ARG_ENABLE(pdf_viewer-plugin,
1140 [ --disable-pdf_viewer-plugin Do not build pdf_viewer plugin],
1141 [enable_pdf_viewer_plugin=$enableval], [enable_pdf_viewer_plugin=auto])
1143 AC_ARG_ENABLE(perl-plugin,
1144 [ --disable-perl-plugin Do not build perl plugin],
1145 [enable_perl_plugin=$enableval], [enable_perl_plugin=auto])
1147 AC_ARG_ENABLE(python-plugin,
1148 [ --disable-python-plugin Do not build python plugin],
1149 [enable_python_plugin=$enableval], [enable_python_plugin=auto])
1151 AC_ARG_ENABLE(pgpcore-plugin,
1152 [ --disable-pgpcore-plugin Do not build pgpcore plugin],
1153 [enable_pgpcore_plugin=$enableval], [enable_pgpcore_plugin=auto])
1155 AC_ARG_ENABLE(pgpmime-plugin,
1156 [ --disable-pgpmime-plugin Do not build pgpmime plugin],
1157 [enable_pgpmime_plugin=$enableval], [enable_pgpmime_plugin=auto])
1159 AC_ARG_ENABLE(pgpinline-plugin,
1160 [ --disable-pgpinline-plugin Do not build pgpinline plugin],
1161 [enable_pgpinline_plugin=$enableval], [enable_pgpinline_plugin=auto])
1163 AC_ARG_ENABLE(rssyl-plugin,
1164 [ --disable-rssyl-plugin Do not build rssyl plugin],
1165 [enable_rssyl_plugin=$enableval], [enable_rssyl_plugin=auto])
1167 AC_ARG_ENABLE(smime-plugin,
1168 [ --disable-smime-plugin Do not build smime plugin],
1169 [enable_smime_plugin=$enableval], [enable_smime_plugin=auto])
1171 AC_ARG_ENABLE(spamassassin-plugin,
1172 [ --disable-spamassassin-plugin Do not build spamassassin plugin],
1173 [enable_spamassassin_plugin=$enableval], [enable_spamassassin_plugin=auto])
1175 AC_ARG_ENABLE(spam_report-plugin,
1176 [ --disable-spam_report-plugin Do not build spam_report plugin],
1177 [enable_spam_report_plugin=$enableval], [enable_spam_report_plugin=auto])
1179 AC_ARG_ENABLE(tnef_parse-plugin,
1180 [ --disable-tnef_parse-plugin Do not build tnef_parse plugin],
1181 [enable_tnef_parse_plugin=$enableval], [enable_tnef_parse_plugin=auto])
1183 AC_ARG_ENABLE(vcalendar-plugin,
1184 [ --disable-vcalendar-plugin Do not build vcalendar plugin],
1185 [enable_vcalendar_plugin=$enableval], [enable_vcalendar_plugin=auto])
1187 dnl disabled by default
1188 AC_ARG_ENABLE(demo-plugin,
1189 [ --enable-demo-plugin Build demo plugin],
1190 [enable_demo_plugin=$enableval], [enable_demo_plugin=no])
1193 dnl Then we check (unconditionnaly) for plugins dependencies
1194 dnl Some dependencies are optional, some mandatory. This is taken care of
1197 dnl During this dependancy check we do the checks themselves, define HAVE_X to
1198 dnl either yes or no, and do the AC_SUBST calls.
1200 dnl Archive: libarchive
1201 dnl Fancy: Webkit, curl, optionally libsoup-gnome
1203 dnl Litehtml a C++ compiler, >=glib-2.36, cairo, fontconfig, gumbo, curl
1204 dnl Libravatar: libcurl
1205 dnl Notification: optionally libnotify unity/messaging-menu
1206 dnl libcanberra_gtk hotkey
1207 dnl Pdf-Viewer: libpoppler
1209 dnl PGP/Core: libgpgme
1210 dnl PGP/Mime: pgpcore libgpgme
1211 dnl PGP/Inline: pgpcore libgpgme
1212 dnl S/Mime: pgpcore libgpgme
1214 dnl RSSyl: expat libcurl
1215 dnl SpamReport: libcurl
1216 dnl vCalendar: libcurl, libical
1217 dnl tnef_parse: libytnef
1219 dnl libcurl ********************************************************************
1220 PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
1222 AC_SUBST(CURL_CFLAGS)
1224 dnl expat **********************************************************************
1225 PKG_CHECK_MODULES(EXPAT, expat, HAVE_EXPAT=yes, HAVE_EXPAT=no)
1227 if test x"$HAVE_EXPAT" = xno; then
1228 AC_CHECK_HEADER(expat.h, [expat_header=yes], [expat_header=no])
1229 AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [expat_lib=no])
1230 if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
1233 EXPAT_LIBS="-lexpat"
1237 AC_SUBST(EXPAT_CFLAGS)
1238 AC_SUBST(EXPAT_LIBS)
1240 dnl webkit *********************************************************************
1241 PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 1.10.0, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
1242 AC_SUBST(WEBKIT_LIBS)
1243 AC_SUBST(WEBKIT_CFLAGS)
1245 dnl libsoup ********************************************************************
1246 PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
1247 if test x"$HAVE_LIBSOUP" = xyes; then
1248 AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
1250 AC_SUBST(LIBSOUP_CFLAGS)
1251 AC_SUBST(LIBSOUP_LIBS)
1253 dnl libsoup-gnome **************************************************************
1254 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
1255 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
1256 AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
1258 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
1259 AC_SUBST(LIBSOUP_GNOME_LIBS)
1261 dnl libarchive *****************************************************************
1262 PKG_CHECK_MODULES(LIBARCHIVE, libarchive, HAVE_ARCHIVE=yes, HAVE_ARCHIVE=no)
1263 AC_SUBST(ARCHIVE_LIBS)
1264 AC_SUBST(ARCHIVE_CFLAGS)
1265 AC_CHECK_LIB([archive], [archive_read_new],
1266 ARCHIVE_LIBS=-larchive
1268 AC_SUBST(ARCHIVE_LIBS,$ARCHIVE_CFLAGS),
1272 dnl libgdata *******************************************************************
1273 PKG_CHECK_MODULES(GDATA, libgdata >= 0.17.2, HAVE_GDATA=yes, HAVE_GDATA=no)
1274 AC_SUBST(GDATA_CFLAGS)
1275 AC_SUBST(GDATA_LIBS)
1277 dnl cairo **********************************************************************
1278 PKG_CHECK_MODULES(CAIRO, cairo >= 1.12.0, HAVE_CAIRO=yes, HAVE_CAIRO=no)
1279 AC_SUBST(CAIRO_CFLAGS)
1280 AC_SUBST(CAIRO_LIBS)
1282 dnl fontconfig *****************************************************************
1283 PKG_CHECK_MODULES(FONTCONFIG, fontconfig, HAVE_FONTCONFIG=yes, HAVE_FONTCONFIG=no)
1284 AC_SUBST(FONTCONFIG_CFLAGS)
1285 AC_SUBST(FONTCONFIG_LIBS)
1287 dnl gumbo **********************************************************************
1288 PKG_CHECK_MODULES(LIBGUMBO, gumbo >= 0.10, HAVE_LIBGUMBO=yes, HAVE_LIBGUMBO=no)
1289 AC_SUBST(LIBGUMBO_CFLAGS)
1290 AC_SUBST(LIBGUMBO_LIBS)
1292 dnl libical ********************************************************************
1293 PKG_CHECK_MODULES(LIBICAL, libical >= 2.0, HAVE_LIBICAL=yes, HAVE_LIBICAL=no)
1294 AC_SUBST(LIBICAL_CFLAGS)
1295 AC_SUBST(LIBICAL_LIBS)
1297 dnl Poppler ********************************************************************
1298 PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
1299 AC_SUBST(POPPLER_LIBS)
1300 AC_SUBST(POPPLER_CFLAGS)
1302 dnl check for Poppler extra features that we conditionally support
1303 if test x"$HAVE_POPPLER" = xyes; then
1305 CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
1306 AC_CHECK_DECL(POPPLER_DEST_NAMED,
1307 [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
1308 ,[#include <poppler-action.h>])
1309 AC_CHECK_DECL(POPPLER_DEST_XYZ,
1310 [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
1311 ,[#include <poppler-action.h>])
1315 dnl perl ***********************************************************************
1316 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
1317 if test x"$HAVE_PERL" = xyes; then
1318 AC_MSG_CHECKING(for perl >= 5.8.0)
1319 PERL_VER=`perl -e 'print $] > 5.0079999?"yes":"no"'`
1320 if test "$PERL_VER" = "yes"; then
1327 if test x"$HAVE_PERL" = xyes; then
1328 AC_MSG_CHECKING(for Perl compile flags)
1329 PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
1330 PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
1331 PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm\>//'`
1332 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb\>//'`
1333 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm\>//'`
1334 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc\>//'`
1336 AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
1338 if test x"$HAVE_PERL" = xyes; then
1339 AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)],
1340 [ HAVE_LIBPERL=no ])
1342 if test x"$HAVE_LIBPERL" = xno; then
1343 LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
1344 LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
1345 AC_MSG_CHECKING([for libperl.so])
1346 if test -f "$LIBPERL_PREFIX/libperl.so"; then
1355 AC_SUBST(PERL_CFLAGS)
1356 AC_SUBST(PERL_LDFLAGS)
1359 dnl Gpgme **********************************************************************
1360 AM_PATH_GPGME(1.0.0, HAVE_GPGME=yes, HAVE_GPGME=no)
1361 if test x"$HAVE_GPGME" = xyes; then
1362 AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.)
1363 AM_PATH_GPGME(1.1.1, AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1, [Define if GPGME supports PKA.]))
1366 dnl Python *********************************************************************
1368 PKG_CHECK_MODULES(PYTHON, python2, HAVE_PYTHON=yes, HAVE_PYTHON=no)
1369 if test x"$HAVE_PYTHON" = xno; then
1370 missing_python="python2"
1372 if test x"$HAVE_PYTHON" = xyes; then
1373 PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.10.3, [AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])], HAVE_PYTHON=no)
1374 if test x"$HAVE_PYTHON" = xno; then
1375 missing_python="pygtk-2.0 >= 2.10.3"
1378 AC_SUBST(PYTHON_SHARED_LIB)
1379 AC_SUBST(PYTHON_CFLAGS)
1380 AC_SUBST(PYTHON_LIBS)
1381 AC_SUBST(PYGTK_CFLAGS)
1382 AC_SUBST(PYGTK_LIBS)
1384 dnl libnotify ******************************************************************
1385 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1386 if test x"$HAVE_LIBNOTIFY" = xyes; then
1387 AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1389 AC_SUBST(libnotify_CFLAGS)
1390 AC_SUBST(libnotify_LIBS)
1392 dnl libcanberra-gtk ************************************************************
1393 PKG_CHECK_MODULES(libcanberra_gtk, libcanberra-gtk >= 0.6, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1394 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1395 AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk support is enabled])
1397 AC_SUBST(libcanberra_gtk_CFLAGS)
1398 AC_SUBST(libcanberra_gtk_LIBS)
1400 dnl unity/messaging-menu *******************************************************
1401 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1402 if test x"$HAVE_UNITY" = xyes; then
1403 AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1405 AC_SUBST(unity_CFLAGS)
1406 AC_SUBST(unity_LIBS)
1408 dnl hotkeys ********************************************************************
1409 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)
1410 if test x"$HAVE_HOTKEYS" = xyes; then
1411 AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1413 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1414 AC_SUBST(CM_NP_HOTKEY_LIBS)
1416 dnl libytnef *******************************************************************
1420 # Check both ytnef.h and libytnef/ytnef.h, and adjust YTNEF_CFLAGS
1422 AC_CHECK_HEADER(ytnef.h, [have_ytnef=1], [have_ytnef=0])
1423 if test $have_ytnef -eq 0; then
1424 AC_CHECK_HEADER(libytnef/ytnef.h,
1426 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_H_SUBDIR"],
1429 if test $have_ytnef -eq 1; then
1430 AC_MSG_CHECKING([how libytnef's SwapDDWord() should be called])
1431 # Now we have to figure out which libytnef version we're using,
1432 # based on whether SwapDDWord takes one argument or two.
1433 if test "x${YTNEF_CFLAGS}" = "x"; then
1434 ytnef_include="#include <ytnef.h>"
1436 ytnef_include="#include <libytnef/ytnef.h>"
1438 AC_TRY_COMPILE([#include <stdio.h>
1440 [SwapDDWord(0, 0);],
1443 if test $have_ytnef -eq 0; then
1444 AC_TRY_COMPILE([#include <stdio.h>
1448 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_OLD_SWAPDDWORD"],
1451 if test $have_ytnef -eq 1; then
1452 YTNEF_LIBS="-lytnef"
1455 AC_MSG_RESULT(no idea, unsupported libytnef version?)
1458 AC_SUBST(YTNEF_CFLAGS)
1459 AC_SUBST(YTNEF_LIBS)
1461 dnl Third, we now cross the requested plugins and the available dependencies
1462 dnl If some dependencies are missing and the plugin was explicitely enabled,
1463 dnl we error out, else we only inform.
1465 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1466 if test x"$enable_acpi_notifier_plugin" != xno; then
1467 PLUGINS="$PLUGINS acpi_notifier"
1470 DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1474 AC_MSG_CHECKING([whether to build address_keeper plugin])
1475 if test x"$enable_address_keeper_plugin" != xno; then
1476 PLUGINS="$PLUGINS address_keeper"
1479 DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1483 AC_MSG_CHECKING([whether to build archive plugin])
1484 if test x"$enable_archive_plugin" != xno; then
1485 dependencies_missing=""
1487 if test x"$HAVE_ARCHIVE" = xno; then
1488 dependencies_missing="libarchive $dependencies_missing"
1491 if test x"$dependencies_missing" = x; then
1492 PLUGINS="$PLUGINS archive"
1494 elif test x"$enable_archive_plugin" = xauto; then
1496 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1497 enable_archive_plugin=no
1498 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1501 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1504 DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1508 AC_MSG_CHECKING([whether to build att_remover plugin])
1509 if test x"$enable_att_remover_plugin" != xno; then
1510 PLUGINS="$PLUGINS att_remover"
1513 DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1517 AC_MSG_CHECKING([whether to build attachwarner plugin])
1518 if test x"$enable_attachwarner_plugin" != xno; then
1519 PLUGINS="$PLUGINS attachwarner"
1522 DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1526 AC_MSG_CHECKING([whether to build bogofilter plugin])
1527 if test x"$enable_bogofilter_plugin" != xno; then
1528 PLUGINS="$PLUGINS bogofilter"
1531 DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1535 AC_MSG_CHECKING([whether to build bsfilter plugin])
1536 if test x"$enable_bsfilter_plugin" != xno; then
1537 PLUGINS="$PLUGINS bsfilter"
1540 DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1544 AC_MSG_CHECKING([whether to build clamd plugin])
1545 if test x"$enable_clamd_plugin" != xno; then
1546 PLUGINS="$PLUGINS clamd"
1549 DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1553 AC_MSG_CHECKING([whether to build demo plugin])
1554 if test x"$enable_demo_plugin" != xno; then
1555 PLUGINS="$PLUGINS demo"
1558 DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1562 AC_MSG_CHECKING([whether to build Dillo plugin])
1563 if test x"$enable_dillo_plugin" != xno; then
1564 PLUGINS="$PLUGINS dillo"
1567 DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
1571 AC_MSG_CHECKING([whether to build fancy plugin])
1572 if test x"$enable_fancy_plugin" != xno; then
1573 dependencies_missing=""
1575 if test x"$HAVE_WEBKIT" = xno; then
1576 dependencies_missing="libwebkit-1.0 $dependencies_missing"
1578 if test x"$HAVE_CURL" = xno; then
1579 dependencies_missing="libcurl $dependencies_missing"
1582 if test x"$dependencies_missing" = x; then
1583 PLUGINS="$PLUGINS fancy"
1585 elif test x"$enable_fancy_plugin" = xauto; then
1587 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1588 enable_fancy_plugin=no
1589 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1592 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1595 DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1599 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1600 if test x"$enable_fetchinfo_plugin" != xno; then
1601 PLUGINS="$PLUGINS fetchinfo"
1604 DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1608 AC_MSG_CHECKING([whether to build gdata plugin])
1609 if test x"$enable_gdata_plugin" != xno; then
1610 dependencies_missing=""
1612 if test x"$HAVE_GDATA" = xno; then
1613 dependencies_missing="libgdata $dependencies_missing"
1616 if test x"$dependencies_missing" = x; then
1617 PLUGINS="$PLUGINS gdata"
1619 elif test x"$enable_gdata_plugin" = xauto; then
1621 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1622 enable_gdata_plugin=no
1623 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1626 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1629 DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1633 AC_MSG_CHECKING([whether to build keyword_warner plugin])
1634 if test x"$enable_keyword_warner_plugin" != xno; then
1635 PLUGINS="$PLUGINS keyword_warner"
1638 DISABLED_PLUGINS="$DISABLED_PLUGINS keyword_warner"
1642 AC_MSG_CHECKING([whether to build libravatar plugin])
1643 if test x"$enable_libravatar_plugin" != xno; then
1644 dependencies_missing=""
1646 if test x"$HAVE_CURL" = xno; then
1647 dependencies_missing="libcurl $dependencies_missing"
1650 if test x"$dependencies_missing" = x; then
1651 PLUGINS="$PLUGINS libravatar"
1653 elif test x"$enable_libravatar_plugin" = xauto; then
1655 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1656 enable_libravatar_plugin=no
1657 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1660 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1663 DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1667 AC_MSG_CHECKING([whether to build litehtml_viewer plugin])
1668 if test x"$enable_litehtml_viewer_plugin" != xno; then
1669 dependencies_missing=""
1671 if test x"$HAVE_CXX" = xno; then
1672 dependencies_missing="C++ compiler $dependencies_missing"
1674 PKG_CHECK_EXISTS([glib-2.0 >= 2.36], [],
1675 [dependencies_missing="glib-2.0 >= 2.36 $dependencies_missing"])
1676 if test x"$HAVE_CAIRO" = xno; then
1677 dependencies_missing="cairo $dependencies_missing"
1679 if test x"$HAVE_FONTCONFIG" = xno; then
1680 dependencies_missing="fontconfig $dependencies_missing"
1682 if test x"$HAVE_LIBGUMBO" = xno; then
1683 dependencies_missing="libgumbo $dependencies_missing"
1685 if test x"$HAVE_CURL" = xno; then
1686 dependencies_missing="libcurl $dependencies_missing"
1690 if test x"$dependencies_missing" = x; then
1691 PLUGINS="$PLUGINS litehtml_viewer"
1693 elif test x"$enable_litehtml_viewer_plugin" = xauto; then
1695 AC_MSG_WARN("Plugin litehtml_viewer will not be built; missing $dependencies_missing")
1696 enable_litehtml_viewer_plugin=no
1697 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS litehtml_viewer"
1700 AC_MSG_ERROR("Plugin litehtml_viewer cannot be built; missing $dependencies_missing")
1703 DISABLED_PLUGINS="$DISABLED_PLUGINS litehtml_viewer"
1707 AC_MSG_CHECKING([whether to build mailmbox plugin])
1708 if test x"$enable_mailmbox_plugin" != xno; then
1709 PLUGINS="$PLUGINS mailmbox"
1712 DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1716 AC_MSG_CHECKING([whether to build managesieve plugin])
1717 if test x"$enable_managesieve_plugin" != xno; then
1718 PLUGINS="$PLUGINS managesieve"
1721 DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1725 AC_MSG_CHECKING([whether to build newmail plugin])
1726 if test x"$enable_newmail_plugin" != xno; then
1727 PLUGINS="$PLUGINS newmail"
1730 DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1734 AC_MSG_CHECKING([whether to build notification plugin])
1735 if test x"$enable_notification_plugin" != xno; then
1736 PLUGINS="$PLUGINS notification"
1739 AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1740 AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1741 AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1742 AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1743 if test x"$platform_win32" = xno; then
1744 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1747 notification_features="banner command"
1748 notification_missing_dependencies=""
1749 if test x"$HAVE_HOTKEYS" = xyes; then
1750 notification_features="$notification_features hotkeys"
1752 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1754 notification_features="$notification_features lcdproc"
1755 if test x"$HAVE_UNITY" = xyes; then
1756 notification_features="$notification_features unity/messaging-menu"
1758 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1760 if test x"$HAVE_LIBNOTIFY" = xyes; then
1761 notification_features="$notification_features libnotify"
1763 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1765 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1766 notification_features="$notification_features libcanberra-gtk"
1768 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk"
1770 notification_features="$notification_features popup trayicon"
1772 DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1776 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1777 if test x"$enable_pdf_viewer_plugin" != xno; then
1778 dependencies_missing=""
1780 if test x"$HAVE_POPPLER" = xno; then
1781 dependencies_missing="libpoppler-glib $dependencies_missing"
1784 if test x"$dependencies_missing" = x; then
1785 PLUGINS="$PLUGINS pdf_viewer"
1787 elif test x"$enable_pdf_viewer_plugin" = xauto; then
1789 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1790 enable_pdf_viewer_plugin=no
1791 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1794 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1797 DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1801 AC_MSG_CHECKING([whether to build perl plugin])
1802 if test x"$enable_perl_plugin" != xno; then
1803 dependencies_missing=""
1805 if test x"$HAVE_LIBPERL" = xno; then
1806 dependencies_missing="libperl $dependencies_missing"
1809 if test x"$dependencies_missing" = x; then
1810 PLUGINS="$PLUGINS perl"
1812 elif test x"$enable_perl_plugin" = xauto; then
1814 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1815 enable_perl_plugin=no
1816 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1819 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1822 DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1826 AC_MSG_CHECKING([whether to build python plugin])
1827 if test x"$enable_python_plugin" != xno; then
1828 dependencies_missing=""
1830 if test x"$HAVE_PYTHON" = xno; then
1831 dependencies_missing="$missing_python $dependencies_missing"
1834 if test x"$dependencies_missing" = x; then
1835 PLUGINS="$PLUGINS python"
1837 elif test x"$enable_python_plugin" = xauto; then
1839 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1840 enable_python_plugin=no
1841 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1844 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1847 DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1851 AC_MSG_CHECKING([whether to build pgpcore plugin])
1852 if test x"$enable_pgpcore_plugin" != xno; then
1853 dependencies_missing=""
1855 if test x"$HAVE_GPGME" = xno; then
1856 dependencies_missing="libgpgme $dependencies_missing"
1859 if test x"$dependencies_missing" = x; then
1860 PLUGINS="$PLUGINS pgpcore"
1862 elif test x"$enable_pgpcore_plugin" = xauto; then
1864 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1865 enable_pgpcore_plugin=no
1866 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1869 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1872 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1876 AC_MSG_CHECKING([whether to build pgpmime plugin])
1877 if test x"$enable_pgpmime_plugin" != xno; then
1878 dependencies_missing=""
1880 if test x"$HAVE_GPGME" = xno; then
1881 dependencies_missing="libgpgme $dependencies_missing"
1883 if test x"$enable_pgpcore_plugin" = xno; then
1884 dependencies_missing="pgpcore plugin $dependencies_missing"
1887 if test x"$dependencies_missing" = x; then
1888 PLUGINS="$PLUGINS pgpmime"
1890 elif test x"$enable_pgpmime_plugin" = xauto; then
1892 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1893 enable_pgpmime_plugin=no
1894 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1897 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1900 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1904 AC_MSG_CHECKING([whether to build pgpinline plugin])
1905 if test x"$enable_pgpinline_plugin" != xno; then
1906 dependencies_missing=""
1908 if test x"$HAVE_GPGME" = xno; then
1909 dependencies_missing="libgpgme $dependencies_missing"
1911 if test x"$enable_pgpcore_plugin" = xno; then
1912 dependencies_missing="pgpcore plugin $dependencies_missing"
1915 if test x"$dependencies_missing" = x; then
1916 PLUGINS="$PLUGINS pgpinline"
1918 elif test x"$enable_pgpinline_plugin" = xauto; then
1920 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1921 enable_pgpinline_plugin=no
1922 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1925 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1928 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1932 AC_MSG_CHECKING([whether to build rssyl plugin])
1933 if test x"$enable_rssyl_plugin" != xno; then
1934 dependencies_missing=""
1936 if test x"$HAVE_EXPAT" = xno; then
1937 dependencies_missing="expat $dependencies_missing"
1939 if test x"$HAVE_CURL" = xno; then
1940 dependencies_missing="libcurl $dependencies_missing"
1943 if test x"$dependencies_missing" = x; then
1944 PLUGINS="$PLUGINS rssyl"
1946 elif test x"$enable_rssyl_plugin" = xauto; then
1948 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1949 enable_rssyl_plugin=no
1950 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1953 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1956 DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1960 AC_MSG_CHECKING([whether to build spamassassin plugin])
1961 if test x"$enable_spamassassin_plugin" != xno; then
1962 PLUGINS="$PLUGINS spamassassin"
1966 dnl check for zlib (optional)
1968 SPAMASSASSIN_CFLAGS=""
1969 SPAMASSASSIN_LIBS=""
1970 AC_CHECK_HEADER([zlib.h],
1971 [AC_DEFINE(HAVE_ZLIB_H,1,[optional zlib support for spamassassin plugin])]
1972 [spamassassin_zlib=1],
1973 [spamassassin_zlib=0])
1974 if test $spamassassin_zlib -eq 1; then
1975 AC_CHECK_LIB(z, deflate, [spamassassin_zlib=1], [spamassassin_zlib=0])
1976 AC_MSG_CHECKING([whether to build spamassassin plugin with zlib support])
1977 if test $spamassassin_zlib -eq 1; then
1979 SPAMASSASSIN_CFLAGS="-DHAVE_LIBZ"
1980 SPAMASSASSIN_LIBS="-lz"
1985 AC_SUBST(SPAMASSASSIN_CFLAGS)
1986 AC_SUBST(SPAMASSASSIN_LIBS)
1988 DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1992 AC_MSG_CHECKING([whether to build smime plugin])
1993 if test x"$enable_smime_plugin" != xno; then
1994 dependencies_missing=""
1996 if test x"$HAVE_GPGME" = xno; then
1997 dependencies_missing="libgpgme $dependencies_missing"
1999 if test x"$enable_pgpcore_plugin" = xno; then
2000 dependencies_missing="pgpcore plugin $dependencies_missing"
2003 if test x"$dependencies_missing" = x; then
2004 PLUGINS="$PLUGINS smime"
2006 elif test x"$enable_smime_plugin" = xauto; then
2008 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
2009 enable_smime_plugin=no
2010 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
2013 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
2016 DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
2020 AC_MSG_CHECKING([whether to build spam_report plugin])
2021 if test x"$enable_spam_report_plugin" != xno; then
2022 dependencies_missing=""
2024 if test x"$HAVE_CURL" = xno; then
2025 dependencies_missing="libcurl $dependencies_missing"
2028 if test x"$dependencies_missing" = x; then
2029 PLUGINS="$PLUGINS spam_report"
2031 elif test x"$enable_spam_report_plugin" = xauto; then
2033 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
2034 enable_spam_report_plugin=no
2035 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
2038 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
2041 DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
2045 AC_MSG_CHECKING([whether to build tnef_parse plugin])
2046 if test x"$enable_tnef_parse_plugin" != xno; then
2047 dependencies_missing=""
2049 if test $have_ytnef -eq 0; then
2050 dependencies_missing="libytnef"
2053 if test x"$dependencies_missing" = x; then
2054 PLUGINS="$PLUGINS tnef_parse"
2056 elif test x"$enable_tnef_parse_plugin" = xauto; then
2058 AC_MSG_WARN(Plugin tnef_parse will not be built; missing $dependencies_missing")
2059 enable_tnef_parse_plugin=no
2060 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS tnef_parse"
2063 AC_MSG_ERROR(Plugin tnef_parse will not be built; missing $dependencies_missing")
2066 DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
2071 AC_MSG_CHECKING([whether to build vcalendar plugin])
2072 if test x"$enable_vcalendar_plugin" != xno; then
2073 dependencies_missing=""
2075 if test x"$HAVE_CURL" = xno; then
2076 dependencies_missing="libcurl $dependencies_missing"
2079 if test x"$HAVE_LIBICAL" = xno; then
2080 dependencies_missing="libical $dependencies_missing"
2083 if test x"$HAVE_PERL" = xno; then
2084 dependencies_missing="perl $dependencies_missing"
2087 if test x"$dependencies_missing" = x; then
2088 PLUGINS="$PLUGINS vcalendar"
2090 elif test x"$enable_vcalendar_plugin" = xauto; then
2092 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
2093 enable_vcalendar_plugin=no
2094 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
2097 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
2100 DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
2104 dnl And finally the automake conditionals.
2106 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN, test x"$enable_acpi_notifier_plugin" != xno)
2107 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN, test x"$enable_address_keeper_plugin" != xno)
2108 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN, test x"$enable_archive_plugin" != xno)
2109 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN, test x"$enable_att_remover_plugin" != xno)
2110 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN, test x"$enable_attachwarner_plugin" != xno)
2111 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN, test x"$enable_bogofilter_plugin" != xno)
2112 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN, test x"$enable_bsfilter_plugin" != xno)
2113 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN, test x"$enable_clamd_plugin" != xno)
2114 AM_CONDITIONAL(BUILD_DEMO_PLUGIN, test x"$enable_demo_plugin" != xno)
2115 AM_CONDITIONAL(BUILD_DILLO_PLUGIN, test x"$enable_dillo_plugin" != xno)
2116 AM_CONDITIONAL(BUILD_FANCY_PLUGIN, test x"$enable_fancy_plugin" != xno)
2117 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN, test x"$enable_fetchinfo_plugin" != xno)
2118 AM_CONDITIONAL(BUILD_GDATA_PLUGIN, test x"$enable_gdata_plugin" != xno)
2119 AM_CONDITIONAL(BUILD_KEYWORD_WARNER_PLUGIN, test x"$enable_keywordwarner_plugin" != xno)
2120 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN, test x"$enable_libravatar_plugin" != xno)
2121 AM_CONDITIONAL(BUILD_LITEHTML_VIEWER_PLUGIN, test x"$enable_litehtml_viewer_plugin" != xno)
2122 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN, test x"$enable_mailmbox_plugin" != xno)
2123 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN, test x"$enable_managesieve_plugin" != xno)
2124 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN, test x"$enable_newmail_plugin" != xno)
2125 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN, test x"$enable_notification_plugin" != xno)
2126 AM_CONDITIONAL(BUILD_HOTKEYS, test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
2127 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN, test x"$enable_pdf_viewer_plugin" != xno)
2128 AM_CONDITIONAL(BUILD_PERL_PLUGIN, test x"$enable_perl_plugin" != xno)
2129 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN, test x"$enable_python_plugin" != xno)
2130 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN, test x"$enable_pgpcore_plugin" != xno)
2131 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN, test x"$enable_pgpmime_plugin" != xno)
2132 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN, test x"$enable_pgpinline_plugin" != xno)
2133 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN, test x"$enable_rssyl_plugin" != xno)
2134 AM_CONDITIONAL(BUILD_SMIME_PLUGIN, test x"$enable_smime_plugin" != xno)
2135 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN, test x"$enable_spamassassin_plugin" != xno)
2136 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN, test x"$enable_spam_report_plugin" != xno)
2137 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN, test x"$enable_tnef_parse_plugin" != xno)
2138 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN, test x"$enable_vcalendar_plugin" != xno)
2141 dnl ****************************
2142 dnl ** Final configure output **
2143 dnl ****************************
2149 src/common/version.h
2153 src/common/passcrypt.h
2154 src/common/tests/Makefile
2157 src/plugins/Makefile
2158 src/plugins/acpi_notifier/Makefile
2159 src/plugins/address_keeper/Makefile
2160 src/plugins/address_keeper/version.rc
2161 src/plugins/archive/Makefile
2162 src/plugins/att_remover/Makefile
2163 src/plugins/att_remover/version.rc
2164 src/plugins/attachwarner/Makefile
2165 src/plugins/attachwarner/version.rc
2166 src/plugins/bogofilter/Makefile
2167 src/plugins/bsfilter/Makefile
2168 src/plugins/bsfilter/version.rc
2169 src/plugins/clamd/Makefile
2170 src/plugins/clamd/libclamd/Makefile
2171 src/plugins/demo/Makefile
2172 src/plugins/dillo/Makefile
2173 src/plugins/fancy/Makefile
2174 src/plugins/fancy/version.rc
2175 src/plugins/fetchinfo/Makefile
2176 src/plugins/fetchinfo/version.rc
2177 src/plugins/gdata/Makefile
2178 src/plugins/keyword_warner/Makefile
2179 src/plugins/keyword_warner/version.rc
2180 src/plugins/litehtml_viewer/Makefile
2181 src/plugins/litehtml_viewer/version.rc
2182 src/plugins/litehtml_viewer/litehtml/Makefile
2183 src/plugins/libravatar/Makefile
2184 src/plugins/libravatar/version.rc
2185 src/plugins/mailmbox/Makefile
2186 src/plugins/mailmbox/version.rc
2187 src/plugins/managesieve/Makefile
2188 src/plugins/managesieve/version.rc
2189 src/plugins/newmail/Makefile
2190 src/plugins/notification/Makefile
2191 src/plugins/notification/version.rc
2192 src/plugins/notification/gtkhotkey/Makefile
2193 src/plugins/pdf_viewer/Makefile
2194 src/plugins/pdf_viewer/version.rc
2195 src/plugins/perl/Makefile
2196 src/plugins/perl/tools/Makefile
2197 src/plugins/python/Makefile
2198 src/plugins/python/examples/Makefile
2199 src/plugins/pgpcore/Makefile
2200 src/plugins/pgpcore/version.rc
2201 src/plugins/pgpcore/tests/Makefile
2202 src/plugins/pgpmime/Makefile
2203 src/plugins/pgpmime/version.rc
2204 src/plugins/pgpinline/Makefile
2205 src/plugins/pgpinline/version.rc
2206 src/plugins/rssyl/Makefile
2207 src/plugins/rssyl/version.rc
2208 src/plugins/rssyl/tests/Makefile
2209 src/plugins/rssyl/libfeed/Makefile
2210 src/plugins/rssyl/libfeed/tests/Makefile
2211 src/plugins/smime/Makefile
2212 src/plugins/smime/version.rc
2213 src/plugins/spamassassin/Makefile
2214 src/plugins/spam_report/Makefile
2215 src/plugins/spam_report/version.rc
2216 src/plugins/tnef_parse/Makefile
2217 src/plugins/tnef_parse/version.rc
2218 src/plugins/vcalendar/Makefile
2219 src/plugins/vcalendar/version.rc
2229 dnl Output the configuration summary
2231 echo "$PACKAGE $VERSION"
2233 if test x"$enable_alternate_addressbook" = xyes; then
2234 echo "Using Address Book : Alternate experimental interface"
2236 echo "Using Address Book : Original stable interface"
2237 echo "JPilot : $enable_jpilot"
2238 echo "LDAP : $enable_ldap"
2240 echo "gnuTLS : $enable_gnutls"
2241 echo "iconv : $am_cv_func_iconv"
2242 echo "compface : $enable_compface"
2243 echo "IPv6 : $enable_ipv6"
2244 echo "enchant : $enable_enchant"
2245 echo "IMAP4 : $enable_libetpan"
2246 echo "NNTP : $enable_libetpan"
2247 echo "Crash dialog : $enable_crash_dialog"
2248 echo "LibSM : $enable_libsm"
2249 echo "DBUS : $enable_dbus"
2250 echo "NetworkManager : $enable_networkmanager"
2251 echo "Manual : $enable_manual"
2252 echo "Generic UMPC code : $enable_generic_umpc"
2253 echo "SVG support : $enable_svg"
2254 echo "Config dir : $ac_cv_with_config_dir"
2255 echo "Password crypto : $pwd_crypto"
2256 echo "Unit tests : $enable_tests"
2260 for plugin in $PLUGINS; do
2262 if test x"$plugin" = xnotification; then
2264 for notif_feature in $notification_features; do
2265 echo " $notif_feature"
2267 if test "x$notification_missing_dependencies" != x; then
2268 echo " Disabled due to missing dependencies:"
2269 for notif_miss_dep in $notification_missing_dependencies; do
2270 echo " $notif_miss_dep"
2275 if test "x$DISABLED_PLUGINS" != x; then
2277 for plugin in $DISABLED_PLUGINS; do
2282 if test "x$MISSING_DEPS_PLUGINS" != x; then
2283 echo " Disabled due to missing dependencies:"
2284 for plugin in $MISSING_DEPS_PLUGINS; do
2289 echo "The binary will be installed in $prefix/bin"
2291 echo "Configure finished, type 'make' to build."