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(libravatar-plugin,
1112 [ --disable-libravatar-plugin Do not build libravatar plugin],
1113 [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
1115 AC_ARG_ENABLE(litehtml_viewer-plugin,
1116 [ --disable-litehtml_viewer-plugin Do not build litehtml_viewer plugin],
1117 [enable_litehtml_viewer_plugin=$enableval], [enable_litehtml_viewer_plugin=auto])
1119 AC_ARG_ENABLE(mailmbox-plugin,
1120 [ --disable-mailmbox-plugin Do not build mailmbox plugin],
1121 [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
1123 AC_ARG_ENABLE(managesieve-plugin,
1124 [ --disable-managesieve-plugin Do not build managesieve plugin],
1125 [enable_managesieve_plugin=$enableval], [enable_managesieve_plugin=auto])
1127 AC_ARG_ENABLE(newmail-plugin,
1128 [ --disable-newmail-plugin Do not build newmail plugin],
1129 [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
1131 AC_ARG_ENABLE(notification-plugin,
1132 [ --disable-notification-plugin Do not build notification plugin],
1133 [enable_notification_plugin=$enableval], [enable_notification_plugin=auto])
1135 AC_ARG_ENABLE(pdf_viewer-plugin,
1136 [ --disable-pdf_viewer-plugin Do not build pdf_viewer plugin],
1137 [enable_pdf_viewer_plugin=$enableval], [enable_pdf_viewer_plugin=auto])
1139 AC_ARG_ENABLE(perl-plugin,
1140 [ --disable-perl-plugin Do not build perl plugin],
1141 [enable_perl_plugin=$enableval], [enable_perl_plugin=auto])
1143 AC_ARG_ENABLE(python-plugin,
1144 [ --disable-python-plugin Do not build python plugin],
1145 [enable_python_plugin=$enableval], [enable_python_plugin=auto])
1147 AC_ARG_ENABLE(pgpcore-plugin,
1148 [ --disable-pgpcore-plugin Do not build pgpcore plugin],
1149 [enable_pgpcore_plugin=$enableval], [enable_pgpcore_plugin=auto])
1151 AC_ARG_ENABLE(pgpmime-plugin,
1152 [ --disable-pgpmime-plugin Do not build pgpmime plugin],
1153 [enable_pgpmime_plugin=$enableval], [enable_pgpmime_plugin=auto])
1155 AC_ARG_ENABLE(pgpinline-plugin,
1156 [ --disable-pgpinline-plugin Do not build pgpinline plugin],
1157 [enable_pgpinline_plugin=$enableval], [enable_pgpinline_plugin=auto])
1159 AC_ARG_ENABLE(rssyl-plugin,
1160 [ --disable-rssyl-plugin Do not build rssyl plugin],
1161 [enable_rssyl_plugin=$enableval], [enable_rssyl_plugin=auto])
1163 AC_ARG_ENABLE(smime-plugin,
1164 [ --disable-smime-plugin Do not build smime plugin],
1165 [enable_smime_plugin=$enableval], [enable_smime_plugin=auto])
1167 AC_ARG_ENABLE(spamassassin-plugin,
1168 [ --disable-spamassassin-plugin Do not build spamassassin plugin],
1169 [enable_spamassassin_plugin=$enableval], [enable_spamassassin_plugin=auto])
1171 AC_ARG_ENABLE(spam_report-plugin,
1172 [ --disable-spam_report-plugin Do not build spam_report plugin],
1173 [enable_spam_report_plugin=$enableval], [enable_spam_report_plugin=auto])
1175 AC_ARG_ENABLE(tnef_parse-plugin,
1176 [ --disable-tnef_parse-plugin Do not build tnef_parse plugin],
1177 [enable_tnef_parse_plugin=$enableval], [enable_tnef_parse_plugin=auto])
1179 AC_ARG_ENABLE(vcalendar-plugin,
1180 [ --disable-vcalendar-plugin Do not build vcalendar plugin],
1181 [enable_vcalendar_plugin=$enableval], [enable_vcalendar_plugin=auto])
1183 dnl disabled by default
1184 AC_ARG_ENABLE(demo-plugin,
1185 [ --enable-demo-plugin Build demo plugin],
1186 [enable_demo_plugin=$enableval], [enable_demo_plugin=no])
1189 dnl Then we check (unconditionnaly) for plugins dependencies
1190 dnl Some dependencies are optional, some mandatory. This is taken care of
1193 dnl During this dependancy check we do the checks themselves, define HAVE_X to
1194 dnl either yes or no, and do the AC_SUBST calls.
1196 dnl Archive: libarchive
1197 dnl Fancy: Webkit, curl, optionally libsoup-gnome
1199 dnl Litehtml a C++ compiler, >=glib-2.36, cairo, fontconfig, gumbo, curl
1200 dnl Libravatar: libcurl
1201 dnl Notification: optionally libnotify unity/messaging-menu
1202 dnl libcanberra_gtk3 hotkey
1203 dnl Pdf-Viewer: libpoppler
1205 dnl PGP/Core: libgpgme
1206 dnl PGP/Mime: pgpcore libgpgme
1207 dnl PGP/Inline: pgpcore libgpgme
1208 dnl S/Mime: pgpcore libgpgme
1210 dnl RSSyl: expat libcurl
1211 dnl SpamReport: libcurl
1212 dnl vCalendar: libcurl, libical
1213 dnl tnef_parse: libytnef
1215 dnl libcurl ********************************************************************
1216 PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
1218 AC_SUBST(CURL_CFLAGS)
1220 dnl expat **********************************************************************
1221 PKG_CHECK_MODULES(EXPAT, expat, HAVE_EXPAT=yes, HAVE_EXPAT=no)
1223 if test x"$HAVE_EXPAT" = xno; then
1224 AC_CHECK_HEADER(expat.h, [expat_header=yes], [expat_header=no])
1225 AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [expat_lib=no])
1226 if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
1229 EXPAT_LIBS="-lexpat"
1233 AC_SUBST(EXPAT_CFLAGS)
1234 AC_SUBST(EXPAT_LIBS)
1236 dnl webkit *********************************************************************
1237 PKG_CHECK_MODULES(WEBKIT, webkit2gtk-4.0 >= 2.18.0, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
1238 AC_SUBST(WEBKIT_LIBS)
1239 AC_SUBST(WEBKIT_CFLAGS)
1241 dnl libsoup ********************************************************************
1242 PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
1243 if test x"$HAVE_LIBSOUP" = xyes; then
1244 AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
1246 AC_SUBST(LIBSOUP_CFLAGS)
1247 AC_SUBST(LIBSOUP_LIBS)
1249 dnl libsoup-gnome **************************************************************
1250 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
1251 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
1252 AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
1254 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
1255 AC_SUBST(LIBSOUP_GNOME_LIBS)
1257 dnl libarchive *****************************************************************
1258 PKG_CHECK_MODULES(LIBARCHIVE, libarchive, HAVE_ARCHIVE=yes, HAVE_ARCHIVE=no)
1259 AC_SUBST(ARCHIVE_LIBS)
1260 AC_SUBST(ARCHIVE_CFLAGS)
1261 AC_CHECK_LIB([archive], [archive_read_new],
1262 ARCHIVE_LIBS=-larchive
1264 AC_SUBST(ARCHIVE_LIBS,$ARCHIVE_CFLAGS),
1268 dnl libgdata *******************************************************************
1269 PKG_CHECK_MODULES(GDATA, libgdata >= 0.17.2, HAVE_GDATA=yes, HAVE_GDATA=no)
1270 AC_SUBST(GDATA_CFLAGS)
1271 AC_SUBST(GDATA_LIBS)
1273 dnl cairo **********************************************************************
1274 PKG_CHECK_MODULES(CAIRO, cairo >= 1.12.0, HAVE_CAIRO=yes, HAVE_CAIRO=no)
1275 AC_SUBST(CAIRO_CFLAGS)
1276 AC_SUBST(CAIRO_LIBS)
1278 dnl fontconfig *****************************************************************
1279 PKG_CHECK_MODULES(FONTCONFIG, fontconfig, HAVE_FONTCONFIG=yes, HAVE_FONTCONFIG=no)
1280 AC_SUBST(FONTCONFIG_CFLAGS)
1281 AC_SUBST(FONTCONFIG_LIBS)
1283 dnl gumbo **********************************************************************
1284 PKG_CHECK_MODULES(LIBGUMBO, gumbo >= 0.10, HAVE_LIBGUMBO=yes, HAVE_LIBGUMBO=no)
1285 AC_SUBST(LIBGUMBO_CFLAGS)
1286 AC_SUBST(LIBGUMBO_LIBS)
1288 dnl libical ********************************************************************
1289 PKG_CHECK_MODULES(LIBICAL, libical >= 2.0, HAVE_LIBICAL=yes, HAVE_LIBICAL=no)
1290 AC_SUBST(LIBICAL_CFLAGS)
1291 AC_SUBST(LIBICAL_LIBS)
1293 dnl Poppler ********************************************************************
1294 PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
1295 AC_SUBST(POPPLER_LIBS)
1296 AC_SUBST(POPPLER_CFLAGS)
1298 dnl check for Poppler extra features that we conditionally support
1299 if test x"$HAVE_POPPLER" = xyes; then
1301 CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
1302 AC_CHECK_DECL(POPPLER_DEST_NAMED,
1303 [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
1304 ,[#include <poppler-action.h>])
1305 AC_CHECK_DECL(POPPLER_DEST_XYZ,
1306 [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
1307 ,[#include <poppler-action.h>])
1311 dnl perl ***********************************************************************
1312 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
1313 if test x"$HAVE_PERL" = xyes; then
1314 AC_MSG_CHECKING(for perl >= 5.8.0)
1315 PERL_VER=`perl -e 'print $] > 5.0079999?"yes":"no"'`
1316 if test "$PERL_VER" = "yes"; then
1323 if test x"$HAVE_PERL" = xyes; then
1324 AC_MSG_CHECKING(for Perl compile flags)
1325 PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
1326 PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
1327 PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm\>//'`
1328 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb\>//'`
1329 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm\>//'`
1330 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc\>//'`
1332 AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
1334 if test x"$HAVE_PERL" = xyes; then
1335 AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)],
1336 [ HAVE_LIBPERL=no ])
1338 if test x"$HAVE_LIBPERL" = xno; then
1339 LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
1340 LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
1341 AC_MSG_CHECKING([for libperl.so])
1342 if test -f "$LIBPERL_PREFIX/libperl.so"; then
1351 AC_SUBST(PERL_CFLAGS)
1352 AC_SUBST(PERL_LDFLAGS)
1355 dnl Gpgme **********************************************************************
1356 AM_PATH_GPGME(1.0.0, HAVE_GPGME=yes, HAVE_GPGME=no)
1357 if test x"$HAVE_GPGME" = xyes; then
1358 AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.)
1359 AM_PATH_GPGME(1.1.1, AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1, [Define if GPGME supports PKA.]))
1362 dnl Python *********************************************************************
1363 PKG_CHECK_MODULES(PYTHON, python3, HAVE_PYTHON=yes, HAVE_PYTHON=no)
1364 PKG_CHECK_MODULES(PYTHONEMBED, python3-embed, HAVE_PYTHONEMBED=yes, HAVE_PYTHONEMBED=no)
1365 PKG_CHECK_MODULES(PYGOBJECT, pygobject-3.0, HAVE_PYGOBJ=yes, HAVE_PYGOBJ=no)
1367 AC_SUBST(PYTHON_SHARED_LIB)
1368 AC_SUBST(PYTHON_CFLAGS)
1369 AC_SUBST(PYTHON_LIBS)
1370 AC_SUBST(PYTHONEMBED_SHARED_LIB)
1371 AC_SUBST(PYTHONEMBED_CFLAGS)
1372 AC_SUBST(PYTHONEMBED_LIBS)
1373 AC_SUBST(PYGOBJECT_CFLAGS)
1374 AC_SUBST(PYGOBJECT_LIBS)
1376 dnl libnotify ******************************************************************
1377 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1378 if test x"$HAVE_LIBNOTIFY" = xyes; then
1379 AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1381 AC_SUBST(libnotify_CFLAGS)
1382 AC_SUBST(libnotify_LIBS)
1384 dnl libcanberra-gtk3 ************************************************************
1385 PKG_CHECK_MODULES(libcanberra_gtk3, libcanberra-gtk3, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1386 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1387 AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk3 support is enabled])
1389 AC_SUBST(libcanberra_gtk3_CFLAGS)
1390 AC_SUBST(libcanberra_gtk3_LIBS)
1392 dnl unity/messaging-menu *******************************************************
1393 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1394 if test x"$HAVE_UNITY" = xyes; then
1395 AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1397 AC_SUBST(unity_CFLAGS)
1398 AC_SUBST(unity_LIBS)
1400 dnl hotkeys ********************************************************************
1401 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)
1402 if test x"$HAVE_HOTKEYS" = xyes; then
1403 AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1405 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1406 AC_SUBST(CM_NP_HOTKEY_LIBS)
1408 dnl libytnef *******************************************************************
1412 # Check both ytnef.h and libytnef/ytnef.h, and adjust YTNEF_CFLAGS
1414 AC_CHECK_HEADER(ytnef.h, [have_ytnef=1], [have_ytnef=0])
1415 if test $have_ytnef -eq 0; then
1416 AC_CHECK_HEADER(libytnef/ytnef.h,
1418 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_H_SUBDIR"],
1421 if test $have_ytnef -eq 1; then
1422 AC_MSG_CHECKING([how libytnef's SwapDDWord() should be called])
1423 # Now we have to figure out which libytnef version we're using,
1424 # based on whether SwapDDWord takes one argument or two.
1425 if test "x${YTNEF_CFLAGS}" = "x"; then
1426 ytnef_include="#include <ytnef.h>"
1428 ytnef_include="#include <libytnef/ytnef.h>"
1430 AC_TRY_COMPILE([#include <stdio.h>
1432 [SwapDDWord(0, 0);],
1435 if test $have_ytnef -eq 0; then
1436 AC_TRY_COMPILE([#include <stdio.h>
1440 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_OLD_SWAPDDWORD"],
1443 if test $have_ytnef -eq 1; then
1444 YTNEF_LIBS="-lytnef"
1447 AC_MSG_RESULT(no idea, unsupported libytnef version?)
1450 AC_SUBST(YTNEF_CFLAGS)
1451 AC_SUBST(YTNEF_LIBS)
1453 dnl Third, we now cross the requested plugins and the available dependencies
1454 dnl If some dependencies are missing and the plugin was explicitely enabled,
1455 dnl we error out, else we only inform.
1457 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1458 if test x"$enable_acpi_notifier_plugin" != xno; then
1459 PLUGINS="$PLUGINS acpi_notifier"
1462 DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1466 AC_MSG_CHECKING([whether to build address_keeper plugin])
1467 if test x"$enable_address_keeper_plugin" != xno; then
1468 PLUGINS="$PLUGINS address_keeper"
1471 DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1475 AC_MSG_CHECKING([whether to build archive plugin])
1476 if test x"$enable_archive_plugin" != xno; then
1477 dependencies_missing=""
1479 if test x"$HAVE_ARCHIVE" = xno; then
1480 dependencies_missing="libarchive $dependencies_missing"
1483 if test x"$dependencies_missing" = x; then
1484 PLUGINS="$PLUGINS archive"
1486 elif test x"$enable_archive_plugin" = xauto; then
1488 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1489 enable_archive_plugin=no
1490 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1493 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1496 DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1500 AC_MSG_CHECKING([whether to build att_remover plugin])
1501 if test x"$enable_att_remover_plugin" != xno; then
1502 PLUGINS="$PLUGINS att_remover"
1505 DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1509 AC_MSG_CHECKING([whether to build attachwarner plugin])
1510 if test x"$enable_attachwarner_plugin" != xno; then
1511 PLUGINS="$PLUGINS attachwarner"
1514 DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1518 AC_MSG_CHECKING([whether to build bogofilter plugin])
1519 if test x"$enable_bogofilter_plugin" != xno; then
1520 PLUGINS="$PLUGINS bogofilter"
1523 DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1527 AC_MSG_CHECKING([whether to build bsfilter plugin])
1528 if test x"$enable_bsfilter_plugin" != xno; then
1529 PLUGINS="$PLUGINS bsfilter"
1532 DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1536 AC_MSG_CHECKING([whether to build clamd plugin])
1537 if test x"$enable_clamd_plugin" != xno; then
1538 PLUGINS="$PLUGINS clamd"
1541 DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1545 AC_MSG_CHECKING([whether to build demo plugin])
1546 if test x"$enable_demo_plugin" != xno; then
1547 PLUGINS="$PLUGINS demo"
1550 DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1554 AC_MSG_CHECKING([whether to build Dillo plugin])
1555 if test x"$enable_dillo_plugin" != xno; then
1556 PLUGINS="$PLUGINS dillo"
1559 DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
1563 AC_MSG_CHECKING([whether to build fancy plugin])
1564 if test x"$enable_fancy_plugin" != xno; then
1565 dependencies_missing=""
1567 if test x"$HAVE_WEBKIT" = xno; then
1568 dependencies_missing="libwebkit2gtk-4.0 $dependencies_missing"
1570 if test x"$HAVE_CURL" = xno; then
1571 dependencies_missing="libcurl $dependencies_missing"
1574 if test x"$dependencies_missing" = x; then
1575 PLUGINS="$PLUGINS fancy"
1577 elif test x"$enable_fancy_plugin" = xauto; then
1579 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1580 enable_fancy_plugin=no
1581 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1584 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1587 DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1591 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1592 if test x"$enable_fetchinfo_plugin" != xno; then
1593 PLUGINS="$PLUGINS fetchinfo"
1596 DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1600 AC_MSG_CHECKING([whether to build gdata plugin])
1601 if test x"$enable_gdata_plugin" != xno; then
1602 dependencies_missing=""
1604 if test x"$HAVE_GDATA" = xno; then
1605 dependencies_missing="libgdata $dependencies_missing"
1608 if test x"$dependencies_missing" = x; then
1609 PLUGINS="$PLUGINS gdata"
1611 elif test x"$enable_gdata_plugin" = xauto; then
1613 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1614 enable_gdata_plugin=no
1615 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1618 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1621 DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1625 AC_MSG_CHECKING([whether to build libravatar plugin])
1626 if test x"$enable_libravatar_plugin" != xno; then
1627 dependencies_missing=""
1629 if test x"$HAVE_CURL" = xno; then
1630 dependencies_missing="libcurl $dependencies_missing"
1633 if test x"$dependencies_missing" = x; then
1634 PLUGINS="$PLUGINS libravatar"
1636 elif test x"$enable_libravatar_plugin" = xauto; then
1638 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1639 enable_libravatar_plugin=no
1640 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1643 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1646 DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1650 AC_MSG_CHECKING([whether to build litehtml_viewer plugin])
1651 if test x"$enable_litehtml_viewer_plugin" != xno; then
1652 dependencies_missing=""
1654 if test x"$HAVE_CXX" = xno; then
1655 dependencies_missing="C++ compiler $dependencies_missing"
1657 PKG_CHECK_EXISTS([glib-2.0 >= 2.36], [],
1658 [dependencies_missing="glib-2.0 >= 2.36 $dependencies_missing"])
1659 if test x"$HAVE_CAIRO" = xno; then
1660 dependencies_missing="cairo $dependencies_missing"
1662 if test x"$HAVE_FONTCONFIG" = xno; then
1663 dependencies_missing="fontconfig $dependencies_missing"
1665 if test x"$HAVE_LIBGUMBO" = xno; then
1666 dependencies_missing="libgumbo $dependencies_missing"
1668 if test x"$HAVE_CURL" = xno; then
1669 dependencies_missing="libcurl $dependencies_missing"
1673 if test x"$dependencies_missing" = x; then
1674 PLUGINS="$PLUGINS litehtml_viewer"
1676 elif test x"$enable_litehtml_viewer_plugin" = xauto; then
1678 AC_MSG_WARN("Plugin litehtml_viewer will not be built; missing $dependencies_missing")
1679 enable_litehtml_viewer_plugin=no
1680 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS litehtml_viewer"
1683 AC_MSG_ERROR("Plugin litehtml_viewer cannot be built; missing $dependencies_missing")
1686 DISABLED_PLUGINS="$DISABLED_PLUGINS litehtml_viewer"
1690 AC_MSG_CHECKING([whether to build mailmbox plugin])
1691 if test x"$enable_mailmbox_plugin" != xno; then
1692 PLUGINS="$PLUGINS mailmbox"
1695 DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1699 AC_MSG_CHECKING([whether to build managesieve plugin])
1700 if test x"$enable_managesieve_plugin" != xno; then
1701 PLUGINS="$PLUGINS managesieve"
1704 DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1708 AC_MSG_CHECKING([whether to build newmail plugin])
1709 if test x"$enable_newmail_plugin" != xno; then
1710 PLUGINS="$PLUGINS newmail"
1713 DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1717 AC_MSG_CHECKING([whether to build notification plugin])
1718 if test x"$enable_notification_plugin" != xno; then
1719 PLUGINS="$PLUGINS notification"
1722 AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1723 AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1724 AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1725 AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1726 if test x"$platform_win32" = xno; then
1727 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1730 notification_features="banner command"
1731 notification_missing_dependencies=""
1732 if test x"$HAVE_HOTKEYS" = xyes; then
1733 notification_features="$notification_features hotkeys"
1735 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1737 notification_features="$notification_features lcdproc"
1738 if test x"$HAVE_UNITY" = xyes; then
1739 notification_features="$notification_features unity/messaging-menu"
1741 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1743 if test x"$HAVE_LIBNOTIFY" = xyes; then
1744 notification_features="$notification_features libnotify"
1746 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1748 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1749 notification_features="$notification_features libcanberra-gtk3"
1751 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk3"
1753 notification_features="$notification_features popup trayicon"
1755 DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1759 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1760 if test x"$enable_pdf_viewer_plugin" != xno; then
1761 dependencies_missing=""
1763 if test x"$HAVE_POPPLER" = xno; then
1764 dependencies_missing="libpoppler-glib $dependencies_missing"
1767 if test x"$dependencies_missing" = x; then
1768 PLUGINS="$PLUGINS pdf_viewer"
1770 elif test x"$enable_pdf_viewer_plugin" = xauto; then
1772 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1773 enable_pdf_viewer_plugin=no
1774 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1777 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1780 DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1784 AC_MSG_CHECKING([whether to build perl plugin])
1785 if test x"$enable_perl_plugin" != xno; then
1786 dependencies_missing=""
1788 if test x"$HAVE_LIBPERL" = xno; then
1789 dependencies_missing="libperl $dependencies_missing"
1792 if test x"$dependencies_missing" = x; then
1793 PLUGINS="$PLUGINS perl"
1795 elif test x"$enable_perl_plugin" = xauto; then
1797 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1798 enable_perl_plugin=no
1799 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1802 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1805 DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1809 AC_MSG_CHECKING([whether to build python plugin])
1810 if test x"$enable_python_plugin" != xno; then
1811 dependencies_missing=""
1813 if test x"$HAVE_PYTHON" = xno; then
1814 dependencies_missing="python3 $dependencies_missing"
1816 if test x"$HAVE_PYGOBJ" = xno; then
1817 dependencies_missing="pygobject-3.0 $dependencies_missing"
1820 if test x"$dependencies_missing" = x; then
1821 PLUGINS="$PLUGINS python"
1823 elif test x"$enable_python_plugin" = xauto; then
1825 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1826 enable_python_plugin=no
1827 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1830 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1833 DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1837 AC_MSG_CHECKING([whether to build pgpcore plugin])
1838 if test x"$enable_pgpcore_plugin" != xno; then
1839 dependencies_missing=""
1841 if test x"$HAVE_GPGME" = xno; then
1842 dependencies_missing="libgpgme $dependencies_missing"
1845 if test x"$dependencies_missing" = x; then
1846 PLUGINS="$PLUGINS pgpcore"
1848 elif test x"$enable_pgpcore_plugin" = xauto; then
1850 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1851 enable_pgpcore_plugin=no
1852 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1855 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1858 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1862 AC_MSG_CHECKING([whether to build pgpmime plugin])
1863 if test x"$enable_pgpmime_plugin" != xno; then
1864 dependencies_missing=""
1866 if test x"$HAVE_GPGME" = xno; then
1867 dependencies_missing="libgpgme $dependencies_missing"
1869 if test x"$enable_pgpcore_plugin" = xno; then
1870 dependencies_missing="pgpcore plugin $dependencies_missing"
1873 if test x"$dependencies_missing" = x; then
1874 PLUGINS="$PLUGINS pgpmime"
1876 elif test x"$enable_pgpmime_plugin" = xauto; then
1878 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1879 enable_pgpmime_plugin=no
1880 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1883 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1886 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1890 AC_MSG_CHECKING([whether to build pgpinline plugin])
1891 if test x"$enable_pgpinline_plugin" != xno; then
1892 dependencies_missing=""
1894 if test x"$HAVE_GPGME" = xno; then
1895 dependencies_missing="libgpgme $dependencies_missing"
1897 if test x"$enable_pgpcore_plugin" = xno; then
1898 dependencies_missing="pgpcore plugin $dependencies_missing"
1901 if test x"$dependencies_missing" = x; then
1902 PLUGINS="$PLUGINS pgpinline"
1904 elif test x"$enable_pgpinline_plugin" = xauto; then
1906 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1907 enable_pgpinline_plugin=no
1908 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1911 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1914 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1918 AC_MSG_CHECKING([whether to build rssyl plugin])
1919 if test x"$enable_rssyl_plugin" != xno; then
1920 dependencies_missing=""
1922 if test x"$HAVE_EXPAT" = xno; then
1923 dependencies_missing="expat $dependencies_missing"
1925 if test x"$HAVE_CURL" = xno; then
1926 dependencies_missing="libcurl $dependencies_missing"
1929 if test x"$dependencies_missing" = x; then
1930 PLUGINS="$PLUGINS rssyl"
1932 elif test x"$enable_rssyl_plugin" = xauto; then
1934 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1935 enable_rssyl_plugin=no
1936 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1939 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1942 DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1946 AC_MSG_CHECKING([whether to build spamassassin plugin])
1947 if test x"$enable_spamassassin_plugin" != xno; then
1948 PLUGINS="$PLUGINS spamassassin"
1952 dnl check for zlib (optional)
1954 SPAMASSASSIN_CFLAGS=""
1955 SPAMASSASSIN_LIBS=""
1956 AC_CHECK_HEADER([zlib.h],
1957 [AC_DEFINE(HAVE_ZLIB_H,1,[optional zlib support for spamassassin plugin])]
1958 [spamassassin_zlib=1],
1959 [spamassassin_zlib=0])
1960 if test $spamassassin_zlib -eq 1; then
1961 AC_CHECK_LIB(z, deflate, [spamassassin_zlib=1], [spamassassin_zlib=0])
1962 AC_MSG_CHECKING([whether to build spamassassin plugin with zlib support])
1963 if test $spamassassin_zlib -eq 1; then
1965 SPAMASSASSIN_CFLAGS="-DHAVE_LIBZ"
1966 SPAMASSASSIN_LIBS="-lz"
1971 AC_SUBST(SPAMASSASSIN_CFLAGS)
1972 AC_SUBST(SPAMASSASSIN_LIBS)
1974 DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1978 AC_MSG_CHECKING([whether to build smime plugin])
1979 if test x"$enable_smime_plugin" != xno; then
1980 dependencies_missing=""
1982 if test x"$HAVE_GPGME" = xno; then
1983 dependencies_missing="libgpgme $dependencies_missing"
1985 if test x"$enable_pgpcore_plugin" = xno; then
1986 dependencies_missing="pgpcore plugin $dependencies_missing"
1989 if test x"$dependencies_missing" = x; then
1990 PLUGINS="$PLUGINS smime"
1992 elif test x"$enable_smime_plugin" = xauto; then
1994 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
1995 enable_smime_plugin=no
1996 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
1999 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
2002 DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
2006 AC_MSG_CHECKING([whether to build spam_report plugin])
2007 if test x"$enable_spam_report_plugin" != xno; then
2008 dependencies_missing=""
2010 if test x"$HAVE_CURL" = xno; then
2011 dependencies_missing="libcurl $dependencies_missing"
2014 if test x"$dependencies_missing" = x; then
2015 PLUGINS="$PLUGINS spam_report"
2017 elif test x"$enable_spam_report_plugin" = xauto; then
2019 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
2020 enable_spam_report_plugin=no
2021 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
2024 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
2027 DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
2031 AC_MSG_CHECKING([whether to build tnef_parse plugin])
2032 if test x"$enable_tnef_parse_plugin" != xno; then
2033 dependencies_missing=""
2035 if test $have_ytnef -eq 0; then
2036 dependencies_missing="libytnef"
2039 if test x"$dependencies_missing" = x; then
2040 PLUGINS="$PLUGINS tnef_parse"
2042 elif test x"$enable_tnef_parse_plugin" = xauto; then
2044 AC_MSG_WARN(Plugin tnef_parse will not be built; missing $dependencies_missing")
2045 enable_tnef_parse_plugin=no
2046 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS tnef_parse"
2049 AC_MSG_ERROR(Plugin tnef_parse will not be built; missing $dependencies_missing")
2052 DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
2057 AC_MSG_CHECKING([whether to build vcalendar plugin])
2058 if test x"$enable_vcalendar_plugin" != xno; then
2059 dependencies_missing=""
2061 if test x"$HAVE_CURL" = xno; then
2062 dependencies_missing="libcurl $dependencies_missing"
2065 if test x"$HAVE_LIBICAL" = xno; then
2066 dependencies_missing="libical $dependencies_missing"
2069 if test x"$HAVE_PERL" = xno; then
2070 dependencies_missing="perl $dependencies_missing"
2073 if test x"$dependencies_missing" = x; then
2074 PLUGINS="$PLUGINS vcalendar"
2076 elif test x"$enable_vcalendar_plugin" = xauto; then
2078 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
2079 enable_vcalendar_plugin=no
2080 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
2083 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
2086 DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
2090 dnl And finally the automake conditionals.
2092 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN, test x"$enable_acpi_notifier_plugin" != xno)
2093 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN, test x"$enable_address_keeper_plugin" != xno)
2094 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN, test x"$enable_archive_plugin" != xno)
2095 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN, test x"$enable_att_remover_plugin" != xno)
2096 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN, test x"$enable_attachwarner_plugin" != xno)
2097 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN, test x"$enable_bogofilter_plugin" != xno)
2098 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN, test x"$enable_bsfilter_plugin" != xno)
2099 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN, test x"$enable_clamd_plugin" != xno)
2100 AM_CONDITIONAL(BUILD_DEMO_PLUGIN, test x"$enable_demo_plugin" != xno)
2101 AM_CONDITIONAL(BUILD_DILLO_PLUGIN, test x"$enable_dillo_plugin" != xno)
2102 AM_CONDITIONAL(BUILD_FANCY_PLUGIN, test x"$enable_fancy_plugin" != xno)
2103 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN, test x"$enable_fetchinfo_plugin" != xno)
2104 AM_CONDITIONAL(BUILD_GDATA_PLUGIN, test x"$enable_gdata_plugin" != xno)
2105 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN, test x"$enable_libravatar_plugin" != xno)
2106 AM_CONDITIONAL(BUILD_LITEHTML_VIEWER_PLUGIN, test x"$enable_litehtml_viewer_plugin" != xno)
2107 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN, test x"$enable_mailmbox_plugin" != xno)
2108 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN, test x"$enable_managesieve_plugin" != xno)
2109 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN, test x"$enable_newmail_plugin" != xno)
2110 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN, test x"$enable_notification_plugin" != xno)
2111 AM_CONDITIONAL(BUILD_HOTKEYS, test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
2112 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN, test x"$enable_pdf_viewer_plugin" != xno)
2113 AM_CONDITIONAL(BUILD_PERL_PLUGIN, test x"$enable_perl_plugin" != xno)
2114 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN, test x"$enable_python_plugin" != xno)
2115 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN, test x"$enable_pgpcore_plugin" != xno)
2116 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN, test x"$enable_pgpmime_plugin" != xno)
2117 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN, test x"$enable_pgpinline_plugin" != xno)
2118 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN, test x"$enable_rssyl_plugin" != xno)
2119 AM_CONDITIONAL(BUILD_SMIME_PLUGIN, test x"$enable_smime_plugin" != xno)
2120 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN, test x"$enable_spamassassin_plugin" != xno)
2121 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN, test x"$enable_spam_report_plugin" != xno)
2122 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN, test x"$enable_tnef_parse_plugin" != xno)
2123 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN, test x"$enable_vcalendar_plugin" != xno)
2126 dnl ****************************
2127 dnl ** Final configure output **
2128 dnl ****************************
2134 src/common/version.h
2138 src/common/passcrypt.h
2139 src/common/tests/Makefile
2142 src/plugins/Makefile
2143 src/plugins/acpi_notifier/Makefile
2144 src/plugins/address_keeper/Makefile
2145 src/plugins/address_keeper/version.rc
2146 src/plugins/archive/Makefile
2147 src/plugins/att_remover/Makefile
2148 src/plugins/att_remover/version.rc
2149 src/plugins/attachwarner/Makefile
2150 src/plugins/attachwarner/version.rc
2151 src/plugins/bogofilter/Makefile
2152 src/plugins/bsfilter/Makefile
2153 src/plugins/bsfilter/version.rc
2154 src/plugins/clamd/Makefile
2155 src/plugins/clamd/libclamd/Makefile
2156 src/plugins/demo/Makefile
2157 src/plugins/dillo/Makefile
2158 src/plugins/fancy/Makefile
2159 src/plugins/fancy/version.rc
2160 src/plugins/fetchinfo/Makefile
2161 src/plugins/fetchinfo/version.rc
2162 src/plugins/gdata/Makefile
2163 src/plugins/litehtml_viewer/Makefile
2164 src/plugins/litehtml_viewer/version.rc
2165 src/plugins/litehtml_viewer/litehtml/Makefile
2166 src/plugins/libravatar/Makefile
2167 src/plugins/libravatar/version.rc
2168 src/plugins/mailmbox/Makefile
2169 src/plugins/mailmbox/version.rc
2170 src/plugins/managesieve/Makefile
2171 src/plugins/managesieve/version.rc
2172 src/plugins/newmail/Makefile
2173 src/plugins/notification/Makefile
2174 src/plugins/notification/version.rc
2175 src/plugins/notification/gtkhotkey/Makefile
2176 src/plugins/pdf_viewer/Makefile
2177 src/plugins/pdf_viewer/version.rc
2178 src/plugins/perl/Makefile
2179 src/plugins/perl/tools/Makefile
2180 src/plugins/python/Makefile
2181 src/plugins/python/examples/Makefile
2182 src/plugins/pgpcore/Makefile
2183 src/plugins/pgpcore/version.rc
2184 src/plugins/pgpcore/tests/Makefile
2185 src/plugins/pgpmime/Makefile
2186 src/plugins/pgpmime/version.rc
2187 src/plugins/pgpinline/Makefile
2188 src/plugins/pgpinline/version.rc
2189 src/plugins/rssyl/Makefile
2190 src/plugins/rssyl/version.rc
2191 src/plugins/rssyl/tests/Makefile
2192 src/plugins/rssyl/libfeed/Makefile
2193 src/plugins/rssyl/libfeed/tests/Makefile
2194 src/plugins/smime/Makefile
2195 src/plugins/smime/version.rc
2196 src/plugins/spamassassin/Makefile
2197 src/plugins/spam_report/Makefile
2198 src/plugins/spam_report/version.rc
2199 src/plugins/tnef_parse/Makefile
2200 src/plugins/tnef_parse/version.rc
2201 src/plugins/vcalendar/Makefile
2202 src/plugins/vcalendar/version.rc
2212 dnl Output the configuration summary
2214 echo "$PACKAGE $VERSION"
2216 if test x"$enable_alternate_addressbook" = xyes; then
2217 echo "Using Address Book : Alternate experimental interface"
2219 echo "Using Address Book : Original stable interface"
2220 echo "JPilot : $enable_jpilot"
2221 echo "LDAP : $enable_ldap"
2223 echo "gnuTLS : $enable_gnutls"
2224 echo "iconv : $am_cv_func_iconv"
2225 echo "compface : $enable_compface"
2226 echo "IPv6 : $enable_ipv6"
2227 echo "enchant : $enable_enchant"
2228 echo "IMAP4 : $enable_libetpan"
2229 echo "NNTP : $enable_libetpan"
2230 echo "Crash dialog : $enable_crash_dialog"
2231 echo "LibSM : $enable_libsm"
2232 echo "DBUS : $enable_dbus"
2233 echo "NetworkManager : $enable_networkmanager"
2234 echo "Manual : $enable_manual"
2235 echo "Generic UMPC code : $enable_generic_umpc"
2236 echo "SVG support : $enable_svg"
2237 echo "Config dir : $ac_cv_with_config_dir"
2238 echo "Password crypto : $pwd_crypto"
2239 echo "Unit tests : $enable_tests"
2243 for plugin in $PLUGINS; do
2245 if test x"$plugin" = xnotification; then
2247 for notif_feature in $notification_features; do
2248 echo " $notif_feature"
2250 if test "x$notification_missing_dependencies" != x; then
2251 echo " Disabled due to missing dependencies:"
2252 for notif_miss_dep in $notification_missing_dependencies; do
2253 echo " $notif_miss_dep"
2258 if test "x$DISABLED_PLUGINS" != x; then
2260 for plugin in $DISABLED_PLUGINS; do
2265 if test "x$MISSING_DEPS_PLUGINS" != x; then
2266 echo " Disabled due to missing dependencies:"
2267 for plugin in $MISSING_DEPS_PLUGINS; do
2272 echo "The binary will be installed in $prefix/bin"
2274 echo "Configure finished, type 'make' to build."