Reworked fixing unsecure command-line invocation in templates' |program{}
[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 el_GR en_GB es fi fr hu id_ID it ja nb nl pl pt_BR pt_PT ro ru sk sv tr zh_TW"
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 NNTP 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 PKG_CHECK_MODULES(PYTHON, python2, HAVE_PYTHON=yes, HAVE_PYTHON=no)
1328 if test x"$HAVE_PYTHON" = xno; then
1329         missing_python="python2"
1330 fi
1331 if test x"$HAVE_PYTHON" = xyes; then
1332         PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.10.3, [AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])], HAVE_PYTHON=no)
1333         if test x"$HAVE_PYTHON" = xno; then
1334                 missing_python="pygtk-2.0 >= 2.10.3"
1335         fi
1336 fi
1337 AC_SUBST(PYTHON_SHARED_LIB)
1338 AC_SUBST(PYTHON_CFLAGS)
1339 AC_SUBST(PYTHON_LIBS)
1340 AC_SUBST(PYGTK_CFLAGS)
1341 AC_SUBST(PYGTK_LIBS)
1342
1343 dnl libnotify ******************************************************************
1344 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1345 if test x"$HAVE_LIBNOTIFY" = xyes; then
1346         AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1347 fi
1348 AC_SUBST(libnotify_CFLAGS)
1349 AC_SUBST(libnotify_LIBS)
1350
1351 dnl libcanberra-gtk ************************************************************
1352 PKG_CHECK_MODULES(libcanberra_gtk, libcanberra-gtk >= 0.6, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1353 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1354         AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk support is enabled])
1355 fi
1356 AC_SUBST(libcanberra_gtk_CFLAGS)
1357 AC_SUBST(libcanberra_gtk_LIBS)
1358
1359 dnl unity/messaging-menu *******************************************************
1360 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1361 if test x"$HAVE_UNITY" = xyes; then
1362         AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1363 fi
1364 AC_SUBST(unity_CFLAGS)
1365 AC_SUBST(unity_LIBS)
1366
1367 dnl hotkeys ********************************************************************
1368 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)
1369 if test x"$HAVE_HOTKEYS" = xyes; then
1370         AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1371 fi
1372 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1373 AC_SUBST(CM_NP_HOTKEY_LIBS)
1374
1375 dnl libytnef *******************************************************************
1376 YTNEF_CFLAGS=""
1377 YTNEF_LIBS=""
1378 have_ytnef=0
1379 # Check both ytnef.h and libytnef/ytnef.h, and adjust YTNEF_CFLAGS
1380 # accordingly
1381 AC_CHECK_HEADER(ytnef.h, [have_ytnef=1], [have_ytnef=0])
1382 if test $have_ytnef -eq 0; then
1383         AC_CHECK_HEADER(libytnef/ytnef.h,
1384                                                                         [have_ytnef=1;
1385                                                                          YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_H_SUBDIR"],
1386                                                                         [have_ytnef=0])
1387 fi
1388 if test $have_ytnef -eq 1; then
1389         AC_MSG_CHECKING([how libytnef's SwapDDWord() should be called])
1390         # Now we have to figure out which libytnef version we're using,
1391         # based on whether SwapDDWord takes one argument or two.
1392         if test "x${YTNEF_CFLAGS}" = "x"; then
1393                 ytnef_include="#include <ytnef.h>"
1394         else
1395                 ytnef_include="#include <libytnef/ytnef.h>"
1396         fi
1397         AC_TRY_COMPILE([#include <stdio.h>
1398                                                                         ${ytnef_include}],
1399                                                                         [SwapDDWord(0, 0);],
1400                                                                         [have_ytnef=1],
1401                                                                         [have_ytnef=0])
1402         if test $have_ytnef -eq 0; then
1403                 AC_TRY_COMPILE([#include <stdio.h>
1404                                                                                 ${ytnef_include}],
1405                                                                                 [SwapDDWord(0);],
1406                                                                                 [have_ytnef=1;
1407                                                                                  YTNEF_CFLAGS="${YTNEF_CFLAGS} -DYTNEF_OLD_SWAPDDWORD"],
1408                                                                                 [have_ytnef=0])
1409         fi
1410         if test $have_ytnef -eq 1; then
1411                 YTNEF_LIBS="-lytnef"
1412                 AC_MSG_RESULT(ok)
1413         else
1414                 AC_MSG_RESULT(no idea, unsupported libytnef version?)
1415         fi
1416 fi
1417 AC_SUBST(YTNEF_CFLAGS)
1418 AC_SUBST(YTNEF_LIBS)
1419
1420 dnl Third, we now cross the requested plugins and the available dependencies
1421 dnl If some dependencies are missing and the plugin was explicitely enabled,
1422 dnl we error out, else we only inform.
1423
1424 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1425 if test x"$enable_acpi_notifier_plugin" != xno; then
1426         PLUGINS="$PLUGINS acpi_notifier"
1427         AC_MSG_RESULT(yes)
1428 else
1429         DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1430         AC_MSG_RESULT(no)
1431 fi
1432
1433 AC_MSG_CHECKING([whether to build address_keeper plugin])
1434 if test x"$enable_address_keeper_plugin" != xno; then
1435         PLUGINS="$PLUGINS address_keeper"
1436         AC_MSG_RESULT(yes)
1437 else
1438         DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1439         AC_MSG_RESULT(no)
1440 fi
1441
1442 AC_MSG_CHECKING([whether to build archive plugin])
1443 if test x"$enable_archive_plugin" != xno; then
1444         dependencies_missing=""
1445
1446         if test x"$HAVE_ARCHIVE" = xno; then
1447                 dependencies_missing="libarchive $dependencies_missing"
1448         fi
1449
1450         if test x"$dependencies_missing" = x; then
1451                 PLUGINS="$PLUGINS archive"
1452                 AC_MSG_RESULT(yes)
1453         elif test x"$enable_archive_plugin" = xauto; then
1454                 AC_MSG_RESULT(no)
1455                 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1456                 enable_archive_plugin=no
1457                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1458         else
1459                 AC_MSG_RESULT(no)
1460                 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1461         fi
1462 else
1463         DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1464         AC_MSG_RESULT(no)
1465 fi
1466
1467 AC_MSG_CHECKING([whether to build att_remover plugin])
1468 if test x"$enable_att_remover_plugin" != xno; then
1469         PLUGINS="$PLUGINS att_remover"
1470         AC_MSG_RESULT(yes)
1471 else
1472         DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1473         AC_MSG_RESULT(no)
1474 fi
1475
1476 AC_MSG_CHECKING([whether to build attachwarner plugin])
1477 if test x"$enable_attachwarner_plugin" != xno; then
1478         PLUGINS="$PLUGINS attachwarner"
1479         AC_MSG_RESULT(yes)
1480 else
1481         DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1482         AC_MSG_RESULT(no)
1483 fi
1484
1485 AC_MSG_CHECKING([whether to build bogofilter plugin])
1486 if test x"$enable_bogofilter_plugin" != xno; then
1487         PLUGINS="$PLUGINS bogofilter"
1488         AC_MSG_RESULT(yes)
1489 else
1490         DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1491         AC_MSG_RESULT(no)
1492 fi
1493
1494 AC_MSG_CHECKING([whether to build bsfilter plugin])
1495 if test x"$enable_bsfilter_plugin" != xno; then
1496         PLUGINS="$PLUGINS bsfilter"
1497         AC_MSG_RESULT(yes)
1498 else
1499         DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1500         AC_MSG_RESULT(no)
1501 fi
1502
1503 AC_MSG_CHECKING([whether to build clamd plugin])
1504 if test x"$enable_clamd_plugin" != xno; then
1505         PLUGINS="$PLUGINS clamd"
1506         AC_MSG_RESULT(yes)
1507 else
1508         DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1509         AC_MSG_RESULT(no)
1510 fi
1511
1512 AC_MSG_CHECKING([whether to build demo plugin])
1513 if test x"$enable_demo_plugin" != xno; then
1514         PLUGINS="$PLUGINS demo"
1515         AC_MSG_RESULT(yes)
1516 else
1517         DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1518         AC_MSG_RESULT(no)
1519 fi
1520
1521 AC_MSG_CHECKING([whether to build Dillo plugin])
1522 if test x"$enable_dillo_plugin" != xno; then
1523         PLUGINS="$PLUGINS dillo"
1524         AC_MSG_RESULT(yes)
1525 else
1526         DISABLED_PLUGINS="$DISABLED_PLUGINS dillo"
1527         AC_MSG_RESULT(no)
1528 fi
1529
1530 AC_MSG_CHECKING([whether to build fancy plugin])
1531 if test x"$enable_fancy_plugin" != xno; then
1532         dependencies_missing=""
1533
1534         if test x"$HAVE_WEBKIT" = xno; then
1535                 dependencies_missing="libwebkit-1.0 $dependencies_missing"
1536         fi
1537         if test x"$HAVE_CURL" = xno; then
1538                 dependencies_missing="libcurl $dependencies_missing"
1539         fi
1540
1541         if test x"$dependencies_missing" = x; then
1542                 PLUGINS="$PLUGINS fancy"
1543                 AC_MSG_RESULT(yes)
1544         elif test x"$enable_fancy_plugin" = xauto; then
1545                 AC_MSG_RESULT(no)
1546                 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1547                 enable_fancy_plugin=no
1548                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1549         else
1550                 AC_MSG_RESULT(no)
1551                 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1552         fi
1553 else
1554         DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1555         AC_MSG_RESULT(no)
1556 fi
1557
1558 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1559 if test x"$enable_fetchinfo_plugin" != xno; then
1560         PLUGINS="$PLUGINS fetchinfo"
1561         AC_MSG_RESULT(yes)
1562 else
1563         DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1564         AC_MSG_RESULT(no)
1565 fi
1566
1567 AC_MSG_CHECKING([whether to build gdata plugin])
1568 if test x"$enable_gdata_plugin" != xno; then
1569         dependencies_missing=""
1570
1571         if test x"$HAVE_GDATA" = xno; then
1572                 dependencies_missing="libgdata $dependencies_missing"
1573         fi
1574
1575         if test x"$dependencies_missing" = x; then
1576                 PLUGINS="$PLUGINS gdata"
1577                 AC_MSG_RESULT(yes)
1578         elif test x"$enable_gdata_plugin" = xauto; then
1579                 AC_MSG_RESULT(no)
1580                 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1581                 enable_gdata_plugin=no
1582                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1583         else
1584                 AC_MSG_RESULT(no)
1585                 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1586         fi
1587 else
1588         DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1589         AC_MSG_RESULT(no)
1590 fi
1591
1592 AC_MSG_CHECKING([whether to build libravatar plugin])
1593 if test x"$enable_libravatar_plugin" != xno; then
1594         dependencies_missing=""
1595
1596         if test x"$HAVE_CURL" = xno; then
1597                 dependencies_missing="libcurl $dependencies_missing"
1598         fi
1599
1600         if test x"$dependencies_missing" = x; then
1601                 PLUGINS="$PLUGINS libravatar"
1602                 AC_MSG_RESULT(yes)
1603         elif test x"$enable_libravatar_plugin" = xauto; then
1604                 AC_MSG_RESULT(no)
1605                 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1606                 enable_libravatar_plugin=no
1607                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1608         else
1609                 AC_MSG_RESULT(no)
1610                 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1611         fi
1612 else
1613         DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1614         AC_MSG_RESULT(no)
1615 fi
1616
1617 AC_MSG_CHECKING([whether to build litehtml_viewer plugin])
1618 if test x"$enable_litehtml_viewer_plugin" != xno; then
1619         dependencies_missing=""
1620
1621         if test x"$HAVE_CXX" = xno; then
1622                 dependencies_missing="C++ compiler $dependencies_missing"
1623         fi
1624         PKG_CHECK_EXISTS([glib-2.0 >= 2.36], [],
1625                 [dependencies_missing="glib-2.0 >= 2.36 $dependencies_missing"])
1626         if test x"$HAVE_CAIRO" = xno; then
1627                 dependencies_missing="cairo $dependencies_missing"
1628         fi
1629         if test x"$HAVE_FONTCONFIG" = xno; then
1630                 dependencies_missing="fontconfig $dependencies_missing"
1631         fi
1632         if test x"$HAVE_LIBGUMBO" = xno; then
1633                 dependencies_missing="libgumbo $dependencies_missing"
1634         fi
1635         if test x"$HAVE_CURL" = xno; then
1636                 dependencies_missing="libcurl $dependencies_missing"
1637         fi
1638
1639
1640         if test x"$dependencies_missing" = x; then
1641                 PLUGINS="$PLUGINS litehtml_viewer"
1642                 AC_MSG_RESULT(yes)
1643         elif test x"$enable_litehtml_viewer_plugin" = xauto; then
1644                 AC_MSG_RESULT(no)
1645                 AC_MSG_WARN("Plugin litehtml_viewer will not be built; missing $dependencies_missing")
1646                 enable_litehtml_viewer_plugin=no
1647                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS litehtml_viewer"
1648         else
1649                 AC_MSG_RESULT(no)
1650                 AC_MSG_ERROR("Plugin litehtml_viewer cannot be built; missing $dependencies_missing")
1651         fi
1652 else
1653         DISABLED_PLUGINS="$DISABLED_PLUGINS litehtml_viewer"
1654         AC_MSG_RESULT(no)
1655 fi
1656
1657 AC_MSG_CHECKING([whether to build mailmbox plugin])
1658 if test x"$enable_mailmbox_plugin" != xno; then
1659         PLUGINS="$PLUGINS mailmbox"
1660         AC_MSG_RESULT(yes)
1661 else
1662         DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1663         AC_MSG_RESULT(no)
1664 fi
1665
1666 AC_MSG_CHECKING([whether to build managesieve plugin])
1667 if test x"$enable_managesieve_plugin" != xno; then
1668         PLUGINS="$PLUGINS managesieve"
1669         AC_MSG_RESULT(yes)
1670 else
1671         DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1672         AC_MSG_RESULT(no)
1673 fi
1674
1675 AC_MSG_CHECKING([whether to build newmail plugin])
1676 if test x"$enable_newmail_plugin" != xno; then
1677         PLUGINS="$PLUGINS newmail"
1678         AC_MSG_RESULT(yes)
1679 else
1680         DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1681         AC_MSG_RESULT(no)
1682 fi
1683
1684 AC_MSG_CHECKING([whether to build notification plugin])
1685 if test x"$enable_notification_plugin" != xno; then
1686         PLUGINS="$PLUGINS notification"
1687         AC_MSG_RESULT(yes)
1688
1689         AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1690         AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1691         AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1692         AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1693         if test x"$platform_win32" = xno; then
1694                 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1695         fi
1696
1697         notification_features="banner command"
1698         notification_missing_dependencies=""
1699         if test x"$HAVE_HOTKEYS" = xyes; then
1700                 notification_features="$notification_features hotkeys"
1701         else
1702                 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1703         fi
1704         notification_features="$notification_features lcdproc"
1705         if test x"$HAVE_UNITY" = xyes; then
1706                 notification_features="$notification_features unity/messaging-menu"
1707         else
1708                 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1709         fi
1710         if test x"$HAVE_LIBNOTIFY" = xyes; then
1711                 notification_features="$notification_features libnotify"
1712         else
1713                 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1714         fi
1715         if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1716                 notification_features="$notification_features libcanberra-gtk"
1717         else
1718                 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk"
1719         fi
1720         notification_features="$notification_features popup trayicon"
1721 else
1722         DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1723         AC_MSG_RESULT(no)
1724 fi
1725
1726 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1727 if test x"$enable_pdf_viewer_plugin" != xno; then
1728         dependencies_missing=""
1729
1730         if test x"$HAVE_POPPLER" = xno; then
1731                 dependencies_missing="libpoppler-glib $dependencies_missing"
1732         fi
1733
1734         if test x"$dependencies_missing" = x; then
1735                 PLUGINS="$PLUGINS pdf_viewer"
1736                 AC_MSG_RESULT(yes)
1737         elif test x"$enable_pdf_viewer_plugin" = xauto; then
1738                 AC_MSG_RESULT(no)
1739                 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1740                 enable_pdf_viewer_plugin=no
1741                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1742         else
1743                 AC_MSG_RESULT(no)
1744                 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1745         fi
1746 else
1747         DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1748         AC_MSG_RESULT(no)
1749 fi
1750
1751 AC_MSG_CHECKING([whether to build perl plugin])
1752 if test x"$enable_perl_plugin" != xno; then
1753         dependencies_missing=""
1754
1755         if test x"$HAVE_LIBPERL" = xno; then
1756                 dependencies_missing="libperl $dependencies_missing"
1757         fi
1758
1759         if test x"$dependencies_missing" = x; then
1760                 PLUGINS="$PLUGINS perl"
1761                 AC_MSG_RESULT(yes)
1762         elif test x"$enable_perl_plugin" = xauto; then
1763                 AC_MSG_RESULT(no)
1764                 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1765                 enable_perl_plugin=no
1766                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1767         else
1768                 AC_MSG_RESULT(no)
1769                 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1770         fi
1771 else
1772         DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1773         AC_MSG_RESULT(no)
1774 fi
1775
1776 AC_MSG_CHECKING([whether to build python plugin])
1777 if test x"$enable_python_plugin" != xno; then
1778         dependencies_missing=""
1779
1780         if test x"$HAVE_PYTHON" = xno; then
1781                 dependencies_missing="$missing_python $dependencies_missing"
1782         fi
1783
1784         if test x"$dependencies_missing" = x; then
1785                 PLUGINS="$PLUGINS python"
1786                 AC_MSG_RESULT(yes)
1787         elif test x"$enable_python_plugin" = xauto; then
1788                 AC_MSG_RESULT(no)
1789                 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1790                 enable_python_plugin=no
1791                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1792         else
1793                 AC_MSG_RESULT(no)
1794                 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1795         fi
1796 else
1797         DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1798         AC_MSG_RESULT(no)
1799 fi
1800
1801 AC_MSG_CHECKING([whether to build pgpcore plugin])
1802 if test x"$enable_pgpcore_plugin" != xno; then
1803         dependencies_missing=""
1804
1805         if test x"$HAVE_GPGME" = xno; then
1806                 dependencies_missing="libgpgme $dependencies_missing"
1807         fi
1808
1809         if test x"$dependencies_missing" = x; then
1810                 PLUGINS="$PLUGINS pgpcore"
1811                 AC_MSG_RESULT(yes)
1812         elif test x"$enable_pgpcore_plugin" = xauto; then
1813                 AC_MSG_RESULT(no)
1814                 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1815                 enable_pgpcore_plugin=no
1816                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1817         else
1818                 AC_MSG_RESULT(no)
1819                 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1820         fi
1821 else
1822         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1823         AC_MSG_RESULT(no)
1824 fi
1825
1826 AC_MSG_CHECKING([whether to build pgpmime plugin])
1827 if test x"$enable_pgpmime_plugin" != xno; then
1828         dependencies_missing=""
1829
1830         if test x"$HAVE_GPGME" = xno; then
1831                 dependencies_missing="libgpgme $dependencies_missing"
1832         fi
1833         if test x"$enable_pgpcore_plugin" = xno; then
1834                 dependencies_missing="pgpcore plugin $dependencies_missing"
1835         fi
1836
1837         if test x"$dependencies_missing" = x; then
1838                 PLUGINS="$PLUGINS pgpmime"
1839                 AC_MSG_RESULT(yes)
1840         elif test x"$enable_pgpmime_plugin" = xauto; then
1841                 AC_MSG_RESULT(no)
1842                 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1843                 enable_pgpmime_plugin=no
1844                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1845         else
1846                 AC_MSG_RESULT(no)
1847                 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1848         fi
1849 else
1850         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1851         AC_MSG_RESULT(no)
1852 fi
1853
1854 AC_MSG_CHECKING([whether to build pgpinline plugin])
1855 if test x"$enable_pgpinline_plugin" != xno; then
1856         dependencies_missing=""
1857
1858         if test x"$HAVE_GPGME" = xno; then
1859                 dependencies_missing="libgpgme $dependencies_missing"
1860         fi
1861         if test x"$enable_pgpcore_plugin" = xno; then
1862                 dependencies_missing="pgpcore plugin $dependencies_missing"
1863         fi
1864
1865         if test x"$dependencies_missing" = x; then
1866                 PLUGINS="$PLUGINS pgpinline"
1867                 AC_MSG_RESULT(yes)
1868         elif test x"$enable_pgpinline_plugin" = xauto; then
1869                 AC_MSG_RESULT(no)
1870                 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1871                 enable_pgpinline_plugin=no
1872                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1873         else
1874                 AC_MSG_RESULT(no)
1875                 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1876         fi
1877 else
1878         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1879         AC_MSG_RESULT(no)
1880 fi
1881
1882 AC_MSG_CHECKING([whether to build rssyl plugin])
1883 if test x"$enable_rssyl_plugin" != xno; then
1884         dependencies_missing=""
1885
1886         if test x"$HAVE_EXPAT" = xno; then
1887                 dependencies_missing="expat $dependencies_missing"
1888         fi
1889         if test x"$HAVE_CURL" = xno; then
1890                 dependencies_missing="libcurl $dependencies_missing"
1891         fi
1892
1893         if test x"$dependencies_missing" = x; then
1894                 PLUGINS="$PLUGINS rssyl"
1895                 AC_MSG_RESULT(yes)
1896         elif test x"$enable_rssyl_plugin" = xauto; then
1897                 AC_MSG_RESULT(no)
1898                 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1899                 enable_rssyl_plugin=no
1900                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1901         else
1902                 AC_MSG_RESULT(no)
1903                 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1904         fi
1905 else
1906         DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1907         AC_MSG_RESULT(no)
1908 fi
1909
1910 AC_MSG_CHECKING([whether to build spamassassin plugin])
1911 if test x"$enable_spamassassin_plugin" != xno; then
1912         PLUGINS="$PLUGINS spamassassin"
1913         AC_MSG_RESULT(yes)
1914         AC_SPAMASSASSIN
1915
1916         dnl check for zlib (optional)
1917         spamassassin_zlib=0
1918         SPAMASSASSIN_CFLAGS=""
1919         SPAMASSASSIN_LIBS=""
1920         AC_CHECK_HEADER([zlib.h],
1921                         [AC_DEFINE(HAVE_ZLIB_H,1,[optional zlib support for spamassassin plugin])]
1922                         [spamassassin_zlib=1],
1923                         [spamassassin_zlib=0])
1924         if test $spamassassin_zlib -eq 1; then
1925                 AC_CHECK_LIB(z, deflate, [spamassassin_zlib=1], [spamassassin_zlib=0])
1926                 AC_MSG_CHECKING([whether to build spamassassin plugin with zlib support])
1927                 if test $spamassassin_zlib -eq 1; then
1928                         AC_MSG_RESULT(yes)
1929                         SPAMASSASSIN_CFLAGS="-DHAVE_LIBZ"
1930                         SPAMASSASSIN_LIBS="-lz"
1931                 else
1932                         AC_MSG_RESULT(no)
1933                 fi
1934         fi
1935         AC_SUBST(SPAMASSASSIN_CFLAGS)
1936         AC_SUBST(SPAMASSASSIN_LIBS)
1937 else
1938         DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1939         AC_MSG_RESULT(no)
1940 fi
1941
1942 AC_MSG_CHECKING([whether to build smime plugin])
1943 if test x"$enable_smime_plugin" != xno; then
1944         dependencies_missing=""
1945
1946         if test x"$HAVE_GPGME" = xno; then
1947                 dependencies_missing="libgpgme $dependencies_missing"
1948         fi
1949         if test x"$enable_pgpcore_plugin" = xno; then
1950                 dependencies_missing="pgpcore plugin $dependencies_missing"
1951         fi
1952
1953         if test x"$dependencies_missing" = x; then
1954                 PLUGINS="$PLUGINS smime"
1955                 AC_MSG_RESULT(yes)
1956         elif test x"$enable_smime_plugin" = xauto; then
1957                 AC_MSG_RESULT(no)
1958                 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
1959                 enable_smime_plugin=no
1960                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
1961         else
1962                 AC_MSG_RESULT(no)
1963                 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
1964         fi
1965 else
1966         DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
1967         AC_MSG_RESULT(no)
1968 fi
1969
1970 AC_MSG_CHECKING([whether to build spam_report plugin])
1971 if test x"$enable_spam_report_plugin" != xno; then
1972         dependencies_missing=""
1973
1974         if test x"$HAVE_CURL" = xno; then
1975                 dependencies_missing="libcurl $dependencies_missing"
1976         fi
1977
1978         if test x"$dependencies_missing" = x; then
1979                 PLUGINS="$PLUGINS spam_report"
1980                 AC_MSG_RESULT(yes)
1981         elif test x"$enable_spam_report_plugin" = xauto; then
1982                 AC_MSG_RESULT(no)
1983                 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
1984                 enable_spam_report_plugin=no
1985                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
1986         else
1987                 AC_MSG_RESULT(no)
1988                 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
1989         fi
1990 else
1991         DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
1992         AC_MSG_RESULT(no)
1993 fi
1994
1995 AC_MSG_CHECKING([whether to build tnef_parse plugin])
1996 if test x"$enable_tnef_parse_plugin" != xno; then
1997         dependencies_missing=""
1998
1999         if test $have_ytnef -eq 0; then
2000                 dependencies_missing="libytnef"
2001         fi
2002
2003         if test x"$dependencies_missing" = x; then
2004                 PLUGINS="$PLUGINS tnef_parse"
2005                 AC_MSG_RESULT(yes)
2006         elif test x"$enable_tnef_parse_plugin" = xauto; then
2007                 AC_MSG_RESULT(no)
2008                 AC_MSG_WARN(Plugin tnef_parse will not be built; missing $dependencies_missing")
2009                 enable_tnef_parse_plugin=no
2010                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS tnef_parse"
2011         else
2012                 AC_MSG_RESULT(no)
2013                 AC_MSG_ERROR(Plugin tnef_parse will not be built; missing $dependencies_missing")
2014         fi
2015 else
2016         DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
2017         AC_MSG_RESULT(no)
2018 fi
2019
2020
2021 AC_MSG_CHECKING([whether to build vcalendar plugin])
2022 if test x"$enable_vcalendar_plugin" != xno; then
2023         dependencies_missing=""
2024
2025         if test x"$HAVE_CURL" = xno; then
2026                 dependencies_missing="libcurl $dependencies_missing"
2027         fi
2028
2029   if test x"$HAVE_LIBICAL" = xno; then
2030     dependencies_missing="libical $dependencies_missing"
2031   fi
2032
2033         if test x"$HAVE_PERL" = xno; then
2034                 dependencies_missing="perl $dependencies_missing"
2035         fi
2036
2037         if test x"$dependencies_missing" = x; then
2038                 PLUGINS="$PLUGINS vcalendar"
2039                 AC_MSG_RESULT(yes)
2040         elif test x"$enable_vcalendar_plugin" = xauto; then
2041                 AC_MSG_RESULT(no)
2042                 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
2043                 enable_vcalendar_plugin=no
2044                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
2045         else
2046                 AC_MSG_RESULT(no)
2047                 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
2048         fi
2049 else
2050         DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
2051         AC_MSG_RESULT(no)
2052 fi
2053
2054 dnl And finally the automake conditionals.
2055
2056 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN,      test x"$enable_acpi_notifier_plugin" != xno)
2057 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN,     test x"$enable_address_keeper_plugin" != xno)
2058 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN,            test x"$enable_archive_plugin" != xno)
2059 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN,        test x"$enable_att_remover_plugin" != xno)
2060 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN,       test x"$enable_attachwarner_plugin" != xno)
2061 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN,         test x"$enable_bogofilter_plugin" != xno)
2062 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN,           test x"$enable_bsfilter_plugin" != xno)
2063 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN,              test x"$enable_clamd_plugin" != xno)
2064 AM_CONDITIONAL(BUILD_DEMO_PLUGIN,               test x"$enable_demo_plugin" != xno)
2065 AM_CONDITIONAL(BUILD_DILLO_PLUGIN,              test x"$enable_dillo_plugin" != xno)
2066 AM_CONDITIONAL(BUILD_FANCY_PLUGIN,              test x"$enable_fancy_plugin" != xno)
2067 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN,          test x"$enable_fetchinfo_plugin" != xno)
2068 AM_CONDITIONAL(BUILD_GDATA_PLUGIN,              test x"$enable_gdata_plugin" != xno)
2069 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN,         test x"$enable_libravatar_plugin" != xno)
2070 AM_CONDITIONAL(BUILD_LITEHTML_VIEWER_PLUGIN,    test x"$enable_litehtml_viewer_plugin" != xno)
2071 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN,           test x"$enable_mailmbox_plugin" != xno)
2072 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN,        test x"$enable_managesieve_plugin" != xno)
2073 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN,            test x"$enable_newmail_plugin" != xno)
2074 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN,       test x"$enable_notification_plugin" != xno)
2075 AM_CONDITIONAL(BUILD_HOTKEYS,                   test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
2076 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN,         test x"$enable_pdf_viewer_plugin" != xno)
2077 AM_CONDITIONAL(BUILD_PERL_PLUGIN,               test x"$enable_perl_plugin" != xno)
2078 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN,             test x"$enable_python_plugin" != xno)
2079 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN,            test x"$enable_pgpcore_plugin" != xno)
2080 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN,            test x"$enable_pgpmime_plugin" != xno)
2081 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN,          test x"$enable_pgpinline_plugin" != xno)
2082 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN,              test x"$enable_rssyl_plugin" != xno)
2083 AM_CONDITIONAL(BUILD_SMIME_PLUGIN,              test x"$enable_smime_plugin" != xno)
2084 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN,       test x"$enable_spamassassin_plugin" != xno)
2085 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN,        test x"$enable_spam_report_plugin" != xno)
2086 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN,         test x"$enable_tnef_parse_plugin" != xno)
2087 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN,          test x"$enable_vcalendar_plugin" != xno)
2088
2089
2090 dnl ****************************
2091 dnl ** Final configure output **
2092 dnl ****************************
2093
2094 AC_OUTPUT([
2095 Makefile
2096 m4/Makefile
2097 po/Makefile.in
2098 src/common/version.h
2099 src/Makefile
2100 src/common/Makefile
2101 src/common/passcrypt.h
2102 src/common/tests/Makefile
2103 src/gtk/Makefile
2104 src/etpan/Makefile
2105 src/plugins/Makefile
2106 src/plugins/acpi_notifier/Makefile
2107 src/plugins/address_keeper/Makefile
2108 src/plugins/archive/Makefile
2109 src/plugins/att_remover/Makefile
2110 src/plugins/attachwarner/Makefile
2111 src/plugins/bogofilter/Makefile
2112 src/plugins/bsfilter/Makefile
2113 src/plugins/clamd/Makefile
2114 src/plugins/clamd/libclamd/Makefile
2115 src/plugins/demo/Makefile
2116 src/plugins/dillo/Makefile
2117 src/plugins/fancy/Makefile
2118 src/plugins/fetchinfo/Makefile
2119 src/plugins/gdata/Makefile
2120 src/plugins/litehtml_viewer/Makefile
2121 src/plugins/litehtml_viewer/litehtml/Makefile
2122 src/plugins/libravatar/Makefile
2123 src/plugins/mailmbox/Makefile
2124 src/plugins/managesieve/Makefile
2125 src/plugins/newmail/Makefile
2126 src/plugins/notification/Makefile
2127 src/plugins/notification/gtkhotkey/Makefile
2128 src/plugins/pdf_viewer/Makefile
2129 src/plugins/perl/Makefile
2130 src/plugins/perl/tools/Makefile
2131 src/plugins/python/Makefile
2132 src/plugins/python/examples/Makefile
2133 src/plugins/pgpcore/Makefile
2134 src/plugins/pgpcore/tests/Makefile
2135 src/plugins/pgpmime/Makefile
2136 src/plugins/pgpinline/Makefile
2137 src/plugins/rssyl/Makefile
2138 src/plugins/rssyl/tests/Makefile
2139 src/plugins/rssyl/libfeed/Makefile
2140 src/plugins/rssyl/libfeed/tests/Makefile
2141 src/plugins/smime/Makefile
2142 src/plugins/spamassassin/Makefile
2143 src/plugins/spam_report/Makefile
2144 src/plugins/tnef_parse/Makefile
2145 src/plugins/vcalendar/Makefile
2146 src/tests/Makefile
2147 doc/Makefile
2148 doc/man/Makefile
2149 tools/Makefile
2150 config/Makefile
2151 manual/Makefile
2152 manual/dtd/Makefile
2153 manual/dist/Makefile
2154 manual/dist/pdf/Makefile
2155 manual/dist/ps/Makefile
2156 manual/dist/html/Makefile
2157 manual/dist/txt/Makefile
2158 manual/fr/Makefile
2159 manual/fr/dist/Makefile
2160 manual/fr/dist/pdf/Makefile
2161 manual/fr/dist/ps/Makefile
2162 manual/fr/dist/html/Makefile
2163 manual/fr/dist/txt/Makefile
2164 manual/es/Makefile
2165 manual/es/dist/Makefile
2166 manual/es/dist/pdf/Makefile
2167 manual/es/dist/ps/Makefile
2168 manual/es/dist/html/Makefile
2169 manual/es/dist/txt/Makefile
2170 claws-mail.pc
2171 ])
2172
2173 dnl Output the configuration summary
2174 echo ""
2175 echo "$PACKAGE $VERSION"
2176 echo ""
2177 if test x"$enable_alternate_addressbook" = xyes; then
2178         echo "Using Address Book : Alternate experimental interface"
2179 else
2180         echo "Using Address Book : Original stable interface"
2181         echo "JPilot             : $enable_jpilot"
2182         echo "LDAP               : $enable_ldap"
2183 fi
2184 echo "gnuTLS             : $enable_gnutls"
2185 echo "iconv              : $am_cv_func_iconv"
2186 echo "compface           : $enable_compface"
2187 echo "IPv6               : $enable_ipv6"
2188 echo "enchant            : $enable_enchant"
2189 echo "IMAP4              : $enable_libetpan"
2190 echo "NNTP               : $enable_libetpan"
2191 echo "Crash dialog       : $enable_crash_dialog"
2192 echo "LibSM              : $enable_libsm"
2193 echo "DBUS               : $enable_dbus"
2194 echo "NetworkManager     : $enable_networkmanager"
2195 echo "Manual             : $enable_manual"
2196 echo "Generic UMPC code  : $enable_generic_umpc"
2197 echo "SVG support        : $enable_svg"
2198 echo "Config dir         : $ac_cv_with_config_dir"
2199 echo "Password crypto    : $pwd_crypto"
2200 echo "Unit tests         : $enable_tests"
2201
2202 echo "Plugins"
2203 echo "   Built:"
2204 for plugin in $PLUGINS; do
2205 echo "            - $plugin"
2206 if test x"$plugin" = xnotification; then
2207         echo "                Features:"
2208         for notif_feature in $notification_features; do
2209                 echo "                    $notif_feature"
2210         done;
2211         if test "x$notification_missing_dependencies" != x; then
2212                 echo "                Disabled due to missing dependencies:"
2213                 for notif_miss_dep in $notification_missing_dependencies; do
2214                         echo "                    $notif_miss_dep"
2215                 done;
2216         fi
2217 fi
2218 done;
2219 if test "x$DISABLED_PLUGINS" != x; then
2220 echo "   Disabled:"
2221 for plugin in $DISABLED_PLUGINS; do
2222 echo "            - $plugin"
2223 done;
2224 fi
2225
2226 if test "x$MISSING_DEPS_PLUGINS" != x; then
2227 echo "   Disabled due to missing dependencies:"
2228 for plugin in $MISSING_DEPS_PLUGINS; do
2229 echo "            - $plugin"
2230 done;
2231 fi
2232 echo ""
2233 echo "The binary will be installed in $prefix/bin"
2234 echo ""
2235 echo "Configure finished, type 'make' to build."