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_GTK3_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 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+-3.0 >= 3.20 cairo)
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_gtk3 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, webkit2gtk-4.0 >= 2.18.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 *********************************************************************
1367 PKG_CHECK_MODULES(PYTHON, python3, HAVE_PYTHON=yes, HAVE_PYTHON=no)
1368 PKG_CHECK_MODULES(PYTHONEMBED, python3-embed, HAVE_PYTHONEMBED=yes, HAVE_PYTHONEMBED=no)
1369 PKG_CHECK_MODULES(PYGOBJECT, pygobject-3.0, HAVE_PYGOBJ=yes, HAVE_PYGOBJ=no)
1371 AC_SUBST(PYTHON_SHARED_LIB)
1372 AC_SUBST(PYTHON_CFLAGS)
1373 AC_SUBST(PYTHON_LIBS)
1374 AC_SUBST(PYTHONEMBED_SHARED_LIB)
1375 AC_SUBST(PYTHONEMBED_CFLAGS)
1376 AC_SUBST(PYTHONEMBED_LIBS)
1377 AC_SUBST(PYGOBJECT_CFLAGS)
1378 AC_SUBST(PYGOBJECT_LIBS)
1380 dnl libnotify ******************************************************************
1381 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1382 if test x"$HAVE_LIBNOTIFY" = xyes; then
1383 AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1385 AC_SUBST(libnotify_CFLAGS)
1386 AC_SUBST(libnotify_LIBS)
1388 dnl libcanberra-gtk3 ************************************************************
1389 PKG_CHECK_MODULES(libcanberra_gtk3, libcanberra-gtk3, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1390 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1391 AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk3 support is enabled])
1393 AC_SUBST(libcanberra_gtk3_CFLAGS)
1394 AC_SUBST(libcanberra_gtk3_LIBS)
1396 dnl unity/messaging-menu *******************************************************
1397 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1398 if test x"$HAVE_UNITY" = xyes; then
1399 AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1401 AC_SUBST(unity_CFLAGS)
1402 AC_SUBST(unity_LIBS)
1404 dnl hotkeys ********************************************************************
1405 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)
1406 if test x"$HAVE_HOTKEYS" = xyes; then
1407 AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1409 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1410 AC_SUBST(CM_NP_HOTKEY_LIBS)
1412 dnl libytnef *******************************************************************
1416 # Check both ytnef.h and libytnef/ytnef.h, and adjust YTNEF_CFLAGS
1418 AC_CHECK_HEADER(ytnef.h, [have_ytnef=1], [have_ytnef=0])
1419 if test $have_ytnef -eq 0; then
1420 AC_CHECK_HEADER(libytnef/ytnef.h,
1422 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_H_SUBDIR"],
1425 if test $have_ytnef -eq 1; then
1426 AC_MSG_CHECKING([how libytnef's SwapDDWord() should be called])
1427 # Now we have to figure out which libytnef version we're using,
1428 # based on whether SwapDDWord takes one argument or two.
1429 if test "x${YTNEF_CFLAGS}" = "x"; then
1430 ytnef_include="#include <ytnef.h>"
1432 ytnef_include="#include <libytnef/ytnef.h>"
1434 AC_TRY_COMPILE([#include <stdio.h>
1436 [SwapDDWord(0, 0);],
1439 if test $have_ytnef -eq 0; then
1440 AC_TRY_COMPILE([#include <stdio.h>
1444 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_OLD_SWAPDDWORD"],
1447 if test $have_ytnef -eq 1; then
1448 YTNEF_LIBS="-lytnef"
1451 AC_MSG_RESULT(no idea, unsupported libytnef version?)
1454 AC_SUBST(YTNEF_CFLAGS)
1455 AC_SUBST(YTNEF_LIBS)
1457 dnl Third, we now cross the requested plugins and the available dependencies
1458 dnl If some dependencies are missing and the plugin was explicitely enabled,
1459 dnl we error out, else we only inform.
1461 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1462 if test x"$enable_acpi_notifier_plugin" != xno; then
1463 PLUGINS="$PLUGINS acpi_notifier"
1466 DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1470 AC_MSG_CHECKING([whether to build address_keeper plugin])
1471 if test x"$enable_address_keeper_plugin" != xno; then
1472 PLUGINS="$PLUGINS address_keeper"
1475 DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1479 AC_MSG_CHECKING([whether to build archive plugin])
1480 if test x"$enable_archive_plugin" != xno; then
1481 dependencies_missing=""
1483 if test x"$HAVE_ARCHIVE" = xno; then
1484 dependencies_missing="libarchive $dependencies_missing"
1487 if test x"$dependencies_missing" = x; then
1488 PLUGINS="$PLUGINS archive"
1490 elif test x"$enable_archive_plugin" = xauto; then
1492 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1493 enable_archive_plugin=no
1494 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1497 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1500 DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1504 AC_MSG_CHECKING([whether to build att_remover plugin])
1505 if test x"$enable_att_remover_plugin" != xno; then
1506 PLUGINS="$PLUGINS att_remover"
1509 DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1513 AC_MSG_CHECKING([whether to build attachwarner plugin])
1514 if test x"$enable_attachwarner_plugin" != xno; then
1515 PLUGINS="$PLUGINS attachwarner"
1518 DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1522 AC_MSG_CHECKING([whether to build bogofilter plugin])
1523 if test x"$enable_bogofilter_plugin" != xno; then
1524 PLUGINS="$PLUGINS bogofilter"
1527 DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1531 AC_MSG_CHECKING([whether to build bsfilter plugin])
1532 if test x"$enable_bsfilter_plugin" != xno; then
1533 PLUGINS="$PLUGINS bsfilter"
1536 DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1540 AC_MSG_CHECKING([whether to build clamd plugin])
1541 if test x"$enable_clamd_plugin" != xno; then
1542 PLUGINS="$PLUGINS clamd"
1545 DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1549 AC_MSG_CHECKING([whether to build demo plugin])
1550 if test x"$enable_demo_plugin" != xno; then
1551 PLUGINS="$PLUGINS demo"
1554 DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1558 AC_MSG_CHECKING([whether to build Dillo plugin])
1559 if test x"$enable_dillo_plugin" != xno; then
1560 PLUGINS="$PLUGINS dillo"
1563 DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
1567 AC_MSG_CHECKING([whether to build fancy plugin])
1568 if test x"$enable_fancy_plugin" != xno; then
1569 dependencies_missing=""
1571 if test x"$HAVE_WEBKIT" = xno; then
1572 dependencies_missing="libwebkit2gtk-4.0 $dependencies_missing"
1574 if test x"$HAVE_CURL" = xno; then
1575 dependencies_missing="libcurl $dependencies_missing"
1578 if test x"$dependencies_missing" = x; then
1579 PLUGINS="$PLUGINS fancy"
1581 elif test x"$enable_fancy_plugin" = xauto; then
1583 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1584 enable_fancy_plugin=no
1585 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1588 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1591 DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1595 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1596 if test x"$enable_fetchinfo_plugin" != xno; then
1597 PLUGINS="$PLUGINS fetchinfo"
1600 DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1604 AC_MSG_CHECKING([whether to build gdata plugin])
1605 if test x"$enable_gdata_plugin" != xno; then
1606 dependencies_missing=""
1608 if test x"$HAVE_GDATA" = xno; then
1609 dependencies_missing="libgdata $dependencies_missing"
1612 if test x"$dependencies_missing" = x; then
1613 PLUGINS="$PLUGINS gdata"
1615 elif test x"$enable_gdata_plugin" = xauto; then
1617 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1618 enable_gdata_plugin=no
1619 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1622 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1625 DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1629 AC_MSG_CHECKING([whether to build keyword_warner plugin])
1630 if test x"$enable_keyword_warner_plugin" != xno; then
1631 PLUGINS="$PLUGINS keyword_warner"
1634 DISABLED_PLUGINS="$DISABLED_PLUGINS keyword_warner"
1638 AC_MSG_CHECKING([whether to build libravatar plugin])
1639 if test x"$enable_libravatar_plugin" != xno; then
1640 dependencies_missing=""
1642 if test x"$HAVE_CURL" = xno; then
1643 dependencies_missing="libcurl $dependencies_missing"
1646 if test x"$dependencies_missing" = x; then
1647 PLUGINS="$PLUGINS libravatar"
1649 elif test x"$enable_libravatar_plugin" = xauto; then
1651 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1652 enable_libravatar_plugin=no
1653 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1656 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1659 DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1663 AC_MSG_CHECKING([whether to build litehtml_viewer plugin])
1664 if test x"$enable_litehtml_viewer_plugin" != xno; then
1665 dependencies_missing=""
1667 if test x"$HAVE_CXX" = xno; then
1668 dependencies_missing="C++ compiler $dependencies_missing"
1670 PKG_CHECK_EXISTS([glib-2.0 >= 2.36], [],
1671 [dependencies_missing="glib-2.0 >= 2.36 $dependencies_missing"])
1672 if test x"$HAVE_CAIRO" = xno; then
1673 dependencies_missing="cairo $dependencies_missing"
1675 if test x"$HAVE_FONTCONFIG" = xno; then
1676 dependencies_missing="fontconfig $dependencies_missing"
1678 if test x"$HAVE_LIBGUMBO" = xno; then
1679 dependencies_missing="libgumbo $dependencies_missing"
1681 if test x"$HAVE_CURL" = xno; then
1682 dependencies_missing="libcurl $dependencies_missing"
1686 if test x"$dependencies_missing" = x; then
1687 PLUGINS="$PLUGINS litehtml_viewer"
1689 elif test x"$enable_litehtml_viewer_plugin" = xauto; then
1691 AC_MSG_WARN("Plugin litehtml_viewer will not be built; missing $dependencies_missing")
1692 enable_litehtml_viewer_plugin=no
1693 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS litehtml_viewer"
1696 AC_MSG_ERROR("Plugin litehtml_viewer cannot be built; missing $dependencies_missing")
1699 DISABLED_PLUGINS="$DISABLED_PLUGINS litehtml_viewer"
1703 AC_MSG_CHECKING([whether to build mailmbox plugin])
1704 if test x"$enable_mailmbox_plugin" != xno; then
1705 PLUGINS="$PLUGINS mailmbox"
1708 DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1712 AC_MSG_CHECKING([whether to build managesieve plugin])
1713 if test x"$enable_managesieve_plugin" != xno; then
1714 PLUGINS="$PLUGINS managesieve"
1717 DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1721 AC_MSG_CHECKING([whether to build newmail plugin])
1722 if test x"$enable_newmail_plugin" != xno; then
1723 PLUGINS="$PLUGINS newmail"
1726 DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1730 AC_MSG_CHECKING([whether to build notification plugin])
1731 if test x"$enable_notification_plugin" != xno; then
1732 PLUGINS="$PLUGINS notification"
1735 AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1736 AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1737 AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1738 AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1739 if test x"$platform_win32" = xno; then
1740 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1743 notification_features="banner command"
1744 notification_missing_dependencies=""
1745 if test x"$HAVE_HOTKEYS" = xyes; then
1746 notification_features="$notification_features hotkeys"
1748 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1750 notification_features="$notification_features lcdproc"
1751 if test x"$HAVE_UNITY" = xyes; then
1752 notification_features="$notification_features unity/messaging-menu"
1754 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1756 if test x"$HAVE_LIBNOTIFY" = xyes; then
1757 notification_features="$notification_features libnotify"
1759 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1761 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1762 notification_features="$notification_features libcanberra-gtk3"
1764 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk3"
1766 notification_features="$notification_features popup trayicon"
1768 DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1772 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1773 if test x"$enable_pdf_viewer_plugin" != xno; then
1774 dependencies_missing=""
1776 if test x"$HAVE_POPPLER" = xno; then
1777 dependencies_missing="libpoppler-glib $dependencies_missing"
1780 if test x"$dependencies_missing" = x; then
1781 PLUGINS="$PLUGINS pdf_viewer"
1783 elif test x"$enable_pdf_viewer_plugin" = xauto; then
1785 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1786 enable_pdf_viewer_plugin=no
1787 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1790 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1793 DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1797 AC_MSG_CHECKING([whether to build perl plugin])
1798 if test x"$enable_perl_plugin" != xno; then
1799 dependencies_missing=""
1801 if test x"$HAVE_LIBPERL" = xno; then
1802 dependencies_missing="libperl $dependencies_missing"
1805 if test x"$dependencies_missing" = x; then
1806 PLUGINS="$PLUGINS perl"
1808 elif test x"$enable_perl_plugin" = xauto; then
1810 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1811 enable_perl_plugin=no
1812 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1815 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1818 DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1822 AC_MSG_CHECKING([whether to build python plugin])
1823 if test x"$enable_python_plugin" != xno; then
1824 dependencies_missing=""
1826 if test x"$HAVE_PYTHON" = xno; then
1827 dependencies_missing="python3 $dependencies_missing"
1829 if test x"$HAVE_PYGOBJ" = xno; then
1830 dependencies_missing="pygobject-3.0 $dependencies_missing"
1833 if test x"$dependencies_missing" = x; then
1834 PLUGINS="$PLUGINS python"
1836 elif test x"$enable_python_plugin" = xauto; then
1838 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1839 enable_python_plugin=no
1840 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1843 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1846 DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1850 AC_MSG_CHECKING([whether to build pgpcore plugin])
1851 if test x"$enable_pgpcore_plugin" != xno; then
1852 dependencies_missing=""
1854 if test x"$HAVE_GPGME" = xno; then
1855 dependencies_missing="libgpgme $dependencies_missing"
1858 if test x"$dependencies_missing" = x; then
1859 PLUGINS="$PLUGINS pgpcore"
1861 elif test x"$enable_pgpcore_plugin" = xauto; then
1863 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1864 enable_pgpcore_plugin=no
1865 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1868 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1871 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1875 AC_MSG_CHECKING([whether to build pgpmime plugin])
1876 if test x"$enable_pgpmime_plugin" != xno; then
1877 dependencies_missing=""
1879 if test x"$HAVE_GPGME" = xno; then
1880 dependencies_missing="libgpgme $dependencies_missing"
1882 if test x"$enable_pgpcore_plugin" = xno; then
1883 dependencies_missing="pgpcore plugin $dependencies_missing"
1886 if test x"$dependencies_missing" = x; then
1887 PLUGINS="$PLUGINS pgpmime"
1889 elif test x"$enable_pgpmime_plugin" = xauto; then
1891 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1892 enable_pgpmime_plugin=no
1893 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1896 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1899 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1903 AC_MSG_CHECKING([whether to build pgpinline plugin])
1904 if test x"$enable_pgpinline_plugin" != xno; then
1905 dependencies_missing=""
1907 if test x"$HAVE_GPGME" = xno; then
1908 dependencies_missing="libgpgme $dependencies_missing"
1910 if test x"$enable_pgpcore_plugin" = xno; then
1911 dependencies_missing="pgpcore plugin $dependencies_missing"
1914 if test x"$dependencies_missing" = x; then
1915 PLUGINS="$PLUGINS pgpinline"
1917 elif test x"$enable_pgpinline_plugin" = xauto; then
1919 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1920 enable_pgpinline_plugin=no
1921 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1924 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1927 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1931 AC_MSG_CHECKING([whether to build rssyl plugin])
1932 if test x"$enable_rssyl_plugin" != xno; then
1933 dependencies_missing=""
1935 if test x"$HAVE_EXPAT" = xno; then
1936 dependencies_missing="expat $dependencies_missing"
1938 if test x"$HAVE_CURL" = xno; then
1939 dependencies_missing="libcurl $dependencies_missing"
1942 if test x"$dependencies_missing" = x; then
1943 PLUGINS="$PLUGINS rssyl"
1945 elif test x"$enable_rssyl_plugin" = xauto; then
1947 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1948 enable_rssyl_plugin=no
1949 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1952 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1955 DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1959 AC_MSG_CHECKING([whether to build spamassassin plugin])
1960 if test x"$enable_spamassassin_plugin" != xno; then
1961 PLUGINS="$PLUGINS spamassassin"
1965 dnl check for zlib (optional)
1967 SPAMASSASSIN_CFLAGS=""
1968 SPAMASSASSIN_LIBS=""
1969 AC_CHECK_HEADER([zlib.h],
1970 [AC_DEFINE(HAVE_ZLIB_H,1,[optional zlib support for spamassassin plugin])]
1971 [spamassassin_zlib=1],
1972 [spamassassin_zlib=0])
1973 if test $spamassassin_zlib -eq 1; then
1974 AC_CHECK_LIB(z, deflate, [spamassassin_zlib=1], [spamassassin_zlib=0])
1975 AC_MSG_CHECKING([whether to build spamassassin plugin with zlib support])
1976 if test $spamassassin_zlib -eq 1; then
1978 SPAMASSASSIN_CFLAGS="-DHAVE_LIBZ"
1979 SPAMASSASSIN_LIBS="-lz"
1984 AC_SUBST(SPAMASSASSIN_CFLAGS)
1985 AC_SUBST(SPAMASSASSIN_LIBS)
1987 DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1991 AC_MSG_CHECKING([whether to build smime plugin])
1992 if test x"$enable_smime_plugin" != xno; then
1993 dependencies_missing=""
1995 if test x"$HAVE_GPGME" = xno; then
1996 dependencies_missing="libgpgme $dependencies_missing"
1998 if test x"$enable_pgpcore_plugin" = xno; then
1999 dependencies_missing="pgpcore plugin $dependencies_missing"
2002 if test x"$dependencies_missing" = x; then
2003 PLUGINS="$PLUGINS smime"
2005 elif test x"$enable_smime_plugin" = xauto; then
2007 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
2008 enable_smime_plugin=no
2009 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
2012 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
2015 DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
2019 AC_MSG_CHECKING([whether to build spam_report plugin])
2020 if test x"$enable_spam_report_plugin" != xno; then
2021 dependencies_missing=""
2023 if test x"$HAVE_CURL" = xno; then
2024 dependencies_missing="libcurl $dependencies_missing"
2027 if test x"$dependencies_missing" = x; then
2028 PLUGINS="$PLUGINS spam_report"
2030 elif test x"$enable_spam_report_plugin" = xauto; then
2032 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
2033 enable_spam_report_plugin=no
2034 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
2037 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
2040 DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
2044 AC_MSG_CHECKING([whether to build tnef_parse plugin])
2045 if test x"$enable_tnef_parse_plugin" != xno; then
2046 dependencies_missing=""
2048 if test $have_ytnef -eq 0; then
2049 dependencies_missing="libytnef"
2052 if test x"$dependencies_missing" = x; then
2053 PLUGINS="$PLUGINS tnef_parse"
2055 elif test x"$enable_tnef_parse_plugin" = xauto; then
2057 AC_MSG_WARN(Plugin tnef_parse will not be built; missing $dependencies_missing")
2058 enable_tnef_parse_plugin=no
2059 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS tnef_parse"
2062 AC_MSG_ERROR(Plugin tnef_parse will not be built; missing $dependencies_missing")
2065 DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
2070 AC_MSG_CHECKING([whether to build vcalendar plugin])
2071 if test x"$enable_vcalendar_plugin" != xno; then
2072 dependencies_missing=""
2074 if test x"$HAVE_CURL" = xno; then
2075 dependencies_missing="libcurl $dependencies_missing"
2078 if test x"$HAVE_LIBICAL" = xno; then
2079 dependencies_missing="libical $dependencies_missing"
2082 if test x"$HAVE_PERL" = xno; then
2083 dependencies_missing="perl $dependencies_missing"
2086 if test x"$dependencies_missing" = x; then
2087 PLUGINS="$PLUGINS vcalendar"
2089 elif test x"$enable_vcalendar_plugin" = xauto; then
2091 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
2092 enable_vcalendar_plugin=no
2093 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
2096 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
2099 DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
2103 dnl And finally the automake conditionals.
2105 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN, test x"$enable_acpi_notifier_plugin" != xno)
2106 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN, test x"$enable_address_keeper_plugin" != xno)
2107 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN, test x"$enable_archive_plugin" != xno)
2108 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN, test x"$enable_att_remover_plugin" != xno)
2109 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN, test x"$enable_attachwarner_plugin" != xno)
2110 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN, test x"$enable_bogofilter_plugin" != xno)
2111 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN, test x"$enable_bsfilter_plugin" != xno)
2112 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN, test x"$enable_clamd_plugin" != xno)
2113 AM_CONDITIONAL(BUILD_DEMO_PLUGIN, test x"$enable_demo_plugin" != xno)
2114 AM_CONDITIONAL(BUILD_DILLO_PLUGIN, test x"$enable_dillo_plugin" != xno)
2115 AM_CONDITIONAL(BUILD_FANCY_PLUGIN, test x"$enable_fancy_plugin" != xno)
2116 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN, test x"$enable_fetchinfo_plugin" != xno)
2117 AM_CONDITIONAL(BUILD_GDATA_PLUGIN, test x"$enable_gdata_plugin" != xno)
2118 AM_CONDITIONAL(BUILD_KEYWORD_WARNER_PLUGIN, test x"$enable_keywordwarner_plugin" != xno)
2119 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN, test x"$enable_libravatar_plugin" != xno)
2120 AM_CONDITIONAL(BUILD_LITEHTML_VIEWER_PLUGIN, test x"$enable_litehtml_viewer_plugin" != xno)
2121 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN, test x"$enable_mailmbox_plugin" != xno)
2122 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN, test x"$enable_managesieve_plugin" != xno)
2123 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN, test x"$enable_newmail_plugin" != xno)
2124 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN, test x"$enable_notification_plugin" != xno)
2125 AM_CONDITIONAL(BUILD_HOTKEYS, test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
2126 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN, test x"$enable_pdf_viewer_plugin" != xno)
2127 AM_CONDITIONAL(BUILD_PERL_PLUGIN, test x"$enable_perl_plugin" != xno)
2128 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN, test x"$enable_python_plugin" != xno)
2129 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN, test x"$enable_pgpcore_plugin" != xno)
2130 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN, test x"$enable_pgpmime_plugin" != xno)
2131 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN, test x"$enable_pgpinline_plugin" != xno)
2132 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN, test x"$enable_rssyl_plugin" != xno)
2133 AM_CONDITIONAL(BUILD_SMIME_PLUGIN, test x"$enable_smime_plugin" != xno)
2134 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN, test x"$enable_spamassassin_plugin" != xno)
2135 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN, test x"$enable_spam_report_plugin" != xno)
2136 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN, test x"$enable_tnef_parse_plugin" != xno)
2137 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN, test x"$enable_vcalendar_plugin" != xno)
2140 dnl ****************************
2141 dnl ** Final configure output **
2142 dnl ****************************
2148 src/common/version.h
2152 src/common/passcrypt.h
2153 src/common/tests/Makefile
2156 src/plugins/Makefile
2157 src/plugins/acpi_notifier/Makefile
2158 src/plugins/address_keeper/Makefile
2159 src/plugins/address_keeper/version.rc
2160 src/plugins/archive/Makefile
2161 src/plugins/att_remover/Makefile
2162 src/plugins/att_remover/version.rc
2163 src/plugins/attachwarner/Makefile
2164 src/plugins/attachwarner/version.rc
2165 src/plugins/bogofilter/Makefile
2166 src/plugins/bsfilter/Makefile
2167 src/plugins/bsfilter/version.rc
2168 src/plugins/clamd/Makefile
2169 src/plugins/clamd/libclamd/Makefile
2170 src/plugins/demo/Makefile
2171 src/plugins/dillo/Makefile
2172 src/plugins/fancy/Makefile
2173 src/plugins/fancy/version.rc
2174 src/plugins/fetchinfo/Makefile
2175 src/plugins/fetchinfo/version.rc
2176 src/plugins/gdata/Makefile
2177 src/plugins/keyword_warner/Makefile
2178 src/plugins/keyword_warner/version.rc
2179 src/plugins/litehtml_viewer/Makefile
2180 src/plugins/litehtml_viewer/version.rc
2181 src/plugins/litehtml_viewer/litehtml/Makefile
2182 src/plugins/libravatar/Makefile
2183 src/plugins/libravatar/version.rc
2184 src/plugins/mailmbox/Makefile
2185 src/plugins/mailmbox/version.rc
2186 src/plugins/managesieve/Makefile
2187 src/plugins/managesieve/version.rc
2188 src/plugins/newmail/Makefile
2189 src/plugins/notification/Makefile
2190 src/plugins/notification/version.rc
2191 src/plugins/notification/gtkhotkey/Makefile
2192 src/plugins/pdf_viewer/Makefile
2193 src/plugins/pdf_viewer/version.rc
2194 src/plugins/perl/Makefile
2195 src/plugins/perl/tools/Makefile
2196 src/plugins/python/Makefile
2197 src/plugins/python/examples/Makefile
2198 src/plugins/pgpcore/Makefile
2199 src/plugins/pgpcore/version.rc
2200 src/plugins/pgpcore/tests/Makefile
2201 src/plugins/pgpmime/Makefile
2202 src/plugins/pgpmime/version.rc
2203 src/plugins/pgpinline/Makefile
2204 src/plugins/pgpinline/version.rc
2205 src/plugins/rssyl/Makefile
2206 src/plugins/rssyl/version.rc
2207 src/plugins/rssyl/tests/Makefile
2208 src/plugins/rssyl/libfeed/Makefile
2209 src/plugins/rssyl/libfeed/tests/Makefile
2210 src/plugins/smime/Makefile
2211 src/plugins/smime/version.rc
2212 src/plugins/spamassassin/Makefile
2213 src/plugins/spam_report/Makefile
2214 src/plugins/spam_report/version.rc
2215 src/plugins/tnef_parse/Makefile
2216 src/plugins/tnef_parse/version.rc
2217 src/plugins/vcalendar/Makefile
2218 src/plugins/vcalendar/version.rc
2228 dnl Output the configuration summary
2230 echo "$PACKAGE $VERSION"
2232 if test x"$enable_alternate_addressbook" = xyes; then
2233 echo "Using Address Book : Alternate experimental interface"
2235 echo "Using Address Book : Original stable interface"
2236 echo "JPilot : $enable_jpilot"
2237 echo "LDAP : $enable_ldap"
2239 echo "gnuTLS : $enable_gnutls"
2240 echo "iconv : $am_cv_func_iconv"
2241 echo "compface : $enable_compface"
2242 echo "IPv6 : $enable_ipv6"
2243 echo "enchant : $enable_enchant"
2244 echo "IMAP4 : $enable_libetpan"
2245 echo "NNTP : $enable_libetpan"
2246 echo "Crash dialog : $enable_crash_dialog"
2247 echo "LibSM : $enable_libsm"
2248 echo "DBUS : $enable_dbus"
2249 echo "NetworkManager : $enable_networkmanager"
2250 echo "Manual : $enable_manual"
2251 echo "Generic UMPC code : $enable_generic_umpc"
2252 echo "SVG support : $enable_svg"
2253 echo "Config dir : $ac_cv_with_config_dir"
2254 echo "Password crypto : $pwd_crypto"
2255 echo "Unit tests : $enable_tests"
2259 for plugin in $PLUGINS; do
2261 if test x"$plugin" = xnotification; then
2263 for notif_feature in $notification_features; do
2264 echo " $notif_feature"
2266 if test "x$notification_missing_dependencies" != x; then
2267 echo " Disabled due to missing dependencies:"
2268 for notif_miss_dep in $notification_missing_dependencies; do
2269 echo " $notif_miss_dep"
2274 if test "x$DISABLED_PLUGINS" != x; then
2276 for plugin in $DISABLED_PLUGINS; do
2281 if test "x$MISSING_DEPS_PLUGINS" != x; then
2282 echo " Disabled due to missing dependencies:"
2283 for plugin in $MISSING_DEPS_PLUGINS; do
2288 echo "The binary will be installed in $prefix/bin"
2290 echo "Configure finished, type 'make' to build."