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)
94 dnl Checks for programs.
113 dnl AC_PROG_CXX will set CXX=g++ even if it finds no useable C++
114 dnl compiler, so we have to check whether the program named by
117 AC_PATH_PROG(REAL_CXX, $CXX)
119 if test -n "$REAL_CXX"; then
125 dnl ******************************
127 dnl Not needed anymore because we
128 dnl do AC_CANONICAL_SYSTEM above
129 dnl ******************************
130 dnl AC_CANONICAL_HOST
132 dnl Copied from the official gtk+-2 configure.in
133 AC_MSG_CHECKING([for host platform])
135 *-*-mingw*|*-*-cygwin*)
137 LDFLAGS="$LDFLAGS -mwindows -Wl,--export-all-symbols"
141 LDFLAGS="$LDFLAGS -Wl,-export_dynamic"
146 LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
149 AM_CONDITIONAL(PLATFORM_WIN32, test x"$platform_win32" = x"yes")
150 AM_CONDITIONAL(PLATFORM_OSX, test x"$platform_osx" = x"yes")
151 AC_MSG_RESULT([$host])
153 AC_MSG_CHECKING([for native Win32])
162 AC_MSG_RESULT([$os_win32])
163 AM_CONDITIONAL(OS_WIN32, test x"$os_win32" = x"yes")
165 AC_MSG_CHECKING([for Cygwin])
174 AC_MSG_RESULT([$env_cygwin])
175 AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
177 if test "$GCC" = "yes"
179 CFLAGS="$CFLAGS -Wno-unused-function"
180 #CFLAGS="-g -Wall -Wno-unused-function"
183 AC_MSG_CHECKING([if gcc supports -Wno-pointer-sign])
184 _gcc_cflags_save=$CFLAGS
185 CFLAGS="-Wno-pointer-sign"
186 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],_gcc_psign=yes,_gcc_psign=no)
187 AC_MSG_RESULT($_gcc_psign)
188 CFLAGS=$_gcc_cflags_save;
189 if test x"$_gcc_psign" = xyes ; then
190 CFLAGS="$CFLAGS -Wno-pointer-sign"
193 CFLAGS="$CFLAGS -Wall -D_GNU_SOURCE"
195 if test $USE_MAINTAINER_MODE = yes; then
196 CFLAGS="$CFLAGS -g -Wno-pointer-sign -DUSE_MAINTAINER_MODE"
202 CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
205 # Note that we need to link to pthread in all cases. This
206 # is because some locking is used even when pthread support is
209 CFLAGS="$CFLAGS -mms-bitfields"
210 LIBS="$LIBS -l${pthread_name} -lws2_32 -lregex"
213 CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
214 CFLAGS="$CFLAGS -std=gnu99 -DSOLARIS"
221 dnl floor and ceil are in -lm
225 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
228 LIBS="$LIBS $GTK_LIBS"
229 AC_CHECK_FUNCS(bind_textdomain_codeset)
233 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"
234 GETTEXT_PACKAGE=claws-mail
235 AC_SUBST(GETTEXT_PACKAGE)
236 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
238 AM_GNU_GETTEXT_VERSION([0.18])
239 AM_GNU_GETTEXT([external])
241 AC_ARG_ENABLE(manual,
242 [ --disable-manual Do not build user manual],
243 [enable_manual=$enableval], [enable_manual=yes])
246 [ --disable-libsm Do not build libSM support for session management],
247 [enable_libsm=$enableval], [enable_libsm=yes])
250 [ --disable-ipv6 Do not build IPv6 support],
251 [enable_ipv6=$enableval], [enable_ipv6=yes])
253 AC_ARG_ENABLE(gnutls,
254 [ --disable-gnutls Do not build GnuTLS support for SSL/TLS],
255 [enable_gnutls=$enableval], [enable_gnutls=yes])
257 AC_ARG_ENABLE(enchant,
258 [ --disable-enchant Do not build Enchant support for spell-checking],
259 [enable_enchant=$enableval], [enable_enchant=yes])
261 AC_ARG_ENABLE(crash-dialog,
262 [ --enable-crash-dialog Build crash dialog],
263 [enable_crash_dialog=$enableval], [enable_crash_dialog=no])
265 AC_ARG_ENABLE(generic-umpc,
266 [ --enable-generic-umpc Build generic UMPC code],
267 [enable_generic_umpc=$enableval], [enable_generic_umpc=no])
269 AC_ARG_ENABLE(compface,
270 [ --disable-compface Do not build compface support for X-Face],
271 [enable_compface=$enableval], [enable_compface=yes])
273 AC_ARG_ENABLE(pthread,
274 [ --disable-pthread Do not build pthread support],
275 [enable_pthread=$enableval], [enable_pthread=yes])
277 AC_ARG_ENABLE(startup-notification,
278 [ --disable-startup-notification Do not startup notification support],
279 [enable_startup_notification=$enableval], [enable_startup_notification=yes])
282 [ --disable-dbus Do not build DBUS support],
283 [enable_dbus=$enableval], [enable_dbus=yes])
286 [ --disable-ldap Do not build LDAP support],
287 [enable_ldap=$enableval], [enable_ldap=yes])
289 AC_ARG_ENABLE(jpilot,
290 [ --disable-jpilot Do not build JPilot support],
291 [enable_jpilot=$enableval], [enable_jpilot=yes])
293 AC_ARG_ENABLE(networkmanager,
294 [ --disable-networkmanager Do not build NetworkManager support],
295 [enable_networkmanager=$enableval], [enable_networkmanager=yes])
297 AC_ARG_ENABLE(libetpan,
298 [ --disable-libetpan Do not build libetpan support for IMAP4/NNTP],
299 [enable_libetpan=$enableval], [enable_libetpan=yes])
301 AC_ARG_ENABLE(valgrind,
302 [ --disable-valgrind Do not build valgrind support for debugging],
303 [enable_valgrind=$enableval], [enable_valgrind=yes])
305 AC_ARG_ENABLE(alternate-addressbook,
306 [ --enable-alternate-addressbook Build alternate external address book support],
307 [enable_alternate_addressbook=$enableval], [enable_alternate_addressbook=no])
310 [ --disable-svg Do not build SVG support],
311 [enable_svg=$enableval], [enable_svg=yes])
314 [ --enable-tests Build unit tests],
315 [enable_tests=$enableval], [enable_tests=no])
317 manualdir='${docdir}/manual'
318 AC_ARG_WITH(manualdir,
319 [ --with-manualdir=DIR Manual directory],
320 [manualdir="$withval"])
323 dnl ******************************
324 dnl ** Check for required tools **
325 dnl ** to build manuals **
326 dnl ******************************
328 AC_PATH_PROG(DOCBOOK2HTML, docbook2html)
329 AC_PATH_PROG(DOCBOOK2TXT, docbook2txt)
330 AC_PATH_PROG(DOCBOOK2PS, docbook2ps)
331 AC_PATH_PROG(DOCBOOK2PDF, docbook2pdf)
333 AM_CONDITIONAL(MANUAL_HTML, test -n "$DOCBOOK2HTML")
334 AM_CONDITIONAL(MANUAL_TXT, test -n "$DOCBOOK2TXT")
335 AM_CONDITIONAL(MANUAL_PDF, test -n "$DOCBOOK2PDF")
336 AM_CONDITIONAL(MANUAL_PS, test -n "$DOCBOOK2PS")
338 if test x"$enable_manual" = x"yes"; then
339 if test -n "$DOCBOOK2TXT" -o -n "$DOCBOOK2HTML" \
340 -o -n "$DOCBOOK2PS" -o -n "$DOCBOOK2PDF"; then
347 AM_CONDITIONAL(BUILD_MANUAL, test x"$enable_manual" = xyes)
349 dnl Set PACKAGE_DATA_DIR in config.h.
350 if test "x${datarootdir}" = 'x${prefix}/share'; then
351 if test "x${prefix}" = "xNONE"; then
352 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
354 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
357 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datarootdir}/${PACKAGE}",[PACKAGE_DATA_DIR])
360 AC_CHECK_LIB(xpg4, setlocale)
364 AC_MSG_CHECKING([whether to use LibSM])
365 if test x"$enable_libsm" = xyes; then
367 AC_CHECK_LIB(SM, SmcSaveYourselfDone,
368 [SM_LIBS="$X_LIBS -lSM -lICE"],enable_libsm=no,
370 AC_CHECK_HEADERS(X11/SM/SMlib.h,,enable_libsm=no)
371 if test x"$enable_libsm" = xyes; then
372 AC_DEFINE(HAVE_LIBSM, 1, [Define to 1 if you have libSM installed])
374 AC_MSG_RESULT(not found)
375 AC_MSG_WARN([*** LibSM will not be supported ***])
382 dnl Check for __VA_OPT__ macro
383 AC_CACHE_CHECK([for __VA_OPT__],
385 [AC_TRY_COMPILE([#include <stdio.h>],
386 [#define va_opt_printf(format, ...) fprintf(stderr, format __VA_OPT__(,) __VA_ARGS__)
387 va_opt_printf("success\n");],
391 if test "$ac_cv_va_opt" = yes; then
392 AC_DEFINE([HAVE_VA_OPT], [1], [Define if __VA_OPT__ macro works])
395 dnl Check for d_type member in struct dirent
396 AC_MSG_CHECKING([whether struct dirent has d_type member])
397 AC_CACHE_VAL(ac_cv_dirent_d_type,[
398 AC_TRY_COMPILE([#include <dirent.h>],
399 [struct dirent d; d.d_type = DT_REG;],
400 ac_cv_dirent_d_type=yes, ac_cv_dirent_d_type=no)
402 AC_MSG_RESULT($ac_cv_dirent_d_type)
403 if test $ac_cv_dirent_d_type = yes; then
404 AC_DEFINE(HAVE_DIRENT_D_TYPE, 1,
405 Define if `struct dirent' has `d_type' member.)
408 # Check whether mkdir does not take the permission argument.
409 GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
411 dnl Checks for header files.
415 AC_CHECK_HEADERS(fcntl.h sys/file.h unistd.h paths.h \
416 sys/param.h sys/utsname.h sys/select.h \
417 wchar.h wctype.h locale.h netdb.h)
418 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
419 AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
421 dnl Checks for typedefs, structures, and compiler characteristics.
428 dnl AC_CHECK_TYPE(wint_t, unsigned int) does not work because wint_t
429 dnl may be defined only in wchar.h (this happens with gcc-2.96).
430 dnl So we need to use this extended macro.
431 CLAWS_CHECK_TYPE(wint_t, unsigned int,
436 ], Define to `unsigned int' if <stddef.h> or <wchar.h> doesn't define.)
438 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF, Used to test for a u32 typedef)
439 AC_CHECK_SIZEOF(unsigned short, 2)
440 AC_CHECK_SIZEOF(unsigned int, 4)
441 AC_CHECK_SIZEOF(unsigned long, 4)
443 dnl Checks for library functions.
445 AC_CHECK_FUNCS(gethostname mkdir mktime socket strstr strchr strcasestr \
446 uname flock lockf inet_aton inet_addr \
447 fchmod mkstemp truncate getuid regcomp)
449 AC_CHECK_FUNCS(fgets_unlocked fgetc_unlocked fputs_unlocked fputc_unlocked fread_unlocked fwrite_unlocked feof_unlocked ferror_unlocked fmemopen)
451 dnl *****************
452 dnl ** common code **
453 dnl *****************
456 PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.28 gmodule-2.0 >= 2.28 gobject-2.0 >= 2.28 gthread-2.0 >= 2.28])
458 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
459 AC_SUBST(GLIB_GENMARSHAL)
461 AC_SUBST(GLIB_CFLAGS)
464 PKG_CHECK_MODULES(GDK_PIXBUF, [gdk-pixbuf-2.0 >= 2.26])
466 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
468 LIBS="$LIBS $GTK_LIBS"
469 AC_CHECK_FUNCS(bind_textdomain_codeset)
472 dnl check for IPv6 option
473 dnl automated checks for IPv6 support.
474 AC_MSG_CHECKING([whether to use IPv6])
475 if test x"$enable_ipv6" = xyes; then
477 AC_MSG_CHECKING([for IPv6 support])
478 if test x"$platform_win32" = xyes; then
479 AC_CACHE_VAL(ac_cv_ipv6,[
481 #include <ws2tcpip.h>
482 ], [struct in6_addr a;],
483 ac_cv_ipv6=yes, ac_cv_ipv6=no)
486 AC_CACHE_VAL(ac_cv_ipv6,[
489 #include <sys/types.h>
490 #include <netinet/in.h>
491 ], [int x = IPPROTO_IPV6; struct in6_addr a;],
492 ac_cv_ipv6=yes, ac_cv_ipv6=no)
495 AC_MSG_RESULT($ac_cv_ipv6)
496 if test $ac_cv_ipv6 = yes; then
497 AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
499 AC_MSG_WARN(*** IPv6 will not be supported ***)
507 AC_MSG_CHECKING([whether to use GnuTLS])
508 AC_MSG_RESULT($enable_gnutls)
509 if test "x$enable_gnutls" != "xno"; then
510 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.2,
512 AC_DEFINE(USE_GNUTLS, 1, gnutls)
513 echo "Building with GnuTLS"
514 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
516 dnl No linking against libgcrypt needed
519 dnl linking against libgcrypt *is* needed
520 GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
524 echo "Building without GnuTLS"
525 AC_MSG_RESULT([*** GnuTLS support is recommended ])
526 AC_MSG_RESULT([*** You can use --disable-gnutls if you don't need it.])
527 AC_MSG_ERROR([GnuTLS not found])
529 AC_SUBST(GNUTLS_LIBS)
530 AC_SUBST(GNUTLS_CFLAGS)
533 PKG_CHECK_MODULES(NETTLE, nettle)
534 AC_SUBST(NETTLE_LIBS)
536 AC_ARG_WITH(passcrypt-key, [ --with-passcrypt-key=KEY Key used to encode passwords (8 byte string)],
537 with_passcrypt_key="$withval", with_passcrypt_key="passkey0")
538 AC_SUBST(PASSCRYPT_KEY, $with_passcrypt_key)
540 dnl RC dir (will be default at a certain point in time)
541 AC_ARG_WITH(config-dir, [ --with-config-dir=RCDIR Local configuration dir (default: .claws-mail)],
542 ac_cv_with_config_dir="$withval", ac_cv_with_config_dir="")
544 dnl Set correct default value based on platform
545 if test x"$ac_cv_with_config_dir" = x""; then
546 if test x"$platform_win32" = xyes; then
547 ac_cv_with_config_dir="Claws-mail"
549 ac_cv_with_config_dir=".claws-mail"
552 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
554 AC_ARG_WITH(password-encryption, [ --with-password-encryption=PROVIDER Which cryptographic library to use for encrypting stored passwords (gnutls, old, default)],
555 pwd_crypto="$withval", pwd_crypto="default")
557 if test x"$pwd_crypto" = xdefault; then
558 if test x"$enable_gnutls" = xyes; then
559 if `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
564 if test x"$pwd_crypto" = xdefault; then
570 if test x"$enable_gnutls" = xno; then
571 AC_MSG_ERROR([GnuTLS password encryption requested but GnuTLS is not available.])
573 if ! `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
574 AC_MSG_ERROR([GnuTLS version at least 3.0 is required for password encryption.])
576 AC_DEFINE(PASSWORD_CRYPTO_GNUTLS, 1, Use GnuTLS for stored password encryption)
579 AC_DEFINE(PASSWORD_CRYPTO_OLD, 1, Use old insecure method for stored password encryption)
582 AC_MSG_ERROR([Unknown password encryption provider requested.])
587 dnl ************************
588 dnl ** GTK user interface **
589 dnl ************************
592 PKG_CHECK_MODULES(GTK, gtk+-3.0 >= 3.20 cairo)
594 AC_ARG_ENABLE(deprecated,
595 [ --disable-deprecated Disable deprecated GTK functions],
596 gtkdeprecated=$enableval)
597 AC_MSG_CHECKING([whether to use deprecated GTK functions])
598 if test x"$gtkdeprecated" != xno; then
601 GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
605 dnl Make sure the code does not regress to using deprecated GTK stuff...
606 GTK_CFLAGS="$GTK_CFLAGS -DGTK_DISABLE_SINGLE_INCLUDES -DGSEAL_ENABLE"
611 dnl enchant is used for spell checking
612 AC_MSG_CHECKING([whether to use enchant])
613 AC_MSG_RESULT($enable_enchant)
614 if test $enable_enchant = yes; then
615 PKG_CHECK_MODULES(ENCHANT, enchant >= 1.4.0,
617 AC_DEFINE(USE_ENCHANT, 1, enchant)
618 echo "Building with enchant"
622 PKG_CHECK_MODULES(ENCHANT, enchant-2 >= 2.0.0,
624 AC_DEFINE(USE_ENCHANT, 1, enchant-2)
625 echo "Building with enchant-2"
629 echo "Building without enchant-notification"
633 AC_SUBST(ENCHANT_CFLAGS)
634 AC_SUBST(ENCHANT_LIBS)
637 dnl want crash dialog
638 if test $enable_crash_dialog = yes; then
639 dnl check if GDB is somewhere
640 AC_CHECK_PROG(enable_crash_dialog, gdb, yes, no)
641 AC_MSG_CHECKING([whether to use crash dialog])
642 if test $enable_crash_dialog = yes; then
643 AC_DEFINE(CRASH_DIALOG, 1, Pop up crash dialog)
645 AC_MSG_RESULT($enable_crash_dialog)
649 if test $enable_generic_umpc = yes; then
650 AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
651 AC_MSG_RESULT($enable_generic_umpc)
654 dnl Check for X-Face support
655 AC_MSG_CHECKING([whether to use compface])
656 if test x"$enable_compface" = xyes; then
658 AC_CHECK_LIB(compface, uncompface,
659 [AC_DEFINE(HAVE_LIBCOMPFACE, 1, Define if you want compface support.)],
660 [enable_compface=no])
661 if test x"$enable_compface" = xyes; then
662 COMPFACE_LIBS="-lcompface"
666 AC_SUBST(COMPFACE_LIBS)
671 dnl check for pthread support
672 AC_MSG_CHECKING([whether to use pthread])
673 if test x$enable_pthread = xno; then
678 # For W32 we need to use a special ptrhead lib. In this case we can't
679 # use AC_CHECK_LIB because it has no means of checking for a
680 # library installed under a different name. Checking for the
682 if test -n "${pthread_name}" ; then
685 AC_CHECK_LIB(pthread, pthread_create, :, enable_pthread=no)
687 AC_CHECK_HEADERS(pthread.h, :, enable_pthread=no)
689 if test x$enable_pthread = xyes; then
690 AC_DEFINE(USE_PTHREAD, 1, Define if you have pthread)
691 if test -z "${pthread_name}" ; then
692 PTHREAD_LIBS="-lpthread"
697 AC_SUBST(PTHREAD_LIBS)
700 dnl Check whether we need to pass -lresolv
701 dnl We know that we don't need it for W32.
703 if test x$os_win32 = xno; then
706 ac_cv_var__res_options=no
707 AC_TRY_LINK([#include <sys/types.h>
708 #include <sys/socket.h>
709 #include <netinet/in.h>
710 #include <arpa/nameser.h>
711 #include <resolv.h>],
712 [_res.options = RES_INIT;],
713 ac_cv_var__res_options=yes);
714 if test "$ac_cv_var__res_options" != "yes"; then
719 if test "x$LIBRESOLV" = "x"; then
720 AC_CHECK_LIB(resolv, res_query, [LIBRESOLV=-lresolv])
726 LIBS="$LIBS $LIBRESOLV"
728 dnl #######################################################################
729 dnl # Check for startup notification
730 dnl #######################################################################
731 if test "x$enable_startup_notification" = "xyes"; then
732 PKG_CHECK_MODULES(STARTUP_NOTIFICATION, libstartup-notification-1.0 >= 0.5,
734 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, [Define if we're using libstartup-notification.])
735 echo "Building with libstartup-notification"
736 enable_startup_notification=yes
739 echo "Building without libstartup-notification"
740 enable_startup_notification=no
743 AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
744 AC_SUBST(STARTUP_NOTIFICATION_LIBS)
747 dnl #######################################################################
748 dnl # Check for D-Bus support
749 dnl #######################################################################
750 if test "x$enable_dbus" = "xyes"; then
751 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60, dbus-glib-1 >= 0.60],
753 AC_DEFINE(HAVE_DBUS_GLIB, 1, [Define if glib bindings of D-Bus are available])
757 echo "D-Bus requirements not met. D-Bus support not activated."
760 AC_SUBST(DBUS_CFLAGS)
764 dnl #######################################################################
765 dnl # Configure address book support
766 dnl #######################################################################
768 dnl #######################################################################
769 dnl # Check for alternate address book support
770 dnl #######################################################################
771 AC_MSG_CHECKING([whether DBUS support for alternate address book is present])
772 if test x"$enable_dbus" = xyes; then
774 AC_MSG_CHECKING([whether to enable alternate address book])
775 if test x"$enable_alternate_addressbook" = xyes; then
777 PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
779 AC_DEFINE(USE_ALT_ADDRBOOK, 1, [Define if alternate address book is to be activated.])
780 enable_alternate_addressbook=yes
781 AC_SUBST(CONTACTS_CFLAGS)
782 AC_SUBST(CONTACTS_LIBS)
785 enable_alternate_addressbook=no
789 enable_alternate_addressbook=no
793 enable_alternate_addressbook=no
796 dnl #######################################################################
797 dnl # Check for old address book support
798 dnl #######################################################################
799 if test x"$enable_alternate_addressbook" = xno; then
800 dnl for LDAP support in addressbook
801 dnl no check for libraries; dynamically loaded
802 AC_MSG_CHECKING([whether to use LDAP])
803 if test x"$enable_ldap" = xno; then
805 elif test x"$enable_ldap" = xyes -a x"$enable_pthread" = xno; then
806 AC_MSG_RESULT(no - LDAP support needs pthread support)
809 elif test x"$platform_win32" = xyes; then
811 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
812 LDAP_LIBS="-lwldap32"
817 dnl check for available libraries, and pull them in
818 AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
819 AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
820 AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
821 AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
824 AC_CHECK_HEADERS(ldap.h lber.h,
828 if test "$enable_ldap" = yes; then
829 AC_CHECK_LIB(ldap, ldap_open,
834 AC_CHECK_LIB(ldap, ldap_start_tls_s,
835 [ ac_cv_have_tls=yes ],
836 [ ac_cv_have_tls=no ])
840 AC_MSG_CHECKING([whether ldap library is available])
841 AC_MSG_RESULT($enable_ldap)
843 AC_MSG_CHECKING([whether TLS library is available])
844 AC_MSG_RESULT($ac_cv_have_tls)
846 if test "$enable_ldap" = yes; then
847 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
848 LDAP_LIBS="$LDAP_LIBS -lldap"
850 if test "$ac_cv_have_tls" = yes; then
851 AC_DEFINE(USE_LDAP_TLS, 1, Define if you want LDAP TLS support in addressbook.)
853 dnl As of OpenLDAP API version 3000 a number of functions has
854 dnl been deprecated. As Claws-mail compiles and runs on many
855 dnl platforms and many versions of OpenLDAP we need to be able
856 dnl to switch between the old and new API because new API has
857 dnl added new functions replacing old ones and at the same time
858 dnl old functions has been changed.
859 dnl If cross-compiling defaults to enable deprecated features
860 dnl for maximum portability
861 AC_MSG_CHECKING([The API version of OpenLDAP])
865 [if (LDAP_API_VERSION >= 3000)
868 [AC_MSG_RESULT([version < 3000])
869 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)],
870 [AC_MSG_RESULT([version >= 3000])
871 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 1, Define if OpenLDAP API is at least version 3000.)],
872 [AC_MSG_RESULT([Enabling deprecated features in OpenLDAP])
873 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)
874 AC_DEFINE(LDAP_DEPRECATED, 1, Define to activate deprecated features in OpenLDAP)]
879 dnl for JPilot support in addressbook
880 dnl no check for libraries; these are dynamically loaded
881 AC_MSG_CHECKING([whether to use JPilot])
882 if test "$enable_jpilot" = yes; then
884 AC_CHECK_HEADERS(pi-args.h pi-appinfo.h pi-address.h pi-version.h,
885 [ AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ],
886 [ enable_jpilot=no ])
887 if test "$enable_jpilot" = no; then
888 AC_CHECK_HEADERS(libpisock/pi-args.h libpisock/pi-appinfo.h libpisock/pi-address.h libpisock/pi-version.h,
890 AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
893 AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" enable_jpilot="no"])
894 if test x"$enable_jpilot" = xyes; then
895 AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
897 AC_MSG_NOTICE([JPilot support not available])
899 AC_SUBST(JPILOT_LIBS)
905 AM_CONDITIONAL(BUILD_ALTADDRBOOK, test x"$enable_alternate_addressbook" = x"yes")
907 dnl #######################################################################
908 dnl # Check for NetworkManager support
909 dnl #######################################################################
910 if test x"$enable_dbus" = xyes; then
911 if test x"$enable_networkmanager" = xyes; then
912 PKG_CHECK_MODULES(NETWORKMANAGER_SUPPORT, libnm,
914 AC_DEFINE(HAVE_NETWORKMANAGER_SUPPORT, 1, [Define if NetworkManager support is to be included.])
915 echo "Building with NetworkManager support"
916 enable_networkmanager=yes
919 echo "NetworkManager not found."
920 enable_networkmanager=no
922 AC_SUBST(NETWORKMANAGER_SUPPORT_CFLAGS)
925 echo "NetworkManager support deactivated as D-Bus requirements were not met."
926 enable_networkmanager=no
930 AC_MSG_CHECKING([whether to use libetpan])
931 if test x"$enable_libetpan" = xyes; then
936 libetpan_versiontype=0
938 # since 1.9.4, libetpan uses pkg-config
939 PKG_CHECK_MODULES([LIBETPAN], [libetpan >= 1.9.4],
941 LIBETPAN_VERSION=`pkg-config --modversion libetpan | $AWK -F. '{printf "%d", ($1 * 10000) + ($2 * 100) + $3}'`
945 # before 1.9.4, libetpan uses its own libetpan-config script
946 AC_PATH_PROG(libetpanconfig, [libetpan-config])
947 if test "x$libetpanconfig" != "x"; then
948 LIBETPAN_CPPFLAGS="`$libetpanconfig --cflags`"
949 LIBETPAN_LIBS="`$libetpanconfig --libs`"
950 # support libetpan version like x.x and x.x.x
951 libetpan_versiontype=`$libetpanconfig --version | tr -dc . | wc -c`
952 if test $libetpan_versiontype -eq 1; then
953 LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 100) + $2}'`
955 LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 10000) + ($2 * 100) + $3}'`
960 if test "x$libetpan_config" = "xyes"; then
961 CPPFLAGS="$CPPFLAGS $LIBETPAN_FLAGS"
962 AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
963 if test "x$libetpan_result" = "xyes"; then
964 AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
965 LIBS="$LIBS $LIBETPAN_LIBS"
966 AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
967 AC_MSG_RESULT([$libetpan_result])
970 if test "x$libetpan_result" = "xyes"; then
971 if test $libetpan_versiontype -eq 1; then
972 if test "$LIBETPAN_VERSION" -lt "57"; then
973 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/])
974 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
975 AC_MSG_ERROR([libetpan 0.57 not found])
978 AC_SUBST(LIBETPAN_FLAGS)
979 AC_SUBST(LIBETPAN_LIBS)
980 AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNTP support.)
982 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/ ])
983 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
984 AC_MSG_ERROR([libetpan 0.57 not found])
989 AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
992 AC_MSG_CHECKING([whether to use librsvg])
993 if test x"$enable_svg" = xyes; then
995 PKG_CHECK_MODULES([SVG], [librsvg-2.0 >= 2.39.0 cairo >= 1.0.0],
999 AC_DEFINE(HAVE_SVG, 1, [Define if librsvg2 is available for SVG support])
1003 AC_MSG_NOTICE([SVG support deactivated as librsvg2 >= 2.39.0 was not found])
1010 AC_MSG_CHECKING([whether to use valgrind])
1011 if test x$enable_valgrind = xyes; then
1013 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1014 enable_valgrind=yes, enable_valgrind=no)
1015 if test x"$enable_valgrind" = xyes; then
1016 AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
1018 AC_MSG_RESULT(not found)
1023 AM_CONDITIONAL(CLAWS_VALGRIND, test x"$enable_valgrind" = x"yes")
1025 AC_MSG_CHECKING([whether to build unit tests])
1026 if test x$enable_tests = xyes; then
1031 AM_CONDITIONAL(BUILD_TESTS, test "x$enable_tests" = "xyes")
1033 dnl *************************
1034 dnl ** section for plugins **
1035 dnl *************************
1039 MISSING_DEPS_PLUGINS=""
1041 dnl First we set the enabled status - either enabled (yes), auto-enabled (auto)
1042 dnl or (auto-)disabled (no for both)
1044 dnl All plugins are auto-enabled except for Demo which is just there to help
1045 dnl potential plugins writers.
1047 AC_ARG_ENABLE(acpi_notifier-plugin,
1048 [ --disable-acpi_notifier-plugin Do not build acpi_notifier plugin],
1049 [enable_acpi_notifier_plugin=$enableval], [enable_acpi_notifier_plugin=auto])
1051 AC_ARG_ENABLE(address_keeper-plugin,
1052 [ --disable-address_keeper-plugin Do not build address_keeper plugin],
1053 [enable_address_keeper_plugin=$enableval], [enable_address_keeper_plugin=auto])
1055 AC_ARG_ENABLE(archive-plugin,
1056 [ --disable-archive-plugin Do not build archive plugin],
1057 [enable_archive_plugin=$enableval], [enable_archive_plugin=auto])
1059 AC_ARG_ENABLE(att_remover-plugin,
1060 [ --disable-att_remover-plugin Do not build att_remover plugin],
1061 [enable_att_remover_plugin=$enableval], [enable_att_remover_plugin=auto])
1063 AC_ARG_ENABLE(attachwarner-plugin,
1064 [ --disable-attachwarner-plugin Do not build attachwarner plugin],
1065 [enable_attachwarner_plugin=$enableval], [enable_attachwarner_plugin=auto])
1067 AC_ARG_ENABLE(bogofilter-plugin,
1068 [ --disable-bogofilter-plugin Do not build bogofilter plugin],
1069 [enable_bogofilter_plugin=$enableval], [enable_bogofilter_plugin=auto])
1071 AC_ARG_ENABLE(bsfilter-plugin,
1072 [ --disable-bsfilter-plugin Do not build bsfilter plugin],
1073 [enable_bsfilter_plugin=$enableval], [enable_bsfilter_plugin=auto])
1075 AC_ARG_ENABLE(clamd-plugin,
1076 [ --disable-clamd-plugin Do not build clamd plugin],
1077 [enable_clamd_plugin=$enableval], [enable_clamd_plugin=auto])
1079 AC_ARG_ENABLE(dillo-plugin,
1080 [ --disable-dillo-plugin Do not build dillo plugin],
1081 [enable_dillo_plugin=$enableval], [enable_dillo_plugin=auto])
1083 AC_ARG_ENABLE(fancy-plugin,
1084 [ --disable-fancy-plugin Do not build fancy plugin],
1085 [enable_fancy_plugin=$enableval], [enable_fancy_plugin=auto])
1087 AC_ARG_ENABLE(fetchinfo-plugin,
1088 [ --disable-fetchinfo-plugin Do not build fetchinfo plugin],
1089 [enable_fetchinfo_plugin=$enableval], [enable_fetchinfo_plugin=auto])
1091 AC_ARG_ENABLE(gdata-plugin,
1092 [ --disable-gdata-plugin Do not build gdata plugin],
1093 [enable_gdata_plugin=$enableval], [enable_gdata_plugin=auto])
1095 AC_ARG_ENABLE(libravatar-plugin,
1096 [ --disable-libravatar-plugin Do not build libravatar plugin],
1097 [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
1099 AC_ARG_ENABLE(litehtml_viewer-plugin,
1100 [ --disable-litehtml_viewer-plugin Do not build litehtml_viewer plugin],
1101 [enable_litehtml_viewer_plugin=$enableval], [enable_litehtml_viewer_plugin=auto])
1103 AC_ARG_ENABLE(mailmbox-plugin,
1104 [ --disable-mailmbox-plugin Do not build mailmbox plugin],
1105 [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
1107 AC_ARG_ENABLE(managesieve-plugin,
1108 [ --disable-managesieve-plugin Do not build managesieve plugin],
1109 [enable_managesieve_plugin=$enableval], [enable_managesieve_plugin=auto])
1111 AC_ARG_ENABLE(newmail-plugin,
1112 [ --disable-newmail-plugin Do not build newmail plugin],
1113 [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
1115 AC_ARG_ENABLE(notification-plugin,
1116 [ --disable-notification-plugin Do not build notification plugin],
1117 [enable_notification_plugin=$enableval], [enable_notification_plugin=auto])
1119 AC_ARG_ENABLE(pdf_viewer-plugin,
1120 [ --disable-pdf_viewer-plugin Do not build pdf_viewer plugin],
1121 [enable_pdf_viewer_plugin=$enableval], [enable_pdf_viewer_plugin=auto])
1123 AC_ARG_ENABLE(perl-plugin,
1124 [ --disable-perl-plugin Do not build perl plugin],
1125 [enable_perl_plugin=$enableval], [enable_perl_plugin=auto])
1127 AC_ARG_ENABLE(python-plugin,
1128 [ --disable-python-plugin Do not build python plugin],
1129 [enable_python_plugin=$enableval], [enable_python_plugin=auto])
1131 AC_ARG_ENABLE(pgpcore-plugin,
1132 [ --disable-pgpcore-plugin Do not build pgpcore plugin],
1133 [enable_pgpcore_plugin=$enableval], [enable_pgpcore_plugin=auto])
1135 AC_ARG_ENABLE(pgpmime-plugin,
1136 [ --disable-pgpmime-plugin Do not build pgpmime plugin],
1137 [enable_pgpmime_plugin=$enableval], [enable_pgpmime_plugin=auto])
1139 AC_ARG_ENABLE(pgpinline-plugin,
1140 [ --disable-pgpinline-plugin Do not build pgpinline plugin],
1141 [enable_pgpinline_plugin=$enableval], [enable_pgpinline_plugin=auto])
1143 AC_ARG_ENABLE(rssyl-plugin,
1144 [ --disable-rssyl-plugin Do not build rssyl plugin],
1145 [enable_rssyl_plugin=$enableval], [enable_rssyl_plugin=auto])
1147 AC_ARG_ENABLE(smime-plugin,
1148 [ --disable-smime-plugin Do not build smime plugin],
1149 [enable_smime_plugin=$enableval], [enable_smime_plugin=auto])
1151 AC_ARG_ENABLE(spamassassin-plugin,
1152 [ --disable-spamassassin-plugin Do not build spamassassin plugin],
1153 [enable_spamassassin_plugin=$enableval], [enable_spamassassin_plugin=auto])
1155 AC_ARG_ENABLE(spam_report-plugin,
1156 [ --disable-spam_report-plugin Do not build spam_report plugin],
1157 [enable_spam_report_plugin=$enableval], [enable_spam_report_plugin=auto])
1159 AC_ARG_ENABLE(tnef_parse-plugin,
1160 [ --disable-tnef_parse-plugin Do not build tnef_parse plugin],
1161 [enable_tnef_parse_plugin=$enableval], [enable_tnef_parse_plugin=auto])
1163 AC_ARG_ENABLE(vcalendar-plugin,
1164 [ --disable-vcalendar-plugin Do not build vcalendar plugin],
1165 [enable_vcalendar_plugin=$enableval], [enable_vcalendar_plugin=auto])
1167 dnl disabled by default
1168 AC_ARG_ENABLE(demo-plugin,
1169 [ --enable-demo-plugin Build demo plugin],
1170 [enable_demo_plugin=$enableval], [enable_demo_plugin=no])
1173 dnl Then we check (unconditionnaly) for plugins dependencies
1174 dnl Some dependencies are optional, some mandatory. This is taken care of
1177 dnl During this dependancy check we do the checks themselves, define HAVE_X to
1178 dnl either yes or no, and do the AC_SUBST calls.
1180 dnl Archive: libarchive
1181 dnl Fancy: Webkit, curl, optionally libsoup-gnome
1183 dnl Litehtml a C++ compiler, >=glib-2.36, cairo, fontconfig, gumbo, curl
1184 dnl Libravatar: libcurl
1185 dnl Notification: optionally libnotify unity/messaging-menu
1186 dnl libcanberra_gtk3 hotkey
1187 dnl Pdf-Viewer: libpoppler
1189 dnl PGP/Core: libgpgme
1190 dnl PGP/Mime: pgpcore libgpgme
1191 dnl PGP/Inline: pgpcore libgpgme
1192 dnl S/Mime: pgpcore libgpgme
1194 dnl RSSyl: expat libcurl
1195 dnl SpamReport: libcurl
1196 dnl vCalendar: libcurl, libical
1197 dnl tnef_parse: libytnef
1199 dnl libcurl ********************************************************************
1200 PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
1202 AC_SUBST(CURL_CFLAGS)
1204 dnl expat **********************************************************************
1205 PKG_CHECK_MODULES(EXPAT, expat, HAVE_EXPAT=yes, HAVE_EXPAT=no)
1207 if test x"$HAVE_EXPAT" = xno; then
1208 AC_CHECK_HEADER(expat.h, [expat_header=yes], [expat_header=no])
1209 AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [expat_lib=no])
1210 if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
1213 EXPAT_LIBS="-lexpat"
1217 AC_SUBST(EXPAT_CFLAGS)
1218 AC_SUBST(EXPAT_LIBS)
1220 dnl webkit *********************************************************************
1221 PKG_CHECK_MODULES(WEBKIT, webkit2gtk-4.0 >= 2.18.0, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
1222 AC_SUBST(WEBKIT_LIBS)
1223 AC_SUBST(WEBKIT_CFLAGS)
1225 dnl libsoup ********************************************************************
1226 PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
1227 if test x"$HAVE_LIBSOUP" = xyes; then
1228 AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
1230 AC_SUBST(LIBSOUP_CFLAGS)
1231 AC_SUBST(LIBSOUP_LIBS)
1233 dnl libsoup-gnome **************************************************************
1234 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
1235 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
1236 AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
1238 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
1239 AC_SUBST(LIBSOUP_GNOME_LIBS)
1241 dnl libarchive *****************************************************************
1242 PKG_CHECK_MODULES(LIBARCHIVE, libarchive, HAVE_ARCHIVE=yes, HAVE_ARCHIVE=no)
1243 AC_SUBST(ARCHIVE_LIBS)
1244 AC_SUBST(ARCHIVE_CFLAGS)
1245 AC_CHECK_LIB([archive], [archive_read_new],
1246 ARCHIVE_LIBS=-larchive
1248 AC_SUBST(ARCHIVE_LIBS,$ARCHIVE_CFLAGS),
1252 dnl libgdata *******************************************************************
1253 PKG_CHECK_MODULES(GDATA, libgdata >= 0.17.2, HAVE_GDATA=yes, HAVE_GDATA=no)
1254 AC_SUBST(GDATA_CFLAGS)
1255 AC_SUBST(GDATA_LIBS)
1257 dnl cairo **********************************************************************
1258 PKG_CHECK_MODULES(CAIRO, cairo >= 1.12.0, HAVE_CAIRO=yes, HAVE_CAIRO=no)
1259 AC_SUBST(CAIRO_CFLAGS)
1260 AC_SUBST(CAIRO_LIBS)
1262 dnl fontconfig *****************************************************************
1263 PKG_CHECK_MODULES(FONTCONFIG, fontconfig, HAVE_FONTCONFIG=yes, HAVE_FONTCONFIG=no)
1264 AC_SUBST(FONTCONFIG_CFLAGS)
1265 AC_SUBST(FONTCONFIG_LIBS)
1267 dnl gumbo **********************************************************************
1268 PKG_CHECK_MODULES(LIBGUMBO, gumbo >= 0.10, HAVE_LIBGUMBO=yes, HAVE_LIBGUMBO=no)
1269 AC_SUBST(LIBGUMBO_CFLAGS)
1270 AC_SUBST(LIBGUMBO_LIBS)
1272 dnl libical ********************************************************************
1273 PKG_CHECK_MODULES(LIBICAL, libical >= 2.0, HAVE_LIBICAL=yes, HAVE_LIBICAL=no)
1274 AC_SUBST(LIBICAL_CFLAGS)
1275 AC_SUBST(LIBICAL_LIBS)
1277 dnl Poppler ********************************************************************
1278 PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
1279 AC_SUBST(POPPLER_LIBS)
1280 AC_SUBST(POPPLER_CFLAGS)
1282 dnl check for Poppler extra features that we conditionally support
1283 if test x"$HAVE_POPPLER" = xyes; then
1285 CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
1286 AC_CHECK_DECL(POPPLER_DEST_NAMED,
1287 [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
1288 ,[#include <poppler-action.h>])
1289 AC_CHECK_DECL(POPPLER_DEST_XYZ,
1290 [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
1291 ,[#include <poppler-action.h>])
1295 dnl perl ***********************************************************************
1296 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
1297 if test x"$HAVE_PERL" = xyes; then
1298 AC_MSG_CHECKING(for perl >= 5.8.0)
1299 PERL_VER=`perl -e 'print $] > 5.0079999?"yes":"no"'`
1300 if test "$PERL_VER" = "yes"; then
1307 if test x"$HAVE_PERL" = xyes; then
1308 AC_MSG_CHECKING(for Perl compile flags)
1309 PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
1310 PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
1311 PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm\>//'`
1312 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb\>//'`
1313 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm\>//'`
1314 PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc\>//'`
1316 AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
1318 if test x"$HAVE_PERL" = xyes; then
1319 AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)],
1320 [ HAVE_LIBPERL=no ])
1322 if test x"$HAVE_LIBPERL" = xno; then
1323 LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
1324 LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
1325 AC_MSG_CHECKING([for libperl.so])
1326 if test -f "$LIBPERL_PREFIX/libperl.so"; then
1335 AC_SUBST(PERL_CFLAGS)
1336 AC_SUBST(PERL_LDFLAGS)
1339 dnl Gpgme **********************************************************************
1340 AM_PATH_GPGME(1.0.0, HAVE_GPGME=yes, HAVE_GPGME=no)
1341 if test x"$HAVE_GPGME" = xyes; then
1342 AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.)
1343 AM_PATH_GPGME(1.1.1, AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1, [Define if GPGME supports PKA.]))
1346 dnl Python *********************************************************************
1347 PKG_CHECK_MODULES(PYTHON, python3, HAVE_PYTHON=yes, HAVE_PYTHON=no)
1348 PKG_CHECK_MODULES(PYTHONEMBED, python3-embed, HAVE_PYTHONEMBED=yes, HAVE_PYTHONEMBED=no)
1349 PKG_CHECK_MODULES(PYGOBJECT, pygobject-3.0, HAVE_PYGOBJ=yes, HAVE_PYGOBJ=no)
1351 AC_SUBST(PYTHON_SHARED_LIB)
1352 AC_SUBST(PYTHON_CFLAGS)
1353 AC_SUBST(PYTHON_LIBS)
1354 AC_SUBST(PYTHONEMBED_SHARED_LIB)
1355 AC_SUBST(PYTHONEMBED_CFLAGS)
1356 AC_SUBST(PYTHONEMBED_LIBS)
1357 AC_SUBST(PYGOBJECT_CFLAGS)
1358 AC_SUBST(PYGOBJECT_LIBS)
1360 dnl libnotify ******************************************************************
1361 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1362 if test x"$HAVE_LIBNOTIFY" = xyes; then
1363 AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1365 AC_SUBST(libnotify_CFLAGS)
1366 AC_SUBST(libnotify_LIBS)
1368 dnl libcanberra-gtk3 ************************************************************
1369 PKG_CHECK_MODULES(libcanberra_gtk3, libcanberra-gtk3, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1370 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1371 AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk3 support is enabled])
1373 AC_SUBST(libcanberra_gtk3_CFLAGS)
1374 AC_SUBST(libcanberra_gtk3_LIBS)
1376 dnl unity/messaging-menu *******************************************************
1377 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1378 if test x"$HAVE_UNITY" = xyes; then
1379 AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1381 AC_SUBST(unity_CFLAGS)
1382 AC_SUBST(unity_LIBS)
1384 dnl hotkeys ********************************************************************
1385 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)
1386 if test x"$HAVE_HOTKEYS" = xyes; then
1387 AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1389 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1390 AC_SUBST(CM_NP_HOTKEY_LIBS)
1392 dnl libytnef *******************************************************************
1396 # Check both ytnef.h and libytnef/ytnef.h, and adjust YTNEF_CFLAGS
1398 AC_CHECK_HEADER(ytnef.h, [have_ytnef=1], [have_ytnef=0])
1399 if test $have_ytnef -eq 0; then
1400 AC_CHECK_HEADER(libytnef/ytnef.h,
1402 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_H_SUBDIR"],
1405 if test $have_ytnef -eq 1; then
1406 AC_MSG_CHECKING([how libytnef's SwapDDWord() should be called])
1407 # Now we have to figure out which libytnef version we're using,
1408 # based on whether SwapDDWord takes one argument or two.
1409 if test "x${YTNEF_CFLAGS}" = "x"; then
1410 ytnef_include="#include <ytnef.h>"
1412 ytnef_include="#include <libytnef/ytnef.h>"
1414 AC_TRY_COMPILE([#include <stdio.h>
1416 [SwapDDWord(0, 0);],
1419 if test $have_ytnef -eq 0; then
1420 AC_TRY_COMPILE([#include <stdio.h>
1424 YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_OLD_SWAPDDWORD"],
1427 if test $have_ytnef -eq 1; then
1428 YTNEF_LIBS="-lytnef"
1431 AC_MSG_RESULT(no idea, unsupported libytnef version?)
1434 AC_SUBST(YTNEF_CFLAGS)
1435 AC_SUBST(YTNEF_LIBS)
1437 dnl Third, we now cross the requested plugins and the available dependencies
1438 dnl If some dependencies are missing and the plugin was explicitely enabled,
1439 dnl we error out, else we only inform.
1441 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1442 if test x"$enable_acpi_notifier_plugin" != xno; then
1443 PLUGINS="$PLUGINS acpi_notifier"
1446 DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1450 AC_MSG_CHECKING([whether to build address_keeper plugin])
1451 if test x"$enable_address_keeper_plugin" != xno; then
1452 PLUGINS="$PLUGINS address_keeper"
1455 DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1459 AC_MSG_CHECKING([whether to build archive plugin])
1460 if test x"$enable_archive_plugin" != xno; then
1461 dependencies_missing=""
1463 if test x"$HAVE_ARCHIVE" = xno; then
1464 dependencies_missing="libarchive $dependencies_missing"
1467 if test x"$dependencies_missing" = x; then
1468 PLUGINS="$PLUGINS archive"
1470 elif test x"$enable_archive_plugin" = xauto; then
1472 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1473 enable_archive_plugin=no
1474 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1477 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1480 DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1484 AC_MSG_CHECKING([whether to build att_remover plugin])
1485 if test x"$enable_att_remover_plugin" != xno; then
1486 PLUGINS="$PLUGINS att_remover"
1489 DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1493 AC_MSG_CHECKING([whether to build attachwarner plugin])
1494 if test x"$enable_attachwarner_plugin" != xno; then
1495 PLUGINS="$PLUGINS attachwarner"
1498 DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1502 AC_MSG_CHECKING([whether to build bogofilter plugin])
1503 if test x"$enable_bogofilter_plugin" != xno; then
1504 PLUGINS="$PLUGINS bogofilter"
1507 DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1511 AC_MSG_CHECKING([whether to build bsfilter plugin])
1512 if test x"$enable_bsfilter_plugin" != xno; then
1513 PLUGINS="$PLUGINS bsfilter"
1516 DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1520 AC_MSG_CHECKING([whether to build clamd plugin])
1521 if test x"$enable_clamd_plugin" != xno; then
1522 PLUGINS="$PLUGINS clamd"
1525 DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1529 AC_MSG_CHECKING([whether to build demo plugin])
1530 if test x"$enable_demo_plugin" != xno; then
1531 PLUGINS="$PLUGINS demo"
1534 DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1538 AC_MSG_CHECKING([whether to build Dillo plugin])
1539 if test x"$enable_dillo_plugin" != xno; then
1540 PLUGINS="$PLUGINS dillo"
1543 DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
1547 AC_MSG_CHECKING([whether to build fancy plugin])
1548 if test x"$enable_fancy_plugin" != xno; then
1549 dependencies_missing=""
1551 if test x"$HAVE_WEBKIT" = xno; then
1552 dependencies_missing="libwebkit2gtk-4.0 $dependencies_missing"
1554 if test x"$HAVE_CURL" = xno; then
1555 dependencies_missing="libcurl $dependencies_missing"
1558 if test x"$dependencies_missing" = x; then
1559 PLUGINS="$PLUGINS fancy"
1561 elif test x"$enable_fancy_plugin" = xauto; then
1563 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1564 enable_fancy_plugin=no
1565 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1568 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1571 DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1575 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1576 if test x"$enable_fetchinfo_plugin" != xno; then
1577 PLUGINS="$PLUGINS fetchinfo"
1580 DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1584 AC_MSG_CHECKING([whether to build gdata plugin])
1585 if test x"$enable_gdata_plugin" != xno; then
1586 dependencies_missing=""
1588 if test x"$HAVE_GDATA" = xno; then
1589 dependencies_missing="libgdata $dependencies_missing"
1592 if test x"$dependencies_missing" = x; then
1593 PLUGINS="$PLUGINS gdata"
1595 elif test x"$enable_gdata_plugin" = xauto; then
1597 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1598 enable_gdata_plugin=no
1599 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1602 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1605 DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1609 AC_MSG_CHECKING([whether to build libravatar plugin])
1610 if test x"$enable_libravatar_plugin" != xno; then
1611 dependencies_missing=""
1613 if test x"$HAVE_CURL" = xno; then
1614 dependencies_missing="libcurl $dependencies_missing"
1617 if test x"$dependencies_missing" = x; then
1618 PLUGINS="$PLUGINS libravatar"
1620 elif test x"$enable_libravatar_plugin" = xauto; then
1622 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1623 enable_libravatar_plugin=no
1624 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1627 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1630 DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1634 AC_MSG_CHECKING([whether to build litehtml_viewer plugin])
1635 if test x"$enable_litehtml_viewer_plugin" != xno; then
1636 dependencies_missing=""
1638 if test x"$HAVE_CXX" = xno; then
1639 dependencies_missing="C++ compiler $dependencies_missing"
1641 PKG_CHECK_EXISTS([glib-2.0 >= 2.36], [],
1642 [dependencies_missing="glib-2.0 >= 2.36 $dependencies_missing"])
1643 if test x"$HAVE_CAIRO" = xno; then
1644 dependencies_missing="cairo $dependencies_missing"
1646 if test x"$HAVE_FONTCONFIG" = xno; then
1647 dependencies_missing="fontconfig $dependencies_missing"
1649 if test x"$HAVE_LIBGUMBO" = xno; then
1650 dependencies_missing="libgumbo $dependencies_missing"
1652 if test x"$HAVE_CURL" = xno; then
1653 dependencies_missing="libcurl $dependencies_missing"
1657 if test x"$dependencies_missing" = x; then
1658 PLUGINS="$PLUGINS litehtml_viewer"
1660 elif test x"$enable_litehtml_viewer_plugin" = xauto; then
1662 AC_MSG_WARN("Plugin litehtml_viewer will not be built; missing $dependencies_missing")
1663 enable_litehtml_viewer_plugin=no
1664 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS litehtml_viewer"
1667 AC_MSG_ERROR("Plugin litehtml_viewer cannot be built; missing $dependencies_missing")
1670 DISABLED_PLUGINS="$DISABLED_PLUGINS litehtml_viewer"
1674 AC_MSG_CHECKING([whether to build mailmbox plugin])
1675 if test x"$enable_mailmbox_plugin" != xno; then
1676 PLUGINS="$PLUGINS mailmbox"
1679 DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1683 AC_MSG_CHECKING([whether to build managesieve plugin])
1684 if test x"$enable_managesieve_plugin" != xno; then
1685 PLUGINS="$PLUGINS managesieve"
1688 DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1692 AC_MSG_CHECKING([whether to build newmail plugin])
1693 if test x"$enable_newmail_plugin" != xno; then
1694 PLUGINS="$PLUGINS newmail"
1697 DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1701 AC_MSG_CHECKING([whether to build notification plugin])
1702 if test x"$enable_notification_plugin" != xno; then
1703 PLUGINS="$PLUGINS notification"
1706 AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1707 AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1708 AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1709 AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1710 if test x"$platform_win32" = xno; then
1711 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1714 notification_features="banner command"
1715 notification_missing_dependencies=""
1716 if test x"$HAVE_HOTKEYS" = xyes; then
1717 notification_features="$notification_features hotkeys"
1719 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1721 notification_features="$notification_features lcdproc"
1722 if test x"$HAVE_UNITY" = xyes; then
1723 notification_features="$notification_features unity/messaging-menu"
1725 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1727 if test x"$HAVE_LIBNOTIFY" = xyes; then
1728 notification_features="$notification_features libnotify"
1730 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1732 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1733 notification_features="$notification_features libcanberra-gtk3"
1735 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk3"
1737 notification_features="$notification_features popup trayicon"
1739 DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1743 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1744 if test x"$enable_pdf_viewer_plugin" != xno; then
1745 dependencies_missing=""
1747 if test x"$HAVE_POPPLER" = xno; then
1748 dependencies_missing="libpoppler-glib $dependencies_missing"
1751 if test x"$dependencies_missing" = x; then
1752 PLUGINS="$PLUGINS pdf_viewer"
1754 elif test x"$enable_pdf_viewer_plugin" = xauto; then
1756 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1757 enable_pdf_viewer_plugin=no
1758 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1761 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1764 DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1768 AC_MSG_CHECKING([whether to build perl plugin])
1769 if test x"$enable_perl_plugin" != xno; then
1770 dependencies_missing=""
1772 if test x"$HAVE_LIBPERL" = xno; then
1773 dependencies_missing="libperl $dependencies_missing"
1776 if test x"$dependencies_missing" = x; then
1777 PLUGINS="$PLUGINS perl"
1779 elif test x"$enable_perl_plugin" = xauto; then
1781 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1782 enable_perl_plugin=no
1783 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1786 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1789 DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1793 AC_MSG_CHECKING([whether to build python plugin])
1794 if test x"$enable_python_plugin" != xno; then
1795 dependencies_missing=""
1797 if test x"$HAVE_PYTHON" = xno; then
1798 dependencies_missing="python3 $dependencies_missing"
1800 if test x"$HAVE_PYGOBJ" = xno; then
1801 dependencies_missing="pygobject-3.0 $dependencies_missing"
1804 if test x"$dependencies_missing" = x; then
1805 PLUGINS="$PLUGINS python"
1807 elif test x"$enable_python_plugin" = xauto; then
1809 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1810 enable_python_plugin=no
1811 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1814 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1817 DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1821 AC_MSG_CHECKING([whether to build pgpcore plugin])
1822 if test x"$enable_pgpcore_plugin" != xno; then
1823 dependencies_missing=""
1825 if test x"$HAVE_GPGME" = xno; then
1826 dependencies_missing="libgpgme $dependencies_missing"
1829 if test x"$dependencies_missing" = x; then
1830 PLUGINS="$PLUGINS pgpcore"
1832 elif test x"$enable_pgpcore_plugin" = xauto; then
1834 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1835 enable_pgpcore_plugin=no
1836 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1839 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1842 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1846 AC_MSG_CHECKING([whether to build pgpmime plugin])
1847 if test x"$enable_pgpmime_plugin" != xno; then
1848 dependencies_missing=""
1850 if test x"$HAVE_GPGME" = xno; then
1851 dependencies_missing="libgpgme $dependencies_missing"
1853 if test x"$enable_pgpcore_plugin" = xno; then
1854 dependencies_missing="pgpcore plugin $dependencies_missing"
1857 if test x"$dependencies_missing" = x; then
1858 PLUGINS="$PLUGINS pgpmime"
1860 elif test x"$enable_pgpmime_plugin" = xauto; then
1862 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1863 enable_pgpmime_plugin=no
1864 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1867 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1870 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1874 AC_MSG_CHECKING([whether to build pgpinline plugin])
1875 if test x"$enable_pgpinline_plugin" != xno; then
1876 dependencies_missing=""
1878 if test x"$HAVE_GPGME" = xno; then
1879 dependencies_missing="libgpgme $dependencies_missing"
1881 if test x"$enable_pgpcore_plugin" = xno; then
1882 dependencies_missing="pgpcore plugin $dependencies_missing"
1885 if test x"$dependencies_missing" = x; then
1886 PLUGINS="$PLUGINS pgpinline"
1888 elif test x"$enable_pgpinline_plugin" = xauto; then
1890 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1891 enable_pgpinline_plugin=no
1892 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1895 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1898 DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1902 AC_MSG_CHECKING([whether to build rssyl plugin])
1903 if test x"$enable_rssyl_plugin" != xno; then
1904 dependencies_missing=""
1906 if test x"$HAVE_EXPAT" = xno; then
1907 dependencies_missing="expat $dependencies_missing"
1909 if test x"$HAVE_CURL" = xno; then
1910 dependencies_missing="libcurl $dependencies_missing"
1913 if test x"$dependencies_missing" = x; then
1914 PLUGINS="$PLUGINS rssyl"
1916 elif test x"$enable_rssyl_plugin" = xauto; then
1918 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1919 enable_rssyl_plugin=no
1920 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1923 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1926 DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1930 AC_MSG_CHECKING([whether to build spamassassin plugin])
1931 if test x"$enable_spamassassin_plugin" != xno; then
1932 PLUGINS="$PLUGINS spamassassin"
1936 dnl check for zlib (optional)
1938 SPAMASSASSIN_CFLAGS=""
1939 SPAMASSASSIN_LIBS=""
1940 AC_CHECK_HEADER([zlib.h],
1941 [AC_DEFINE(HAVE_ZLIB_H,1,[optional zlib support for spamassassin plugin])]
1942 [spamassassin_zlib=1],
1943 [spamassassin_zlib=0])
1944 if test $spamassassin_zlib -eq 1; then
1945 AC_CHECK_LIB(z, deflate, [spamassassin_zlib=1], [spamassassin_zlib=0])
1946 AC_MSG_CHECKING([whether to build spamassassin plugin with zlib support])
1947 if test $spamassassin_zlib -eq 1; then
1949 SPAMASSASSIN_CFLAGS="-DHAVE_LIBZ"
1950 SPAMASSASSIN_LIBS="-lz"
1955 AC_SUBST(SPAMASSASSIN_CFLAGS)
1956 AC_SUBST(SPAMASSASSIN_LIBS)
1958 DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1962 AC_MSG_CHECKING([whether to build smime plugin])
1963 if test x"$enable_smime_plugin" != xno; then
1964 dependencies_missing=""
1966 if test x"$HAVE_GPGME" = xno; then
1967 dependencies_missing="libgpgme $dependencies_missing"
1969 if test x"$enable_pgpcore_plugin" = xno; then
1970 dependencies_missing="pgpcore plugin $dependencies_missing"
1973 if test x"$dependencies_missing" = x; then
1974 PLUGINS="$PLUGINS smime"
1976 elif test x"$enable_smime_plugin" = xauto; then
1978 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
1979 enable_smime_plugin=no
1980 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
1983 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
1986 DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
1990 AC_MSG_CHECKING([whether to build spam_report plugin])
1991 if test x"$enable_spam_report_plugin" != xno; then
1992 dependencies_missing=""
1994 if test x"$HAVE_CURL" = xno; then
1995 dependencies_missing="libcurl $dependencies_missing"
1998 if test x"$dependencies_missing" = x; then
1999 PLUGINS="$PLUGINS spam_report"
2001 elif test x"$enable_spam_report_plugin" = xauto; then
2003 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
2004 enable_spam_report_plugin=no
2005 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
2008 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
2011 DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
2015 AC_MSG_CHECKING([whether to build tnef_parse plugin])
2016 if test x"$enable_tnef_parse_plugin" != xno; then
2017 dependencies_missing=""
2019 if test $have_ytnef -eq 0; then
2020 dependencies_missing="libytnef"
2023 if test x"$dependencies_missing" = x; then
2024 PLUGINS="$PLUGINS tnef_parse"
2026 elif test x"$enable_tnef_parse_plugin" = xauto; then
2028 AC_MSG_WARN(Plugin tnef_parse will not be built; missing $dependencies_missing")
2029 enable_tnef_parse_plugin=no
2030 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS tnef_parse"
2033 AC_MSG_ERROR(Plugin tnef_parse will not be built; missing $dependencies_missing")
2036 DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
2041 AC_MSG_CHECKING([whether to build vcalendar plugin])
2042 if test x"$enable_vcalendar_plugin" != xno; then
2043 dependencies_missing=""
2045 if test x"$HAVE_CURL" = xno; then
2046 dependencies_missing="libcurl $dependencies_missing"
2049 if test x"$HAVE_LIBICAL" = xno; then
2050 dependencies_missing="libical $dependencies_missing"
2053 if test x"$HAVE_PERL" = xno; then
2054 dependencies_missing="perl $dependencies_missing"
2057 if test x"$dependencies_missing" = x; then
2058 PLUGINS="$PLUGINS vcalendar"
2060 elif test x"$enable_vcalendar_plugin" = xauto; then
2062 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
2063 enable_vcalendar_plugin=no
2064 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
2067 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
2070 DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
2074 dnl And finally the automake conditionals.
2076 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN, test x"$enable_acpi_notifier_plugin" != xno)
2077 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN, test x"$enable_address_keeper_plugin" != xno)
2078 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN, test x"$enable_archive_plugin" != xno)
2079 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN, test x"$enable_att_remover_plugin" != xno)
2080 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN, test x"$enable_attachwarner_plugin" != xno)
2081 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN, test x"$enable_bogofilter_plugin" != xno)
2082 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN, test x"$enable_bsfilter_plugin" != xno)
2083 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN, test x"$enable_clamd_plugin" != xno)
2084 AM_CONDITIONAL(BUILD_DEMO_PLUGIN, test x"$enable_demo_plugin" != xno)
2085 AM_CONDITIONAL(BUILD_DILLO_PLUGIN, test x"$enable_dillo_plugin" != xno)
2086 AM_CONDITIONAL(BUILD_FANCY_PLUGIN, test x"$enable_fancy_plugin" != xno)
2087 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN, test x"$enable_fetchinfo_plugin" != xno)
2088 AM_CONDITIONAL(BUILD_GDATA_PLUGIN, test x"$enable_gdata_plugin" != xno)
2089 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN, test x"$enable_libravatar_plugin" != xno)
2090 AM_CONDITIONAL(BUILD_LITEHTML_VIEWER_PLUGIN, test x"$enable_litehtml_viewer_plugin" != xno)
2091 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN, test x"$enable_mailmbox_plugin" != xno)
2092 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN, test x"$enable_managesieve_plugin" != xno)
2093 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN, test x"$enable_newmail_plugin" != xno)
2094 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN, test x"$enable_notification_plugin" != xno)
2095 AM_CONDITIONAL(BUILD_HOTKEYS, test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
2096 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN, test x"$enable_pdf_viewer_plugin" != xno)
2097 AM_CONDITIONAL(BUILD_PERL_PLUGIN, test x"$enable_perl_plugin" != xno)
2098 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN, test x"$enable_python_plugin" != xno)
2099 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN, test x"$enable_pgpcore_plugin" != xno)
2100 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN, test x"$enable_pgpmime_plugin" != xno)
2101 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN, test x"$enable_pgpinline_plugin" != xno)
2102 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN, test x"$enable_rssyl_plugin" != xno)
2103 AM_CONDITIONAL(BUILD_SMIME_PLUGIN, test x"$enable_smime_plugin" != xno)
2104 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN, test x"$enable_spamassassin_plugin" != xno)
2105 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN, test x"$enable_spam_report_plugin" != xno)
2106 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN, test x"$enable_tnef_parse_plugin" != xno)
2107 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN, test x"$enable_vcalendar_plugin" != xno)
2110 dnl ****************************
2111 dnl ** Final configure output **
2112 dnl ****************************
2118 src/common/version.h
2121 src/common/passcrypt.h
2122 src/common/tests/Makefile
2125 src/plugins/Makefile
2126 src/plugins/acpi_notifier/Makefile
2127 src/plugins/address_keeper/Makefile
2128 src/plugins/archive/Makefile
2129 src/plugins/att_remover/Makefile
2130 src/plugins/attachwarner/Makefile
2131 src/plugins/bogofilter/Makefile
2132 src/plugins/bsfilter/Makefile
2133 src/plugins/clamd/Makefile
2134 src/plugins/clamd/libclamd/Makefile
2135 src/plugins/demo/Makefile
2136 src/plugins/dillo/Makefile
2137 src/plugins/fancy/Makefile
2138 src/plugins/fetchinfo/Makefile
2139 src/plugins/gdata/Makefile
2140 src/plugins/litehtml_viewer/Makefile
2141 src/plugins/litehtml_viewer/litehtml/Makefile
2142 src/plugins/libravatar/Makefile
2143 src/plugins/mailmbox/Makefile
2144 src/plugins/managesieve/Makefile
2145 src/plugins/newmail/Makefile
2146 src/plugins/notification/Makefile
2147 src/plugins/notification/gtkhotkey/Makefile
2148 src/plugins/pdf_viewer/Makefile
2149 src/plugins/perl/Makefile
2150 src/plugins/perl/tools/Makefile
2151 src/plugins/python/Makefile
2152 src/plugins/python/examples/Makefile
2153 src/plugins/pgpcore/Makefile
2154 src/plugins/pgpcore/tests/Makefile
2155 src/plugins/pgpmime/Makefile
2156 src/plugins/pgpinline/Makefile
2157 src/plugins/rssyl/Makefile
2158 src/plugins/rssyl/tests/Makefile
2159 src/plugins/rssyl/libfeed/Makefile
2160 src/plugins/rssyl/libfeed/tests/Makefile
2161 src/plugins/smime/Makefile
2162 src/plugins/spamassassin/Makefile
2163 src/plugins/spam_report/Makefile
2164 src/plugins/tnef_parse/Makefile
2165 src/plugins/vcalendar/Makefile
2173 manual/dist/Makefile
2174 manual/dist/pdf/Makefile
2175 manual/dist/ps/Makefile
2176 manual/dist/html/Makefile
2177 manual/dist/txt/Makefile
2179 manual/fr/dist/Makefile
2180 manual/fr/dist/pdf/Makefile
2181 manual/fr/dist/ps/Makefile
2182 manual/fr/dist/html/Makefile
2183 manual/fr/dist/txt/Makefile
2185 manual/es/dist/Makefile
2186 manual/es/dist/pdf/Makefile
2187 manual/es/dist/ps/Makefile
2188 manual/es/dist/html/Makefile
2189 manual/es/dist/txt/Makefile
2193 dnl Output the configuration summary
2195 echo "$PACKAGE $VERSION"
2197 if test x"$enable_alternate_addressbook" = xyes; then
2198 echo "Using Address Book : Alternate experimental interface"
2200 echo "Using Address Book : Original stable interface"
2201 echo "JPilot : $enable_jpilot"
2202 echo "LDAP : $enable_ldap"
2204 echo "gnuTLS : $enable_gnutls"
2205 echo "iconv : $am_cv_func_iconv"
2206 echo "compface : $enable_compface"
2207 echo "IPv6 : $enable_ipv6"
2208 echo "enchant : $enable_enchant"
2209 echo "IMAP4 : $enable_libetpan"
2210 echo "NNTP : $enable_libetpan"
2211 echo "Crash dialog : $enable_crash_dialog"
2212 echo "LibSM : $enable_libsm"
2213 echo "DBUS : $enable_dbus"
2214 echo "NetworkManager : $enable_networkmanager"
2215 echo "Manual : $enable_manual"
2216 echo "Generic UMPC code : $enable_generic_umpc"
2217 echo "SVG support : $enable_svg"
2218 echo "Config dir : $ac_cv_with_config_dir"
2219 echo "Password crypto : $pwd_crypto"
2220 echo "Unit tests : $enable_tests"
2224 for plugin in $PLUGINS; do
2226 if test x"$plugin" = xnotification; then
2228 for notif_feature in $notification_features; do
2229 echo " $notif_feature"
2231 if test "x$notification_missing_dependencies" != x; then
2232 echo " Disabled due to missing dependencies:"
2233 for notif_miss_dep in $notification_missing_dependencies; do
2234 echo " $notif_miss_dep"
2239 if test "x$DISABLED_PLUGINS" != x; then
2241 for plugin in $DISABLED_PLUGINS; do
2246 if test "x$MISSING_DEPS_PLUGINS" != x; then
2247 echo " Disabled due to missing dependencies:"
2248 for plugin in $MISSING_DEPS_PLUGINS; do
2253 echo "The binary will be installed in $prefix/bin"
2255 echo "Configure finished, type 'make' to build."