Fix #3014: The icon for folder drafts with hideā€¦
[claws.git] / configure.ac
blob9ba8bbe2144a68034b4c530f224acb72ec1a14b5
2 AC_PREREQ(2.59)
3 AC_INIT(src/main.c)
4 AC_CONFIG_AUX_DIR(config)
5 AC_CONFIG_MACRO_DIR([m4])
7 PACKAGE=claws-mail
9 dnl version number
10 INTERFACE_AGE=0
11 BINARY_AGE=0
12 EXTRA_RELEASE=
13 EXTRA_GTK2_VERSION=
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"`
26 MAJOR_VERSION=${GIT_VERSION%%.*}
27 MINOR_VERSION=${GIT_VERSION#*.}
28 MINOR_VERSION=${MINOR_VERSION%%.*}
29 MICRO_VERSION=${GIT_VERSION##*.}
30 MICRO_VERSION=${MICRO_VERSION%%-*}
31 EXTRA_VERSION=${GIT_VERSION#*-}
32 EXTRA_VERSION=${EXTRA_VERSION%%-*}
34 if test \( "x$EXTRA_VERSION" != "x" -a `echo -n $EXTRA_VERSION | wc -c` -lt 5 \); then
35     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}git${EXTRA_VERSION}
36 else
37     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}
38     EXTRA_VERSION=0
41 if test \( "x$EXTRA_RELEASE" != "x" \); then
42     VERSION=${VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
45 dnl set $target
46 AC_CANONICAL_SYSTEM
48 dnl
49 AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
50 dnl AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
51 dnl AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
52 AC_SUBST(PACKAGE)
53 AC_SUBST(VERSION)
54 AC_SUBST(MAJOR_VERSION)
55 AC_SUBST(MINOR_VERSION)
56 AC_SUBST(MICRO_VERSION)
57 AC_SUBST(EXTRA_VERSION)
58 AC_SUBST(GIT_VERSION)
60 AC_CHECK_PROG(HAVE_GTK_ICON_CACHE, gtk-update-icon-cache, yes, no)
61 AM_CONDITIONAL(UPDATE_GTK_ICON_CACHE, test x"$HAVE_GTK_ICON_CACHE" = xyes)
63 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
64 if test x$PKG_CONFIG = xno ; then
65   AC_MSG_ERROR([*** pkg-config not found. See http://www.freedesktop.org/software/pkgconfig/])
68 dnl libtool versioning
69 LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION
70 LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE`
71 LT_REVISION=$INTERFACE_AGE
72 LT_AGE=`expr $BINARY_AGE - $INTERFACE_AGE`
73 AC_SUBST(LT_RELEASE)
74 AC_SUBST(LT_CURRENT)
75 AC_SUBST(LT_REVISION)
76 AC_SUBST(LT_AGE)
78 dnl Specify a header configuration file
79 AC_CONFIG_HEADERS(config.h)
80 AC_CONFIG_HEADERS(claws-features.h)
82 AM_MAINTAINER_MODE
84 dnl Checks for programs.
85 dnl AC_ARG_PROGRAM
86 AC_PROG_CC
87 AC_ISC_POSIX
88 AC_PROG_INSTALL
89 AC_PROG_LN_S
90 AC_PROG_MAKE_SET
91 AC_PROG_CPP
92 dnl AC_PROG_RANLIB
93 AM_PROG_LEX
94 AC_PROG_YACC
95 AC_LIB_PREFIX
96 AC_LIBTOOL_WIN32_DLL
97 LT_INIT
98 LT_AC_PROG_RC
99 AC_LIBTOOL_RC
100 AC_PROG_LIBTOOL
101 AC_PROG_AWK
103 AC_SYS_LARGEFILE
105 dnl ******************************
106 dnl Checks for host
107 dnl Not needed anymore because we
108 dnl do AC_CANONICAL_SYSTEM above
109 dnl ******************************
110 dnl AC_CANONICAL_HOST
112 dnl Copied from the official gtk+-2 configure.in
113 AC_MSG_CHECKING([for host platform])
114 case "$host" in
115   *-*-mingw*|*-*-cygwin*)
116     platform_win32=yes
117     LDFLAGS="$LDFLAGS -mwindows -Wl,--export-all-symbols"
118     ;;
119         *-apple-*)
120                 platform_osx=yes
121                 LDFLAGS="$LDFLAGS -Wl,-export-dynamic"
122                 ;;
123   *)
124     platform_win32=no
125                 platform_osx=no
126                 LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
127     ;;
128 esac
129 AM_CONDITIONAL(PLATFORM_WIN32, test x"$platform_win32" = x"yes")
130 AM_CONDITIONAL(PLATFORM_OSX, test x"$platform_osx" = x"yes")
131 AC_MSG_RESULT([$host])
133 AC_MSG_CHECKING([for native Win32])
134 case "$host" in
135   *-*-mingw*)
136     os_win32=yes
137     ;;
138   *)
139     os_win32=no
140     ;;
141 esac
142 AC_MSG_RESULT([$os_win32])
143 AM_CONDITIONAL(OS_WIN32, test x"$os_win32" = x"yes")
145 AC_MSG_CHECKING([for Cygwin])
146 case "$host" in
147   *-*-cygwin*)
148     env_cygwin=yes
149     ;;
150   *)
151     env_cygwin=no
152     ;;
153 esac
154 AC_MSG_RESULT([$env_cygwin])
155 AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
157 if test "$GCC" = "yes"
158 then
159         CFLAGS="$CFLAGS -Wno-unused-function"
160         #CFLAGS="-g -Wall -Wno-unused-function"
163 AC_MSG_CHECKING([if gcc supports -Wno-pointer-sign])
164 _gcc_cflags_save=$CFLAGS
165 CFLAGS="-Wno-pointer-sign"
166 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],_gcc_psign=yes,_gcc_psign=no)
167 AC_MSG_RESULT($_gcc_psign)
168 CFLAGS=$_gcc_cflags_save;
169 if test x"$_gcc_psign" = xyes ; then
170         CFLAGS="$CFLAGS -Wno-pointer-sign"
173 CFLAGS="$CFLAGS -Wall"
175 if test $USE_MAINTAINER_MODE = yes; then
176         CFLAGS="$CFLAGS -g -Wno-pointer-sign -DUSE_MAINTAINER_MODE"
179 pthread_name=
180 case "$target" in
181 *-darwin*)
182         CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
183         ;;
184 *-*-mingw*)
185         # Note that we need to link to pthread in all cases. This
186         # is because some locking is used even when pthread support is
187         # disabled.
188         pthread_name=pthread
189         CFLAGS="$CFLAGS -mms-bitfields"
190         LIBS="$LIBS -l${pthread_name} -lws2_32 -lregex"
191         ;;
192 *-*-solaris*)
193         CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
194         CFLAGS="$CFLAGS -std=gnu99 -DSOLARIS"
195         ;;
196 esac
198 dnl Checks for iconv
199 AM_ICONV
201 dnl floor and ceil are  in -lm
202 LIBS="$LIBS -lm"
205 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
207 syl_save_LIBS=$LIBS
208 LIBS="$LIBS $GTK_LIBS"
209 AC_CHECK_FUNCS(bind_textdomain_codeset)
210 LIBS=$syl_save_LIBS
212 dnl for gettext
213 ALL_LINGUAS="ca cs da de en_GB es fi fr he hu id_ID it nb nl pt_BR ru sk sv tr zh_TW"
214 GETTEXT_PACKAGE=claws-mail
215 AC_SUBST(GETTEXT_PACKAGE)
216 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
218 AM_GNU_GETTEXT_VERSION([0.18])
219 AM_GNU_GETTEXT([external])
221 AC_ARG_ENABLE(manual,
222                 [  --disable-manual                Do not build user manual],
223                 [enable_manual=$enableval], [enable_manual=yes])
225 AC_ARG_ENABLE(libsm,
226                 [  --disable-libsm                 Do not build libSM support for session management],
227                 [enable_libsm=$enableval], [enable_libsm=yes])
229 AC_ARG_ENABLE(ipv6,
230                 [  --disable-ipv6                  Do not build IPv6 support],
231                 [enable_ipv6=$enableval], [enable_ipv6=yes])
233 AC_ARG_ENABLE(gnutls,
234                 [  --disable-gnutls                Do not build GnuTLS support for SSL/TLS],
235                     [enable_gnutls=$enableval], [enable_gnutls=yes])
237 AC_ARG_ENABLE(enchant,
238                 [  --disable-enchant               Do not build Enchant support for spell-checking],
239                 [enable_enchant=$enableval], [enable_enchant=yes])
241 AC_ARG_ENABLE(crash-dialog,
242                 [  --enable-crash-dialog           Build crash dialog],
243                 [enable_crash_dialog=$enableval], [enable_crash_dialog=no])
245 AC_ARG_ENABLE(generic-umpc,
246                 [  --enable-generic-umpc           Build generic UMPC code],
247                 [enable_generic_umpc=$enableval], [enable_generic_umpc=no])
249 AC_ARG_ENABLE(compface,
250                 [  --disable-compface              Do not build compface support for X-Face],
251                 [enable_compface=$enableval], [enable_compface=yes])
253 AC_ARG_ENABLE(pthread,
254                 [  --disable-pthread               Do not build pthread support],
255                 [enable_pthread=$enableval], [enable_pthread=yes])
257 AC_ARG_ENABLE(startup-notification,
258                 [  --disable-startup-notification  Do not startup notification support],
259                 [enable_startup_notification=$enableval], [enable_startup_notification=yes])
261 AC_ARG_ENABLE(dbus,
262                 [  --disable-dbus                  Do not build DBUS support],
263                 [enable_dbus=$enableval], [enable_dbus=yes])
265 AC_ARG_ENABLE(ldap,
266                 [  --disable-ldap                  Do not build LDAP support],
267                 [enable_ldap=$enableval], [enable_ldap=yes])
269 AC_ARG_ENABLE(jpilot,
270                 [  --disable-jpilot                Do not build JPilot support],
271                 [enable_jpilot=$enableval], [enable_jpilot=yes])
273 AC_ARG_ENABLE(networkmanager,
274                 [  --disable-networkmanager        Do not build NetworkManager support],
275                 [enable_networkmanager=$enableval], [enable_networkmanager=yes])
277 AC_ARG_ENABLE(libetpan,
278                 [  --disable-libetpan              Do not build libetpan support for IMAP4/NNTP],
279                 [enable_libetpan=$enableval], [enable_libetpan=yes])
281 AC_ARG_ENABLE(valgrind,
282                 [  --disable-valgrind              Do not build valgrind support for debugging],
283                 [enable_valgrind=$enableval], [enable_valgrind=yes])
285 AC_ARG_ENABLE(alternate-addressbook,
286                 [  --enable-alternate-addressbook  Build alternate external address book support],
287                 [enable_alternate_addressbook=$enableval], [enable_alternate_addressbook=no])
289 AC_ARG_ENABLE(gtk3,
290                 [  --enable-gtk3                   Build GTK3 support],
291                 [enable_gtk3=$enableval], [enable_gtk3=no])
293 AC_ARG_ENABLE(deprecated,
294                 [  --disable-deprecated            Disable deprecated GTK functions],
295                 [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
297 manualdir='${docdir}/manual'
298 AC_ARG_WITH(manualdir,
299         [  --with-manualdir=DIR    Manual directory],
300         [manualdir="$withval"])
301 AC_SUBST(manualdir)
303 dnl ******************************
304 dnl ** Check for required tools **
305 dnl ** to build manuals         **
306 dnl ******************************
308 AC_PATH_PROG(DOCBOOK2HTML, docbook2html)
309 AC_PATH_PROG(DOCBOOK2TXT, docbook2txt)
310 AC_PATH_PROG(DOCBOOK2PS, docbook2ps)
311 AC_PATH_PROG(DOCBOOK2PDF, docbook2pdf)
313 AM_CONDITIONAL(MANUAL_HTML, test -n "$DOCBOOK2HTML")
314 AM_CONDITIONAL(MANUAL_TXT, test -n "$DOCBOOK2TXT")
315 AM_CONDITIONAL(MANUAL_PDF, test -n "$DOCBOOK2PDF")
316 AM_CONDITIONAL(MANUAL_PS, test -n "$DOCBOOK2PS")
318 if test x"$enable_manual" = x"yes"; then
319     if test -n "$DOCBOOK2TXT" -o -n "$DOCBOOK2HTML" \
320         -o -n "$DOCBOOK2PS" -o -n "$DOCBOOK2PDF"; then
321             enable_manual=yes
322         else
323             enable_manual=no
324     fi
327 AM_CONDITIONAL(BUILD_MANUAL, test x"$enable_manual" = xyes)
329 dnl Set PACKAGE_DATA_DIR in config.h.
330 if test "x${datarootdir}" = 'x${prefix}/share'; then
331         if test "x${prefix}" = "xNONE"; then
332                 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
333         else
334                 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
335         fi
336 else
337         AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datarootdir}/${PACKAGE}",[PACKAGE_DATA_DIR])
340 AC_CHECK_LIB(xpg4, setlocale)
342 SM_LIBS=""
343 dnl Check for LibSM
344 AC_MSG_CHECKING([whether to use LibSM])
345 if test x"$enable_libsm" = xyes; then
346         AC_MSG_RESULT(yes)
347         AC_CHECK_LIB(SM, SmcSaveYourselfDone,
348                 [SM_LIBS="$X_LIBS -lSM -lICE"],enable_libsm=no,
349                 $X_LIBS -lICE)
350         AC_CHECK_HEADERS(X11/SM/SMlib.h,,enable_libsm=no)
351         if test x"$enable_libsm" = xyes; then
352                 AC_DEFINE(HAVE_LIBSM, 1, [Define to 1 if you have libSM installed])
353         else
354                 AC_MSG_RESULT(not found)
355                 AC_MSG_WARN([*** LibSM will not be supported ***])
356         fi
357 else
358         AC_MSG_RESULT(no)
360 AC_SUBST(SM_LIBS)
362 dnl Check for d_type member in struct dirent
363 AC_MSG_CHECKING([whether struct dirent has d_type member])
364 AC_CACHE_VAL(ac_cv_dirent_d_type,[
365         AC_TRY_COMPILE([#include <dirent.h>],
366                        [struct dirent d; d.d_type = DT_REG;],
367                        ac_cv_dirent_d_type=yes, ac_cv_dirent_d_type=no)
369 AC_MSG_RESULT($ac_cv_dirent_d_type)
370 if test $ac_cv_dirent_d_type = yes; then
371         AC_DEFINE(HAVE_DIRENT_D_TYPE, 1,
372                   Define if `struct dirent' has `d_type' member.)
375 # Check whether mkdir does not take the permission argument.
376 GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
378 dnl Checks for header files.
379 AC_HEADER_DIRENT
380 AC_HEADER_STDC
381 AC_HEADER_SYS_WAIT
382 AC_CHECK_HEADERS(fcntl.h sys/file.h unistd.h paths.h \
383                  sys/param.h sys/utsname.h sys/select.h \
384                  wchar.h wctype.h locale.h netdb.h)
385 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
386 AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
388 dnl Checks for typedefs, structures, and compiler characteristics.
389 AC_C_CONST
390 AC_TYPE_OFF_T
391 AC_TYPE_PID_T
392 AC_TYPE_SIZE_T
393 AC_STRUCT_TM
395 dnl AC_CHECK_TYPE(wint_t, unsigned int) does not work because wint_t
396 dnl may be defined only in wchar.h (this happens with gcc-2.96).
397 dnl So we need to use this extended macro.
398 CLAWS_CHECK_TYPE(wint_t, unsigned int,
400 #if HAVE_WCHAR_H
401 #include <wchar.h>
402 #endif
403 ], Define to `unsigned int' if <stddef.h> or <wchar.h> doesn't define.)
405 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF, Used to test for a u32 typedef)
406 AC_CHECK_SIZEOF(unsigned short, 2)
407 AC_CHECK_SIZEOF(unsigned int, 4)
408 AC_CHECK_SIZEOF(unsigned long, 4)
410 dnl Checks for library functions.
411 AC_FUNC_ALLOCA
412 AC_CHECK_FUNCS(gethostname mkdir mktime socket strstr strchr \
413                uname flock lockf inet_aton inet_addr \
414                fchmod mkstemp truncate getuid regcomp)
416 AC_CHECK_FUNCS(fgets_unlocked fwrite_unlocked)
418 dnl *****************
419 dnl ** common code **
420 dnl *****************
422 dnl check for glib
423 PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.20 gmodule-2.0 >= 2.20 gobject-2.0 >= 2.20 gthread-2.0 >= 2.20)
425 GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0`
426 AC_SUBST(GLIB_GENMARSHAL)
428 AC_SUBST(GLIB_CFLAGS)
429 AC_SUBST(GLIB_LIBS)
431 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
432 syl_save_LIBS=$LIBS
433 LIBS="$LIBS $GTK_LIBS"
434 AC_CHECK_FUNCS(bind_textdomain_codeset)
435 LIBS=$syl_save_LIBS
437 dnl check for IPv6 option
438 dnl automated checks for IPv6 support.
439 AC_MSG_CHECKING([whether to use IPv6])
440 if test x"$enable_ipv6" = xyes; then
441         AC_MSG_RESULT(yes)
442         AC_MSG_CHECKING([for IPv6 support])
443         if test x"$platform_win32" = xyes; then
444                 AC_CACHE_VAL(ac_cv_ipv6,[
445                         AC_TRY_COMPILE([
446                                         #include <ws2tcpip.h>
447                                 ], [struct in6_addr a;],
448                                 ac_cv_ipv6=yes, ac_cv_ipv6=no)
449                 ])
450         else
451                 AC_CACHE_VAL(ac_cv_ipv6,[
452                         AC_TRY_COMPILE([
453                                         #define INET6
454                                         #include <sys/types.h>
455                                         #include <netinet/in.h>
456                                 ], [int x = IPPROTO_IPV6; struct in6_addr a;],
457                                 ac_cv_ipv6=yes, ac_cv_ipv6=no)
458                 ])
459         fi
460         AC_MSG_RESULT($ac_cv_ipv6)
461         if test $ac_cv_ipv6 = yes; then
462                 AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
463         else
464                 AC_MSG_WARN(*** IPv6 will not be supported ***)
465                 enable_ipv6=no
466         fi
467 else
468         AC_MSG_RESULT(no)
471 dnl GNUTLS
472 AC_MSG_CHECKING([whether to use GnuTLS])
473 AC_MSG_RESULT($enable_gnutls)
474 if test "x$enable_gnutls" != "xno"; then
475         PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.2,
476         [
477                 AC_DEFINE(USE_GNUTLS, 1, gnutls)
478                 echo "Building with GnuTLS"
479                 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
480                 [
481                         dnl No linking against libgcrypt needed
482                 ],
483                 [
484                         dnl linking against libgcrypt *is* needed
485                         GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
486                 ])
487         ],
488         [
489                 echo "Building without gnutls"
490                 enable_gnutls=no
491         ])
492         AC_SUBST(GNUTLS_LIBS)
493         AC_SUBST(GNUTLS_CFLAGS)
496 dnl password encryption
497 OLDLIBS=$LIBS
498 LIBS=
499 case $host_os in
500         *dragonfly*)
501                 AC_SEARCH_LIBS(encrypt, cipher, [], AC_MSG_ERROR(['encrypt'-function not found.]))
502         ;;
503         *)
504                 AC_SEARCH_LIBS(encrypt, crypt, [], AC_MSG_ERROR(['encrypt'-function not found.]))
505         ;;
506 esac
507 CRYPT_LIBS=$LIBS
508 AC_SUBST(CRYPT_LIBS)
509 LIBS=$OLDLIBS
511 AC_ARG_WITH(passcrypt-key, [  --with-passcrypt-key=KEY     Key used to encode passwords (8 byte string)],
512             with_passcrypt_key="$withval", with_passcrypt_key="passkey0")
513 AC_SUBST(PASSCRYPT_KEY, $with_passcrypt_key)
515 dnl RC dir (will be default at a certain point in time)
516 AC_ARG_WITH(config-dir,    [  --with-config-dir=RCDIR      Local configuration dir (default: .claws-mail)],
517               ac_cv_with_config_dir="$withval", ac_cv_with_config_dir="")
519 dnl Set correct default value based on platform
520 if test x"$ac_cv_with_config_dir" = x""; then
521         if test x"$platform_win32" = xyes; then
522                 ac_cv_with_config_dir="Claws-mail"
523         else
524                 ac_cv_with_config_dir=".claws-mail"
525         fi
527 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
529 AC_ARG_WITH(password-encryption, [  --with-password-encryption=PROVIDER    Which cryptographic library to use for encrypting stored passwords (gnutls, old, default)],
530                                                 pwd_crypto="$withval", pwd_crypto="default")
532 if test x"$pwd_crypto" = xdefault; then
533         if test x"$enable_gnutls" = xyes; then
534                 if `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
535                         pwd_crypto="gnutls"
536                 fi
537         fi
539 if test x"$pwd_crypto" = xdefault; then
540         pwd_crypto="old"
543 case $pwd_crypto in
544         gnutls)
545                 if test x"$enable_gnutls" = xno; then
546                         AC_MSG_ERROR([GnuTLS password encryption requested but GnuTLS is not available.])
547                 fi
548                 if ! `$PKG_CONFIG --atleast-version=3.0 gnutls`; then
549                         AC_MSG_ERROR([GnuTLS version at least 3.0 is required for password encryption.])
550                 fi
551                 AC_DEFINE(PASSWORD_CRYPTO_GNUTLS, 1, Use GnuTLS for stored password encryption)
552                 ;;
553         old)
554                 AC_DEFINE(PASSWORD_CRYPTO_OLD, 1, Use old insecure method for stored password encryption)
555                 ;;
556         *)
557                 AC_MSG_ERROR([Unknown password encryption provider requested.])
558                 ;;
559 esac
562 dnl ************************
563 dnl ** GTK user interface **
564 dnl ************************
566 dnl Checks for GTK
567 AM_CONDITIONAL(GTK3, false)
568 AM_CONDITIONAL(GTK2, true)
569 if test x"$enable_gtk3" = x"yes"; then
570         PKG_CHECK_MODULES(GTK, gtk+-3.0 >= 3.0 cairo)
571         AM_CONDITIONAL(GTK3, true)
572         AM_CONDITIONAL(GTK2, false)
573 else
574         PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.16)
576 AC_SUBST(GTK_CFLAGS)
577 AC_SUBST(GTK_LIBS)
579 dnl enchant is used for spell checking
580 AC_MSG_CHECKING([whether to use enchant])
581 AC_MSG_RESULT($enable_enchant)
582 if test $enable_enchant = yes; then
583         PKG_CHECK_MODULES(ENCHANT, enchant >= 1.0.0,
584         [
585                 AC_DEFINE(USE_ENCHANT, 1, enchant)
586                 echo "Building with enchant"
587                 enable_enchant=yes
588                 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags enchant`"
589         ],
590         [
591                 echo "Building without enchant-notification"
592                 enable_enchant=no
593         ])
594         AC_SUBST(ENCHANT_CFLAGS)
595         AC_SUBST(ENCHANT_LIBS)
598 dnl want crash dialog
599 if test $enable_crash_dialog = yes; then
600 dnl check if GDB is somewhere
601         AC_CHECK_PROG(enable_crash_dialog, gdb, yes, no)
602         AC_MSG_CHECKING([whether to use crash dialog])
603         if test $enable_crash_dialog = yes; then
604                 AC_DEFINE(CRASH_DIALOG, 1, Pop up crash dialog)
605         fi
606         AC_MSG_RESULT($enable_crash_dialog)
609 dnl generic umpc
610 if test $enable_generic_umpc = yes; then
611         AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
612         AC_MSG_RESULT($enable_generic_umpc)
615 dnl Check for X-Face support
616 AC_MSG_CHECKING([whether to use compface])
617 if test x"$enable_compface" = xyes; then
618         AC_MSG_RESULT(yes)
619         AC_CHECK_LIB(compface, uncompface,
620                 [AC_DEFINE(HAVE_LIBCOMPFACE, 1, Define if you want compface support.)],
621                 [enable_compface=no])
622         if test x"$enable_compface" = xyes; then
623                 COMPFACE_LIBS="-lcompface"
624         else
625                 COMPFACE_LIBS=""
626         fi
627         AC_SUBST(COMPFACE_LIBS)
628 else
629         AC_MSG_RESULT(no)
632 dnl check for pthread support
633 AC_MSG_CHECKING([whether to use pthread])
634 if test x$enable_pthread = xno; then
635         AC_MSG_RESULT(no)
636 else
637         AC_MSG_RESULT(yes)
639         # For W32 we need to use a special ptrhead lib. In this case we can't
640         # use AC_CHECK_LIB because it has no means of checking for a
641         # library installed under a different name.  Checking for the
642         # header is okay.
643         if test -n "${pthread_name}" ; then
644            enable_pthread=yes
645         else
646         AC_CHECK_LIB(pthread, pthread_create, :, enable_pthread=no)
647         fi
648         AC_CHECK_HEADERS(pthread.h, :, enable_pthread=no)
650         if test x$enable_pthread = xyes; then
651                 AC_DEFINE(USE_PTHREAD, 1, Define if you have pthread)
652                 if test -z "${pthread_name}" ; then
653                 PTHREAD_LIBS="-lpthread"
654         fi
655         fi
658 AC_SUBST(PTHREAD_LIBS)
661 dnl Check whether we need to pass -lresolv
662 dnl We know that we don't need it for W32.
664 if test x$os_win32 = xno; then
665   t_oldLibs="$LIBS"
666   LIBS="$LIBS"
667   ac_cv_var__res_options=no
668   AC_TRY_LINK([#include <sys/types.h>
669              #include <sys/socket.h>
670              #include <netinet/in.h>
671              #include <arpa/nameser.h>
672              #include <resolv.h>],
673                 [_res.options = RES_INIT;],
674                 ac_cv_var__res_options=yes);
675   if test "$ac_cv_var__res_options" != "yes"; then
676         LIBRESOLV="-lresolv"
677   fi
678   LIBS="$t_oldLibs"
680   if test "x$LIBRESOLV" = "x"; then
681         AC_CHECK_LIB(resolv, res_query, [LIBRESOLV=-lresolv])
682         LIBS="$t_oldLibs"
683   fi
685 AC_SUBST(LIBRESOLV)
687 LIBS="$LIBS $LIBRESOLV"
689 dnl #######################################################################
690 dnl # Check for startup notification
691 dnl #######################################################################
692 if test "x$enable_startup_notification" = "xyes"; then
693         PKG_CHECK_MODULES(STARTUP_NOTIFICATION, libstartup-notification-1.0 >= 0.5,
694         [
695                 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, [Define if we're using libstartup-notification.])
696                 echo "Building with libstartup-notification"
697                 enable_startup_notification=yes
698         ],
699         [
700                 echo "Building without libstartup-notification"
701                 enable_startup_notification=no
702         ])
704         AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
705         AC_SUBST(STARTUP_NOTIFICATION_LIBS)
708 dnl #######################################################################
709 dnl # Check for D-Bus support
710 dnl #######################################################################
711 if test "x$enable_dbus" = "xyes"; then
712         PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60, dbus-glib-1 >= 0.60],
713         [
714                 AC_DEFINE(HAVE_DBUS_GLIB, 1, [Define if glib bindings of D-Bus are available])
715                 enable_dbus_glib=yes
716         ],
717         [
718                 echo "D-Bus requirements not met. D-Bus support not activated."
719                 enable_dbus_glib=no
720         ])
721         AC_SUBST(DBUS_CFLAGS)
722         AC_SUBST(DBUS_LIBS)
725 dnl #######################################################################
726 dnl # Configure address book support
727 dnl #######################################################################
729 dnl #######################################################################
730 dnl # Check for alternate address book support
731 dnl #######################################################################
732 AC_MSG_CHECKING([whether DBUS support for alternate address book is present])
733 if test x"$enable_dbus_glib" = xyes; then
734         AC_MSG_RESULT([yes])
735         AC_MSG_CHECKING([whether to enable alternate address book])
736         if test x"$enable_alternate_addressbook" = xyes; then
737                 AC_MSG_RESULT([yes])
738                 PKG_CHECK_MODULES(CONTACTS, [claws-contacts],
739                 [
740                         AC_DEFINE(USE_ALT_ADDRBOOK, 1, [Define if alternate address book is to be activated.])
741                         enable_alternate_addressbook=yes
742                         AC_SUBST(CONTACTS_CFLAGS)
743                         AC_SUBST(CONTACTS_LIBS)
744                 ],
745                 [
746                         enable_alternate_addressbook=no
747                 ])
748         else
749                 AC_MSG_RESULT([no])
750                 enable_alternate_addressbook=no
751         fi
752 else
753         AC_MSG_RESULT([no])
754         enable_alternate_addressbook=no
757 dnl #######################################################################
758 dnl # Check for old address book support
759 dnl #######################################################################
760 if test x"$enable_alternate_addressbook" = xno; then
761         dnl for LDAP support in addressbook
762         dnl no check for libraries; dynamically loaded
763         AC_MSG_CHECKING([whether to use LDAP])
764         if test x"$enable_ldap" = xno; then
765                 AC_MSG_RESULT(no)
766         elif test x"$enable_ldap" = xyes -a x"$enable_pthread" = xno; then
767                 AC_MSG_RESULT(no - LDAP support needs pthread support)
769                 enable_ldap=no
770         elif test x"$platform_win32" = xyes; then
771                 AC_MSG_RESULT(yes)
772                 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
773                 LDAP_LIBS="-lwldap32"
774                 AC_SUBST(LDAP_LIBS)
775         else
776                 AC_MSG_RESULT(yes)
778                 dnl check for available libraries, and pull them in
779                 AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
780                 AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
781                 AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
782                 AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
783                                  $LDAP_LIBS)
785                 AC_CHECK_HEADERS(ldap.h lber.h,
786                                  [ enable_ldap=yes ],
787                                  [ enable_ldap=no ])
789                 if test "$enable_ldap" = yes; then
790                         AC_CHECK_LIB(ldap, ldap_open,
791                                          [ enable_ldap=yes ],
792                                          [ enable_ldap=no ],
793                                          $LDAP_LIBS)
795                         AC_CHECK_LIB(ldap, ldap_start_tls_s,
796                                              [ ac_cv_have_tls=yes ],
797                                              [ ac_cv_have_tls=no ])
799                 fi
801                 AC_MSG_CHECKING([whether ldap library is available])
802                 AC_MSG_RESULT($enable_ldap)
804                 AC_MSG_CHECKING([whether TLS library is available])
805                 AC_MSG_RESULT($ac_cv_have_tls)
807                 if test "$enable_ldap" = yes; then
808                         AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
809                         LDAP_LIBS="$LDAP_LIBS -lldap"
810                         AC_SUBST(LDAP_LIBS)
811                         if test "$ac_cv_have_tls" = yes; then
812                                 AC_DEFINE(USE_LDAP_TLS, 1, Define if you want LDAP TLS support in addressbook.)
813                         fi
814                         dnl As of OpenLDAP API version 3000 a number of functions has
815                         dnl been deprecated. As Claws-mail compiles and runs on many
816                         dnl platforms and many versions of OpenLDAP we need to be able
817                         dnl to switch between the old and new API because new API has
818                         dnl added new functions replacing old ones and at the same time
819                         dnl old functions has been changed.
820                         dnl If cross-compiling defaults to enable deprecated features
821                         dnl for maximum portability
822                         AC_MSG_CHECKING([The API version of OpenLDAP])
823                         AC_RUN_IFELSE(
824                                 [AC_LANG_PROGRAM(
825                                  [#include <ldap.h>],
826                                  [if (LDAP_API_VERSION >= 3000)
827                                                 return 1
828                                 ])],
829                                 [AC_MSG_RESULT([version < 3000])
830                                  AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)],
831                                 [AC_MSG_RESULT([version >= 3000])
832                                  AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 1, Define if OpenLDAP API is at least version 3000.)],
833                                 [AC_MSG_RESULT([Enabling deprecated features in OpenLDAP])
834                                  AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)
835                                  AC_DEFINE(LDAP_DEPRECATED, 1, Define to activate deprecated features in OpenLDAP)]
836                         )
837                 fi
838         fi
840         dnl for JPilot support in addressbook
841         dnl no check for libraries; these are dynamically loaded
842         AC_MSG_CHECKING([whether to use JPilot])
843         if test "$enable_jpilot" = yes; then
844                 AC_MSG_RESULT(yes)
845                 AC_CHECK_HEADERS(pi-args.h pi-appinfo.h pi-address.h pi-version.h,
846                                  [ AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ],
847                                  [ enable_jpilot=no ])
848                 if test "$enable_jpilot" = no; then
849                         AC_CHECK_HEADERS(libpisock/pi-args.h libpisock/pi-appinfo.h libpisock/pi-address.h libpisock/pi-version.h,
850                                          [ enable_jpilot=yes
851                                            AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
852                 fi
854                 AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" enable_jpilot="no"])
855                 if test x"$enable_jpilot" = xyes; then
856                         AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
857                 else
858                         AC_MSG_NOTICE([JPilot support not available])
859                 fi
860                 AC_SUBST(JPILOT_LIBS)
861         else
862                 AC_MSG_RESULT(no)
863         fi
866 AM_CONDITIONAL(BUILD_ALTADDRBOOK, test x"$enable_alternate_addressbook" = x"yes")
868 dnl #######################################################################
869 dnl # Check for NetworkManager support
870 dnl #######################################################################
871 if test x"$enable_dbus_glib" = xyes; then
872         if test x"$enable_networkmanager" = xyes; then
873                 PKG_CHECK_MODULES(NETWORKMANAGER_SUPPORT, NetworkManager >= 0.6.2,
874                 [
875                         AC_DEFINE(HAVE_NETWORKMANAGER_SUPPORT, 1, [Define if NetworkManager support is to be included.])
876                         echo "Building with NetworkManager support"
877                         enable_networkmanager=yes
878                 ],
879                 [
880                         echo "NetworkManager not found."
881                         enable_networkmanager=no
882                 ])
883                 AC_SUBST(NETWORKMANAGER_SUPPORT_CFLAGS)
884         fi
885 else
886         echo "NetworkManager support deactivated as D-Bus requirements were not met."
887         enable_networkmanager=no
890 dnl Libetpan
891 AC_MSG_CHECKING([whether to use libetpan])
892 if test x"$enable_libetpan" = xyes; then
893         AC_MSG_RESULT(yes)
894         libetpan_result=no
895         AC_PATH_PROG(libetpanconfig, [libetpan-config])
896         if test "x$libetpanconfig" != "x"; then
897           CPPFLAGS="$CPPFLAGS `$libetpanconfig --cflags 2>/dev/null`"
898           AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
899           if test "x$libetpan_result" = "xyes"; then
900             AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
901             LIBS="$LIBS `$libetpanconfig --libs 2>/dev/null`"
902             AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
903             AC_MSG_RESULT([$libetpan_result])
904           fi
905         fi
906         if test "x$libetpan_result" = "xyes"; then
907            LIBETPAN_CPPFLAGS="`$libetpanconfig --cflags`"
908            LIBETPAN_LIBS="`$libetpanconfig --libs`"
909            LIBETPAN_VERSION=`$libetpanconfig --version | $AWK -F. '{printf "%d", ($1 * 100) + $2}'`
910            if test "$LIBETPAN_VERSION" -lt "57"; then
911                 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/])
912                 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
913                 AC_MSG_ERROR([libetpan 0.57 not found])
914            fi
915            AC_SUBST(LIBETPAN_FLAGS)
916            AC_SUBST(LIBETPAN_LIBS)
917            AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNTP support.)
918         else
919            AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/ ])
920            AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
921            AC_MSG_ERROR([libetpan 0.57 not found])
922         fi
923 else
924         AC_MSG_RESULT(no)
926 AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
928 AC_MSG_CHECKING([whether to use valgrind])
929 if test x$enable_valgrind = xyes; then
930         AC_MSG_RESULT(yes)
931         PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
932                           enable_valgrind=yes, enable_valgrind=no)
933         if test x"$enable_valgrind" = xyes; then
934                 AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
935         else
936                 AC_MSG_RESULT(not found)
937         fi
938 else
939         AC_MSG_RESULT(no)
941 AM_CONDITIONAL(CLAWS_VALGRIND, test x"$enable_valgrind" = x"yes")
943 dnl *************************
944 dnl ** section for plugins **
945 dnl *************************
947 PLUGINS=""
948 DISABLED_PLUGINS=""
949 MISSING_DEPS_PLUGINS=""
951 dnl First we set the enabled status - either enabled (yes), auto-enabled (auto)
952 dnl or (auto-)disabled (no for both)
954 dnl All plugins are auto-enabled except for Demo which is just there to help
955 dnl potential plugins writers.
957 AC_ARG_ENABLE(acpi_notifier-plugin,
958                 [  --disable-acpi_notifier-plugin  Do not build acpi_notifier plugin],
959                 [enable_acpi_notifier_plugin=$enableval], [enable_acpi_notifier_plugin=auto])
961 AC_ARG_ENABLE(address_keeper-plugin,
962                 [  --disable-address_keeper-plugin Do not build address_keeper plugin],
963                 [enable_address_keeper_plugin=$enableval], [enable_address_keeper_plugin=auto])
965 AC_ARG_ENABLE(archive-plugin,
966                 [  --disable-archive-plugin        Do not build archive plugin],
967                 [enable_archive_plugin=$enableval], [enable_archive_plugin=auto])
969 AC_ARG_ENABLE(att_remover-plugin,
970                 [  --disable-att_remover-plugin    Do not build att_remover plugin],
971                 [enable_att_remover_plugin=$enableval], [enable_att_remover_plugin=auto])
973 AC_ARG_ENABLE(attachwarner-plugin,
974                 [  --disable-attachwarner-plugin   Do not build attachwarner plugin],
975                 [enable_attachwarner_plugin=$enableval], [enable_attachwarner_plugin=auto])
977 AC_ARG_ENABLE(bogofilter-plugin,
978                 [  --disable-bogofilter-plugin     Do not build bogofilter plugin],
979                 [enable_bogofilter_plugin=$enableval], [enable_bogofilter_plugin=auto])
981 AC_ARG_ENABLE(bsfilter-plugin,
982                 [  --disable-bsfilter-plugin       Do not build bsfilter plugin],
983                 [enable_bsfilter_plugin=$enableval], [enable_bsfilter_plugin=auto])
985 AC_ARG_ENABLE(clamd-plugin,
986                 [  --disable-clamd-plugin          Do not build clamd plugin],
987                 [enable_clamd_plugin=$enableval], [enable_clamd_plugin=auto])
989 AC_ARG_ENABLE(fancy-plugin,
990                 [  --disable-fancy-plugin          Do not build fancy plugin],
991                 [enable_fancy_plugin=$enableval], [enable_fancy_plugin=auto])
993 AC_ARG_ENABLE(fetchinfo-plugin,
994                 [  --disable-fetchinfo-plugin      Do not build fetchinfo plugin],
995                 [enable_fetchinfo_plugin=$enableval], [enable_fetchinfo_plugin=auto])
997 AC_ARG_ENABLE(gdata-plugin,
998                 [  --disable-gdata-plugin          Do not build gdata plugin],
999                 [enable_gdata_plugin=$enableval], [enable_gdata_plugin=auto])
1001 AC_ARG_ENABLE(libravatar-plugin,
1002                 [  --disable-libravatar-plugin     Do not build libravatar  plugin],
1003                 [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
1005 AC_ARG_ENABLE(mailmbox-plugin,
1006                 [  --disable-mailmbox-plugin       Do not build mailmbox plugin],
1007                 [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
1009 AC_ARG_ENABLE(managesieve-plugin,
1010                 [  --disable-managesieve-plugin    Do not build managesieve plugin],
1011                 [enable_managesieve_plugin=$enableval], [enable_managesieve_plugin=auto])
1013 AC_ARG_ENABLE(newmail-plugin,
1014                 [  --disable-newmail-plugin        Do not build newmail plugin],
1015                 [enable_newmail_plugin=$enableval], [enable_newmail_plugin=auto])
1017 AC_ARG_ENABLE(notification-plugin,
1018                 [  --disable-notification-plugin   Do not build notification plugin],
1019                 [enable_notification_plugin=$enableval], [enable_notification_plugin=auto])
1021 AC_ARG_ENABLE(pdf_viewer-plugin,
1022                 [  --disable-pdf_viewer-plugin     Do not build pdf_viewer plugin],
1023                 [enable_pdf_viewer_plugin=$enableval], [enable_pdf_viewer_plugin=auto])
1025 AC_ARG_ENABLE(perl-plugin,
1026                 [  --disable-perl-plugin           Do not build perl plugin],
1027                 [enable_perl_plugin=$enableval], [enable_perl_plugin=auto])
1029 AC_ARG_ENABLE(python-plugin,
1030                 [  --disable-python-plugin         Do not build python plugin],
1031                 [enable_python_plugin=$enableval], [enable_python_plugin=auto])
1033 AC_ARG_ENABLE(pgpcore-plugin,
1034                 [  --disable-pgpcore-plugin        Do not build pgpcore plugin],
1035                 [enable_pgpcore_plugin=$enableval], [enable_pgpcore_plugin=auto])
1037 AC_ARG_ENABLE(pgpmime-plugin,
1038                 [  --disable-pgpmime-plugin        Do not build pgpmime plugin],
1039                 [enable_pgpmime_plugin=$enableval], [enable_pgpmime_plugin=auto])
1041 AC_ARG_ENABLE(pgpinline-plugin,
1042                 [  --disable-pgpinline-plugin      Do not build pgpinline plugin],
1043                 [enable_pgpinline_plugin=$enableval], [enable_pgpinline_plugin=auto])
1045 AC_ARG_ENABLE(rssyl-plugin,
1046                 [  --disable-rssyl-plugin          Do not build rssyl plugin],
1047                 [enable_rssyl_plugin=$enableval], [enable_rssyl_plugin=auto])
1049 AC_ARG_ENABLE(smime-plugin,
1050                 [  --disable-smime-plugin          Do not build smime plugin],
1051                 [enable_smime_plugin=$enableval], [enable_smime_plugin=auto])
1053 AC_ARG_ENABLE(spamassassin-plugin,
1054                 [  --disable-spamassassin-plugin   Do not build spamassassin plugin],
1055                 [enable_spamassassin_plugin=$enableval], [enable_spamassassin_plugin=auto])
1057 AC_ARG_ENABLE(spam_report-plugin,
1058                 [  --disable-spam_report-plugin    Do not build spam_report plugin],
1059                 [enable_spam_report_plugin=$enableval], [enable_spam_report_plugin=auto])
1061 AC_ARG_ENABLE(tnef_parse-plugin,
1062                 [  --disable-tnef_parse-plugin     Do not build tnef_parse plugin],
1063                 [enable_tnef_parse_plugin=$enableval], [enable_tnef_parse_plugin=auto])
1065 AC_ARG_ENABLE(vcalendar-plugin,
1066                 [  --disable-vcalendar-plugin      Do not build vcalendar plugin],
1067                 [enable_vcalendar_plugin=$enableval], [enable_vcalendar_plugin=auto])
1069 dnl disabled by default
1070 AC_ARG_ENABLE(demo-plugin,
1071                 [  --enable-demo-plugin         Build demo plugin],
1072                 [enable_demo_plugin=$enableval], [enable_demo_plugin=no])
1075 dnl Then we check (unconditionnaly) for plugins dependencies
1076 dnl Some dependencies are optional, some mandatories. This is taken care of
1077 dnl later.
1079 dnl During this dependancy check we do the checks themselves, define HAVE_X to
1080 dnl either yes or no, and do the AC_SUBST calls.
1082 dnl Archive:            libarchive
1083 dnl Fancy:              Webkit, curl, optionally libsoup-gnome
1084 dnl Gdata:              libgdata
1085 dnl Libravatar:         libcurl
1086 dnl Notification:       optionally libnotify  unity/messaging-menu
1087 dnl                                libcanberra_gtk hotkey
1088 dnl Pdf-Viewer:         libpoppler
1089 dnl Perl:               sed perl
1090 dnl PGP/Core:           libgpgme
1091 dnl PGP/Mime:           pgpcore libgpgme
1092 dnl PGP/Inline:         pgpcore libgpgme
1093 dnl S/Mime:             pgpcore libgpgme
1094 dnl Python:             Python
1095 dnl RSSyl:              expat libcurl
1096 dnl SpamReport:         libcurl
1097 dnl vCalendar:          libcurl
1099 dnl libcurl ********************************************************************
1100 PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
1101 AC_SUBST(CURL_LIBS)
1102 AC_SUBST(CURL_CFLAGS)
1104 dnl expat **********************************************************************
1105 PKG_CHECK_MODULES(EXPAT, expat, HAVE_EXPAT=yes, HAVE_EXPAT=no)
1107 if test x"$HAVE_EXPAT" = xno; then
1108         AC_CHECK_HEADER(expat.h, [expat_header=yes], [expat_header=no])
1109         AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [expat_lib=no])
1110         if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
1111                 HAVE_EXPAT=yes
1112                 EXPAT_CFLAGS=""
1113                 EXPAT_LIBS="-lexpat"
1114         fi
1117 AC_SUBST(EXPAT_CFLAGS)
1118 AC_SUBST(EXPAT_LIBS)
1120 dnl webkit *********************************************************************
1121 PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 1.1.14, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
1122 AC_SUBST(WEBKIT_LIBS)
1123 AC_SUBST(WEBKIT_CFLAGS)
1125 dnl libsoup ********************************************************************
1126 PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
1127 if test x"$HAVE_LIBSOUP" = xyes; then
1128         AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
1130 AC_SUBST(LIBSOUP_CFLAGS)
1131 AC_SUBST(LIBSOUP_LIBS)
1133 dnl libsoup-gnome **************************************************************
1134 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
1135 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
1136         AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
1138 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
1139 AC_SUBST(LIBSOUP_GNOME_LIBS)
1141 dnl libarchive *****************************************************************
1142 AC_CHECK_LIB([archive], [archive_read_new],
1143                        ARCHIVE_LIBS=-larchive
1144                        HAVE_ARCHIVE=yes
1145                        AC_SUBST(ARCHIVE_LIBS),
1146                        HAVE_ARCHIVE=no
1147                        )
1149 dnl libgdata *******************************************************************
1150 PKG_CHECK_MODULES(GDATA, libgdata >= 0.17.1, HAVE_GDATA=yes, HAVE_GDATA=no)
1151 AC_SUBST(GDATA_CFLAGS)
1152 AC_SUBST(GDATA_LIBS)
1154 dnl Poppler ********************************************************************
1155 PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
1156 AC_SUBST(POPPLER_LIBS)
1157 AC_SUBST(POPPLER_CFLAGS)
1159 dnl check for Poppler extra features that we conditionally support
1160 if test x"$HAVE_POPPLER" = xyes; then
1161         OLD_CFLAGS=$CFLAGS
1162         CFLAGS="$POPPLER_CFLAGS $GTK_CFLAGS $GLIB_CFLAGS"
1163         AC_CHECK_DECL(POPPLER_DEST_NAMED,
1164                 [AC_DEFINE([HAVE_POPPLER_DEST_NAMED], [], [Description])],
1165                 ,[#include <poppler-action.h>])
1166         AC_CHECK_DECL(POPPLER_DEST_XYZ,
1167                 [AC_DEFINE([HAVE_POPPLER_DEST_XYZ], [], [Description])],
1168                 ,[#include <poppler-action.h>])
1169         CFLAGS=$OLD_CFLAGS
1172 dnl perl ***********************************************************************
1173 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
1174 if test x"$HAVE_PERL" = xyes; then
1175         AC_MSG_CHECKING(for perl >= 5.8.0)
1176         PERL_VER=`perl -e 'print $] > 5.0079999?"yes":"no"'`
1177         if test "$PERL_VER" = "yes"; then
1178                 AC_MSG_RESULT(yes)
1179         else
1180                 AC_MSG_RESULT(no)
1181                 HAVE_PERL=no
1182         fi
1184 if test x"$HAVE_PERL" = xyes; then
1185         AC_MSG_CHECKING(for Perl compile flags)
1186         PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
1187         PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
1188         PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm//'`
1189         PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb//'`
1190         PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm//'`
1191         PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc//'`
1192         AC_MSG_RESULT(ok)
1193         AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
1194         
1195         if test x"$HAVE_PERL" = xyes; then
1196                 AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)], 
1197                                              [ HAVE_LIBPERL=no ])
1198         fi
1199         if test x"$HAVE_LIBPERL" = xno; then
1200                 LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
1201                 LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
1202                 AC_MSG_CHECKING([for libperl.so])
1203                 if test -f "$LIBPERL_PREFIX/libperl.so"; then
1204                         AC_MSG_RESULT(yes)
1205                         HAVE_LIBPERL=yes
1206                 else
1207                         AC_MSG_RESULT(no)
1208                 fi      
1209         fi
1210         PERL="perl"
1211         AC_SUBST(PERL)
1212         AC_SUBST(PERL_CFLAGS)
1213         AC_SUBST(PERL_LDFLAGS)
1216 dnl Gpgme **********************************************************************
1217 AM_PATH_GPGME(1.0.0, HAVE_GPGME=yes, HAVE_GPGME=no)
1218 if test x"$HAVE_GPGME" = xyes; then
1219         AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.)
1220         AM_PATH_GPGME(1.1.1, AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1, [Define if GPGME supports PKA.]))
1223 dnl Python *********************************************************************
1224 AM_PATH_PYTHON([2.5], [
1225         AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config)
1226         if test x"$PYTHON_CONFIG" = x"" ; then
1227                 AC_PATH_PROG(PYTHON_CONFIG, python-config)
1228         fi
1229         if test x"$PYTHON_CONFIG" != x""; then
1230                 PYTHON_CFLAGS=`$PYTHON_CONFIG --includes`
1231                 PYTHON_LIBS=`$PYTHON_CONFIG --libs`
1232                 PYTHON_PREFIX=`$PYTHON_CONFIG --prefix`
1233                 HAVE_PYTHON=yes
1234         else
1235                 AC_MSG_WARN(python-config not found. Maybe you need to install development packages for Python.)
1236                 HAVE_PYTHON=no
1237         fi
1239         if test x"$HAVE_PYTHON" = xyes; then
1240                 _save_libs="$LIBS"
1241                 if test x"$platform_win32" = xno; then
1242                         # libpython.so
1243                         PYTHON_SHARED_LIB="libpython${PYTHON_VERSION}.so"
1244                         AC_CHECK_LIB(dl, dlopen, [LIBS="-ldl"])
1245                         AC_MSG_CHECKING([whether to dlopen $PYTHON_SHARED_LIB works])
1246                         AC_RUN_IFELSE(
1247                                 [AC_LANG_PROGRAM(
1248                                         [#include <dlfcn.h>
1249                                          #define PYTHON_SO_FILE "${PYTHON_SHARED_LIB}"
1250                                         ],
1251                                         [if (!dlopen(PYTHON_SO_FILE, RTLD_NOW | RTLD_GLOBAL)) return 1; return 0;])
1252                                 ],
1253                                 [found_libpython_so="yes"],
1254                                 [found_libpython_so="no"],
1255                                 [AC_MSG_FAILURE([cross-compiling not supported])])
1256                 fi
1257                 if test x"$found_libpython_so" != x"yes"; then
1258                         AC_MSG_RESULT(no)
1259                         AC_MSG_WARN(Could not find Python shared libary: ${PYTHON_SHARED_LIB}. Maybe you need to install development packages for Python.)
1260                         HAVE_PYTHON=no
1261                 else
1262                         AC_MSG_RESULT(yes)
1263                 fi
1264                 LIBS="$_save_libs";
1265         fi
1266         if test x"$HAVE_PYTHON" = xyes; then
1267                 PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.10.3, [AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])], HAVE_PYTHON=no)
1268         fi
1270 AC_SUBST(PYTHON_SHARED_LIB)
1271 AC_SUBST(PYTHON_CFLAGS)
1272 AC_SUBST(PYTHON_LIBS)
1273 AC_SUBST(PYGTK_CFLAGS)
1274 AC_SUBST(PYGTK_LIBS)
1276 dnl libnotify ******************************************************************
1277 PKG_CHECK_MODULES(libnotify, libnotify >= 0.4.3, HAVE_LIBNOTIFY=yes, HAVE_LIBNOTIFY=no)
1278 if test x"$HAVE_LIBNOTIFY" = xyes; then
1279         AC_DEFINE(HAVE_LIBNOTIFY, 1, [Define if libnotify support is enabled])
1281 AC_SUBST(libnotify_CFLAGS)
1282 AC_SUBST(libnotify_LIBS)
1284 dnl libcanberra-gtk ************************************************************
1285 PKG_CHECK_MODULES(libcanberra_gtk, libcanberra-gtk >= 0.6, HAVE_LIBCANBERRA_GTK=yes, HAVE_LIBCANBERRA_GTK=no)
1286 if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1287         AC_DEFINE(HAVE_LIBCANBERRA_GTK, 1, [Define if libcanberra-gtk support is enabled])
1289 AC_SUBST(libcanberra_gtk_CFLAGS)
1290 AC_SUBST(libcanberra_gtk_LIBS)
1292 dnl unity/messaging-menu *******************************************************
1293 PKG_CHECK_MODULES(unity, unity messaging-menu, HAVE_UNITY=yes, HAVE_UNITY=no)
1294 if test x"$HAVE_UNITY" = xyes; then
1295         AC_DEFINE(NOTIFICATION_INDICATOR, 1, [Activate support for unity and messaging-menu])
1297 AC_SUBST(unity_CFLAGS)
1298 AC_SUBST(unity_LIBS)
1300 dnl hotkeys ********************************************************************
1301 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)
1302 if test x"$HAVE_HOTKEYS" = xyes; then
1303         AC_DEFINE(NOTIFICATION_HOTKEYS, 1, Activate support for global hotkeys)
1305 AC_SUBST(CM_NP_HOTKEY_CFLAGS)
1306 AC_SUBST(CM_NP_HOTKEY_LIBS)
1308 dnl Third, we now cross the requested plugins and the available dependencies
1309 dnl If some dependencies are missing and the plugin was explicitely enabled,
1310 dnl we error out, else we only inform.
1312 AC_MSG_CHECKING([whether to build acpi_notifier plugin])
1313 if test x"$enable_acpi_notifier_plugin" != xno; then
1314         PLUGINS="$PLUGINS acpi_notifier"
1315         AC_MSG_RESULT(yes)
1316 else
1317         DISABLED_PLUGINS="$DISABLED_PLUGINS acpi_notifier"
1318         AC_MSG_RESULT(no)
1321 AC_MSG_CHECKING([whether to build address_keeper plugin])
1322 if test x"$enable_address_keeper_plugin" != xno; then
1323         PLUGINS="$PLUGINS address_keeper"
1324         AC_MSG_RESULT(yes)
1325 else
1326         DISABLED_PLUGINS="$DISABLED_PLUGINS address_keeper"
1327         AC_MSG_RESULT(no)
1330 AC_MSG_CHECKING([whether to build archive plugin])
1331 if test x"$enable_archive_plugin" != xno; then
1332         dependencies_missing=""
1334         if test x"$HAVE_ARCHIVE" = xno; then
1335                 dependencies_missing="libarchive $dependencies_missing"
1336         fi
1338         if test x"$dependencies_missing" = x; then
1339                 PLUGINS="$PLUGINS archive"
1340                 AC_MSG_RESULT(yes)
1341         elif test x"$enable_archive_plugin" = xauto; then
1342                 AC_MSG_RESULT(no)
1343                 AC_MSG_WARN("Plugin archive will not be built; missing $dependencies_missing")
1344                 enable_archive_plugin=no
1345                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS archive"
1346         else
1347                 AC_MSG_RESULT(no)
1348                 AC_MSG_ERROR("Plugin archive cannot be built; missing $dependencies_missing")
1349         fi
1350 else
1351         DISABLED_PLUGINS="$DISABLED_PLUGINS archive"
1352         AC_MSG_RESULT(no)
1355 AC_MSG_CHECKING([whether to build att_remover plugin])
1356 if test x"$enable_att_remover_plugin" != xno; then
1357         PLUGINS="$PLUGINS att_remover"
1358         AC_MSG_RESULT(yes)
1359 else
1360         DISABLED_PLUGINS="$DISABLED_PLUGINS att_remover"
1361         AC_MSG_RESULT(no)
1364 AC_MSG_CHECKING([whether to build attachwarner plugin])
1365 if test x"$enable_attachwarner_plugin" != xno; then
1366         PLUGINS="$PLUGINS attachwarner"
1367         AC_MSG_RESULT(yes)
1368 else
1369         DISABLED_PLUGINS="$DISABLED_PLUGINS attachwarner"
1370         AC_MSG_RESULT(no)
1373 AC_MSG_CHECKING([whether to build bogofilter plugin])
1374 if test x"$enable_bogofilter_plugin" != xno; then
1375         PLUGINS="$PLUGINS bogofilter"
1376         AC_MSG_RESULT(yes)
1377 else
1378         DISABLED_PLUGINS="$DISABLED_PLUGINS bogofilter"
1379         AC_MSG_RESULT(no)
1382 AC_MSG_CHECKING([whether to build bsfilter plugin])
1383 if test x"$enable_bsfilter_plugin" != xno; then
1384         PLUGINS="$PLUGINS bsfilter"
1385         AC_MSG_RESULT(yes)
1386 else
1387         DISABLED_PLUGINS="$DISABLED_PLUGINS bsfilter"
1388         AC_MSG_RESULT(no)
1391 AC_MSG_CHECKING([whether to build clamd plugin])
1392 if test x"$enable_clamd_plugin" != xno; then
1393         PLUGINS="$PLUGINS clamd"
1394         AC_MSG_RESULT(yes)
1395 else
1396         DISABLED_PLUGINS="$DISABLED_PLUGINS clamd"
1397         AC_MSG_RESULT(no)
1400 AC_MSG_CHECKING([whether to build demo plugin])
1401 if test x"$enable_demo_plugin" != xno; then
1402         PLUGINS="$PLUGINS demo"
1403         AC_MSG_RESULT(yes)
1404 else
1405         DISABLED_PLUGINS="$DISABLED_PLUGINS demo"
1406         AC_MSG_RESULT(no)
1409 AC_MSG_CHECKING([whether to build fancy plugin])
1410 if test x"$enable_fancy_plugin" != xno; then
1411         dependencies_missing=""
1413         if test x"$HAVE_WEBKIT" = xno; then
1414                 dependencies_missing="libwebkit-1.0 $dependencies_missing"
1415         fi
1416         if test x"$HAVE_CURL" = xno; then
1417                 dependencies_missing="libcurl $dependencies_missing"
1418         fi
1420         if test x"$dependencies_missing" = x; then
1421                 PLUGINS="$PLUGINS fancy"
1422                 AC_MSG_RESULT(yes)
1423         elif test x"$enable_fancy_plugin" = xauto; then
1424                 AC_MSG_RESULT(no)
1425                 AC_MSG_WARN("Plugin fancy will not be built; missing $dependencies_missing")
1426                 enable_fancy_plugin=no
1427                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS fancy"
1428         else
1429                 AC_MSG_RESULT(no)
1430                 AC_MSG_ERROR("Plugin fancy cannot be built; missing $dependencies_missing")
1431         fi
1432 else
1433         DISABLED_PLUGINS="$DISABLED_PLUGINS fancy"
1434         AC_MSG_RESULT(no)
1437 AC_MSG_CHECKING([whether to build fetchinfo plugin])
1438 if test x"$enable_fetchinfo_plugin" != xno; then
1439         PLUGINS="$PLUGINS fetchinfo"
1440         AC_MSG_RESULT(yes)
1441 else
1442         DISABLED_PLUGINS="$DISABLED_PLUGINS fetchinfo"
1443         AC_MSG_RESULT(no)
1446 AC_MSG_CHECKING([whether to build gdata plugin])
1447 if test x"$enable_gdata_plugin" != xno; then
1448         dependencies_missing=""
1450         if test x"$HAVE_GDATA" = xno; then
1451                 dependencies_missing="libgdata $dependencies_missing"
1452         fi
1454         if test x"$dependencies_missing" = x; then
1455                 PLUGINS="$PLUGINS gdata"
1456                 AC_MSG_RESULT(yes)
1457         elif test x"$enable_gdata_plugin" = xauto; then
1458                 AC_MSG_RESULT(no)
1459                 AC_MSG_WARN("Plugin gdata will not be built; missing $dependencies_missing")
1460                 enable_gdata_plugin=no
1461                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS gdata"
1462         else
1463                 AC_MSG_RESULT(no)
1464                 AC_MSG_ERROR("Plugin gdata cannot be built; missing $dependencies_missing")
1465         fi
1466 else
1467         DISABLED_PLUGINS="$DISABLED_PLUGINS gdata"
1468         AC_MSG_RESULT(no)
1471 AC_MSG_CHECKING([whether to build libravatar plugin])
1472 if test x"$enable_libravatar_plugin" != xno; then
1473         dependencies_missing=""
1475         if test x"$HAVE_CURL" = xno; then
1476                 dependencies_missing="libcurl $dependencies_missing"
1477         fi
1479         if test x"$dependencies_missing" = x; then
1480                 PLUGINS="$PLUGINS libravatar"
1481                 AC_MSG_RESULT(yes)
1482         elif test x"$enable_libravatar_plugin" = xauto; then
1483                 AC_MSG_RESULT(no)
1484                 AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
1485                 enable_libravatar_plugin=no
1486                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
1487         else
1488                 AC_MSG_RESULT(no)
1489                 AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
1490         fi
1491 else
1492         DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
1493         AC_MSG_RESULT(no)
1496 AC_MSG_CHECKING([whether to build mailmbox plugin])
1497 if test x"$enable_mailmbox_plugin" != xno; then
1498         PLUGINS="$PLUGINS mailmbox"
1499         AC_MSG_RESULT(yes)
1500 else
1501         DISABLED_PLUGINS="$DISABLED_PLUGINS mailmbox"
1502         AC_MSG_RESULT(no)
1505 AC_MSG_CHECKING([whether to build managesieve plugin])
1506 if test x"$enable_managesieve_plugin" != xno; then
1507         PLUGINS="$PLUGINS managesieve"
1508         AC_MSG_RESULT(yes)
1509 else
1510         DISABLED_PLUGINS="$DISABLED_PLUGINS managesieve"
1511         AC_MSG_RESULT(no)
1514 AC_MSG_CHECKING([whether to build newmail plugin])
1515 if test x"$enable_newmail_plugin" != xno; then
1516         PLUGINS="$PLUGINS newmail"
1517         AC_MSG_RESULT(yes)
1518 else
1519         DISABLED_PLUGINS="$DISABLED_PLUGINS newmail"
1520         AC_MSG_RESULT(no)
1523 AC_MSG_CHECKING([whether to build notification plugin])
1524 if test x"$enable_notification_plugin" != xno; then
1525         PLUGINS="$PLUGINS notification"
1526         AC_MSG_RESULT(yes)
1528         AC_DEFINE(NOTIFICATION_POPUP, 1, Activate notification popup)
1529         AC_DEFINE(NOTIFICATION_BANNER, 1, Activate notification banner)
1530         AC_DEFINE(NOTIFICATION_COMMAND, 1, Activate notification shell command)
1531         AC_DEFINE(NOTIFICATION_TRAYICON, 1, Activate notification trayicon)
1532         if test x"$platform_win32" = xno; then
1533                 AC_DEFINE(NOTIFICATION_LCDPROC, 1, Activate lcdproc support)
1534         fi
1536         notification_features="banner command"
1537         notification_missing_dependencies=""
1538         if test x"$HAVE_HOTKEYS" = xyes; then
1539                 notification_features="$notification_features hotkeys"
1540         else
1541                 notification_missing_dependencies="$notification_missing_dependencies hotkeys"
1542         fi
1543         notification_features="$notification_features lcdproc"
1544         if test x"$HAVE_UNITY" = xyes; then
1545                 notification_features="$notification_features unity/messaging-menu"
1546         else
1547                 notification_missing_dependencies="$notification_missing_dependencies unity/messaging-menu"
1548         fi
1549         if test x"$HAVE_LIBNOTIFY" = xyes; then
1550                 notification_features="$notification_features libnotify"
1551         else
1552                 notification_missing_dependencies="$notification_missing_dependencies libnotify"
1553         fi
1554         if test x"$HAVE_LIBCANBERRA_GTK" = xyes; then
1555                 notification_features="$notification_features libcanberra-gtk"
1556         else
1557                 notification_missing_dependencies="$notification_missing_dependencies libcanberra-gtk"
1558         fi
1559         notification_features="$notification_features popup trayicon"
1560 else
1561         DISABLED_PLUGINS="$DISABLED_PLUGINS notification"
1562         AC_MSG_RESULT(no)
1565 AC_MSG_CHECKING([whether to build pdf_viewer plugin])
1566 if test x"$enable_pdf_viewer_plugin" != xno; then
1567         dependencies_missing=""
1569         if test x"$HAVE_POPPLER" = xno; then
1570                 dependencies_missing="libpoppler-glib $dependencies_missing"
1571         fi
1573         if test x"$dependencies_missing" = x; then
1574                 PLUGINS="$PLUGINS pdf_viewer"
1575                 AC_MSG_RESULT(yes)
1576         elif test x"$enable_pdf_viewer_plugin" = xauto; then
1577                 AC_MSG_RESULT(no)
1578                 AC_MSG_WARN("Plugin pdf_viewer will not be built; missing $dependencies_missing")
1579                 enable_pdf_viewer_plugin=no
1580                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pdf_viewer"
1581         else
1582                 AC_MSG_RESULT(no)
1583                 AC_MSG_ERROR("Plugin pdf_viewer cannot be built; missing $dependencies_missing")
1584         fi
1585 else
1586         DISABLED_PLUGINS="$DISABLED_PLUGINS pdf_viewer"
1587         AC_MSG_RESULT(no)
1590 AC_MSG_CHECKING([whether to build perl plugin])
1591 if test x"$enable_perl_plugin" != xno; then
1592         dependencies_missing=""
1594         if test x"$HAVE_LIBPERL" = xno; then
1595                 dependencies_missing="libperl $dependencies_missing"
1596         fi
1598         if test x"$dependencies_missing" = x; then
1599                 PLUGINS="$PLUGINS perl"
1600                 AC_MSG_RESULT(yes)
1601         elif test x"$enable_perl_plugin" = xauto; then
1602                 AC_MSG_RESULT(no)
1603                 AC_MSG_WARN("Plugin perl will not be built; missing $dependencies_missing")
1604                 enable_perl_plugin=no
1605                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS perl"
1606         else
1607                 AC_MSG_RESULT(no)
1608                 AC_MSG_ERROR("Plugin perl cannot be built; missing $dependencies_missing")
1609         fi
1610 else
1611         DISABLED_PLUGINS="$DISABLED_PLUGINS perl"
1612         AC_MSG_RESULT(no)
1615 AC_MSG_CHECKING([whether to build python plugin])
1616 if test x"$enable_python_plugin" != xno; then
1617         dependencies_missing=""
1619         if test x"$HAVE_PYTHON" = xno; then
1620                 dependencies_missing="python $dependencies_missing"
1621         fi
1623         if test x"$dependencies_missing" = x; then
1624                 PLUGINS="$PLUGINS python"
1625                 AC_MSG_RESULT(yes)
1626         elif test x"$enable_python_plugin" = xauto; then
1627                 AC_MSG_RESULT(no)
1628                 AC_MSG_WARN("Plugin python will not be built; missing $dependencies_missing")
1629                 enable_python_plugin=no
1630                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS python"
1631         else
1632                 AC_MSG_RESULT(no)
1633                 AC_MSG_ERROR("Plugin python cannot be built; missing $dependencies_missing")
1634         fi
1635 else
1636         DISABLED_PLUGINS="$DISABLED_PLUGINS python"
1637         AC_MSG_RESULT(no)
1640 AC_MSG_CHECKING([whether to build pgpcore plugin])
1641 if test x"$enable_pgpcore_plugin" != xno; then
1642         dependencies_missing=""
1644         if test x"$HAVE_GPGME" = xno; then
1645                 dependencies_missing="libgpgme $dependencies_missing"
1646         fi
1648         if test x"$dependencies_missing" = x; then
1649                 PLUGINS="$PLUGINS pgpcore"
1650                 AC_MSG_RESULT(yes)
1651         elif test x"$enable_pgpcore_plugin" = xauto; then
1652                 AC_MSG_RESULT(no)
1653                 AC_MSG_WARN("Plugin pgpcore will not be built; missing $dependencies_missing")
1654                 enable_pgpcore_plugin=no
1655                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpcore"
1656         else
1657                 AC_MSG_RESULT(no)
1658                 AC_MSG_ERROR("Plugin pgpcore cannot be built; missing $dependencies_missing")
1659         fi
1660 else
1661         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpcore"
1662         AC_MSG_RESULT(no)
1665 AC_MSG_CHECKING([whether to build pgpmime plugin])
1666 if test x"$enable_pgpmime_plugin" != xno; then
1667         dependencies_missing=""
1669         if test x"$HAVE_GPGME" = xno; then
1670                 dependencies_missing="libgpgme $dependencies_missing"
1671         fi
1672         if test x"$enable_pgpcore_plugin" = xno; then
1673                 dependencies_missing="pgpcore plugin $dependencies_missing"
1674         fi
1676         if test x"$dependencies_missing" = x; then
1677                 PLUGINS="$PLUGINS pgpmime"
1678                 AC_MSG_RESULT(yes)
1679         elif test x"$enable_pgpmime_plugin" = xauto; then
1680                 AC_MSG_RESULT(no)
1681                 AC_MSG_WARN("Plugin pgpmime will not be built; missing $dependencies_missing")
1682                 enable_pgpmime_plugin=no
1683                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpmime"
1684         else
1685                 AC_MSG_RESULT(no)
1686                 AC_MSG_ERROR("Plugin pgpmime cannot be built; missing $dependencies_missing")
1687         fi
1688 else
1689         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpmime"
1690         AC_MSG_RESULT(no)
1693 AC_MSG_CHECKING([whether to build pgpinline plugin])
1694 if test x"$enable_pgpinline_plugin" != xno; then
1695         dependencies_missing=""
1697         if test x"$HAVE_GPGME" = xno; then
1698                 dependencies_missing="libgpgme $dependencies_missing"
1699         fi
1700         if test x"$enable_pgpcore_plugin" = xno; then
1701                 dependencies_missing="pgpcore plugin $dependencies_missing"
1702         fi
1704         if test x"$dependencies_missing" = x; then
1705                 PLUGINS="$PLUGINS pgpinline"
1706                 AC_MSG_RESULT(yes)
1707         elif test x"$enable_pgpinline_plugin" = xauto; then
1708                 AC_MSG_RESULT(no)
1709                 AC_MSG_WARN("Plugin pgpinline will not be built; missing $dependencies_missing")
1710                 enable_pgpinline_plugin=no
1711                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS pgpinline"
1712         else
1713                 AC_MSG_RESULT(no)
1714                 AC_MSG_ERROR("Plugin pgpinline cannot be built; missing $dependencies_missing")
1715         fi
1716 else
1717         DISABLED_PLUGINS="$DISABLED_PLUGINS pgpinline"
1718         AC_MSG_RESULT(no)
1721 AC_MSG_CHECKING([whether to build rssyl plugin])
1722 if test x"$enable_rssyl_plugin" != xno; then
1723         dependencies_missing=""
1725         if test x"$HAVE_EXPAT" = xno; then
1726                 dependencies_missing="expat $dependencies_missing"
1727         fi
1728         if test x"$HAVE_CURL" = xno; then
1729                 dependencies_missing="libcurl $dependencies_missing"
1730         fi
1732         if test x"$dependencies_missing" = x; then
1733                 PLUGINS="$PLUGINS rssyl"
1734                 AC_MSG_RESULT(yes)
1735         elif test x"$enable_rssyl_plugin" = xauto; then
1736                 AC_MSG_RESULT(no)
1737                 AC_MSG_WARN("Plugin rssyl will not be built; missing $dependencies_missing")
1738                 enable_rssyl_plugin=no
1739                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS rssyl"
1740         else
1741                 AC_MSG_RESULT(no)
1742                 AC_MSG_ERROR("Plugin rssyl cannot be built; missing $dependencies_missing")
1743         fi
1744 else
1745         DISABLED_PLUGINS="$DISABLED_PLUGINS rssyl"
1746         AC_MSG_RESULT(no)
1749 AC_MSG_CHECKING([whether to build spamassassin plugin])
1750 if test x"$enable_spamassassin_plugin" != xno; then
1751         PLUGINS="$PLUGINS spamassassin"
1752         AC_MSG_RESULT(yes)
1753         AC_SPAMASSASSIN
1754 else
1755         DISABLED_PLUGINS="$DISABLED_PLUGINS spamassassin"
1756         AC_MSG_RESULT(no)
1759 AC_MSG_CHECKING([whether to build smime plugin])
1760 if test x"$enable_smime_plugin" != xno; then
1761         dependencies_missing=""
1763         if test x"$HAVE_GPGME" = xno; then
1764                 dependencies_missing="libgpgme $dependencies_missing"
1765         fi
1766         if test x"$enable_pgpcore_plugin" = xno; then
1767                 dependencies_missing="pgpcore plugin $dependencies_missing"
1768         fi
1770         if test x"$dependencies_missing" = x; then
1771                 PLUGINS="$PLUGINS smime"
1772                 AC_MSG_RESULT(yes)
1773         elif test x"$enable_smime_plugin" = xauto; then
1774                 AC_MSG_RESULT(no)
1775                 AC_MSG_WARN("Plugin smime will not be built; missing $dependencies_missing")
1776                 enable_smime_plugin=no
1777                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS smime"
1778         else
1779                 AC_MSG_RESULT(no)
1780                 AC_MSG_ERROR("Plugin smime cannot be built; missing $dependencies_missing")
1781         fi
1782 else
1783         DISABLED_PLUGINS="$DISABLED_PLUGINS smime"
1784         AC_MSG_RESULT(no)
1787 AC_MSG_CHECKING([whether to build spam_report plugin])
1788 if test x"$enable_spam_report_plugin" != xno; then
1789         dependencies_missing=""
1791         if test x"$HAVE_CURL" = xno; then
1792                 dependencies_missing="libcurl $dependencies_missing"
1793         fi
1795         if test x"$dependencies_missing" = x; then
1796                 PLUGINS="$PLUGINS spam_report"
1797                 AC_MSG_RESULT(yes)
1798         elif test x"$enable_spam_report_plugin" = xauto; then
1799                 AC_MSG_RESULT(no)
1800                 AC_MSG_WARN("Plugin spam_report will not be built; missing $dependencies_missing")
1801                 enable_spam_report_plugin=no
1802                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS spam_report"
1803         else
1804                 AC_MSG_RESULT(no)
1805                 AC_MSG_ERROR("Plugin spam_report cannot be built; missing $dependencies_missing")
1806         fi
1807 else
1808         DISABLED_PLUGINS="$DISABLED_PLUGINS spam_report"
1809         AC_MSG_RESULT(no)
1812 AC_MSG_CHECKING([whether to build tnef_parse plugin])
1813 if test x"$enable_tnef_parse_plugin" != xno; then
1814         PLUGINS="$PLUGINS tnef_parse"
1815         AC_MSG_RESULT(yes)
1816 else
1817         DISABLED_PLUGINS="$DISABLED_PLUGINS tnef_parse"
1818         AC_MSG_RESULT(no)
1821 AC_MSG_CHECKING([whether to build vcalendar plugin])
1822 if test x"$enable_vcalendar_plugin" != xno; then
1823         dependencies_missing=""
1825         if test x"$HAVE_CURL" = xno; then
1826                 dependencies_missing="libcurl $dependencies_missing"
1827         fi
1829         if test x"$HAVE_PERL" = xno; then
1830                 dependencies_missing="perl $dependencies_missing"
1831         fi
1833         if test x"$dependencies_missing" = x; then
1834                 PLUGINS="$PLUGINS vcalendar"
1835                 AC_MSG_RESULT(yes)
1836         elif test x"$enable_vcalendar_plugin" = xauto; then
1837                 AC_MSG_RESULT(no)
1838                 AC_MSG_WARN("Plugin vcalendar will not be built; missing $dependencies_missing")
1839                 enable_vcalendar_plugin=no
1840                 MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS vcalendar"
1841         else
1842                 AC_MSG_RESULT(no)
1843                 AC_MSG_ERROR("Plugin vcalendar cannot be built; missing $dependencies_missing")
1844         fi
1845 else
1846         DISABLED_PLUGINS="$DISABLED_PLUGINS vcalendar"
1847         AC_MSG_RESULT(no)
1850 dnl And finally the automake conditionals.
1852 AM_CONDITIONAL(BUILD_ACPI_NOTIFIER_PLUGIN,      test x"$enable_acpi_notifier_plugin" != xno)
1853 AM_CONDITIONAL(BUILD_ADDRESS_KEEPER_PLUGIN,     test x"$enable_address_keeper_plugin" != xno)
1854 AM_CONDITIONAL(BUILD_ARCHIVE_PLUGIN,            test x"$enable_archive_plugin" != xno)
1855 AM_CONDITIONAL(BUILD_ATT_REMOVER_PLUGIN,        test x"$enable_att_remover_plugin" != xno)
1856 AM_CONDITIONAL(BUILD_ATTACHWARNER_PLUGIN,       test x"$enable_attachwarner_plugin" != xno)
1857 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN,         test x"$enable_bogofilter_plugin" != xno)
1858 AM_CONDITIONAL(BUILD_BSFILTER_PLUGIN,           test x"$enable_bsfilter_plugin" != xno)
1859 AM_CONDITIONAL(BUILD_CLAMD_PLUGIN,              test x"$enable_clamd_plugin" != xno)
1860 AM_CONDITIONAL(BUILD_DEMO_PLUGIN,               test x"$enable_demo_plugin" != xno)
1861 AM_CONDITIONAL(BUILD_FANCY_PLUGIN,              test x"$enable_fancy_plugin" != xno)
1862 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN,          test x"$enable_fetchinfo_plugin" != xno)
1863 AM_CONDITIONAL(BUILD_GDATA_PLUGIN,              test x"$enable_gdata_plugin" != xno)
1864 AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN,         test x"$enable_libravatar_plugin" != xno)
1865 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN,           test x"$enable_mailmbox_plugin" != xno)
1866 AM_CONDITIONAL(BUILD_MANAGESIEVE_PLUGIN,                test x"$enable_managesieve_plugin" != xno)
1867 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN,            test x"$enable_newmail_plugin" != xno)
1868 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN,       test x"$enable_notification_plugin" != xno)
1869 AM_CONDITIONAL(BUILD_HOTKEYS,                   test x"$enable_notification_plugin" != xno -a x"$HAVE_HOTKEYS" = xyes)
1870 AM_CONDITIONAL(BUILD_PDF_VIEWER_PLUGIN,         test x"$enable_pdf_viewer_plugin" != xno)
1871 AM_CONDITIONAL(BUILD_PERL_PLUGIN,               test x"$enable_perl_plugin" != xno)
1872 AM_CONDITIONAL(BUILD_PYTHON_PLUGIN,             test x"$enable_python_plugin" != xno)
1873 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN,            test x"$enable_pgpcore_plugin" != xno)
1874 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN,            test x"$enable_pgpmime_plugin" != xno)
1875 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN,          test x"$enable_pgpinline_plugin" != xno)
1876 AM_CONDITIONAL(BUILD_RSSYL_PLUGIN,              test x"$enable_rssyl_plugin" != xno)
1877 AM_CONDITIONAL(BUILD_SMIME_PLUGIN,              test x"$enable_smime_plugin" != xno)
1878 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN,       test x"$enable_spamassassin_plugin" != xno)
1879 AM_CONDITIONAL(BUILD_SPAM_REPORT_PLUGIN,        test x"$enable_spam_report_plugin" != xno)
1880 AM_CONDITIONAL(BUILD_TNEF_PARSE_PLUGIN,         test x"$enable_tnef_parse_plugin" != xno)
1881 AM_CONDITIONAL(BUILD_VCALENDAR_PLUGIN,          test x"$enable_vcalendar_plugin" != xno)
1884 dnl ****************************
1885 dnl ** Final configure output **
1886 dnl ****************************
1888 AC_OUTPUT([
1889 Makefile
1890 m4/Makefile
1891 po/Makefile.in
1892 src/common/version.h
1893 src/Makefile
1894 src/common/Makefile
1895 src/common/passcrypt.h
1896 src/gtk/Makefile
1897 src/etpan/Makefile
1898 src/plugins/Makefile
1899 src/plugins/acpi_notifier/Makefile
1900 src/plugins/address_keeper/Makefile
1901 src/plugins/archive/Makefile
1902 src/plugins/att_remover/Makefile
1903 src/plugins/attachwarner/Makefile
1904 src/plugins/bogofilter/Makefile
1905 src/plugins/bsfilter/Makefile
1906 src/plugins/clamd/Makefile
1907 src/plugins/clamd/libclamd/Makefile
1908 src/plugins/demo/Makefile
1909 src/plugins/fancy/Makefile
1910 src/plugins/fetchinfo/Makefile
1911 src/plugins/gdata/Makefile
1912 src/plugins/libravatar/Makefile
1913 src/plugins/mailmbox/Makefile
1914 src/plugins/managesieve/Makefile
1915 src/plugins/newmail/Makefile
1916 src/plugins/notification/Makefile
1917 src/plugins/notification/gtkhotkey/Makefile
1918 src/plugins/pdf_viewer/Makefile
1919 src/plugins/perl/Makefile
1920 src/plugins/perl/tools/Makefile
1921 src/plugins/python/Makefile
1922 src/plugins/python/examples/Makefile
1923 src/plugins/pgpcore/Makefile
1924 src/plugins/pgpmime/Makefile
1925 src/plugins/pgpinline/Makefile
1926 src/plugins/rssyl/Makefile
1927 src/plugins/rssyl/libfeed/Makefile
1928 src/plugins/smime/Makefile
1929 src/plugins/spamassassin/Makefile
1930 src/plugins/spam_report/Makefile
1931 src/plugins/tnef_parse/Makefile
1932 src/plugins/vcalendar/Makefile
1933 src/plugins/vcalendar/libical/Makefile
1934 src/plugins/vcalendar/libical/libical/icalversion.h
1935 src/plugins/vcalendar/libical/libical/Makefile
1936 src/plugins/vcalendar/libical/design-data/Makefile
1937 src/plugins/vcalendar/libical/scripts/Makefile
1938 doc/Makefile
1939 doc/man/Makefile
1940 tools/Makefile
1941 config/Makefile
1942 manual/Makefile
1943 manual/dtd/Makefile
1944 manual/dist/Makefile
1945 manual/dist/pdf/Makefile
1946 manual/dist/ps/Makefile
1947 manual/dist/html/Makefile
1948 manual/dist/txt/Makefile
1949 manual/fr/Makefile
1950 manual/fr/dist/Makefile
1951 manual/fr/dist/pdf/Makefile
1952 manual/fr/dist/ps/Makefile
1953 manual/fr/dist/html/Makefile
1954 manual/fr/dist/txt/Makefile
1955 manual/es/Makefile
1956 manual/es/dist/Makefile
1957 manual/es/dist/pdf/Makefile
1958 manual/es/dist/ps/Makefile
1959 manual/es/dist/html/Makefile
1960 manual/es/dist/txt/Makefile
1961 claws-mail.pc
1964 dnl Output the configuration summary
1965 echo ""
1966 echo "$PACKAGE $VERSION"
1967 echo ""
1968 if test x"$enable_alternate_addressbook" = xyes; then
1969         echo "Using Address Book : Alternate experimental interface"
1970 else
1971         echo "Using Address Book : Original stable interface"
1972         echo "JPilot             : $enable_jpilot"
1973         echo "LDAP               : $enable_ldap"
1975 echo "gnuTLS             : $enable_gnutls"
1976 echo "iconv              : $am_cv_func_iconv"
1977 echo "compface           : $enable_compface"
1978 echo "IPv6               : $enable_ipv6"
1979 echo "enchant            : $enable_enchant"
1980 echo "IMAP4              : $enable_libetpan"
1981 echo "NNTP               : $enable_libetpan"
1982 echo "Crash dialog       : $enable_crash_dialog"
1983 echo "LibSM              : $enable_libsm"
1984 echo "DBUS               : $enable_dbus"
1985 echo "NetworkManager     : $enable_networkmanager"
1986 echo "Manual             : $enable_manual"
1987 echo "Generic UMPC code  : $enable_generic_umpc"
1988 echo "Config dir         : $ac_cv_with_config_dir"
1989 echo "Password crypto    : $pwd_crypto"
1991 echo "Plugins"
1992 echo "   Built:"
1993 for plugin in $PLUGINS; do
1994 echo "            - $plugin"
1995 if test x"$plugin" = xnotification; then
1996         echo "                Features:"
1997         for notif_feature in $notification_features; do
1998                 echo "                    $notif_feature"
1999         done;
2000         if test "x$notification_missing_dependencies" != x; then
2001                 echo "                Disabled due to missing dependencies:"
2002                 for notif_miss_dep in $notification_missing_dependencies; do
2003                         echo "                    $notif_miss_dep"
2004                 done;
2005         fi
2007 done;
2008 if test "x$DISABLED_PLUGINS" != x; then
2009 echo "   Disabled:"
2010 for plugin in $DISABLED_PLUGINS; do
2011 echo "            - $plugin"
2012 done;
2015 if test "x$MISSING_DEPS_PLUGINS" != x; then
2016 echo "   Disabled due to missing dependencies:"
2017 for plugin in $MISSING_DEPS_PLUGINS; do
2018 echo "            - $plugin"
2019 done;
2021 echo ""
2022 echo "The binary will be installed in $prefix/bin"
2023 echo ""
2024 echo "Configure finished, type 'make' to build."