4 AC_CONFIG_AUX_DIR(config)
5 AC_CONFIG_MACRO_DIR([m4])
19 if test \( $EXTRA_VERSION -eq 0 \) -o \( "x$EXTRA_RELEASE" != "x" \); then
20 VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
22 VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}cvs${EXTRA_VERSION}${EXTRA_GTK2_VERSION}
29 AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
30 dnl AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
31 dnl AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
34 AC_SUBST(MAJOR_VERSION)
35 AC_SUBST(MINOR_VERSION)
36 AC_SUBST(MICRO_VERSION)
37 AC_SUBST(EXTRA_VERSION)
40 AC_PATH_PROG(GNOME_CONFIG, gnome-config, no)
41 if test "$GNOME_CONFIG" != no; then
42 gnomedatadir="`gnome-config --datadir`"
43 gnomeprefix="`gnome-config --prefix`"
44 if test "${prefix}" = "NONE"; then
45 gnomedatadir="${ac_default_prefix}/${gnomedatadir#${gnomeprefix}}"
47 gnomedatadir="${prefix}/${gnomedatadir#${gnomeprefix}}"
49 AC_SUBST(gnomedatadir)
51 AM_CONDITIONAL(CLAWS_GNOME, test -n "$gnomedatadir")
53 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
54 if test x$PKG_CONFIG = xno ; then
55 AC_MSG_ERROR([*** pkg-config not found. See http://www.freedesktop.org/software/pkgconfig/])
58 dnl GNOME 2.x installed?
59 PKG_CHECK_MODULES(GNOME2, libgnome-2.0 >= 2.0, ac_enable_gnome2=yes, ac_enable_gnome2=no)
60 AM_CONDITIONAL(CLAWS_GNOME2, test x"$ac_enable_gnome2" = x"yes")
62 dnl libtool versioning
63 LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION
64 LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE`
65 LT_REVISION=$INTERFACE_AGE
66 LT_AGE=`expr $BINARY_AGE - $INTERFACE_AGE`
72 dnl Specify a header configuration file
73 AC_CONFIG_HEADERS(config.h)
77 dnl Checks for programs.
97 dnl ******************************
99 dnl Not needed anymore because we
100 dnl do AC_CANONICAL_SYSTEM above
101 dnl ******************************
102 dnl AC_CANONICAL_HOST
104 dnl Copied from the official gtk+-2 configure.in
105 AC_MSG_CHECKING([for some Win32 platform])
107 *-*-mingw*|*-*-cygwin*)
109 LDFLAGS="$LDFLAGS -mwindows"
115 AC_MSG_RESULT([$platform_win32])
116 AM_CONDITIONAL(PLATFORM_WIN32, test x"$platform_win32" = x"yes")
118 AC_MSG_CHECKING([for native Win32])
127 AC_MSG_RESULT([$os_win32])
128 AM_CONDITIONAL(OS_WIN32, test x"$os_win32" = x"yes")
130 AC_MSG_CHECKING([for Cygwin])
139 AC_MSG_RESULT([$env_cygwin])
140 AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
142 if test "$GCC" = "yes"
144 CFLAGS="$CFLAGS -Wno-unused-function"
147 AC_MSG_CHECKING([if gcc supports -Wno-pointer-sign])
148 _gcc_cflags_save=$CFLAGS
149 CFLAGS="-Wno-pointer-sign"
150 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],_gcc_psign=yes,_gcc_psign=no)
151 AC_MSG_RESULT($_gcc_psign)
152 CFLAGS=$_gcc_cflags_save;
153 if test x"$_gcc_psign" = xyes ; then
154 CFLAGS="$CFLAGS -Wno-pointer-sign"
157 CFLAGS="$CFLAGS -Wall"
159 #if test $USE_MAINTAINER_MODE = yes; then
160 # CFLAGS="-g -Wall -Wno-pointer-sign -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGTK_DISABLE_SINGLE_INCLUDES"
166 CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
169 # Note that we need to link to pthreadGC2 in all cases. This
170 # is because some locking is used even when pthread support is
172 pthread_name=pthreadGC2
173 CFLAGS="$CFLAGS -mms-bitfields"
174 LIBS="$LIBS -l${pthread_name} -lws2_32 -lregex"
177 CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
178 CFLAGS="$CFLAGS -std=gnu99 -DSOLARIS"
186 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
189 LIBS="$LIBS $GTK_LIBS"
190 AC_CHECK_FUNCS(bind_textdomain_codeset)
194 ALL_LINGUAS="bg ca cs de en_GB es fi fr hu id it ja lt nl pl pt_BR pt_PT ru sk sv uk zh_CN"
195 GETTEXT_PACKAGE=claws-mail
196 AC_SUBST(GETTEXT_PACKAGE)
197 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
199 AM_GNU_GETTEXT_VERSION([0.15])
200 AM_GNU_GETTEXT([external])
202 manualdir='${docdir}/manual'
203 AC_ARG_WITH(manualdir,
204 [ --with-manualdir=DIR Manual directory],
205 [manualdir="$withval"])
208 AC_ARG_ENABLE(manual,
209 [ --disable-manual do not build manual],
210 [ac_cv_enable_manual=$enableval], [ac_cv_enable_manual=yes])
212 dnl ******************************
213 dnl ** Check for required tools **
214 dnl ** to build manuals **
215 dnl ******************************
217 AC_PATH_PROG(DOCBOOK2HTML, docbook2html)
218 AC_PATH_PROG(DOCBOOK2TXT, docbook2txt)
219 AC_PATH_PROG(DOCBOOK2PS, docbook2ps)
220 AC_PATH_PROG(DOCBOOK2PDF, docbook2pdf)
222 AM_CONDITIONAL(MANUAL_HTML, test -n "$DOCBOOK2HTML")
223 AM_CONDITIONAL(MANUAL_TXT, test -n "$DOCBOOK2TXT")
224 AM_CONDITIONAL(MANUAL_PDF, test -n "$DOCBOOK2PDF")
225 AM_CONDITIONAL(MANUAL_PS, test -n "$DOCBOOK2PS")
227 if test x"$ac_cv_enable_manual" = x"yes"; then
228 if test -n "$DOCBOOK2TXT" -o -n "$DOCBOOK2HTML" \
229 -o -n "$DOCBOOK2PS" -o -n "$DOCBOOK2PDF"; then
230 ac_cv_enable_manual=yes
232 ac_cv_enable_manual=no
236 AM_CONDITIONAL(BUILD_MANUAL, test x"$ac_cv_enable_manual" = xyes)
238 dnl Set PACKAGE_DATA_DIR in config.h.
239 if test "x${datarootdir}" = 'x${prefix}/share'; then
240 if test "x${prefix}" = "xNONE"; then
241 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
243 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR])
246 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datarootdir}/${PACKAGE}",[PACKAGE_DATA_DIR])
249 AC_CHECK_LIB(xpg4, setlocale)
254 [ --disable-libsm disable libSM support for session management.],
255 [ac_cv_enable_libsm=$enableval], [ac_cv_enable_libsm=yes])
256 AC_MSG_CHECKING([whether to use LibSM])
257 if test x"$ac_cv_enable_libsm" = xyes; then
259 AC_CHECK_LIB(SM, SmcSaveYourselfDone,
260 [SM_LIBS="$X_LIBS -lSM -lICE"],ac_cv_enable_libsm=no,
262 AC_CHECK_HEADERS(X11/SM/SMlib.h,,ac_cv_enable_libsm=no)
263 if test x"$ac_cv_enable_libsm" = xyes; then
264 AC_DEFINE(HAVE_LIBSM, 1, [Define to 1 if you have libSM installed])
266 AC_MSG_RESULT(not found)
267 AC_MSG_WARN([*** LibSM will not be supported ***])
274 dnl for GThread support (currently disabled)
275 dnl AC_ARG_ENABLE(threads,
276 dnl [ --enable-threads Enable multithread support [default=no]],
277 dnl [use_threads=$enableval], [use_threads=no])
279 AC_MSG_CHECKING([whether to use threads])
280 if test x"$use_threads" = xyes ; then
282 if test ! -z `$GLIB_CONFIG --help 2>&1 |grep 'gthread'` ; then
283 CFLAGS="$CFLAGS `$GLIB_CONFIG --cflags gthread`"
284 LIBS="$LIBS `$GLIB_CONFIG --libs gthread`"
285 AC_DEFINE(USE_THREADS, 1, Whether to use multithread or not)
287 AC_MSG_ERROR([Claws Mail requires GThread from GLib to use threading.])
293 dnl Check for d_type member in struct dirent
294 AC_MSG_CHECKING([whether struct dirent has d_type member])
295 AC_CACHE_VAL(ac_cv_dirent_d_type,[
296 AC_TRY_COMPILE([#include <dirent.h>],
297 [struct dirent d; d.d_type = DT_REG;],
298 ac_cv_dirent_d_type=yes, ac_cv_dirent_d_type=no)
300 AC_MSG_RESULT($ac_cv_dirent_d_type)
301 if test $ac_cv_dirent_d_type = yes; then
302 AC_DEFINE(HAVE_DIRENT_D_TYPE, 1,
303 Define if `struct dirent' has `d_type' member.)
306 # Check whether mkdir does not take the permission argument.
307 GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
309 dnl Checks for header files.
313 AC_CHECK_HEADERS(fcntl.h sys/file.h unistd.h paths.h \
314 sys/param.h sys/utsname.h sys/select.h \
315 wchar.h wctype.h locale.h netdb.h)
316 AC_CHECK_HEADER([execinfo.h], [AC_DEFINE(HAVE_BACKTRACE,1,[Has backtrace*() needed for retrieving stack traces])])
317 AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
319 dnl alf - Check for apache installation f*ck up. apache may also install an
320 dnl fnmatch, which includes their own regex stuff if USE_HSREGEX is defined
321 AC_TRY_COMPILE([#include <stdlib.h>
322 #include <fnmatch.h>],
323 [int x = USE_HSREGEX;],
324 ac_cv_have_apache_fnmatch=yes, ac_cv_have_apache_fnmatch=no)
325 if test $ac_cv_have_apache_fnmatch = yes; then
326 AC_DEFINE(HAVE_APACHE_FNMATCH, 1, Define if you need to work around apache regex/fnmatch !KLUDGE!)
328 AC_MSG_CHECKING([whether to use Apache regex header kludge])
329 AC_MSG_RESULT($ac_cv_have_apache_fnmatch)
331 dnl Checks for typedefs, structures, and compiler characteristics.
338 dnl AC_CHECK_TYPE(wint_t, unsigned int) does not work because wint_t
339 dnl may be defined only in wchar.h (this happens with gcc-2.96).
340 dnl So we need to use this extended macro.
341 CLAWS_CHECK_TYPE(wint_t, unsigned int,
346 ], Define to `unsigned int' if <stddef.h> or <wchar.h> doesn't define.)
348 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF, Used to test for a u32 typedef)
349 AC_CHECK_SIZEOF(unsigned short, 2)
350 AC_CHECK_SIZEOF(unsigned int, 4)
351 AC_CHECK_SIZEOF(unsigned long, 4)
353 dnl Checks for library functions.
355 AC_CHECK_FUNCS(gethostname mkdir mktime socket strstr strchr \
356 uname flock lockf inet_aton inet_addr \
357 fchmod mkstemp truncate getuid regcomp)
359 AC_CHECK_FUNCS(fgets_unlocked fwrite_unlocked)
361 dnl *****************
362 dnl ** common code **
363 dnl *****************
366 PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.6 gmodule-2.0 >= 2.6 gobject-2.0 >= 2.6 gthread-2.0 >= 2.6)
368 GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0`
369 AC_SUBST(GLIB_GENMARSHAL)
371 AC_SUBST(GLIB_CFLAGS)
374 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
376 LIBS="$LIBS $GTK_LIBS"
377 AC_CHECK_FUNCS(bind_textdomain_codeset)
380 dnl check for IPv6 option
382 [ --disable-ipv6 disable build IPv6 support],
383 [ac_cv_enable_ipv6=$enableval], [ac_cv_enable_ipv6=yes])
385 dnl automated checks for IPv6 support.
386 AC_MSG_CHECKING([whether to use IPv6])
387 if test x"$ac_cv_enable_ipv6" = xyes; then
389 AC_MSG_CHECKING([for IPv6 support])
390 AC_CACHE_VAL(ac_cv_ipv6,[
391 AC_TRY_COMPILE([#define INET6
392 #include <sys/types.h>
393 #include <netinet/in.h>],
394 [int x = IPPROTO_IPV6; struct in6_addr a;],
395 ac_cv_ipv6=yes, ac_cv_ipv6=no)
397 AC_MSG_RESULT($ac_cv_ipv6)
398 if test $ac_cv_ipv6 = yes; then
399 AC_DEFINE(INET6, 1, Define if you want IPv6 support.)
401 AC_MSG_WARN(*** IPv6 will not be supported ***)
409 AC_MSG_CHECKING([whether to use GnuTLS])
410 AC_ARG_ENABLE(gnutls, [ --enable-gnutls enable GnuTLS support],
411 [ac_cv_enable_gnutls=$enableval], [ac_cv_enable_gnutls=yes])
413 AC_MSG_RESULT($ac_cv_enable_gnutls)
414 if test "x$ac_cv_enable_gnutls" != "xno"; then
415 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.2,
417 AC_DEFINE(USE_GNUTLS, 1, gnutls)
418 echo "Building with GnuTLS"
421 echo "Building without gnutls"
423 PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
425 dnl No linking against libgcrypt needed
428 dnl linking against libgcrypt *is* needed
429 GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
431 AC_SUBST(GNUTLS_LIBS)
432 AC_SUBST(GNUTLS_CFLAGS)
435 dnl password encryption
440 AC_SEARCH_LIBS(encrypt, cipher, [], AC_MSG_ERROR(['encrypt'-function not found.]))
443 AC_SEARCH_LIBS(encrypt, crypt, [], AC_MSG_ERROR(['encrypt'-function not found.]))
450 AC_ARG_WITH(passcrypt-key, [ --with-passcrypt-key=KEY Key used to encode passwords (8 byte string)],
451 with_passcrypt_key="$withval", with_passcrypt_key="passkey0")
452 AC_SUBST(PASSCRYPT_KEY, $with_passcrypt_key)
454 dnl RC dir (will be default at a certain point in time)
455 AC_ARG_WITH(config-dir, [ --with-config-dir=RCDIR Local configuration dir (default: .claws-mail)],
456 ac_cv_with_config_dir="$withval", ac_cv_with_config_dir=".claws-mail")
457 if test x"$ac_cv_with_config_dir" = x""; then
458 ac_cv_with_config_dir=".claws-mail"
460 AC_DEFINE_UNQUOTED(CFG_RC_DIR, "$ac_cv_with_config_dir", Configuration directory)
462 dnl ************************
463 dnl ** GTK user interface **
464 dnl ************************
467 PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.10)
469 dnl --disable-deprecated switch for GTK2 purification
470 AC_ARG_ENABLE(deprecated, [ --disable-deprecated disable deprecated GTK functions. ],
471 [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
476 dnl enchant is used for spell checking
477 AC_MSG_CHECKING([whether to use enchant])
478 AC_ARG_ENABLE(enchant,
479 [ --disable-enchant disable enchant support],
480 [ac_cv_enable_enchant=$enableval], [ac_cv_enable_enchant=yes])
481 AC_MSG_RESULT($ac_cv_enable_enchant)
482 if test $ac_cv_enable_enchant = yes; then
483 PKG_CHECK_MODULES(ENCHANT, enchant >= 1.0.0,
485 AC_DEFINE(USE_ENCHANT, 1, enchant)
486 echo "Building with enchant"
487 ac_cv_enable_enchant=yes
488 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags enchant`"
491 echo "Building without enchant-notification"
492 ac_cv_enable_enchant=no
494 AC_SUBST(ENCHANT_CFLAGS)
495 AC_SUBST(ENCHANT_LIBS)
498 dnl want crash dialog
499 AC_ARG_ENABLE(crash-dialog,
500 [ --enable-crash-dialog Enable crash dialog [default=no]],
501 [ac_cv_enable_crash_dialog=$enableval], [ac_cv_enable_crash_dialog=no])
502 if test $ac_cv_enable_crash_dialog = yes; then
503 dnl check if GDB is somewhere
504 AC_CHECK_PROG(ac_cv_enable_crash_dialog, gdb, yes, no)
505 AC_MSG_CHECKING([whether to use crash dialog])
506 if test $ac_cv_enable_crash_dialog = yes; then
507 AC_DEFINE(CRASH_DIALOG, 1, Pop up crash dialog)
509 AC_MSG_RESULT($ac_cv_enable_crash_dialog)
513 AC_ARG_ENABLE(generic-umpc,
514 [ --enable-generic-umpc Enable generic UMPC code [default=no]],
515 [ac_cv_enable_generic_umpc=$enableval], [ac_cv_enable_generic_umpc=no])
516 if test $ac_cv_enable_generic_umpc = yes; then
517 AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
518 AC_MSG_RESULT($ac_cv_enable_generic_umpc)
523 [ --enable-maemo build for the Maemo platform [default=no]],
524 [ac_cv_enable_maemo=$enableval], [ac_cv_enable_maemo=no])
525 if test $ac_cv_enable_maemo = yes; then
526 PKG_CHECK_MODULES(MAEMO, libosso hildon-libs hildon-fm gnome-vfs-2.0, ac_cv_enable_maemo=yes,
527 ac_cv_enable_maemo=no)
528 AC_SUBST(MAEMO_CFLAGS)
530 if test $ac_cv_enable_maemo = no; then
532 PKG_CHECK_MODULES(MAEMO, libosso hildon-1 hildon-fm-2 gnome-vfs-2.0 hal, ac_cv_enable_maemo=yes,
533 ac_cv_enable_maemo=no)
534 AC_SUBST(MAEMO_CFLAGS)
536 if test $ac_cv_enable_maemo = no; then
537 AC_MSG_ERROR(one of libosso hildon-libs hildon-fm hildon-1 hildon-fm-2 not found)
539 AC_DEFINE(MAEMO, 1, Build for maemo)
540 AC_DEFINE(CHINOOK, 1, Maemo chinook)
541 AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
542 ac_cv_enable_generic_umpc=yes
545 AC_DEFINE(MAEMO, 1, Build for maemo)
546 AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
547 ac_cv_enable_generic_umpc=yes
551 PKG_CHECK_MODULES(CONIC, conic, ac_cv_enable_conic=yes,
552 ac_cv_enable_conic=no)
553 AC_SUBST(CONIC_CFLAGS)
555 if test $ac_cv_enable_conic = yes; then
556 AC_DEFINE(CONIC, 1, Have conic lib)
559 dnl Check for X-Face support
560 AC_ARG_ENABLE(compface,
561 [ --disable-compface disable compface (X-Face) support],
562 [ac_cv_enable_compface=$enableval], [ac_cv_enable_compface=yes])
563 AC_MSG_CHECKING([whether to use compface])
564 if test x"$ac_cv_enable_compface" = xyes; then
566 AC_CHECK_LIB(compface, uncompface,
567 [AC_DEFINE(HAVE_LIBCOMPFACE, 1, Define if you want compface support.)],
568 [ac_cv_enable_compface=no])
569 if test x"$ac_cv_enable_compface" = xyes; then
570 COMPFACE_LIBS="-lcompface"
574 AC_SUBST(COMPFACE_LIBS)
579 dnl check for pthread support
580 AC_ARG_ENABLE(pthread,
581 [ --disable-pthread disable pthread support],
582 [ac_cv_enable_pthread=$enableval], [ac_cv_enable_pthread=yes])
583 AC_MSG_CHECKING([whether to use pthread])
584 if test x$ac_cv_enable_pthread = xno; then
589 # For W32 we need to use a special ptrhead lib. In this case we can't
590 # use AC_CHECK_LIB because it has no means of checking for a
591 # library installed under a different name. Checking for the
593 if test -n "${pthread_name}" ; then
594 ac_cv_enable_pthread=yes
596 AC_CHECK_LIB(pthread, pthread_create, :, ac_cv_enable_pthread=no)
598 AC_CHECK_HEADERS(pthread.h, :, ac_cv_enable_pthread=no)
600 if test x$ac_cv_enable_pthread = xyes; then
601 AC_DEFINE(USE_PTHREAD, 1, Define if you have pthread)
602 if test -z "${pthread_name}" ; then
603 PTHREAD_LIBS="-lpthread"
608 AC_SUBST(PTHREAD_LIBS)
611 dnl Check whether we need to pass -lresolv
612 dnl We know that we don't need it for W32.
614 if test x$os_win32 = xno; then
617 ac_cv_var__res_options=no
618 AC_TRY_LINK([#include <sys/types.h>
619 #include <sys/socket.h>
620 #include <netinet/in.h>
621 #include <arpa/nameser.h>
622 #include <resolv.h>],
623 [_res.options = RES_INIT;],
624 ac_cv_var__res_options=yes);
625 if test "$ac_cv_var__res_options" != "yes"; then
630 if test "x$LIBRESOLV" = "x"; then
631 AC_CHECK_LIB(resolv, res_query, [LIBRESOLV=-lresolv])
637 LIBS="$LIBS $LIBRESOLV"
639 dnl for LDAP support in addressbook
640 dnl no check for libraries; dynamically loaded
642 [ --disable-ldap disable LDAP support],
643 [ac_cv_enable_ldap=$enableval], [ac_cv_enable_ldap=yes])
644 AC_MSG_CHECKING([whether to use LDAP])
645 if test x"$ac_cv_enable_ldap" = xno; then
647 elif test x"$ac_cv_enable_ldap" = xyes -a x"$ac_cv_enable_pthread" = xno; then
648 AC_MSG_RESULT(no - LDAP support needs pthread support)
651 elif test x"$platform_win32" = xyes; then
653 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
654 LDAP_LIBS="-lwldap32"
659 dnl check for available libraries, and pull them in
660 AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
661 AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
662 AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
663 AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
666 AC_CHECK_HEADERS(ldap.h lber.h,
667 [ ac_cv_enable_ldap=yes ],
668 [ ac_cv_enable_ldap=no ])
670 if test "$ac_cv_enable_ldap" = yes; then
671 AC_CHECK_LIB(ldap, ldap_open,
672 [ ac_cv_enable_ldap=yes ],
673 [ ac_cv_enable_ldap=no ],
676 AC_CHECK_LIB(ldap, ldap_start_tls_s,
677 [ ac_cv_have_tls=yes ],
678 [ ac_cv_have_tls=no ])
682 AC_MSG_CHECKING([whether ldap library is available])
683 AC_MSG_RESULT($ac_cv_enable_ldap)
685 AC_MSG_CHECKING([whether TLS library is available])
686 AC_MSG_RESULT($ac_cv_have_tls)
688 if test "$ac_cv_enable_ldap" = yes; then
689 AC_DEFINE(USE_LDAP, 1, Define if you want LDAP support in addressbook.)
690 LDAP_LIBS="$LDAP_LIBS -lldap"
692 if test "$ac_cv_have_tls" = yes; then
693 AC_DEFINE(USE_LDAP_TLS, 1, Define if you want LDAP TLS support in addressbook.)
695 dnl As of OpenLDAP API version 3000 a number of functions has
696 dnl been deprecated. As Claws-mail compiles and runs on many
697 dnl platforms and many versions of OpenLDAP we need to be able
698 dnl to switch between the old and new API because new API has
699 dnl added new functions replacing old ones and at the same time
700 dnl old functions has been changed.
701 dnl If cross-compiling defaults to enable deprecated features
702 dnl for maximum portability
703 AC_MSG_CHECKING([The API version of OpenLDAP])
707 [if (LDAP_API_VERSION >= 3000)
710 [AC_MSG_RESULT([version < 3000])
711 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)],
712 [AC_MSG_RESULT([version >= 3000])
713 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 1, Define if OpenLDAP API is at least version 3000.)],
714 [AC_MSG_RESULT([Enabling deprecated features in OpenLDAP])
715 AC_DEFINE(OPEN_LDAP_API_AT_LEAST_3000, 0, Define if OpenLDAP API is at least version 3000.)
716 AC_DEFINE(LDAP_DEPRECATED, 1, Define to activate deprecated features in OpenLDAP)]
721 dnl for JPilot support in addressbook
722 dnl no check for libraries; these are dynamically loaded
723 AC_ARG_ENABLE(jpilot,
724 [ --disable-jpilot disable JPilot support],
725 [ac_cv_enable_jpilot=$enableval], [ac_cv_enable_jpilot=yes])
726 AC_MSG_CHECKING([whether to use JPilot])
727 if test "$ac_cv_enable_jpilot" = yes; then
729 AC_CHECK_HEADERS(pi-args.h pi-appinfo.h pi-address.h pi-version.h,
730 [ AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ],
731 [ ac_cv_enable_jpilot=no ])
732 if test "$ac_cv_enable_jpilot" = no; then
733 AC_CHECK_HEADERS(libpisock/pi-args.h libpisock/pi-appinfo.h libpisock/pi-address.h libpisock/pi-version.h,
734 [ ac_cv_enable_jpilot=yes
735 AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
738 AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" ac_cv_enable_jpilot="no"])
739 if test x"$ac_cv_enable_jpilot" = xyes; then
740 AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
742 AC_MSG_NOTICE([JPilot support not available])
744 AC_SUBST(JPILOT_LIBS)
749 dnl #######################################################################
750 dnl # Check for startup notification
751 dnl #######################################################################
752 AC_ARG_ENABLE(startup-notification, [ --disable-startup-notification disable startup notification support],,enable_startup_notification=yes)
754 if test "x$enable_startup_notification" = "xyes"; then
755 PKG_CHECK_MODULES(STARTUP_NOTIFICATION, libstartup-notification-1.0 >= 0.5,
757 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, [Define if we're using libstartup-notification.])
758 echo "Building with libstartup-notification"
759 enable_startup_notification=yes
762 echo "Building without libstartup-notification"
763 enable_startup_notification=no
766 AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
767 AC_SUBST(STARTUP_NOTIFICATION_LIBS)
770 dnl #######################################################################
771 dnl # Check for D-Bus support
772 dnl #######################################################################
773 AC_ARG_ENABLE(dbus, [ --disable-dbus disable dbus support],,enable_dbus=yes)
775 if test "x$enable_dbus" = "xyes"; then
776 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60, dbus-glib-1 >= 0.60],
778 AC_DEFINE(HAVE_DBUS_GLIB, 1, [Define if glib bindings of D-Bus are available])
782 echo "D-Bus requirements not met. D-Bus support not activated."
785 AC_SUBST(DBUS_CFLAGS)
789 dnl #######################################################################
790 dnl # Check for NetworkManager support
791 dnl #######################################################################
792 if test x"$enable_dbus_glib" = xyes; then
793 AC_ARG_ENABLE(networkmanager-support, [ --disable-networkmanager-support disable NetworkManager support],,enable_networkmanager_support=yes)
794 if test x"$enable_networkmanager_support" = xyes; then
795 PKG_CHECK_MODULES(NETWORKMANAGER_SUPPORT, NetworkManager >= 0.6.2,
797 AC_DEFINE(HAVE_NETWORKMANAGER_SUPPORT, 1, [Define if NetworkManager support is to be included.])
798 echo "Building with NetworkManager support"
799 enable_networkmanager_support=yes
802 echo "NetworkManager not found."
803 enable_networkmanager_support=no
805 AC_SUBST(NETWORKMANAGER_SUPPORT_CFLAGS)
808 echo "NetworkManager support deactivated as D-Bus requirements were not met."
809 enable_networkmanager_support=no
812 dnl *************************
813 dnl ** section for plugins **
814 dnl *************************
819 AC_MSG_CHECKING([whether to build Trayicon plugin])
820 AC_ARG_ENABLE(trayicon-plugin,
821 [ --disable-trayicon-plugin do not build System Tray Icon plugin],
822 [ac_cv_enable_trayicon_plugin=$enableval], [ac_cv_enable_trayicon_plugin=yes])
823 if test x"$ac_cv_enable_trayicon_plugin" = xyes; then
825 PLUGINS="trayicon $PLUGINS"
829 AM_CONDITIONAL(BUILD_TRAYICON_PLUGIN, test x"$ac_cv_enable_trayicon_plugin" = xyes)
831 dnl --- SpamAssassin ---
832 AC_MSG_CHECKING([whether to build SpamAssassin plugin])
833 AC_ARG_ENABLE(spamassassin-plugin,
834 [ --disable-spamassassin-plugin do not build SpamAssassin plugin],
835 [ac_cv_enable_spamassassin_plugin=$enableval], [ac_cv_enable_spamassassin_plugin=yes])
836 if test x"$ac_cv_enable_spamassassin_plugin" = xyes; then
839 PLUGINS="spamassassin $PLUGINS"
840 AC_DEFINE(USE_SPAMASSASSIN_PLUGIN, 1, Define if spamassassin plugin is being built.)
844 AM_CONDITIONAL(BUILD_SPAMASSASSIN_PLUGIN, test x"$ac_cv_enable_spamassassin_plugin" = xyes)
846 dnl --- Bogofilter ---
847 AC_MSG_CHECKING([whether to build Bogofilter plugin])
848 AC_ARG_ENABLE(bogofilter-plugin,
849 [ --disable-bogofilter-plugin do not build bogofilter plugin],
850 [ac_cv_enable_bogofilter_plugin=$enableval], [ac_cv_enable_bogofilter_plugin=yes])
851 if test x"$ac_cv_enable_bogofilter_plugin" = xyes; then
853 PLUGINS="bogofilter $PLUGINS"
854 AC_DEFINE(USE_BOGOFILTER_PLUGIN, 1, Define if bogofilter plugin is being built.)
858 AM_CONDITIONAL(BUILD_BOGOFILTER_PLUGIN, test x"$ac_cv_enable_bogofilter_plugin" = xyes)
861 AC_MSG_CHECKING([whether to build PGP/CORE plugin])
862 AC_ARG_ENABLE(pgpcore-plugin,
863 [ --disable-pgpcore-plugin do not build PGP/Core plugin],
864 [ac_cv_enable_pgpcore_plugin=$enableval], [ac_cv_enable_pgpcore_plugin=yes])
865 if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
867 AM_PATH_GPGME(1.0.0, AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.),
868 [ac_cv_enable_pgpcore_plugin=no])
869 if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
870 PLUGINS="pgpcore $PLUGINS"
872 AC_DEFINE(HAVE_GPGME_PKA_TRUST, 1,
873 [Define if GPGME supports PKA.]))
874 #needed to get GPGME_LIBS and al correctly
875 AM_PATH_GPGME(1.0.0, AC_DEFINE(USE_GPGME, 1, Define if you use GPGME to support OpenPGP.),
876 [ac_cv_enable_pgpcore_plugin=no])
878 AC_MSG_WARN([*** PGP/CORE plugin will not be built ***])
883 AM_CONDITIONAL(BUILD_PGPCORE_PLUGIN, test x"$ac_cv_enable_pgpcore_plugin" = xyes)
885 AC_MSG_CHECKING([whether to build PGP/MIME plugin])
886 AC_ARG_ENABLE(pgpmime-plugin,
887 [ --disable-pgpmime-plugin do not build PGP/MIME plugin],
888 [ac_cv_enable_pgpmime_plugin=$enableval], [ac_cv_enable_pgpmime_plugin=yes])
889 if test x"$ac_cv_enable_pgpmime_plugin" = xyes; then
891 if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
892 PLUGINS="pgpmime $PLUGINS"
894 AC_MSG_WARN([*** PGP/MIME plugin cannot be built ***])
895 AC_MSG_WARN([*** without the PGP/CORE plugin ***])
900 AM_CONDITIONAL(BUILD_PGPMIME_PLUGIN, test x"$ac_cv_enable_pgpmime_plugin" = xyes)
902 AC_MSG_CHECKING([whether to build PGP/Inline plugin])
903 AC_ARG_ENABLE(pgpinline-plugin,
904 [ --disable-pgpinline-plugin do not build PGP/Inline plugin],
905 [ac_cv_enable_pgpinline_plugin=$enableval], [ac_cv_enable_pgpinline_plugin=yes])
906 if test x"$ac_cv_enable_pgpinline_plugin" = xyes; then
908 if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
909 PLUGINS="pgpinline $PLUGINS"
911 AC_MSG_WARN([*** PGP/Inline plugin cannot be built ***])
912 AC_MSG_WARN([*** without the PGP/CORE plugin ***])
917 AM_CONDITIONAL(BUILD_PGPINLINE_PLUGIN, test x"$ac_cv_enable_pgpinline_plugin" = xyes)
919 AC_MSG_CHECKING([whether to build S/Mime plugin])
920 AC_ARG_ENABLE(smime-plugin,
921 [ --disable-smime-plugin do not build S/Mime plugin],
922 [ac_cv_enable_smime_plugin=$enableval], [ac_cv_enable_smime_plugin=yes])
923 if test x"$ac_cv_enable_smime_plugin" = xyes; then
925 if test x"$ac_cv_enable_pgpcore_plugin" = xyes; then
926 PLUGINS="smime $PLUGINS"
928 AC_MSG_WARN([*** S/Mime plugin cannot be built ***])
929 AC_MSG_WARN([*** without the PGP/CORE plugin ***])
934 AM_CONDITIONAL(BUILD_SMIME_PLUGIN, test x"$ac_cv_enable_smime_plugin" = xyes)
936 dnl --- Dillo Viewer ---
937 AC_MSG_CHECKING([whether to build Dillo plugin])
938 AC_ARG_ENABLE(dillo-viewer-plugin,
939 [ --disable-dillo-viewer-plugin do not build Dillo plugin for html mail rendering],
940 [ac_cv_enable_dillo_viewer_plugin=$enableval], [ac_cv_enable_dillo_viewer_plugin=yes])
941 if test x"$ac_cv_enable_dillo_viewer_plugin" = xyes; then
943 PLUGINS="dillo-viewer $PLUGINS"
947 AM_CONDITIONAL(BUILD_DILLO_VIEWER_PLUGIN, test x"$ac_cv_enable_dillo_viewer_plugin" = xyes)
950 AC_ARG_ENABLE(demo-plugin,
951 [ --enable-demo-plugin build demo plugin],
952 [ac_cv_enable_demo_plugin=$enableval], [ac_cv_enable_demo_plugin=no])
953 if test x"$ac_cv_enable_demo_plugin" = xyes; then
954 PLUGINS="demo $PLUGINS"
956 AM_CONDITIONAL(BUILD_DEMO_PLUGIN, test x"$ac_cv_enable_demo_plugin" = xyes)
959 AC_MSG_CHECKING([whether to use libetpan])
960 AC_ARG_ENABLE(libetpan,
961 [ --disable-libetpan disable IMAP4/NNTP (libetpan) support],
962 [ac_cv_enable_libetpan=$enableval], [ac_cv_enable_libetpan=yes])
963 if test x"$ac_cv_enable_libetpan" = xyes; then
966 AC_PATH_PROG(libetpanconfig, [libetpan-config])
967 if test "x$libetpanconfig" != "x"; then
968 CPPFLAGS="$CPPFLAGS `$libetpanconfig --cflags 2>/dev/null`"
969 AC_CHECK_HEADER(libetpan/libetpan.h, [libetpan_result=yes])
970 if test "x$libetpan_result" = "xyes"; then
971 AC_MSG_CHECKING([whether libetpan-config hints compiles and links fine])
972 LIBS="$LIBS `$libetpanconfig --libs 2>/dev/null`"
973 AC_TRY_LINK([#include <libetpan/dbstorage.h>], [db_mailstorage_init(NULL, NULL);], [libetpan_result=yes], [libetpan_result=no])
974 AC_MSG_RESULT([$libetpan_result])
977 if test "x$libetpan_result" = "xyes"; then
978 LIBETPAN_CPPFLAGS="`$libetpanconfig --cflags`"
979 LIBETPAN_LIBS="`$libetpanconfig --libs`"
980 LIBETPAN_STABLE=`$libetpanconfig --version | grep -v ^0`
981 LIBETPAN_VERSION=`$libetpanconfig --version | sed "s/\.//g" | sed "s/-.*$//"`
982 if test x"$LIBETPAN_STABLE" != "x"; then
983 LIBETPAN_VERSION="100"
985 if test "$LIBETPAN_VERSION" -lt "057"; then
986 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/])
987 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
988 AC_MSG_ERROR([libetpan 0.57 not found])
990 AC_SUBST(LIBETPAN_FLAGS)
991 AC_SUBST(LIBETPAN_LIBS)
992 AC_DEFINE(HAVE_LIBETPAN, 1, Define if you want IMAP and/or NNTP support.)
994 AC_MSG_RESULT([*** Claws Mail requires libetpan 0.57 or newer. See http://www.etpan.org/ ])
995 AC_MSG_RESULT([*** You can use --disable-libetpan if you don't need IMAP4 and/or NNTP support.])
996 AC_MSG_ERROR([libetpan 0.57 not found])
1001 AM_CONDITIONAL(CLAWS_LIBETPAN, test "x$libetpan_result" = "xyes")
1003 AC_MSG_CHECKING([whether to use valgrind])
1004 AC_ARG_ENABLE(valgrind,
1005 [ --disable-valgrind disable valgrind support for debugging],
1006 [ac_cv_enable_valgrind=$enableval], [ac_cv_enable_valgrind=yes])
1007 if test x$ac_cv_enable_valgrind = xyes; then
1009 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1010 ac_cv_enable_valgrind=yes, ac_cv_enable_valgrind=no)
1011 if test x"$ac_cv_enable_valgrind" = xyes; then
1012 AC_DEFINE(HAVE_VALGRIND, 1, Define if you want valgrind support)
1014 AC_MSG_RESULT(not found)
1019 AM_CONDITIONAL(CLAWS_VALGRIND, test x"$ac_cv_enable_valgrind" = x"yes")
1021 dnl ****************************
1022 dnl ** Final configure output **
1023 dnl ****************************
1029 src/common/version.h
1032 src/common/passcrypt.h
1035 src/plugins/Makefile
1036 src/plugins/demo/Makefile
1037 src/plugins/bogofilter/Makefile
1038 src/plugins/spamassassin/Makefile
1039 src/plugins/dillo_viewer/Makefile
1040 src/plugins/trayicon/Makefile
1041 src/plugins/pgpcore/Makefile
1042 src/plugins/pgpmime/Makefile
1043 src/plugins/pgpinline/Makefile
1044 src/plugins/smime/Makefile
1051 manual/dist/Makefile
1052 manual/dist/pdf/Makefile
1053 manual/dist/ps/Makefile
1054 manual/dist/html/Makefile
1055 manual/dist/txt/Makefile
1057 manual/fr/dist/Makefile
1058 manual/fr/dist/pdf/Makefile
1059 manual/fr/dist/ps/Makefile
1060 manual/fr/dist/html/Makefile
1061 manual/fr/dist/txt/Makefile
1063 manual/pl/dist/Makefile
1064 manual/pl/dist/pdf/Makefile
1065 manual/pl/dist/ps/Makefile
1066 manual/pl/dist/html/Makefile
1067 manual/pl/dist/txt/Makefile
1069 manual/es/dist/Makefile
1070 manual/es/dist/pdf/Makefile
1071 manual/es/dist/ps/Makefile
1072 manual/es/dist/html/Makefile
1073 manual/es/dist/txt/Makefile
1075 manual/de/dist/Makefile
1076 manual/de/dist/pdf/Makefile
1077 manual/de/dist/ps/Makefile
1078 manual/de/dist/html/Makefile
1079 manual/de/dist/txt/Makefile
1083 dnl Output the configuration summary
1085 echo "$PACKAGE $VERSION"
1087 echo "JPilot : $ac_cv_enable_jpilot"
1088 echo "LDAP : $ac_cv_enable_ldap"
1089 echo "gnuTLS : $ac_cv_enable_gnutls"
1090 echo "iconv : $am_cv_func_iconv"
1091 echo "compface : $ac_cv_enable_compface"
1092 echo "IPv6 : $ac_cv_enable_ipv6"
1093 echo "enchant : $ac_cv_enable_enchant"
1094 echo "IMAP4 : $ac_cv_enable_libetpan"
1095 echo "NNTP : $ac_cv_enable_libetpan"
1096 echo "Crash dialog : $ac_cv_enable_crash_dialog"
1097 echo "LibSM : $ac_cv_enable_libsm"
1098 echo "DBUS : $enable_dbus"
1099 echo "NetworkManager : $enable_networkmanager_support"
1100 echo "Manual : $ac_cv_enable_manual"
1101 echo "Plugins : $PLUGINS"
1102 echo "Generic UMPC code : $ac_cv_enable_generic_umpc"
1103 echo "Maemo build : $ac_cv_enable_maemo"
1104 echo "Config dir : $ac_cv_with_config_dir"
1106 echo "The binary will be installed in $prefix/bin"
1108 echo "Configure finished, type 'make' to build."