Fix help about command-line arguments that do require a parameter.
[claws.git] / configure.ac
1
2 AC_PREREQ(2.59)
3 AC_INIT(src/main.c)
4 AC_CONFIG_AUX_DIR(config)
5 AC_CONFIG_MACRO_DIR([m4])
6
7 PACKAGE=claws-mail
8
9 dnl version number
10 INTERFACE_AGE=0
11 BINARY_AGE=0
12 EXTRA_RELEASE=
13 EXTRA_GTK2_VERSION=
14
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/])
19     else
20         GIT_VERSION=`git describe --abbrev=6 --dirty --always`
21         echo "echo ${GIT_VERSION}" > ./version
22     fi
23 else
24     GIT_VERSION=`sh -c ". $srcdir/version"`
25 fi
26
27 if test \( -z "$GIT_VERSION" \); then
28         AC_MSG_ERROR([*** could not determine program version])
29 fi
30
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%%-*}
38
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}
41 else
42     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}
43     EXTRA_VERSION=0
44 fi
45
46 if test \( "x$EXTRA_RELEASE" != "x" \); then
47     VERSION=${VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
48 fi
49
50 dnl set $target
51 AC_CANONICAL_SYSTEM
52
53 dnl
54 AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
55 dnl AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
56 dnl AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
57 AC_SUBST(PACKAGE)
58 AC_SUBST(VERSION)
59 AC_SUBST(MAJOR_VERSION)
60 AC_SUBST(MINOR_VERSION)
61 AC_SUBST(MICRO_VERSION)
62 AC_SUBST(EXTRA_VERSION)
63 AC_SUBST(GIT_VERSION)
64
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)
67
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"])
75 ])
76 PKG_PROG_PKG_CONFIG
77
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`
83 AC_SUBST(LT_RELEASE)
84 AC_SUBST(LT_CURRENT)
85 AC_SUBST(LT_REVISION)
86 AC_SUBST(LT_AGE)
87
88 dnl Specify a header configuration file
89 AC_CONFIG_HEADERS(config.h)
90 AC_CONFIG_HEADERS(claws-features.h)
91
92 AM_MAINTAINER_MODE
93
94 dnl Checks for programs.
95 dnl AC_ARG_PROGRAM
96 AC_PROG_CC
97 AC_ISC_POSIX
98 AC_PROG_INSTALL
99 AC_PROG_LN_S
100 AC_PROG_MAKE_SET
101 AC_PROG_CPP
102 dnl AC_PROG_RANLIB
103 AM_PROG_LEX
104 AC_PROG_YACC
105 AC_LIB_PREFIX
106 AC_LIBTOOL_WIN32_DLL
107 LT_INIT
108 LT_AC_PROG_RC
109 AC_LIBTOOL_RC
110 AC_PROG_LIBTOOL
111 AC_PROG_AWK
112
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
115 dnl CXX exists.
116 AC_PROG_CXX
117 AC_PATH_PROG(REAL_CXX, $CXX)
118 HAVE_CXX=no
119 if test -n "$REAL_CXX"; then
120         HAVE_CXX=yes
121 fi
122
123 AC_SYS_LARGEFILE
124
125 dnl ******************************
126 dnl Checks for host
127 dnl Not needed anymore because we
128 dnl do AC_CANONICAL_SYSTEM above
129 dnl ******************************
130 dnl AC_CANONICAL_HOST
131
132 dnl Copied from the official gtk+-2 configure.in
133 AC_MSG_CHECKING([for host platform])
134 case "$host" in
135   *-*-mingw*|*-*-cygwin*)
136     platform_win32=yes
137     LDFLAGS="$LDFLAGS -mwindows -Wl,--export-all-symbols"
138     ;;
139         *-apple-*)
140                 platform_osx=yes
141                 LDFLAGS="$LDFLAGS -Wl,-export_dynamic"
142                 ;;
143   *)
144     platform_win32=no
145                 platform_osx=no
146                 LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
147     ;;
148 esac
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])
152
153 AC_MSG_CHECKING([for native Win32])
154 case "$host" in
155   *-*-mingw*)
156     os_win32=yes
157     ;;
158   *)
159     os_win32=no
160     ;;
161 esac
162 AC_MSG_RESULT([$os_win32])
163 AM_CONDITIONAL(OS_WIN32, test x"$os_win32" = x"yes")
164
165 AC_MSG_CHECKING([for Cygwin])
166 case "$host" in
167   *-*-cygwin*)
168     env_cygwin=yes
169     ;;
170   *)
171     env_cygwin=no
172     ;;
173 esac
174 AC_MSG_RESULT([$env_cygwin])
175 AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
176
177 if test "$GCC" = "yes"
178 then
179         CFLAGS="$CFLAGS -Wno-unused-function"
180         #CFLAGS="-g -Wall -Wno-unused-function"
181 fi
182
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"
191 fi
192
193 CFLAGS="$CFLAGS -Wall -D_GNU_SOURCE"
194
195 if test $USE_MAINTAINER_MODE = yes; then
196         CFLAGS="$CFLAGS -g -Wno-pointer-sign -DUSE_MAINTAINER_MODE"
197 fi
198
199 pthread_name=
200 case "$target" in
201 *-darwin*)
202         CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
203         ;;
204 *-*-mingw*)
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
207         # disabled.
208         pthread_name=pthread
209         CFLAGS="$CFLAGS -mms-bitfields"
210         LIBS="$LIBS -l${pthread_name} -lws2_32 -lregex"
211         ;;
212 *-*-solaris*)
213         CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
214         CFLAGS="$CFLAGS -std=gnu99 -DSOLARIS"
215         ;;
216 esac
217
218 dnl Checks for iconv
219 AM_ICONV
220
221 dnl floor and ceil are  in -lm
222 LIBS="$LIBS -lm"
223
224 dnl
225 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
226 dnl
227 syl_save_LIBS=$LIBS
228 LIBS="$LIBS $GTK_LIBS"
229 AC_CHECK_FUNCS(bind_textdomain_codeset)
230 LIBS=$syl_save_LIBS
231
232 dnl for gettext
233 ALL_LINGUAS="ca cs da de en_GB es fi fr hu id_ID it ja nb nl pl pt_BR pt_PT 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.])
237
238 AM_GNU_GETTEXT_VERSION([0.18])
239 AM_GNU_GETTEXT([external])
240
241 AC_ARG_ENABLE(manual,
242                 [  --disable-manual                Do not build user manual],
243                 [enable_manual=$enableval], [enable_manual=yes])
244
245 AC_ARG_ENABLE(libsm,
246                 [  --disable-libsm                 Do not build libSM support for session management],
247                 [enable_libsm=$enableval], [enable_libsm=yes])
248
249 AC_ARG_ENABLE(ipv6,
250                 [  --disable-ipv6                  Do not build IPv6 support],
251                 [enable_ipv6=$enableval], [enable_ipv6=yes])
252
253 AC_ARG_ENABLE(gnutls,
254                 [  --disable-gnutls                Do not build GnuTLS support for SSL/TLS],
255                     [enable_gnutls=$enableval], [enable_gnutls=yes])
256
257 AC_ARG_ENABLE(enchant,
258                 [  --disable-enchant               Do not build Enchant support for spell-checking],
259                 [enable_enchant=$enableval], [enable_enchant=yes])
260
261 AC_ARG_ENABLE(crash-dialog,
262                 [  --enable-crash-dialog           Build crash dialog],
263                 [enable_crash_dialog=$enableval], [enable_crash_dialog=no])
264
265 AC_ARG_ENABLE(generic-umpc,
266                 [  --enable-generic-umpc           Build generic UMPC code],
267                 [enable_generic_umpc=$enableval], [enable_generic_umpc=no])
268
269 AC_ARG_ENABLE(compface,
270                 [  --disable-compface              Do not build compface support for X-Face],
271                 [enable_compface=$enableval], [enable_compface=yes])
272
273 AC_ARG_ENABLE(pthread,
274                 [  --disable-pthread               Do not build pthread support],
275                 [enable_pthread=$enableval], [enable_pthread=yes])
276
277 AC_ARG_ENABLE(startup-notification,
278                 [  --disable-startup-notification  Do not startup notification support],
279                 [enable_startup_notification=$enableval], [enable_startup_notification=yes])
280
281 AC_ARG_ENABLE(dbus,
282                 [  --disable-dbus                  Do not build DBUS support],
283                 [enable_dbus=$enableval], [enable_dbus=yes])
284
285 AC_ARG_ENABLE(ldap,
286                 [  --disable-ldap                  Do not build LDAP support],
287                 [enable_ldap=$enableval], [enable_ldap=yes])
288
289 AC_ARG_ENABLE(jpilot,
290                 [  --disable-jpilot                Do not build JPilot support],
291                 [enable_jpilot=$enableval], [enable_jpilot=yes])
292
293 AC_ARG_ENABLE(networkmanager,
294                 [  --disable-networkmanager        Do not build NetworkManager support],
295                 [enable_networkmanager=$enableval], [enable_networkmanager=yes])
296
297 AC_ARG_ENABLE(libetpan,
298                 [  --disable-libetpan              Do not build libetpan support for IMAP4/NNTP],
299                 [enable_libetpan=$enableval], [enable_libetpan=yes])
300
301 AC_ARG_ENABLE(valgrind,
302                 [  --disable-valgrind              Do not build valgrind support for debugging],
303                 [enable_valgrind=$enableval], [enable_valgrind=yes])
304
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])
308
309 AC_ARG_ENABLE(svg,
310         [  --disable-svg                   Do not build SVG support],
311         [enable_svg=$enableval], [enable_svg=yes])
312
313 AC_ARG_ENABLE(tests,
314                                 [  --enable-tests                   Build unit tests],
315                                 [enable_tests=$enableval], [enable_tests=no])
316
317 manualdir='${docdir}/manual'
318 AC_ARG_WITH(manualdir,
319         [  --with-manualdir=DIR    Manual directory],
320         [manualdir="$withval"])
321 AC_SUBST(manualdir)
322
323 dnl ******************************
324 dnl ** Check for required tools **
325 dnl ** to build manuals         **
326 dnl ******************************
327
328 AC_PATH_PROG(DOCBOOK2HTML, docbook2html)
329 AC_PATH_PROG(DOCBOOK2TXT, docbook2txt)
330 AC_PATH_PROG(DOCBOOK2PS, docbook2ps)
331 AC_PATH_PROG(DOCBOOK2PDF, docbook2pdf)
332
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")
337
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
341             enable_manual=yes
342         else
343             enable_manual=no
344     fi
345 fi
346
347 AM_CONDITIONAL(BUILD_MANUAL, test x"$enable_manual" = xyes)
348
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])
353         else
354                 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
355         fi
356 else
357         AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datarootdir}/${PACKAGE}",[PACKAGE_DATA_DIR])
358 fi
359
360 AC_CHECK_LIB(xpg4, setlocale)
361
362 SM_LIBS=""
363 dnl Check for LibSM
364 AC_MSG_CHECKING([whether to use LibSM])
365 if test x"$enable_libsm" = xyes; then
366         AC_MSG_RESULT(yes)
367         AC_CHECK_LIB(SM, SmcSaveYourselfDone,
368                 [SM_LIBS="$X_LIBS -lSM -lICE"],enable_libsm=no,
369                 $X_LIBS -lICE)
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])
373         else
374                 AC_MSG_RESULT(not found)
375                 AC_MSG_WARN([*** LibSM will not be supported ***])
376         fi
377 else
378         AC_MSG_RESULT(no)
379 fi
380 AC_SUBST(SM_LIBS)
381
382 dnl Check for d_type member in struct dirent
383 AC_MSG_CHECKING([whether struct dirent has d_type member])
384 AC_CACHE_VAL(ac_cv_dirent_d_type,[
385         AC_TRY_COMPILE([#include <dirent.h>],
386                        [struct dirent d; d.d_type = DT_REG;],
387                        ac_cv_dirent_d_type=yes, ac_cv_dirent_d_type=no)
388 ])
389 AC_MSG_RESULT($ac_cv_dirent_d_type)
390 if test $ac_cv_dirent_d_type = yes; then
391         AC_DEFINE(HAVE_DIRENT_D_TYPE, 1,
392                   Define if `struct dirent' has `d_type' member.)
393 fi
394
395 # Check whether mkdir does not take the permission argument.
396 GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
397
398 dnl Checks for header files.
399 AC_HEADER_DIRENT
400 AC_HEADER_STDC
401 AC_HEADER_SYS_WAIT
402 AC_CHECK_HEADERS(fcntl.h sys/file.h unistd.h paths.h \
403                  sys/param.h sys/utsname.h sys/select.h \
404                  wchar.h wctype.h locale.h netdb.h)
405 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
406 AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
407
408 dnl Checks for typedefs, structures, and compiler characteristics.
409 AC_C_CONST
410 AC_TYPE_OFF_T
411 AC_TYPE_PID_T
412 AC_TYPE_SIZE_T
413 AC_STRUCT_TM
414
415 dnl AC_CHECK_TYPE(wint_t, unsigned int) does not work because wint_t
416 dnl may be defined only in wchar.h (this happens with gcc-2.96).
417 dnl So we need to use this extended macro.
418 CLAWS_CHECK_TYPE(wint_t, unsigned int,
419 [
420 #if HAVE_WCHAR_H
421 #include <wchar.h>
422 #endif
423 ], Define to `unsigned int' if <stddef.h> or <wchar.h> doesn't define.)
424
425 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF, Used to test for a u32 typedef)
426 AC_CHECK_SIZEOF(unsigned short, 2)
427 AC_CHECK_SIZEOF(unsigned int, 4)
428 AC_CHECK_SIZEOF(unsigned long, 4)
429
430 dnl Checks for library functions.
431 AC_FUNC_ALLOCA
432 AC_CHECK_FUNCS(gethostname mkdir mktime socket strstr strchr strcasestr \
433                uname flock lockf inet_aton inet_addr \
434                fchmod mkstemp truncate getuid regcomp)
435
436 AC_CHECK_FUNCS(fgets_unlocked fgetc_unlocked fputs_unlocked fputc_unlocked fread_unlocked fwrite_unlocked feof_unlocked ferror_unlocked fmemopen)
437
438 dnl *****************
439 dnl ** common code **
440 dnl *****************
441
442 dnl check for glib
443 PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.28 gmodule-2.0 >= 2.28 gobject-2.0 >= 2.28 gthread-2.0 >= 2.28])
444
445 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
446 AC_SUBST(GLIB_GENMARSHAL)
447
448 AC_SUBST(GLIB_CFLAGS)
449 AC_SUBST(GLIB_LIBS)
450
451 PKG_CHECK_MODULES(GDK_PIXBUF, [gdk-pixbuf-2.0 >= 2.26])
452
453 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
454 syl_save_LIBS=$LIBS
455 LIBS="$LIBS $GTK_LIBS"
456 AC_CHECK_FUNCS(bind_textdomain_codeset)
457 LIBS=$syl_save_LIBS
458
459 dnl check for IPv6 option
460 dnl automated checks for IPv6 support.
461 AC_MSG_CHECKING([whether to use IPv6])
462 if test x"$enable_ipv6" = xyes; then
463         AC_MSG_RESULT(yes)
464         AC_MSG_CHECKING([for IPv6 support])
465         if test x"$platform_win32" = xyes; then
466                 AC_CACHE_VAL(ac_cv_ipv6,[
467                         AC_TRY_COMPILE([
468                                         #include <ws2tcpip.h>
469                                 ], [struct in6_addr a;],
470                                 ac_cv_ipv6=yes, ac_cv_ipv6=no)
471                 ])
472         else
473                 AC_CACHE_VAL(ac_cv_ipv6,[
474                         AC_TRY_COMPILE([
475                                         #define INET6
476                                         #include <sys/types.h>
477                                         #include <netinet/in.h>
478                                 ], [int x = IPPROTO_IPV6; struct in6_addr a;],
479                                 ac_cv_ipv6=yes, ac_cv_ipv6=no)
480                 ])
481         fi
482         AC_MSG_RESULT($ac_cv_ipv6)
483         if test $ac_cv_ipv6 = yes; then
484                 AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
485         else
486                 AC_MSG_WARN(*** IPv6 will not be supported ***)
487                 enable_ipv6=no
488         fi
489 else
490         AC_MSG_RESULT(no)
491 fi
492
493 dnl GNUTLS
494 AC_MSG_CHECKING([whether to use GnuTLS])
495 AC_MSG_RESULT($enable_gnutls)
496 if test "x$enable_gnutls" != "xno"; then
497         PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.2,
498         [
499                 AC_DEFINE(USE_GNUTLS, 1, gnutls)
500                 echo "Building with GnuTLS"
501                 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
502                 [
503                         dnl No linking against libgcrypt needed
504                 ],
505                 [
506                         dnl linking against libgcrypt *is* needed
507                         GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
508                 ])
509         ],
510         [
511                 echo "Building without GnuTLS"
512                 AC_MSG_RESULT([*** GnuTLS support is recommended ])
513                 AC_MSG_RESULT([*** You can use --disable-gnutls if you don't need it.])
514                 AC_MSG_ERROR([GnuTLS not found])
515         ])
516         AC_SUBST(GNUTLS_LIBS)
517         AC_SUBST(GNUTLS_CFLAGS)
518 fi
519
520 PKG_CHECK_MODULES(NETTLE, nettle)
521 AC_SUBST(NETTLE_LIBS)
522
523 AC_ARG_WITH(passcrypt-key, [  --with-passcrypt-key=KEY     Key used to encode passwords (8 byte string)],
524             with_passcrypt_key="$withval", with_passcrypt_key="passkey0")
525 AC_SUBST(PASSCRYPT_KEY, $with_passcrypt_key)
526
527 dnl RC dir (will be default at a certain point in time)
528 AC_ARG_WITH(config-dir,    [  --with-config-dir=RCDIR      Local configuration dir (default: .claws-mail)],
529               ac_cv_with_config_dir="$withval", ac_cv_with_config_dir="")
530
531 dnl Set correct default value based on platform
532 if test x"$ac_cv_with_config_dir" = x""; then
533         if test x"$platform_win32" = xyes; then
534                 ac_cv_with_config_dir="Claws-mail"
535         else
536                 ac_cv_with_config_dir=".claws-mail"
537         fi
538 fi
539 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
540
541 AC_ARG_WITH(password-encryption, [  --with-password-encryption=PROVIDER    Which cryptographic library to use for encrypting stored passwords (gnutls, old, default)],
542                                                 pwd_crypto="$withval", pwd_crypto="default")
543
544 if test x"$pwd_crypto" = xdefault; then
545         if test x"$enable_gnutls" = xyes; then
546                 if `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
547                         pwd_crypto="gnutls"
548                 fi
549         fi
550 fi
551 if test x"$pwd_crypto" = xdefault; then
552         pwd_crypto="old"
553 fi
554
555 case $pwd_crypto in
556         gnutls)
557                 if test x"$enable_gnutls" = xno; then
558                         AC_MSG_ERROR([GnuTLS password encryption requested but GnuTLS is not available.])
559                 fi
560                 if ! `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
561                         AC_MSG_ERROR([GnuTLS version at least 3.0 is required for password encryption.])
562                 fi
563                 AC_DEFINE(PASSWORD_CRYPTO_GNUTLS, 1, Use GnuTLS for stored password encryption)
564                 ;;
565         old)
566                 AC_DEFINE(PASSWORD_CRYPTO_OLD, 1, Use old insecure method for stored password encryption)
567                 ;;
568         *)
569                 AC_MSG_ERROR([Unknown password encryption provider requested.])
570                 ;;
571 esac
572
573
574 dnl ************************
575 dnl ** GTK user interface **
576 dnl ************************
577
578 dnl Checks for GTK
579 PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.24)
580 AC_ARG_ENABLE(deprecated,
581                 [  --disable-deprecated            Disable deprecated GTK functions],
582                 [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
583
584 dnl Make sure the code does not regress to using deprecated GTK stuff...
585 GTK_CFLAGS="$GTK_CFLAGS -DGTK_DISABLE_SINGLE_INCLUDES -DGSEAL_ENABLE"
586
587 AC_SUBST(GTK_CFLAGS)
588 AC_SUBST(GTK_LIBS)
589
590 dnl enchant is used for spell checking
591 AC_MSG_CHECKING([whether to use enchant])
592 AC_MSG_RESULT($enable_enchant)
593 if test $enable_enchant = yes; then
594         PKG_CHECK_MODULES(ENCHANT, enchant >= 1.4.0,
595         [
596                 AC_DEFINE(USE_ENCHANT, 1, enchant)
597                 echo "Building with enchant"
598                 enable_enchant=yes
599         ],
600         [
601                 PKG_CHECK_MODULES(ENCHANT, enchant-2 >= 2.0.0,
602                 [
603                         AC_DEFINE(USE_ENCHANT, 1, enchant-2)
604                         echo "Building with enchant-2"
605                         enable_enchant=yes
606                 ],
607                 [
608                         echo "Building without enchant-notification"
609                         enable_enchant=no
610                 ])
611         ])
612         AC_SUBST(ENCHANT_CFLAGS)
613         AC_SUBST(ENCHANT_LIBS)
614 fi
615
616 dnl want crash dialog
617 if test $enable_crash_dialog = yes; then
618 dnl check if GDB is somewhere
619         AC_CHECK_PROG(enable_crash_dialog, gdb, yes, no)
620         AC_MSG_CHECKING([whether to use crash dialog])
621         if test $enable_crash_dialog = yes; then
622                 AC_DEFINE(CRASH_DIALOG, 1, Pop up crash dialog)
623         fi
624         AC_MSG_RESULT($enable_crash_dialog)
625 fi
626
627 dnl generic umpc
628 if test $enable_generic_umpc = yes; then
629         AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
630         AC_MSG_RESULT($enable_generic_umpc)
631 fi
632
633 dnl Check for X-Face support
634 AC_MSG_CHECKING([whether to use compface])
635 if test x"$enable_compface" = xyes; then
636         AC_MSG_RESULT(yes)
637         AC_CHECK_LIB(compface, uncompface,
638                 [AC_DEFINE(HAVE_LIBCOMPFACE, 1, Define if you want compface support.)],
639                 [enable_compface=no])
640         if test x"$enable_compface" = xyes; then
641                 COMPFACE_LIBS="-lcompface"
642         else
643                 COMPFACE_LIBS=""
644         fi
645         AC_SUBST(COMPFACE_LIBS)
646 else
647         AC_MSG_RESULT(no)
648 fi
649
650 dnl check for pthread support
651 AC_MSG_CHECKING([whether to use pthread])
652 if test x$enable_pthread = xno; then
653         AC_MSG_RESULT(no)
654 else
655         AC_MSG_RESULT(yes)
656
657         # For W32 we need to use a special ptrhead lib. In this case we can't
658         # use AC_CHECK_LIB because it has no means of checking for a
659         # library installed under a different name.  Checking for the
660         # header is okay.
661         if test -n "${pthread_name}" ; then
662            enable_pthread=yes
663         else
664         AC_CHECK_LIB(pthread, pthread_create, :, enable_pthread=no)
665         fi
666         AC_CHECK_HEADERS(pthread.h, :, enable_pthread=no)
667
668         if test x$enable_pthread = xyes; then
669                 AC_DEFINE(USE_PTHREAD, 1, Define if you have pthread)
670                 if test -z "${pthread_name}" ; then
671                 PTHREAD_LIBS="-lpthread"
672         fi
673         fi
674
675 fi
676 AC_SUBST(PTHREAD_LIBS)
677
678 dnl
679 dnl Check whether we need to pass -lresolv
680 dnl We know that we don't need it for W32.
681 dnl
682 if test x$os_win32 = xno; then
683   t_oldLibs="$LIBS"
684   LIBS="$LIBS"
685   ac_cv_var__res_options=no
686   AC_TRY_LINK([#include <sys/types.h>
687              #include <sys/socket.h>
688              #include <netinet/in.h>
689              #include <arpa/nameser.h>
690              #include <resolv.h>],
691                 [_res.options = RES_INIT;],
692                 ac_cv_var__res_options=yes);
693   if test "$ac_cv_var__res_options" != "yes"; then
694         LIBRESOLV="-lresolv"
695   fi
696   LIBS="$t_oldLibs"
697
698   if test "x$LIBRESOLV" = "x"; then
699         AC_CHECK_LIB(resolv, res_query, [LIBRESOLV=-lresolv])
700         LIBS="$t_oldLibs"
701   fi
702 fi
703 AC_SUBST(LIBRESOLV)
704
705 LIBS="$LIBS $LIBRESOLV"
706
707 dnl #######################################################################
708 dnl # Check for startup notification
709 dnl #######################################################################
710 if test "x$enable_startup_notification" = "xyes"; then
711         PKG_CHECK_MODULES(STARTUP_NOTIFICATION, libstartup-notification-1.0 >= 0.5,
712         [
713                 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, [Define if we're using libstartup-notification.])
714                 echo "Building with libstartup-notification"
715                 enable_startup_notification=yes
716         ],
717         [
718                 echo "Building without libstartup-notification"
719                 enable_startup_notification=no
720         ])
721
722         AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
723         AC_SUBST(STARTUP_NOTIFICATION_LIBS)
724 fi
725
726 dnl #######################################################################
727 dnl # Check for D-Bus support
728 dnl #######################################################################
729 if test "x$enable_dbus" = "xyes"; then
730         PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60, dbus-glib-1 >= 0.60],
731         [
732                 AC_DEFINE(HAVE_DBUS_GLIB, 1, [Define if glib bindings of D-Bus are available])
733                 enable_dbus=yes
734         ],
735         [
736                 echo "D-Bus requirements not met. D-Bus support not activated."
737                 enable_dbus=no
738         ])
739         AC_SUBST(DBUS_CFLAGS)
740         AC_SUBST(DBUS_LIBS)
741 fi
742
743 dnl #######################################################################
744 dnl # Configure address book support
745 dnl #######################################################################
746
747 dnl #######################################################################
748 dnl # Check for alternate address book support
749 dnl #######################################################################
750 AC_MSG_CHECKING([whether DBUS support for alternate address book is present])
751 if test x"$enable_dbus" = xyes; then
752         AC_MSG_RESULT([yes])
753         AC_MSG_CHECKING([whether to enable alternate address book])
754         if test x"$enable_alternate_addressbook" = xyes; then
755                 AC_MSG_RESULT([yes])
756                 PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
757                 [
758                         AC_DEFINE(USE_ALT_ADDRBOOK, 1, [Define if alternate address book is to be activated.])
759                         enable_alternate_addressbook=yes
760                         AC_SUBST(CONTACTS_CFLAGS)
761                         AC_SUBST(CONTACTS_LIBS)
762                 ],
763                 [
764                         enable_alternate_addressbook=no
765                 ])
766         else
767                 AC_MSG_RESULT([no])
768                 enable_alternate_addressbook=no
769         fi
770 else
771         AC_MSG_RESULT([no])
772         enable_alternate_addressbook=no
773 fi
774
775 dnl #######################################################################
776 dnl # Check for old address book support
777 dnl #######################################################################
778 if test x"$enable_alternate_addressbook" = xno; then
779         dnl for LDAP support in addressbook
780         dnl no check for libraries; dynamically loaded
781         AC_MSG_CHECKING([whether to use LDAP])
782         if test x"$enable_ldap" = xno; then
783                 AC_MSG_RESULT(no)
784         elif test x"$enable_ldap" = xyes -a x"$enable_pthread" = xno; then
785                 AC_MSG_RESULT(no - LDAP support needs pthread support)
786
787                 enable_ldap=no
788         elif test x"$platform_win32" = xyes; then
789                 AC_MSG_RESULT(yes)
790                 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
791                 LDAP_LIBS="-lwldap32"
792                 AC_SUBST(LDAP_LIBS)
793         else
794                 AC_MSG_RESULT(yes)
795
796                 dnl check for available libraries, and pull them in
797                 AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
798                 AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
799                 AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
800                 AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
801                                  $LDAP_LIBS)
802
803                 AC_CHECK_HEADERS(ldap.h lber.h,
804                                  [ enable_ldap=yes ],
805                                  [ enable_ldap=no ])
806
807                 if test "$enable_ldap" = yes; then
808                         AC_CHECK_LIB(ldap, ldap_open,
809                                          [ enable_ldap=yes ],
810                                          [ enable_ldap=no ],
811                                          $LDAP_LIBS)
812
813                         AC_CHECK_LIB(ldap, ldap_start_tls_s,
814                                              [ ac_cv_have_tls=yes ],
815                                              [ ac_cv_have_tls=no ])
816
817                 fi
818
819                 AC_MSG_CHECKING([whether ldap library is available])
820                 AC_MSG_RESULT($enable_ldap)
821
822                 AC_MSG_CHECKING([whether TLS library is available])
823                 AC_MSG_RESULT($ac_cv_have_tls)
824
825                 if test "$enable_ldap" = yes; then
826                         AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
827                         LDAP_LIBS="$LDAP_LIBS -lldap"
828                         AC_SUBST(LDAP_LIBS)
829                         if test "$ac_cv_have_tls" = yes; then
830                                 AC_DEFINE(USE_LDAP_TLS, 1, Define if you want LDAP TLS support in addressbook.)
831                         fi
832                         dnl As of OpenLDAP API version 3000 a number of functions has
833                         dnl been deprecated. As Claws-mail compiles and runs on many
834                         dnl platforms and many versions of OpenLDAP we need to be able
835                         dnl to switch between the old and new API because new API has
836                         dnl added new functions replacing old ones and at the same time
837                         dnl old functions has been changed.
838                         dnl If cross-compiling defaults to enable deprecated features
839                         dnl for maximum portability
840                         AC_MSG_CHECKING([The API version of OpenLDAP])
841                         AC_RUN_IFELSE(
842                                 [AC_LANG_PROGRAM(
843                                  [#include <ldap.h>],
844                                  [if (LDAP_API_VERSION >= 3000)
845                                                 return 1
846                                 ])],
847                                 [AC_MSG_RESULT([version < 3000])
848                                  AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)],
849                                 [AC_MSG_RESULT([version >= 3000])
850                                  AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 1, Define if OpenLDAP API is at least version 3000.)],
851                                 [AC_MSG_RESULT([Enabling deprecated features in OpenLDAP])
852                                  AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)
853                                  AC_DEFINE(LDAP_DEPRECATED, 1, Define to activate deprecated features in OpenLDAP)]
854                         )
855                 fi
856         fi
857
858         dnl for JPilot support in addressbook
859         dnl no check for libraries; these are dynamically loaded
860         AC_MSG_CHECKING([whether to use JPilot])
861         if test "$enable_jpilot" = yes; then
862                 AC_MSG_RESULT(yes)
863                 AC_CHECK_HEADERS(pi-args.h pi-appinfo.h pi-address.h pi-version.h,
864                                  [ AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ],
865                                  [ enable_jpilot=no ])
866                 if test "$enable_jpilot" = no; then
867                         AC_CHECK_HEADERS(libpisock/pi-args.h libpisock/pi-appinfo.h libpisock/pi-address.h libpisock/pi-version.h,
868                                          [ enable_jpilot=yes
869                                            AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
870                 fi
871
872                 AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" enable_jpilot="no"])
873                 if test x"$enable_jpilot" = xyes; then
874                         AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
875                 else
876                         AC_MSG_NOTICE([JPilot support not available])
877                 fi
878                 AC_SUBST(JPILOT_LIBS)
879         else
880                 AC_MSG_RESULT(no)
881         fi
882 fi
883
884 AM_CONDITIONAL(BUILD_ALTADDRBOOK, test x"$enable_alternate_addressbook" = x"yes")
885
886 dnl #######################################################################
887 dnl # Check for NetworkManager support
888 dnl #######################################################################
889 if test x"$enable_dbus" = xyes; then
890         if test x"$enable_networkmanager" = xyes; then
891                 PKG_CHECK_MODULES(NETWORKMANAGER_SUPPORT, libnm,
892                 [
893                         AC_DEFINE(HAVE_NETWORKMANAGER_SUPPORT, 1, [Define if NetworkManager support is to be included.])
894                         echo "Building with NetworkManager support"
895                         enable_networkmanager=yes
896                 ],
897                 [
898                         echo "NetworkManager not found."
899                         enable_networkmanager=no
900                 ])
901                 AC_SUBST(NETWORKMANAGER_SUPPORT_CFLAGS)
902         fi
903 else
904         echo "NetworkManager support deactivated as D-Bus requirements were not met."
905         enable_networkmanager=no
906 fi
907
908 dnl Libetpan
909 AC_MSG_CHECKING([whether to use libetpan])
910 if test x"$enable_libetpan" = xyes; then
911     AC_MSG_RESULT(yes)
912
913     libetpan_config=no
914     libetpan_result=no
915     libetpan_versiontype=0
916
917     # since 1.9.4, libetpan uses pkg-config
918     PKG_CHECK_MODULES([LIBETPAN], [libetpan >= 1.9.4],
919     [
920         LIBETPAN_VERSION=`pkg-config --modversion libetpan | $AWK -F. '{printf "%d", ($1 * 10000) + ($2 * 100) + $3}'`
921         libetpan_config=yes
922     ],
923     [
924         # before 1.9.4, libetpan uses its own libetpan-config script
925         AC_PATH_PROG(libetpanconfig, [libetpan-config])
926         if test "x$libetpanconfig" != "x"; then
927             LIBETPAN_CPPFLAGS="`$libetpanconfig --cflags`"
928             LIBETPAN_LIBS="`$libetpanconfig --libs`"
929             # support libetpan version like x.x and x.x.x
930             libetpan_versiontype=`$libetpanconfig --version | tr -dc . | wc -c`
931             if test $libetpan_versiontype -eq 1; then
932                 LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 100) + $2}'`
933             else
934                 LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 10000) + ($2 * 100) + $3}'`
935             fi
936             libetpan_config=yes
937         fi
938     ])
939     if test "x$libetpan_config" = "xyes"; then
940         CPPFLAGS="$CPPFLAGS $LIBETPAN_FLAGS"
941         AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
942         if test "x$libetpan_result" = "xyes"; then
943             AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
944             LIBS="$LIBS $LIBETPAN_LIBS"
945             AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
946             AC_MSG_RESULT([$libetpan_result])
947         fi
948     fi
949     if test "x$libetpan_result" = "xyes"; then
950         if test $libetpan_versiontype -eq 1; then
951             if test "$LIBETPAN_VERSION" -lt "57"; then
952                 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/])
953                 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
954                 AC_MSG_ERROR([libetpan 0.57 not found])
955             fi
956         fi
957         AC_SUBST(LIBETPAN_FLAGS)
958         AC_SUBST(LIBETPAN_LIBS)
959         AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNit TP support.)
960     else
961         AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/ ])
962         AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
963         AC_MSG_ERROR([libetpan 0.57 not found])
964     fi
965 else
966     AC_MSG_RESULT(no)
967 fi
968 AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
969
970 dnl librsvg
971 AC_MSG_CHECKING([whether to use librsvg])
972 if test x"$enable_svg" = xyes; then
973         AC_MSG_RESULT(yes)
974     PKG_CHECK_MODULES([SVG], [librsvg-2.0 >= 2.39.0 cairo >= 1.0.0],
975     [
976         AC_SUBST(SVG_CFLAGS)
977         AC_SUBST(SVG_LIBS)
978                 AC_DEFINE(HAVE_SVG, 1, [Define if librsvg2 is available for SVG support])
979                 enable_svg=yes
980         ],
981         [
982                 AC_MSG_NOTICE([SVG support deactivated as librsvg2 >= 2.39.0 was not found])
983                 enable_svg=no
984         ])
985 else
986         AC_MSG_RESULT(no)
987 fi
988
989 AC_MSG_CHECKING([whether to use valgrind])
990 if test x$enable_valgrind = xyes; then
991         AC_MSG_RESULT(yes)
992         PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
993                           enable_valgrind=yes, enable_valgrind=no)
994         if test x"$enable_valgrind" = xyes; then
995                 AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
996         else
997                 AC_MSG_RESULT(not found)
998         fi
999 else
1000         AC_MSG_RESULT(no)
1001 fi
1002 AM_CONDITIONAL(CLAWS_VALGRIND, test x"$enable_valgrind" = x"yes")
1003
1004 AC_MSG_CHECKING([whether to build unit tests])
1005 if test x$enable_tests = xyes; then
1006         AC_MSG_RESULT(yes)
1007 else
1008         AC_MSG_RESULT(no)
1009 fi
1010 AM_CONDITIONAL(BUILD_TESTS, test "x$enable_tests" = "xyes")
1011
1012 dnl *************************
1013 dnl ** section for plugins **
1014 dnl *************************
1015
1016 PLUGINS=""
1017 DISABLED_PLUGINS=""
1018 MISSING_DEPS_PLUGINS=""
1019
1020 dnl First we set the enabled status - either enabled (yes), auto-enabled (auto)
1021 dnl or (auto-)disabled (no for both)
1022 dnl
1023 dnl All plugins are auto-enabled except for Demo which is just there to help
1024 dnl potential plugins writers.
1025
1026 AC_ARG_ENABLE(acpi_notifier-plugin,
1027                 [  --disable-acpi_notifier-plugin  Do not build acpi_notifier plugin],
1028                 [enable_acpi_notifier_plugin=$enableval], [enable_acpi_notifier_plugin=auto])
1029
1030 AC_ARG_ENABLE(address_keeper-plugin,
1031                 [  --disable-address_keeper-plugin Do not build address_keeper plugin],
1032                 [enable_address_keeper_plugin=$enableval], [enable_address_keeper_plugin=auto])
1033
1034 AC_ARG_ENABLE(archive-plugin,
1035                 [  --disable-archive-plugin        Do not build archive plugin],
1036                 [enable_archive_plugin=$enableval], [enable_archive_plugin=auto])
1037
1038 AC_ARG_ENABLE(att_remover-plugin,
1039                 [  --disable-att_remover-plugin    Do not build att_remover plugin],
1040                 [enable_att_remover_plugin=$enableval], [enable_att_remover_plugin=auto])
1041
1042 AC_ARG_ENABLE(attachwarner-plugin,
1043                 [  --disable-attachwarner-plugin   Do not build attachwarner plugin],
1044                 [enable_attachwarner_plugin=$enableval], [enable_attachwarner_plugin=auto])
1045
1046 AC_ARG_ENABLE(bogofilter-plugin,
1047                 [  --disable-bogofilter-plugin     Do not build bogofilter plugin],
1048                 [enable_bogofilter_plugin=$enableval], [enable_bogofilter_plugin=auto])
1049
1050 AC_ARG_ENABLE(bsfilter-plugin,
1051                 [  --disable-bsfilter-plugin       Do not build bsfilter plugin],
1052                 [enable_bsfilter_plugin=$enableval], [enable_bsfilter_plugin=auto])
1053
1054 AC_ARG_ENABLE(clamd-plugin,
1055                 [  --disable-clamd-plugin          Do not build clamd plugin],
1056                 [enable_clamd_plugin=$enableval], [enable_clamd_plugin=auto])
1057
1058 AC_ARG_ENABLE(dillo-plugin,
1059                 [  --disable-dillo-plugin          Do not build dillo plugin],
1060                 [enable_dillo_plugin=$enableval], [enable_dillo_plugin=auto])
1061
1062 AC_ARG_ENABLE(fancy-plugin,
1063                 [  --disable-fancy-plugin          Do not build fancy plugin],
1064                 [enable_fancy_plugin=$enableval], [enable_fancy_plugin=auto])
1065
1066 AC_ARG_ENABLE(fetchinfo-plugin,
1067                 [  --disable-fetchinfo-plugin      Do not build fetchinfo plugin],
1068                 [enable_fetchinfo_plugin=$enableval], [enable_fetchinfo_plugin=auto])
1069
1070 AC_ARG_ENABLE(gdata-plugin,
1071                 [  --disable-gdata-plugin          Do not build gdata plugin],
1072                 [enable_gdata_plugin=$enableval], [enable_gdata_plugin=auto])
1073
1074 AC_ARG_ENABLE(libravatar-plugin,
1075                 [  --disable-libravatar-plugin     Do not build libravatar  plugin],
1076                 [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
1077
1078 AC_ARG_ENABLE(litehtml_viewer-plugin,
1079                 [  --disable-litehtml_viewer-plugin       Do not build litehtml_viewer plugin],
1080                 [enable_litehtml_viewer_plugin=$enableval], [enable_litehtml_viewer_plugin=auto])
1081
1082 AC_ARG_ENABLE(mailmbox-plugin,
1083                 [  --disable-mailmbox-plugin       Do not build mailmbox plugin],
1084                 [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
1085
1086 AC_ARG_ENABLE(managesieve-plugin,
1087                 [  --disable-managesieve-plugin    Do not build managesieve plugin],
1088                 [enable_managesieve_plugin=$enableval], [enable_managesieve_plugin=auto])
1089
1090 AC_ARG_ENABLE(newmail-plugin,
1091                 [  --disable-newmail-plugin        Do not build newmail plugin],
1092                 [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
1093
1094 AC_ARG_ENABLE(notification-plugin,
1095                 [  --disable-notification-plugin   Do not build notification plugin],
1096                 [enable_notification_plugin=$enableval], [enable_notification_plugin=auto])
1097
1098 AC_ARG_ENABLE(pdf_viewer-plugin,
1099                 [  --disable-pdf_viewer-plugin     Do not build pdf_viewer plugin],
1100                 [enable_pdf_viewer_plugin=$enableval], [enable_pdf_viewer_plugin=auto])
1101
1102 AC_ARG_ENABLE(perl-plugin,
1103                 [  --disable-perl-plugin           Do not build perl plugin],
1104                 [enable_perl_plugin=$enableval], [enable_perl_plugin=auto])
1105
1106 AC_ARG_ENABLE(python-plugin,
1107                 [  --disable-python-plugin         Do not build python plugin],
1108                 [enable_python_plugin=$enableval], [enable_python_plugin=auto])
1109
1110 AC_ARG_ENABLE(pgpcore-plugin,
1111                 [  --disable-pgpcore-plugin        Do not build pgpcore plugin],
1112                 [enable_pgpcore_plugin=$enableval], [enable_pgpcore_plugin=auto])
1113
1114 AC_ARG_ENABLE(pgpmime-plugin,
1115                 [  --disable-pgpmime-plugin        Do not build pgpmime plugin],
1116                 [enable_pgpmime_plugin=$enableval], [enable_pgpmime_plugin=auto])
1117
1118 AC_ARG_ENABLE(pgpinline-plugin,
1119                 [  --disable-pgpinline-plugin      Do not build pgpinline plugin],
1120                 [enable_pgpinline_plugin=$enableval], [enable_pgpinline_plugin=auto])
1121
1122 AC_ARG_ENABLE(rssyl-plugin,
1123                 [  --disable-rssyl-plugin          Do not build rssyl plugin],
1124                 [enable_rssyl_plugin=$enableval], [enable_rssyl_plugin=auto])
1125
1126 AC_ARG_ENABLE(smime-plugin,
1127                 [  --disable-smime-plugin          Do not build smime plugin],
1128                 [enable_smime_plugin=$enableval], [enable_smime_plugin=auto])
1129
1130 AC_ARG_ENABLE(spamassassin-plugin,
1131                 [  --disable-spamassassin-plugin   Do not build spamassassin plugin],
1132                 [enable_spamassassin_plugin=$enableval], [enable_spamassassin_plugin=auto])
1133
1134 AC_ARG_ENABLE(spam_report-plugin,
1135                 [  --disable-spam_report-plugin    Do not build spam_report plugin],
1136                 [enable_spam_report_plugin=$enableval], [enable_spam_report_plugin=auto])
1137
1138 AC_ARG_ENABLE(tnef_parse-plugin,
1139                 [  --disable-tnef_parse-plugin     Do not build tnef_parse plugin],
1140                 [enable_tnef_parse_plugin=$enableval], [enable_tnef_parse_plugin=auto])
1141
1142 AC_ARG_ENABLE(vcalendar-plugin,
1143                 [  --disable-vcalendar-plugin      Do not build vcalendar plugin],
1144                 [enable_vcalendar_plugin=$enableval], [enable_vcalendar_plugin=auto])
1145
1146 dnl disabled by default
1147 AC_ARG_ENABLE(demo-plugin,
1148                 [  --enable-demo-plugin            Build demo plugin],
1149                 [enable_demo_plugin=$enableval], [enable_demo_plugin=no])
1150
1151
1152 dnl Then we check (unconditionnaly) for plugins dependencies
1153 dnl Some dependencies are optional, some mandatory. This is taken care of
1154 dnl later.
1155 dnl
1156 dnl During this dependancy check we do the checks themselves, define HAVE_X to
1157 dnl either yes or no, and do the AC_SUBST calls.
1158
1159 dnl Archive:            libarchive
1160 dnl Fancy:              Webkit, curl, optionally libsoup-gnome
1161 dnl Gdata:              libgdata
1162 dnl Litehtml            a C++ compiler, >=glib-2.36, cairo, fontconfig, gumbo, curl
1163 dnl Libravatar:         libcurl
1164 dnl Notification:       optionally libnotify  unity/messaging-menu
1165 dnl                                libcanberra_gtk hotkey
1166 dnl Pdf-Viewer:         libpoppler
1167 dnl Perl:               sed perl
1168 dnl PGP/Core:           libgpgme
1169 dnl PGP/Mime:           pgpcore libgpgme
1170 dnl PGP/Inline:         pgpcore libgpgme
1171 dnl S/Mime:             pgpcore libgpgme
1172 dnl Python:             Python
1173 dnl RSSyl:              expat libcurl
1174 dnl SpamReport:         libcurl
1175 dnl vCalendar:          libcurl, libical
1176 dnl tnef_parse:         libytnef
1177
1178 dnl libcurl ********************************************************************
1179 PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
1180 AC_SUBST(CURL_LIBS)
1181 AC_SUBST(CURL_CFLAGS)
1182
1183 dnl expat **********************************************************************
1184 PKG_CHECK_MODULES(EXPAT, expat, HAVE_EXPAT=yes, HAVE_EXPAT=no)
1185
1186 if test x"$HAVE_EXPAT" = xno; then
1187         AC_CHECK_HEADER(expat.h, [expat_header=yes], [expat_header=no])
1188         AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [expat_lib=no])
1189         if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
1190                 HAVE_EXPAT=yes
1191                 EXPAT_CFLAGS=""
1192                 EXPAT_LIBS="-lexpat"
1193         fi
1194 fi
1195
1196 AC_SUBST(EXPAT_CFLAGS)
1197 AC_SUBST(EXPAT_LIBS)
1198
1199 dnl webkit *********************************************************************
1200 PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 1.10.0, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
1201 AC_SUBST(WEBKIT_LIBS)
1202 AC_SUBST(WEBKIT_CFLAGS)
1203
1204 dnl libsoup ********************************************************************
1205 PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
1206 if test x"$HAVE_LIBSOUP" = xyes; then
1207         AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
1208 fi
1209 AC_SUBST(LIBSOUP_CFLAGS)
1210 AC_SUBST(LIBSOUP_LIBS)
1211
1212 dnl libsoup-gnome **************************************************************
1213 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
1214 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
1215         AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
1216 fi
1217 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
1218 AC_SUBST(LIBSOUP_GNOME_LIBS)
1219
1220 dnl libarchive *****************************************************************
1221 PKG_CHECK_MODULES(LIBARCHIVE, libarchive, HAVE_ARCHIVE=yes, HAVE_ARCHIVE=no)
1222 AC_SUBST(ARCHIVE_LIBS)
1223 AC_SUBST(ARCHIVE_CFLAGS)
1224 AC_CHECK_LIB([archive], [archive_read_new],
1225                        ARCHIVE_LIBS=-larchive
1226                        HAVE_ARCHIVE=yes
1227                        AC_SUBST(ARCHIVE_LIBS,$ARCHIVE_CFLAGS),
1228                        HAVE_ARCHIVE=no
1229                        )
1230
1231 dnl libgdata *******************************************************************
1232 PKG_CHECK_MODULES(GDATA, libgdata >= 0.17.2, HAVE_GDATA=yes, HAVE_GDATA=no)
1233 AC_SUBST(GDATA_CFLAGS)
1234 AC_SUBST(GDATA_LIBS)
1235
1236 dnl cairo **********************************************************************
1237 PKG_CHECK_MODULES(CAIRO, cairo, HAVE_CAIRO=yes, HAVE_CAIRO=no)
1238 AC_SUBST(CAIRO_CFLAGS)
1239 AC_SUBST(CAIRO_LIBS)
1240
1241 dnl fontconfig *****************************************************************
1242 PKG_CHECK_MODULES(FONTCONFIG, fontconfig, HAVE_FONTCONFIG=yes, HAVE_FONTCONFIG=no)
1243 AC_SUBST(FONTCONFIG_CFLAGS)
1244 AC_SUBST(FONTCONFIG_LIBS)
1245
1246 dnl gumbo **********************************************************************
1247 PKG_CHECK_MODULES(LIBGUMBO, gumbo >= 0.10, HAVE_LIBGUMBO=yes, HAVE_LIBGUMBO=no)
1248 AC_SUBST(LIBGUMBO_CFLAGS)
1249 AC_SUBST(LIBGUMBO_LIBS)
1250
1251 dnl libical ********************************************************************
1252 PKG_CHECK_MODULES(LIBICAL, libical >= 2.0, HAVE_LIBICAL=yes, HAVE_LIBICAL=no)
1253 AC_SUBST(LIBICAL_CFLAGS)
1254 AC_SUBST(LIBICAL_LIBS)
1255
1256 dnl Poppler ********************************************************************
1257 PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
1258 AC_SUBST(POPPLER_LIBS)
1259 AC_SUBST(POPPLER_CFLAGS)
1260
1261 dnl check for Poppler extra features that we conditionally support
1262 if test x"$HAVE_POPPLER" = xyes; then
1263         OLD_CFLAGS=$CFLAGS
1264         CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
1265         AC_CHECK_DECL(POPPLER_DEST_NAMED,
1266                 [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
1267                 ,[#include <poppler-action.h>])
1268         AC_CHECK_DECL(POPPLER_DEST_XYZ,
1269                 [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
1270                 ,[#include <poppler-action.h>])
1271         CFLAGS=$OLD_CFLAGS
1272 fi
1273
1274 dnl perl ***********************************************************************
1275 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
1276 if test x"$HAVE_PERL" = xyes; then
1277         AC_MSG_CHECKING(for perl >= 5.8.0)
1278         PERL_VER=`perl -e 'print $] > 5.0079999?"yes":"no"'`
1279         if test "$PERL_VER" = "yes"; then
1280                 AC_MSG_RESULT(yes)
1281         else
1282                 AC_MSG_RESULT(no)
1283                 HAVE_PERL=no
1284         fi
1285 fi
1286 if test x"$HAVE_PERL" = xyes; then
1287         AC_MSG_CHECKING(for Perl compile flags)
1288         PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
1289         PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
1290         PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm\>//'`
1291         PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb\>//'`
1292         PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm\>//'`
1293         PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc\>//'`
1294         AC_MSG_RESULT(ok)
1295         AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
1296         
1297         if test x"$HAVE_PERL" = xyes; then
1298                 AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)], 
1299                                              [ HAVE_LIBPERL=no ])
1300         fi
1301         if test x"$HAVE_LIBPERL" = xno; then
1302                 LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
1303                 LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
1304                 AC_MSG_CHECKING([for libperl.so])
1305                 if test -f "$LIBPERL_PREFIX/libperl.so"; then
1306                         AC_MSG_RESULT(yes)
1307                         HAVE_LIBPERL=yes
1308                 else
1309                         AC_MSG_RESULT(no)
1310                 fi      
1311         fi
1312         PERL="perl"
1313         AC_SUBST(PERL)
1314         AC_SUBST(PERL_CFLAGS)
1315         AC_SUBST(PERL_LDFLAGS)
1316 fi
1317
1318 dnl Gpgme **********************************************************************
1319 AM_PATH_GPGME(1.0.0, HAVE_GPGME=yes, HAVE_GPGME=no)
1320 if test x"$HAVE_GPGME" = xyes; then
1321         AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.)
1322         AM_PATH_GPGME(1.1.1, AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1, [Define if GPGME supports PKA.]))
1323 fi
1324
1325 dnl Python *********************************************************************
1326 missing_python=""
1327 AM_PATH_PYTHON([2.5], [
1328         AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config)
1329         if test x"$PYTHON_CONFIG" = x"" ; then
1330                 AC_PATH_PROG(PYTHON_CONFIG, python-config)
1331         fi
1332         if test x"$PYTHON_CONFIG" != x""; then
1333                 PYTHON_CFLAGS=`$PYTHON_CONFIG --includes`
1334                 PYTHON_LIBS=`$PYTHON_CONFIG --libs`
1335                 PYTHON_PREFIX=`$PYTHON_CONFIG --prefix`
1336                 HAVE_PYTHON=yes
1337         else
1338                 AC_MSG_WARN(python-config not found. Maybe you need to install development packages for Python.)
1339                 HAVE_PYTHON=no
1340                 missing_python="python-config"
1341         fi
1342
1343         if test x"$HAVE_PYTHON" = xyes; then
1344                 _save_libs="$LIBS"
1345                 if test x"$platform_win32" = xno; then
1346                         # libpython.so
1347                         PYTHON_SHARED_LIB="libpython${PYTHON_VERSION}.so"
1348                         AC_CHECK_LIB(dl, dlopen, [LIBS="-ldl"])
1349                         AC_MSG_CHECKING([whether to dlopen $PYTHON_SHARED_LIB works])
1350                         AC_RUN_IFELSE(
1351                                 [AC_LANG_PROGRAM(
1352                                         [#include <dlfcn.h>
1353                                          #define PYTHON_SO_FILE "${PYTHON_SHARED_LIB}"
1354                                         ],
1355                                         [if (!dlopen(PYTHON_SO_FILE, RTLD_NOW | RTLD_GLOBAL)) return 1; return 0;])
1356                                 ],
1357                                 [found_libpython_so="yes"],
1358                                 [found_libpython_so="no"],
1359                                 [AC_MSG_FAILURE([cross-compiling not supported])])
1360                 fi
1361                 if test x"$found_libpython_so" != x"yes"; then
1362                         AC_MSG_RESULT(no)
1363                         AC_MSG_WARN(Could not find Python shared libary: ${PYTHON_SHARED_LIB}. Maybe you need to install development packages for Python.)
1364                         HAVE_PYTHON=no
1365                         missing_python="libpython"
1366                 else
1367                         AC_MSG_RESULT(yes)
1368                 fi
1369                 LIBS="$_save_libs";
1370         fi
1371         if test x"$HAVE_PYTHON" = xyes; then
1372                 PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.10.3, [AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])], HAVE_PYTHON=no)
1373                 if test x"$HAVE_PYTHON" = xno; then
1374                         missing_python="pygtk-2.0 >= 2.10.3"
1375                 fi
1376         fi
1377 ], [
1378                 HAVE_PYTHON=no
1379                 missing_python="python interpreter"
1380 ])
1381 AC_SUBST(PYTHON_SHARED_LIB)
1382 AC_SUBST(PYTHON_CFLAGS)
1383 AC_SUBST(PYTHON_LIBS)
1384 AC_SUBST(PYGTK_CFLAGS)
1385 AC_SUBST(PYGTK_LIBS)
1386
1387 dnl libnotify ******************************************************************
1388 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1389 if test x"$HAVE_LIBNOTIFY" = xyes; then
1390         AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1391 fi
1392 AC_SUBST(libnotify_CFLAGS)
1393 AC_SUBST(libnotify_LIBS)
1394
1395 dnl libcanberra-gtk ************************************************************
1396 PKG_CHECK_MODULES(libcanberra_gtk, libcanberra-gtk >= 0.6, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1397 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1398         AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk support is enabled])
1399 fi
1400 AC_SUBST(libcanberra_gtk_CFLAGS)
1401 AC_SUBST(libcanberra_gtk_LIBS)
1402
1403 dnl unity/messaging-menu *******************************************************
1404 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1405 if test x"$HAVE_UNITY" = xyes; then
1406         AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1407 fi
1408 AC_SUBST(unity_CFLAGS)
1409 AC_SUBST(unity_LIBS)
1410
1411 dnl hotkeys ********************************************************************
1412 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)
1413 if test x"$HAVE_HOTKEYS" = xyes; then
1414         AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1415 fi
1416 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1417 AC_SUBST(CM_NP_HOTKEY_LIBS)
1418
1419 dnl libytnef *******************************************************************
1420 YTNEF_CFLAGS=""
1421 YTNEF_LIBS=""
1422 have_ytnef=0
1423 # Check both ytnef.h and libytnef/ytnef.h, and adjust YTNEF_CFLAGS
1424 # accordingly
1425 AC_CHECK_HEADER(ytnef.h, [have_ytnef=1], [have_ytnef=0])
1426 if test $have_ytnef -eq 0; then
1427         AC_CHECK_HEADER(libytnef/ytnef.h,
1428                                                                         [have_ytnef=1;
1429                                                                          YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_H_SUBDIR"],
1430                                                                         [have_ytnef=0])
1431 fi
1432 if test $have_ytnef -eq 1; then
1433         AC_MSG_CHECKING([how libytnef's SwapDDWord() should be called])
1434         # Now we have to figure out which libytnef version we're using,
1435         # based on whether SwapDDWord takes one argument or two.
1436         if test "x${YTNEF_CFLAGS}" = "x"; then
1437                 ytnef_include="#include <ytnef.h>"
1438         else
1439                 ytnef_include="#include <libytnef/ytnef.h>"
1440         fi
1441         AC_TRY_COMPILE([#include <stdio.h>
1442                                                                         ${ytnef_include}],
1443                                                                         [SwapDDWord(0, 0);],
1444                                                                         [have_ytnef=1],
1445                                                                         [have_ytnef=0])
1446         if test $have_ytnef -eq 0; then
1447                 AC_TRY_COMPILE([#include <stdio.h>
1448                                                                                 ${ytnef_include}],
1449                                                                                 [SwapDDWord(0);],
1450                                                                                 [have_ytnef=1;
1451                                                                                  YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_OLD_SWAPDDWORD"],
1452                                                                                 [have_ytnef=0])
1453         fi
1454         if test $have_ytnef -eq 1; then
1455                 YTNEF_LIBS="-lytnef"
1456                 AC_MSG_RESULT(ok)
1457         else
1458                 AC_MSG_RESULT(no idea, unsupported libytnef version?)
1459         fi
1460 fi
1461 AC_SUBST(YTNEF_CFLAGS)
1462 AC_SUBST(YTNEF_LIBS)
1463
1464 dnl Third, we now cross the requested plugins and the available dependencies
1465 dnl If some dependencies are missing and the plugin was explicitely enabled,
1466 dnl we error out, else we only inform.
1467
1468 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1469 if test x"$enable_acpi_notifier_plugin" != xno; then
1470         PLUGINS="$PLUGINS acpi_notifier"
1471         AC_MSG_RESULT(yes)
1472 else
1473         DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1474         AC_MSG_RESULT(no)
1475 fi
1476
1477 AC_MSG_CHECKING([whether to build address_keeper plugin])
1478 if test x"$enable_address_keeper_plugin" != xno; then
1479         PLUGINS="$PLUGINS address_keeper"
1480         AC_MSG_RESULT(yes)
1481 else
1482         DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1483         AC_MSG_RESULT(no)
1484 fi
1485
1486 AC_MSG_CHECKING([whether to build archive plugin])
1487 if test x"$enable_archive_plugin" != xno; then
1488         dependencies_missing=""
1489
1490         if test x"$HAVE_ARCHIVE" = xno; then
1491                 dependencies_missing="libarchive $dependencies_missing"
1492         fi
1493
1494         if test x"$dependencies_missing" = x; then
1495                 PLUGINS="$PLUGINS archive"
1496                 AC_MSG_RESULT(yes)
1497         elif test x"$enable_archive_plugin" = xauto; then
1498                 AC_MSG_RESULT(no)
1499                 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1500                 enable_archive_plugin=no
1501                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1502         else
1503                 AC_MSG_RESULT(no)
1504                 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1505         fi
1506 else
1507         DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1508         AC_MSG_RESULT(no)
1509 fi
1510
1511 AC_MSG_CHECKING([whether to build att_remover plugin])
1512 if test x"$enable_att_remover_plugin" != xno; then
1513         PLUGINS="$PLUGINS att_remover"
1514         AC_MSG_RESULT(yes)
1515 else
1516         DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1517         AC_MSG_RESULT(no)
1518 fi
1519
1520 AC_MSG_CHECKING([whether to build attachwarner plugin])
1521 if test x"$enable_attachwarner_plugin" != xno; then
1522         PLUGINS="$PLUGINS attachwarner"
1523         AC_MSG_RESULT(yes)
1524 else
1525         DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1526         AC_MSG_RESULT(no)
1527 fi
1528
1529 AC_MSG_CHECKING([whether to build bogofilter plugin])
1530 if test x"$enable_bogofilter_plugin" != xno; then
1531         PLUGINS="$PLUGINS bogofilter"
1532         AC_MSG_RESULT(yes)
1533 else
1534         DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1535         AC_MSG_RESULT(no)
1536 fi
1537
1538 AC_MSG_CHECKING([whether to build bsfilter plugin])
1539 if test x"$enable_bsfilter_plugin" != xno; then
1540         PLUGINS="$PLUGINS bsfilter"
1541         AC_MSG_RESULT(yes)
1542 else
1543         DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1544         AC_MSG_RESULT(no)
1545 fi
1546
1547 AC_MSG_CHECKING([whether to build clamd plugin])
1548 if test x"$enable_clamd_plugin" != xno; then
1549         PLUGINS="$PLUGINS clamd"
1550         AC_MSG_RESULT(yes)
1551 else
1552         DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1553         AC_MSG_RESULT(no)
1554 fi
1555
1556 AC_MSG_CHECKING([whether to build demo plugin])
1557 if test x"$enable_demo_plugin" != xno; then
1558         PLUGINS="$PLUGINS demo"
1559         AC_MSG_RESULT(yes)
1560 else
1561         DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1562         AC_MSG_RESULT(no)
1563 fi
1564
1565 AC_MSG_CHECKING([whether to build Dillo plugin])
1566 if test x"$enable_dillo_plugin" != xno; then
1567         PLUGINS="$PLUGINS dillo"
1568         AC_MSG_RESULT(yes)
1569 else
1570         DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
1571         AC_MSG_RESULT(no)
1572 fi
1573
1574 AC_MSG_CHECKING([whether to build fancy plugin])
1575 if test x"$enable_fancy_plugin" != xno; then
1576         dependencies_missing=""
1577
1578         if test x"$HAVE_WEBKIT" = xno; then
1579                 dependencies_missing="libwebkit-1.0 $dependencies_missing"
1580         fi
1581         if test x"$HAVE_CURL" = xno; then
1582                 dependencies_missing="libcurl $dependencies_missing"
1583         fi
1584
1585         if test x"$dependencies_missing" = x; then
1586                 PLUGINS="$PLUGINS fancy"
1587                 AC_MSG_RESULT(yes)
1588         elif test x"$enable_fancy_plugin" = xauto; then
1589                 AC_MSG_RESULT(no)
1590                 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1591                 enable_fancy_plugin=no
1592                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1593         else
1594                 AC_MSG_RESULT(no)
1595                 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1596         fi
1597 else
1598         DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1599         AC_MSG_RESULT(no)
1600 fi
1601
1602 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1603 if test x"$enable_fetchinfo_plugin" != xno; then
1604         PLUGINS="$PLUGINS fetchinfo"
1605         AC_MSG_RESULT(yes)
1606 else
1607         DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1608         AC_MSG_RESULT(no)
1609 fi
1610
1611 AC_MSG_CHECKING([whether to build gdata plugin])
1612 if test x"$enable_gdata_plugin" != xno; then
1613         dependencies_missing=""
1614
1615         if test x"$HAVE_GDATA" = xno; then
1616                 dependencies_missing="libgdata $dependencies_missing"
1617         fi
1618
1619         if test x"$dependencies_missing" = x; then
1620                 PLUGINS="$PLUGINS gdata"
1621                 AC_MSG_RESULT(yes)
1622         elif test x"$enable_gdata_plugin" = xauto; then
1623                 AC_MSG_RESULT(no)
1624                 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1625                 enable_gdata_plugin=no
1626                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1627         else
1628                 AC_MSG_RESULT(no)
1629                 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1630         fi
1631 else
1632         DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1633         AC_MSG_RESULT(no)
1634 fi
1635
1636 AC_MSG_CHECKING([whether to build libravatar plugin])
1637 if test x"$enable_libravatar_plugin" != xno; then
1638         dependencies_missing=""
1639
1640         if test x"$HAVE_CURL" = xno; then
1641                 dependencies_missing="libcurl $dependencies_missing"
1642         fi
1643
1644         if test x"$dependencies_missing" = x; then
1645                 PLUGINS="$PLUGINS libravatar"
1646                 AC_MSG_RESULT(yes)
1647         elif test x"$enable_libravatar_plugin" = xauto; then
1648                 AC_MSG_RESULT(no)
1649                 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1650                 enable_libravatar_plugin=no
1651                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1652         else
1653                 AC_MSG_RESULT(no)
1654                 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1655         fi
1656 else
1657         DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1658         AC_MSG_RESULT(no)
1659 fi
1660
1661 AC_MSG_CHECKING([whether to build litehtml_viewer plugin])
1662 if test x"$enable_litehtml_viewer_plugin" != xno; then
1663         dependencies_missing=""
1664
1665         if test x"$HAVE_CXX" = xno; then
1666                 dependencies_missing="C++ compiler $dependencies_missing"
1667         fi
1668         PKG_CHECK_EXISTS([glib-2.0 >= 2.36], [],
1669                 [dependencies_missing="glib-2.0 >= 2.36 $dependencies_missing"])
1670         if test x"$HAVE_CAIRO" = xno; then
1671                 dependencies_missing="cairo $dependencies_missing"
1672         fi
1673         if test x"$HAVE_FONTCONFIG" = xno; then
1674                 dependencies_missing="fontconfig $dependencies_missing"
1675         fi
1676         if test x"$HAVE_LIBGUMBO" = xno; then
1677                 dependencies_missing="libgumbo $dependencies_missing"
1678         fi
1679         if test x"$HAVE_CURL" = xno; then
1680                 dependencies_missing="libcurl $dependencies_missing"
1681         fi
1682
1683
1684         if test x"$dependencies_missing" = x; then
1685                 PLUGINS="$PLUGINS litehtml_viewer"
1686                 AC_MSG_RESULT(yes)
1687         elif test x"$enable_litehtml_viewer_plugin" = xauto; then
1688                 AC_MSG_RESULT(no)
1689                 AC_MSG_WARN("Plugin litehtml_viewer will not be built; missing $dependencies_missing")
1690                 enable_litehtml_viewer_plugin=no
1691                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS litehtml_viewer"
1692         else
1693                 AC_MSG_RESULT(no)
1694                 AC_MSG_ERROR("Plugin litehtml_viewer cannot be built; missing $dependencies_missing")
1695         fi
1696 else
1697         DISABLED_PLUGINS="$DISABLED_PLUGINS litehtml_viewer"
1698         AC_MSG_RESULT(no)
1699 fi
1700
1701 AC_MSG_CHECKING([whether to build mailmbox plugin])
1702 if test x"$enable_mailmbox_plugin" != xno; then
1703         PLUGINS="$PLUGINS mailmbox"
1704         AC_MSG_RESULT(yes)
1705 else
1706         DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1707         AC_MSG_RESULT(no)
1708 fi
1709
1710 AC_MSG_CHECKING([whether to build managesieve plugin])
1711 if test x"$enable_managesieve_plugin" != xno; then
1712         PLUGINS="$PLUGINS managesieve"
1713         AC_MSG_RESULT(yes)
1714 else
1715         DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1716         AC_MSG_RESULT(no)
1717 fi
1718
1719 AC_MSG_CHECKING([whether to build newmail plugin])
1720 if test x"$enable_newmail_plugin" != xno; then
1721         PLUGINS="$PLUGINS newmail"
1722         AC_MSG_RESULT(yes)
1723 else
1724         DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1725         AC_MSG_RESULT(no)
1726 fi
1727
1728 AC_MSG_CHECKING([whether to build notification plugin])
1729 if test x"$enable_notification_plugin" != xno; then
1730         PLUGINS="$PLUGINS notification"
1731         AC_MSG_RESULT(yes)
1732
1733         AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1734         AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1735         AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1736         AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1737         if test x"$platform_win32" = xno; then
1738                 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1739         fi
1740
1741         notification_features="banner command"
1742         notification_missing_dependencies=""
1743         if test x"$HAVE_HOTKEYS" = xyes; then
1744                 notification_features="$notification_features hotkeys"
1745         else
1746                 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1747         fi
1748         notification_features="$notification_features lcdproc"
1749         if test x"$HAVE_UNITY" = xyes; then
1750                 notification_features="$notification_features unity/messaging-menu"
1751         else
1752                 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1753         fi
1754         if test x"$HAVE_LIBNOTIFY" = xyes; then
1755                 notification_features="$notification_features libnotify"
1756         else
1757                 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1758         fi
1759         if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1760                 notification_features="$notification_features libcanberra-gtk"
1761         else
1762                 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk"
1763         fi
1764         notification_features="$notification_features popup trayicon"
1765 else
1766         DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1767         AC_MSG_RESULT(no)
1768 fi
1769
1770 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1771 if test x"$enable_pdf_viewer_plugin" != xno; then
1772         dependencies_missing=""
1773
1774         if test x"$HAVE_POPPLER" = xno; then
1775                 dependencies_missing="libpoppler-glib $dependencies_missing"
1776         fi
1777
1778         if test x"$dependencies_missing" = x; then
1779                 PLUGINS="$PLUGINS pdf_viewer"
1780                 AC_MSG_RESULT(yes)
1781         elif test x"$enable_pdf_viewer_plugin" = xauto; then
1782                 AC_MSG_RESULT(no)
1783                 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1784                 enable_pdf_viewer_plugin=no
1785                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1786         else
1787                 AC_MSG_RESULT(no)
1788                 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1789         fi
1790 else
1791         DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1792         AC_MSG_RESULT(no)
1793 fi
1794
1795 AC_MSG_CHECKING([whether to build perl plugin])
1796 if test x"$enable_perl_plugin" != xno; then
1797         dependencies_missing=""
1798
1799         if test x"$HAVE_LIBPERL" = xno; then
1800                 dependencies_missing="libperl $dependencies_missing"
1801         fi
1802
1803         if test x"$dependencies_missing" = x; then
1804                 PLUGINS="$PLUGINS perl"
1805                 AC_MSG_RESULT(yes)
1806         elif test x"$enable_perl_plugin" = xauto; then
1807                 AC_MSG_RESULT(no)
1808                 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1809                 enable_perl_plugin=no
1810                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1811         else
1812                 AC_MSG_RESULT(no)
1813                 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1814         fi
1815 else
1816         DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1817         AC_MSG_RESULT(no)
1818 fi
1819
1820 AC_MSG_CHECKING([whether to build python plugin])
1821 if test x"$enable_python_plugin" != xno; then
1822         dependencies_missing=""
1823
1824         if test x"$HAVE_PYTHON" = xno; then
1825                 dependencies_missing="$missing_python $dependencies_missing"
1826         fi
1827
1828         if test x"$dependencies_missing" = x; then
1829                 PLUGINS="$PLUGINS python"
1830                 AC_MSG_RESULT(yes)
1831         elif test x"$enable_python_plugin" = xauto; then
1832                 AC_MSG_RESULT(no)
1833                 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1834                 enable_python_plugin=no
1835                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1836         else
1837                 AC_MSG_RESULT(no)
1838                 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1839         fi
1840 else
1841         DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1842         AC_MSG_RESULT(no)
1843 fi
1844
1845 AC_MSG_CHECKING([whether to build pgpcore plugin])
1846 if test x"$enable_pgpcore_plugin" != xno; then
1847         dependencies_missing=""
1848
1849         if test x"$HAVE_GPGME" = xno; then
1850                 dependencies_missing="libgpgme $dependencies_missing"
1851         fi
1852
1853         if test x"$dependencies_missing" = x; then
1854                 PLUGINS="$PLUGINS pgpcore"
1855                 AC_MSG_RESULT(yes)
1856         elif test x"$enable_pgpcore_plugin" = xauto; then
1857                 AC_MSG_RESULT(no)
1858                 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1859                 enable_pgpcore_plugin=no
1860                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1861         else
1862                 AC_MSG_RESULT(no)
1863                 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1864         fi
1865 else
1866         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1867         AC_MSG_RESULT(no)
1868 fi
1869
1870 AC_MSG_CHECKING([whether to build pgpmime plugin])
1871 if test x"$enable_pgpmime_plugin" != xno; then
1872         dependencies_missing=""
1873
1874         if test x"$HAVE_GPGME" = xno; then
1875                 dependencies_missing="libgpgme $dependencies_missing"
1876         fi
1877         if test x"$enable_pgpcore_plugin" = xno; then
1878                 dependencies_missing="pgpcore plugin $dependencies_missing"
1879         fi
1880
1881         if test x"$dependencies_missing" = x; then
1882                 PLUGINS="$PLUGINS pgpmime"
1883                 AC_MSG_RESULT(yes)
1884         elif test x"$enable_pgpmime_plugin" = xauto; then
1885                 AC_MSG_RESULT(no)
1886                 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1887                 enable_pgpmime_plugin=no
1888                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1889         else
1890                 AC_MSG_RESULT(no)
1891                 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1892         fi
1893 else
1894         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1895         AC_MSG_RESULT(no)
1896 fi
1897
1898 AC_MSG_CHECKING([whether to build pgpinline plugin])
1899 if test x"$enable_pgpinline_plugin" != xno; then
1900         dependencies_missing=""
1901
1902         if test x"$HAVE_GPGME" = xno; then
1903                 dependencies_missing="libgpgme $dependencies_missing"
1904         fi
1905         if test x"$enable_pgpcore_plugin" = xno; then
1906                 dependencies_missing="pgpcore plugin $dependencies_missing"
1907         fi
1908
1909         if test x"$dependencies_missing" = x; then
1910                 PLUGINS="$PLUGINS pgpinline"
1911                 AC_MSG_RESULT(yes)
1912         elif test x"$enable_pgpinline_plugin" = xauto; then
1913                 AC_MSG_RESULT(no)
1914                 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1915                 enable_pgpinline_plugin=no
1916                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1917         else
1918                 AC_MSG_RESULT(no)
1919                 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1920         fi
1921 else
1922         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1923         AC_MSG_RESULT(no)
1924 fi
1925
1926 AC_MSG_CHECKING([whether to build rssyl plugin])
1927 if test x"$enable_rssyl_plugin" != xno; then
1928         dependencies_missing=""
1929
1930         if test x"$HAVE_EXPAT" = xno; then
1931                 dependencies_missing="expat $dependencies_missing"
1932         fi
1933         if test x"$HAVE_CURL" = xno; then
1934                 dependencies_missing="libcurl $dependencies_missing"
1935         fi
1936
1937         if test x"$dependencies_missing" = x; then
1938                 PLUGINS="$PLUGINS rssyl"
1939                 AC_MSG_RESULT(yes)
1940         elif test x"$enable_rssyl_plugin" = xauto; then
1941                 AC_MSG_RESULT(no)
1942                 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1943                 enable_rssyl_plugin=no
1944                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1945         else
1946                 AC_MSG_RESULT(no)
1947                 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1948         fi
1949 else
1950         DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1951         AC_MSG_RESULT(no)
1952 fi
1953
1954 AC_MSG_CHECKING([whether to build spamassassin plugin])
1955 if test x"$enable_spamassassin_plugin" != xno; then
1956         PLUGINS="$PLUGINS spamassassin"
1957         AC_MSG_RESULT(yes)
1958         AC_SPAMASSASSIN
1959
1960         dnl check for zlib (optional)
1961         spamassassin_zlib=0
1962         SPAMASSASSIN_CFLAGS=""
1963         SPAMASSASSIN_LIBS=""
1964         AC_CHECK_HEADER([zlib.h],
1965                         [AC_DEFINE(HAVE_ZLIB_H,1,[optional zlib support for spamassassin plugin])]
1966                         [spamassassin_zlib=1],
1967                         [spamassassin_zlib=0])
1968         if test $spamassassin_zlib -eq 1; then
1969                 AC_CHECK_LIB(z, deflate, [spamassassin_zlib=1], [spamassassin_zlib=0])
1970                 AC_MSG_CHECKING([whether to build spamassassin plugin with zlib support])
1971                 if test $spamassassin_zlib -eq 1; then
1972                         AC_MSG_RESULT(yes)
1973                         SPAMASSASSIN_CFLAGS="-DHAVE_LIBZ"
1974                         SPAMASSASSIN_LIBS="-lz"
1975                 else
1976                         AC_MSG_RESULT(no)
1977                 fi
1978         fi
1979         AC_SUBST(SPAMASSASSIN_CFLAGS)
1980         AC_SUBST(SPAMASSASSIN_LIBS)
1981 else
1982         DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1983         AC_MSG_RESULT(no)
1984 fi
1985
1986 AC_MSG_CHECKING([whether to build smime plugin])
1987 if test x"$enable_smime_plugin" != xno; then
1988         dependencies_missing=""
1989
1990         if test x"$HAVE_GPGME" = xno; then
1991                 dependencies_missing="libgpgme $dependencies_missing"
1992         fi
1993         if test x"$enable_pgpcore_plugin" = xno; then
1994                 dependencies_missing="pgpcore plugin $dependencies_missing"
1995         fi
1996
1997         if test x"$dependencies_missing" = x; then
1998                 PLUGINS="$PLUGINS smime"
1999                 AC_MSG_RESULT(yes)
2000         elif test x"$enable_smime_plugin" = xauto; then
2001                 AC_MSG_RESULT(no)
2002                 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
2003                 enable_smime_plugin=no
2004                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
2005         else
2006                 AC_MSG_RESULT(no)
2007                 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
2008         fi
2009 else
2010         DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
2011         AC_MSG_RESULT(no)
2012 fi
2013
2014 AC_MSG_CHECKING([whether to build spam_report plugin])
2015 if test x"$enable_spam_report_plugin" != xno; then
2016         dependencies_missing=""
2017
2018         if test x"$HAVE_CURL" = xno; then
2019                 dependencies_missing="libcurl $dependencies_missing"
2020         fi
2021
2022         if test x"$dependencies_missing" = x; then
2023                 PLUGINS="$PLUGINS spam_report"
2024                 AC_MSG_RESULT(yes)
2025         elif test x"$enable_spam_report_plugin" = xauto; then
2026                 AC_MSG_RESULT(no)
2027                 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
2028                 enable_spam_report_plugin=no
2029                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
2030         else
2031                 AC_MSG_RESULT(no)
2032                 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
2033         fi
2034 else
2035         DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
2036         AC_MSG_RESULT(no)
2037 fi
2038
2039 AC_MSG_CHECKING([whether to build tnef_parse plugin])
2040 if test x"$enable_tnef_parse_plugin" != xno; then
2041         dependencies_missing=""
2042
2043         if test $have_ytnef -eq 0; then
2044                 dependencies_missing="libytnef"
2045         fi
2046
2047         if test x"$dependencies_missing" = x; then
2048                 PLUGINS="$PLUGINS tnef_parse"
2049                 AC_MSG_RESULT(yes)
2050         elif test x"$enable_tnef_parse_plugin" = xauto; then
2051                 AC_MSG_RESULT(no)
2052                 AC_MSG_WARN(Plugin tnef_parse will not be built; missing $dependencies_missing")
2053                 enable_tnef_parse_plugin=no
2054                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS tnef_parse"
2055         else
2056                 AC_MSG_RESULT(no)
2057                 AC_MSG_ERROR(Plugin tnef_parse will not be built; missing $dependencies_missing")
2058         fi
2059 else
2060         DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
2061         AC_MSG_RESULT(no)
2062 fi
2063
2064
2065 AC_MSG_CHECKING([whether to build vcalendar plugin])
2066 if test x"$enable_vcalendar_plugin" != xno; then
2067         dependencies_missing=""
2068
2069         if test x"$HAVE_CURL" = xno; then
2070                 dependencies_missing="libcurl $dependencies_missing"
2071         fi
2072
2073   if test x"$HAVE_LIBICAL" = xno; then
2074     dependencies_missing="libical $dependencies_missing"
2075   fi
2076
2077         if test x"$HAVE_PERL" = xno; then
2078                 dependencies_missing="perl $dependencies_missing"
2079         fi
2080
2081         if test x"$dependencies_missing" = x; then
2082                 PLUGINS="$PLUGINS vcalendar"
2083                 AC_MSG_RESULT(yes)
2084         elif test x"$enable_vcalendar_plugin" = xauto; then
2085                 AC_MSG_RESULT(no)
2086                 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
2087                 enable_vcalendar_plugin=no
2088                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
2089         else
2090                 AC_MSG_RESULT(no)
2091                 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
2092         fi
2093 else
2094         DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
2095         AC_MSG_RESULT(no)
2096 fi
2097
2098 dnl And finally the automake conditionals.
2099
2100 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN,      test x"$enable_acpi_notifier_plugin" != xno)
2101 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN,     test x"$enable_address_keeper_plugin" != xno)
2102 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN,            test x"$enable_archive_plugin" != xno)
2103 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN,        test x"$enable_att_remover_plugin" != xno)
2104 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN,       test x"$enable_attachwarner_plugin" != xno)
2105 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN,         test x"$enable_bogofilter_plugin" != xno)
2106 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN,           test x"$enable_bsfilter_plugin" != xno)
2107 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN,              test x"$enable_clamd_plugin" != xno)
2108 AM_CONDITIONAL(BUILD_DEMO_PLUGIN,               test x"$enable_demo_plugin" != xno)
2109 AM_CONDITIONAL(BUILD_DILLO_PLUGIN,              test x"$enable_dillo_plugin" != xno)
2110 AM_CONDITIONAL(BUILD_FANCY_PLUGIN,              test x"$enable_fancy_plugin" != xno)
2111 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN,          test x"$enable_fetchinfo_plugin" != xno)
2112 AM_CONDITIONAL(BUILD_GDATA_PLUGIN,              test x"$enable_gdata_plugin" != xno)
2113 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN,         test x"$enable_libravatar_plugin" != xno)
2114 AM_CONDITIONAL(BUILD_LITEHTML_VIEWER_PLUGIN,    test x"$enable_litehtml_viewer_plugin" != xno)
2115 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN,           test x"$enable_mailmbox_plugin" != xno)
2116 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN,        test x"$enable_managesieve_plugin" != xno)
2117 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN,            test x"$enable_newmail_plugin" != xno)
2118 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN,       test x"$enable_notification_plugin" != xno)
2119 AM_CONDITIONAL(BUILD_HOTKEYS,                   test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
2120 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN,         test x"$enable_pdf_viewer_plugin" != xno)
2121 AM_CONDITIONAL(BUILD_PERL_PLUGIN,               test x"$enable_perl_plugin" != xno)
2122 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN,             test x"$enable_python_plugin" != xno)
2123 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN,            test x"$enable_pgpcore_plugin" != xno)
2124 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN,            test x"$enable_pgpmime_plugin" != xno)
2125 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN,          test x"$enable_pgpinline_plugin" != xno)
2126 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN,              test x"$enable_rssyl_plugin" != xno)
2127 AM_CONDITIONAL(BUILD_SMIME_PLUGIN,              test x"$enable_smime_plugin" != xno)
2128 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN,       test x"$enable_spamassassin_plugin" != xno)
2129 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN,        test x"$enable_spam_report_plugin" != xno)
2130 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN,         test x"$enable_tnef_parse_plugin" != xno)
2131 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN,          test x"$enable_vcalendar_plugin" != xno)
2132
2133
2134 dnl ****************************
2135 dnl ** Final configure output **
2136 dnl ****************************
2137
2138 AC_OUTPUT([
2139 Makefile
2140 m4/Makefile
2141 po/Makefile.in
2142 src/common/version.h
2143 src/Makefile
2144 src/common/Makefile
2145 src/common/passcrypt.h
2146 src/common/tests/Makefile
2147 src/gtk/Makefile
2148 src/etpan/Makefile
2149 src/plugins/Makefile
2150 src/plugins/acpi_notifier/Makefile
2151 src/plugins/address_keeper/Makefile
2152 src/plugins/archive/Makefile
2153 src/plugins/att_remover/Makefile
2154 src/plugins/attachwarner/Makefile
2155 src/plugins/bogofilter/Makefile
2156 src/plugins/bsfilter/Makefile
2157 src/plugins/clamd/Makefile
2158 src/plugins/clamd/libclamd/Makefile
2159 src/plugins/demo/Makefile
2160 src/plugins/dillo/Makefile
2161 src/plugins/fancy/Makefile
2162 src/plugins/fetchinfo/Makefile
2163 src/plugins/gdata/Makefile
2164 src/plugins/litehtml_viewer/Makefile
2165 src/plugins/litehtml_viewer/litehtml/Makefile
2166 src/plugins/libravatar/Makefile
2167 src/plugins/mailmbox/Makefile
2168 src/plugins/managesieve/Makefile
2169 src/plugins/newmail/Makefile
2170 src/plugins/notification/Makefile
2171 src/plugins/notification/gtkhotkey/Makefile
2172 src/plugins/pdf_viewer/Makefile
2173 src/plugins/perl/Makefile
2174 src/plugins/perl/tools/Makefile
2175 src/plugins/python/Makefile
2176 src/plugins/python/examples/Makefile
2177 src/plugins/pgpcore/Makefile
2178 src/plugins/pgpcore/tests/Makefile
2179 src/plugins/pgpmime/Makefile
2180 src/plugins/pgpinline/Makefile
2181 src/plugins/rssyl/Makefile
2182 src/plugins/rssyl/tests/Makefile
2183 src/plugins/rssyl/libfeed/Makefile
2184 src/plugins/rssyl/libfeed/tests/Makefile
2185 src/plugins/smime/Makefile
2186 src/plugins/spamassassin/Makefile
2187 src/plugins/spam_report/Makefile
2188 src/plugins/tnef_parse/Makefile
2189 src/plugins/vcalendar/Makefile
2190 src/tests/Makefile
2191 doc/Makefile
2192 doc/man/Makefile
2193 tools/Makefile
2194 config/Makefile
2195 manual/Makefile
2196 manual/dtd/Makefile
2197 manual/dist/Makefile
2198 manual/dist/pdf/Makefile
2199 manual/dist/ps/Makefile
2200 manual/dist/html/Makefile
2201 manual/dist/txt/Makefile
2202 manual/fr/Makefile
2203 manual/fr/dist/Makefile
2204 manual/fr/dist/pdf/Makefile
2205 manual/fr/dist/ps/Makefile
2206 manual/fr/dist/html/Makefile
2207 manual/fr/dist/txt/Makefile
2208 manual/es/Makefile
2209 manual/es/dist/Makefile
2210 manual/es/dist/pdf/Makefile
2211 manual/es/dist/ps/Makefile
2212 manual/es/dist/html/Makefile
2213 manual/es/dist/txt/Makefile
2214 claws-mail.pc
2215 ])
2216
2217 dnl Output the configuration summary
2218 echo ""
2219 echo "$PACKAGE $VERSION"
2220 echo ""
2221 if test x"$enable_alternate_addressbook" = xyes; then
2222         echo "Using Address Book : Alternate experimental interface"
2223 else
2224         echo "Using Address Book : Original stable interface"
2225         echo "JPilot             : $enable_jpilot"
2226         echo "LDAP               : $enable_ldap"
2227 fi
2228 echo "gnuTLS             : $enable_gnutls"
2229 echo "iconv              : $am_cv_func_iconv"
2230 echo "compface           : $enable_compface"
2231 echo "IPv6               : $enable_ipv6"
2232 echo "enchant            : $enable_enchant"
2233 echo "IMAP4              : $enable_libetpan"
2234 echo "NNTP               : $enable_libetpan"
2235 echo "Crash dialog       : $enable_crash_dialog"
2236 echo "LibSM              : $enable_libsm"
2237 echo "DBUS               : $enable_dbus"
2238 echo "NetworkManager     : $enable_networkmanager"
2239 echo "Manual             : $enable_manual"
2240 echo "Generic UMPC code  : $enable_generic_umpc"
2241 echo "SVG support        : $enable_svg"
2242 echo "Config dir         : $ac_cv_with_config_dir"
2243 echo "Password crypto    : $pwd_crypto"
2244 echo "Unit tests         : $enable_tests"
2245
2246 echo "Plugins"
2247 echo "   Built:"
2248 for plugin in $PLUGINS; do
2249 echo "            - $plugin"
2250 if test x"$plugin" = xnotification; then
2251         echo "                Features:"
2252         for notif_feature in $notification_features; do
2253                 echo "                    $notif_feature"
2254         done;
2255         if test "x$notification_missing_dependencies" != x; then
2256                 echo "                Disabled due to missing dependencies:"
2257                 for notif_miss_dep in $notification_missing_dependencies; do
2258                         echo "                    $notif_miss_dep"
2259                 done;
2260         fi
2261 fi
2262 done;
2263 if test "x$DISABLED_PLUGINS" != x; then
2264 echo "   Disabled:"
2265 for plugin in $DISABLED_PLUGINS; do
2266 echo "            - $plugin"
2267 done;
2268 fi
2269
2270 if test "x$MISSING_DEPS_PLUGINS" != x; then
2271 echo "   Disabled due to missing dependencies:"
2272 for plugin in $MISSING_DEPS_PLUGINS; do
2273 echo "            - $plugin"
2274 done;
2275 fi
2276 echo ""
2277 echo "The binary will be installed in $prefix/bin"
2278 echo ""
2279 echo "Configure finished, type 'make' to build."