Bug 681321 - Support both old and new-buf libxml2 APIs
[platform/upstream/evolution-data-server.git] / configure.ac
1
2 dnl Evolution-Data-Server version
3 m4_define([eds_major_version], [3])
4 m4_define([eds_minor_version], [5])
5 m4_define([eds_micro_version], [90])
6
7 m4_define([eds_version],
8         [eds_major_version.eds_minor_version.eds_micro_version])
9
10 dnl Base Version: This is for API/version tracking for things like
11 dnl Bonobo server files.  This should always be the major/minor of
12 dnl the stable version or stable version to be.  Note, this is set
13 dnl the way it is so that GETTEXT_PACKAGE will be parsed correctly.
14 BASE_VERSION=3.6
15 m4_define([base_version], [3.6])
16
17 dnl This number is meaningless, but we're now stuck with it in our
18 dnl library names for backward compatibility.
19 m4_define([api_version], [1.2])
20
21 dnl Autoconf / Automake Initialization
22 AC_PREREQ(2.62)
23 AC_INIT([evolution-data-server],[eds_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=Evolution-Data-Server])
24 AM_INIT_AUTOMAKE([gnu 1.10 tar-ustar dist-xz no-dist-gzip -Wall -Wno-portability foreign])
25 AC_CONFIG_MACRO_DIR([m4])
26 AC_CONFIG_SRCDIR(README)
27 AC_CONFIG_HEADERS(config.h)
28
29 dnl This is for the autoconf tests only - it set's the language we use
30 AC_LANG(C)
31
32 dnl Automake 1.11 - Silent Build Rules
33 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
34
35 dnl Required Package Versions
36 m4_define([glib_minimum_version], [2.32])
37 m4_define([gtk_minimum_version], [3.2])
38 m4_define([gcr_minimum_version], [3.4])
39 m4_define([gnome_keyring_minimum_version], [2.20.1])
40 m4_define([libxml_minimum_version], [2.0.0])            dnl XXX Just a Guess
41 m4_define([libsoup_minimum_version], [2.38.1])
42 m4_define([libgdata_minimum_version], [0.10])
43 m4_define([oauth_minimum_version], [0.9.4])
44 m4_define([sqlite_minimum_version], [3.5])
45 m4_define([libical_minimum_version], [0.43])
46
47 dnl Optional Packages
48 m4_define([goa_minimum_version], [3.2])
49 m4_define([gweather_minimum_version], [3.5.0])
50
51 AC_SUBST([BASE_VERSION],[base_version])
52 AC_SUBST([API_VERSION],[api_version])
53 AC_DEFINE_UNQUOTED(BASE_VERSION, ["$BASE_VERSION"], [Base version (Major.Minor)])
54 AC_DEFINE_UNQUOTED(API_VERSION, ["$API_VERSION"], [API version (Major.Minor)])
55
56 EDS_MAJOR_VERSION=eds_major_version
57 EDS_MINOR_VERSION=eds_minor_version
58 EDS_MICRO_VERSION=eds_micro_version
59
60 GLIB_GSETTINGS
61
62 dnl ******************************
63 dnl D-Bus versioning
64 dnl ******************************
65 ADDRESS_BOOK_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.AddressBook4"
66 CALENDAR_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Calendar3"
67 SOURCES_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Sources0"
68
69 AC_DEFINE_UNQUOTED(
70        ADDRESS_BOOK_DBUS_SERVICE_NAME,
71        ["$ADDRESS_BOOK_DBUS_SERVICE_NAME"],
72        [D-Bus service name for the address book factory])
73
74 AC_DEFINE_UNQUOTED(
75        CALENDAR_DBUS_SERVICE_NAME,
76        ["$CALENDAR_DBUS_SERVICE_NAME"],
77        [D-Bus service name for the calendar factory])
78
79 AC_DEFINE_UNQUOTED(
80         SOURCES_DBUS_SERVICE_NAME,
81         ["$SOURCES_DBUS_SERVICE_NAME"],
82         [D-Bus service name for the source registry])
83
84 AC_SUBST(ADDRESS_BOOK_DBUS_SERVICE_NAME)
85 AC_SUBST(CALENDAR_DBUS_SERVICE_NAME)
86 AC_SUBST(SOURCES_DBUS_SERVICE_NAME)
87
88 dnl ******************************
89 dnl Libtool versioning
90 dnl ******************************
91 LIBEDATASERVER_CURRENT=17
92 LIBEDATASERVER_REVISION=0
93 LIBEDATASERVER_AGE=0
94
95 LIBEDATASERVERUI_CURRENT=4
96 LIBEDATASERVERUI_REVISION=0
97 LIBEDATASERVERUI_AGE=0
98
99 LIBECAL_CURRENT=15
100 LIBECAL_REVISION=0
101 LIBECAL_AGE=0
102
103 LIBEDATACAL_CURRENT=18
104 LIBEDATACAL_REVISION=0
105 LIBEDATACAL_AGE=0
106
107 LIBEDATABOOK_CURRENT=15
108 LIBEDATABOOK_REVISION=0
109 LIBEDATABOOK_AGE=0
110
111 LIBEBOOK_CURRENT=17
112 LIBEBOOK_REVISION=1
113 LIBEBOOK_AGE=3
114
115 LIBCAMEL_CURRENT=40
116 LIBCAMEL_REVISION=0
117 LIBCAMEL_AGE=0
118
119 LIBEBACKEND_CURRENT=5
120 LIBEBACKEND_REVISION=0
121 LIBEBACKEND_AGE=0
122
123 AC_SUBST(EDS_MAJOR_VERSION)
124 AC_SUBST(EDS_MINOR_VERSION)
125 AC_SUBST(EDS_MICRO_VERSION)
126 AC_SUBST(LIBEDATASERVER_CURRENT)
127 AC_SUBST(LIBEDATASERVER_REVISION)
128 AC_SUBST(LIBEDATASERVER_AGE)
129 AC_SUBST(LIBEDATASERVERUI_CURRENT)
130 AC_SUBST(LIBEDATASERVERUI_REVISION)
131 AC_SUBST(LIBEDATASERVERUI_AGE)
132 AC_SUBST(LIBECAL_CURRENT)
133 AC_SUBST(LIBECAL_REVISION)
134 AC_SUBST(LIBECAL_AGE)
135 AC_SUBST(LIBEDATACAL_CURRENT)
136 AC_SUBST(LIBEDATACAL_REVISION)
137 AC_SUBST(LIBEDATACAL_AGE)
138 AC_SUBST(LIBEBOOK_CURRENT)
139 AC_SUBST(LIBEBOOK_REVISION)
140 AC_SUBST(LIBEBOOK_AGE)
141 AC_SUBST(LIBEDATABOOK_CURRENT)
142 AC_SUBST(LIBEDATABOOK_REVISION)
143 AC_SUBST(LIBEDATABOOK_AGE)
144 AC_SUBST(LIBCAMEL_CURRENT)
145 AC_SUBST(LIBCAMEL_REVISION)
146 AC_SUBST(LIBCAMEL_AGE)
147 AC_SUBST(LIBEBACKEND_CURRENT)
148 AC_SUBST(LIBEBACKEND_REVISION)
149 AC_SUBST(LIBEBACKEND_AGE)
150
151 dnl **************************************
152 dnl Put the ACLOCAL flags in the Makefile
153 dnl **************************************
154 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
155
156 dnl ******************************
157 dnl Compiler Warning Flags
158 dnl ******************************
159 AS_COMPILER_FLAGS(WARNING_FLAGS,
160         "-Wall -Wextra
161         -Wno-missing-field-initializers
162         -Wno-sign-compare
163         -Wno-unused-parameter
164         -Wno-deprecated-declarations
165         -Wdeclaration-after-statement
166         -Werror-implicit-function-declaration
167         -Wformat-security -Winit-self
168         -Wmissing-declarations -Wmissing-include-dirs
169         -Wmissing-noreturn -Wnested-externs -Wpointer-arith
170         -Wredundant-decls -Wundef -Wwrite-strings")
171 AC_SUBST(WARNING_FLAGS)
172
173 dnl     More depracation from EBook/ECal:
174 dnl     -DE_BOOK_DISABLE_DEPRECATED
175 dnl     -DE_CAL_DISABLE_DEPRECATED
176 dnl
177 dnl Other useful compiler warnings for test builds only.
178 dnl These may produce warnings we have no control over,
179 dnl or false positives we don't always want to see.
180 dnl
181 dnl     -Wformat-nonliteral
182 dnl     -Wmissing-format-attribute
183 dnl     -Wshadow
184 dnl     -Wstrict-aliasing=2
185
186 AM_CPPFLAGS="$WARNING_FLAGS -fno-strict-aliasing"
187 AC_SUBST(AM_CPPFLAGS)
188
189
190 dnl define disable deprecated for EBook and ECal .am files
191 case "$WARNING_FLAGS" in
192 *E_BOOK_DISABLE_DEPRECATED*)
193         AM_CONDITIONAL(HAVE_E_BOOK_DISABLE_DEPRECATED, [ test 1 == 1 ])
194         ;;
195 *)
196         AM_CONDITIONAL(HAVE_E_BOOK_DISABLE_DEPRECATED, [ test 0 == 1 ])
197         ;;
198 esac
199
200 case "$WARNING_FLAGS" in
201 *E_CAL_DISABLE_DEPRECATED*)
202         AM_CONDITIONAL(HAVE_E_CAL_DISABLE_DEPRECATED, [ test 1 == 1 ])
203         ;;
204 *)
205         AM_CONDITIONAL(HAVE_E_CAL_DISABLE_DEPRECATED, [ test 0 == 1 ])
206         ;;
207 esac
208
209 dnl ******************************
210 dnl Initialize maintainer mode
211 dnl ******************************
212 AM_MAINTAINER_MODE([enable])
213
214 if test "x$enable_maintainer_mode" = "xyes" ; then
215         AC_DEFINE(ENABLE_MAINTAINER_MODE, 1, [Configured with enabled maintainer mode])
216 fi
217
218 AC_PROG_CC
219 AC_PROG_CPP
220 AC_C_INLINE
221 AM_PROG_CC_C_O
222 AC_PROG_INSTALL
223 AC_PROG_LN_S
224 AC_PROG_MAKE_SET
225
226 dnl For gen-western-table.py
227 AM_PATH_PYTHON
228
229 dnl GCC 4.4 got more aggressive in its aliasing optimizations, changing
230 dnl behavior that -- according to the C99 standard -- is supposed to be
231 dnl undefined.  We may still have aliasing abuses lying around that rely
232 dnl on GCC's previous "undefined" behavior, so disable strict-aliasing
233 dnl optimization until we can find and fix all the abuses.
234 dnl (AC_PROG_CC must run first to set the GCC variable.)
235 dnl XXX This really belongs in AM_CFLAGS.
236 if test "x${GCC}" = "xyes"; then
237         CFLAGS="$CFLAGS -fno-strict-aliasing"
238 fi
239
240 dnl ******************************
241 dnl I18N stuff
242 dnl ******************************
243 IT_PROG_INTLTOOL([0.35.5])
244
245 AM_GNU_GETTEXT_VERSION([0.17])
246 AM_GNU_GETTEXT([external])
247
248 GETTEXT_PACKAGE=evolution-data-server-$BASE_VERSION
249 AC_SUBST(GETTEXT_PACKAGE)
250 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Package name for gettext])
251
252 localedir='$(prefix)/$(DATADIRNAME)/locale'
253 AC_SUBST(localedir)
254
255 dnl ******************************
256 dnl Initialize libtool
257 dnl ******************************
258 LT_PREREQ(2.2)
259 LT_INIT(disable-static win32-dll)
260
261 PKG_PROG_PKG_CONFIG
262
263 dnl ******************************
264 dnl Gtk Doc stuff
265 dnl ******************************
266 GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
267
268 dnl The private D-Bus documentation is for developers only.
269 AC_ARG_WITH([private-docs],
270         AS_HELP_STRING([--with-private-docs],
271         [Build documentation for private libraries ]
272         [(requires --enable-gtk-doc) [default=no]],),
273         [with_private_docs="$withval"],[with_private_docs="no"])
274 AM_CONDITIONAL(WITH_PRIVATE_DOCS, [test x$with_private_docs = xyes])
275
276 dnl This must appear after AC_CANONICAL_HOST, which defines $host.
277 case "$host" in
278 *openbsd*|*freebsd*)
279         dnl Do not set '-Wl,--no-undefined' on freebsd/openbsd
280         ;;
281 *)
282         LDFLAGS="$LDFLAGS -Wl,--no-undefined"
283         ;;
284 esac
285
286 dnl ******************************
287 dnl Check for Win32
288 dnl ******************************
289 AC_MSG_CHECKING([for Win32])
290 case "$host" in
291 *-mingw*)
292         os_win32='yes'
293         NO_UNDEFINED='-no-undefined'
294         SOCKET_LIBS='-lws2_32 -ldnsapi'
295         DL_LIB=''
296         LIBEXECDIR_IN_SERVER_FILE='../../../libexec'
297         AC_CACHE_VAL(ac_cv_have_addrinfo, [ac_cv_have_addrinfo=yes])
298         AC_DEFINE(_WIN32_WINNT, 0x501, [To get getaddrinfo etc declarations])
299         ;;
300 *openbsd*|*freebsd*)
301         os_win32='no'
302         NO_UNDEFINED=''
303         SOCKET_LIBS=''
304         DL_LIB=''
305         LIBEXECDIR_IN_SERVER_FILE="$libexecdir"
306         ;;
307 *)
308         os_win32='no'
309         NO_UNDEFINED=''
310         SOCKET_LIBS=''
311         DL_LIB='-ldl'
312         LIBEXECDIR_IN_SERVER_FILE="$libexecdir"
313         ;;
314 esac
315 AC_MSG_RESULT([$os_win32])
316 AM_CONDITIONAL(OS_WIN32, [test $os_win32 = yes])
317 AC_SUBST(NO_UNDEFINED)
318 AC_SUBST(SOCKET_LIBS)
319 AC_SUBST(LIBEXECDIR_IN_SERVER_FILE)
320
321 dnl **************************************
322 dnl Check for posix compatible sys/wait.h
323 dnl **************************************
324 AC_HEADER_SYS_WAIT
325
326 dnl ************************************
327 dnl Check for posix compatible alloca()
328 dnl ************************************
329 AC_FUNC_ALLOCA
330
331 dnl ******************************
332 dnl Checks for functions
333 dnl ******************************
334 AC_CHECK_FUNCS(fsync strptime strtok_r nl_langinfo)
335
336 dnl ***********************************
337 dnl Check for base dependencies early.
338 dnl ***********************************
339 PKG_CHECK_MODULES(GNOME_PLATFORM,
340         [gio-2.0 >= glib_minimum_version
341         gmodule-2.0 >= glib_minimum_version
342         gtk+-3.0 >= gtk_minimum_version
343         libxml-2.0 >= libxml_minimum_version
344         libsoup-2.4 >= libsoup_minimum_version
345         libgdata >= libgdata_minimum_version])
346
347 if test x$os_win32 = xno; then
348         PKG_CHECK_MODULES(GIO_UNIX, [gio-unix-2.0])
349 fi
350
351 dnl *******************************
352 dnl Check for GNOME Online Accounts
353 dnl *******************************
354 AC_ARG_ENABLE([goa],
355         [AS_HELP_STRING([--enable-goa],
356         [enable GNOME Online Accounts support (default=yes)])],
357         [enable_goa=$enableval], [enable_goa=yes])
358 AC_MSG_CHECKING([if GNOME Online Accounts support is enabled])
359 AC_MSG_RESULT([$enable_goa])
360 if test "x$enable_goa" = xyes; then
361         PKG_CHECK_MODULES([GOA], [goa-1.0 >= goa_minimum_version],,
362         [AC_MSG_ERROR([goa-1.0 not found (or version < goa_minimum_version),
363         If you want to disable GNOME Online Accounts support,
364         please append --disable-goa to configure.])])
365
366         PKG_CHECK_MODULES([OAUTH], [oauth >= oauth_minimum_version],,
367         [AC_MSG_ERROR([oauth not found (or version < oauth_minimum_version),
368         If you want to disable GNOME Online Accounts support,
369         please append --disable-goa to configure.])])
370
371         if `$PKG_CONFIG --atleast-version=0.9.1 libgdata`; then
372                 AC_DEFINE(HAVE_GOA,1,[Have goa-1.0 and libgdata >= 0.9.1])
373         else
374                 AC_MSG_ERROR([
375         libgdata >= 0.9.1 is required for GNOME Online Accounts support.
376         If you want to disable GNOME Online Accounts support, please
377         append --disable-goa to configure.])
378         fi
379 fi
380 AM_CONDITIONAL(HAVE_GOA, [test x$enable_goa = xyes])
381
382 dnl GoaPasswordBased was introduced in version 3.5.
383 if `$PKG_CONFIG --atleast-version=3.5 goa-1.0`; then
384         AC_DEFINE(HAVE_GOA_PASSWORD_BASED,1,[Have GoaPasswordBased in goa-1.0])
385 fi
386
387 dnl ***********************************
388 dnl Check for GNOME Keyring.
389 dnl ***********************************
390 if test x$os_win32 = xno; then
391         PKG_CHECK_MODULES(GNOME_KEYRING,
392                 [gnome-keyring-1 >= gnome_keyring_minimum_version])
393 fi
394 AC_SUBST(GNOME_KEYRING_CFLAGS)
395 AC_SUBST(GNOME_KEYRING_LIBS)
396
397 dnl **********************************************************
398 dnl gcr-base is needed for secure password exchange over D-Bus
399 dnl **********************************************************
400 PKG_CHECK_MODULES(GCR_BASE, [gcr-base-3 >= gcr_minimum_version])
401 AC_SUBST(GCR_BASE_CFLAGS)
402 AC_SUBST(GCR_BASE_LIBS)
403
404 LIBICAL_REQUIRED=libical_minimum_version
405 AC_SUBST(LIBICAL_REQUIRED)
406
407 dnl ******************************
408 dnl regex check
409 dnl ******************************
410 AC_CHECK_FUNCS(regexec,,[AC_CHECK_LIB(regex,regexec,
411                         [REGEX_LIBS=-lregex
412                         AC_DEFINE(HAVE_REGEXEC,1,[Define to 1 if you have the regexec function.])],
413                         [AC_MSG_ERROR([No regex library found])])])
414 AC_SUBST(REGEX_LIBS)
415
416 dnl ******************************
417 dnl libdb checking
418 dnl ******************************
419 AC_ARG_WITH([libdb],
420         AS_HELP_STRING([--with-libdb=PREFIX],
421         [Prefix where libdb is installed]),
422         [libdb_prefix="$withval"], [libdb_prefix='${prefix}'])
423
424 DB_CFLAGS="-I$libdb_prefix/include"
425 DB_LIBS="-L$libdb_prefix/lib -ldb"
426
427 AC_MSG_CHECKING([Berkeley DB])
428 save_cflags=$CFLAGS; CFLAGS=$DB_CFLAGS
429 save_libs=$LIBS; LIBS="$DB_LIBS"
430 AC_LINK_IFELSE([AC_LANG_PROGRAM(
431         [[#include <db.h>]],
432         [[db_create(NULL, NULL, 0)]])],
433         [AC_MSG_RESULT([yes])],
434         [AC_MSG_ERROR([Cannot find libdb])])
435 CFLAGS=$save_cflags
436 LIBS=$save_libs
437 AC_SUBST(DB_CFLAGS)
438 AC_SUBST(DB_LIBS)
439
440 dnl ******************************
441 dnl iconv checking
442 dnl ******************************
443 have_iconv="no"
444 save_LIBS="$LIBS"
445 LIBS="$LIBS -liconv"
446 AC_CACHE_CHECK([for iconv in -liconv], [ac_cv_libiconv],
447         AC_LINK_IFELSE([AC_LANG_PROGRAM(
448         [[
449                 #include <iconv.h>
450                 #include <stdlib.h>
451         ]],
452         [[
453                 iconv_t cd;
454                 cd = iconv_open ("UTF-8", "ISO-8859-1");
455         ]]
456         )],[ac_cv_libiconv=yes],[ac_cv_libiconv=no]))
457
458 if test "x$ac_cv_libiconv" = "xyes"; then
459         ICONV_LIBS="-liconv"
460         if test "x$os_win32" = "xyes"; then
461                 dnl Don't pointlessly auto-export the global symbols
462                 dnl from a potentially static libiconv.a
463                 ICONV_LIBS="$ICONV_LIBS -Wl,--exclude-libs=libiconv.a"
464         fi
465         have_iconv="yes"
466 else
467         LIBS="$save_LIBS"
468         AC_CHECK_FUNC(iconv, [have_iconv=yes], [have_iconv=no])
469 fi
470
471 if test "x$have_iconv" = "xyes"; then
472         if test "x$ac_cv_libiconv" = "xno"; then
473                 AC_CHECK_FUNCS(gnu_get_libc_version)
474         fi
475 AC_CACHE_CHECK([if iconv() handles UTF-8], [ac_cv_libiconv_utf8],
476         AC_RUN_IFELSE([AC_LANG_SOURCE([[
477                 #include <iconv.h>
478                 #include <stdlib.h>
479                 #include <string.h>
480                 #ifdef HAVE_GNU_GET_LIBC_VERSION
481                 #include <gnu/libc-version.h>
482                 #endif
483                 int main() {
484                         char *jp = "\x1B\x24\x42\x46\x7C\x4B\x5C\x38\x6C";
485                         char *utf8 = "\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E";
486                         char *transbuf = malloc (10), *trans = transbuf;
487                         iconv_t cd;
488                         size_t jp_len = strlen (jp), utf8_len = 10;
489                         size_t utf8_real_len = strlen (utf8);
490
491                         #ifdef HAVE_GNU_GET_LIBC_VERSION
492                         /* glibc 2.1.2's iconv is broken in hard to test ways. */
493                         if (!strcmp (gnu_get_libc_version (), "2.1.2"))
494                                 exit (1);
495                         #endif
496
497                         cd = iconv_open ("UTF-8", "ISO-2022-JP");
498                         if (cd == (iconv_t) -1)
499                                 exit (1);
500                         if (iconv (cd, &jp, &jp_len, &trans, &utf8_len) == -1 || jp_len != 0)
501                                 exit (1);
502                         if (memcmp (utf8, transbuf, utf8_real_len) != 0)
503                                 exit (1);
504                         return (0);}
505                 ]])
506         ],[ac_cv_libiconv_utf8=yes],[ac_cv_libiconv_utf8=no; have_iconv=no],[ac_cv_libiconv_utf8=hopefully]))
507 fi
508
509 if test "x$have_iconv" = "xno"; then
510         AC_MSG_ERROR([You need to install a working iconv implementation, such as ftp://ftp.gnu.org/pub/gnu/libiconv])
511 fi
512 AC_SUBST(ICONV_LIBS)
513
514 CFLAGS="$CFLAGS -I$srcdir"
515
516 AC_MSG_CHECKING([preferred charset name formats for system iconv])
517 AC_RUN_IFELSE([AC_LANG_SOURCE([[
518         #define CONFIGURE_IN
519         #include "iconv-detect.c"
520         ]])],
521         [AC_MSG_RESULT([found])],
522         [AC_MSG_RESULT([not found])
523                 AC_MSG_WARN([
524                 *** The iconv-detect program was unable to determine the
525                 *** preferred charset name formats recognized by your
526                 *** iconv library. It is suggested that you install a
527                 *** working iconv library such as the one found at
528                 *** ftp://ftp.gnu.org/pub/gnu/libiconv
529         ])],
530         [if test "x$os_win32" = xyes; then
531                 AC_MSG_RESULT([using known win32 result])
532                 echo '/* This is an auto-generated header, DO NOT EDIT! */' > iconv-detect.h
533                 echo  >>iconv-detect.h
534                 echo '#define ICONV_ISO_D_FORMAT "iso-%d-%d"' >>iconv-detect.h
535                 echo '#define ICONV_ISO_S_FORMAT "iso-%d-%s"' >>iconv-detect.h
536                 echo '#define ICONV_10646 "UCS-4BE"' >>iconv-detect.h
537         else
538                 AC_MSG_RESULT([unknown])
539                 AC_MSG_WARN([
540                 *** We can't determine the preferred charset name formats
541                 *** recognized by your iconv library. You are
542                 *** cross-compiling and supposed to know what you are doing.
543                 *** Please construct the iconv-detect.h file manually.
544                 ])
545         fi
546 ])
547
548 CFLAGS="$save_CFLAGS"
549 LIBS="$save_LIBS"
550
551 AC_ARG_ENABLE([backtraces],
552         [AS_HELP_STRING([--enable-backtraces],
553         [enable backtraces for camel_pointer_tracker (default=no)])],
554         [enable_backtraces=$enableval], [enable_backtraces=no])
555
556 if test "x$enable_backtraces" = xyes; then
557         dnl ****************************
558         dnl Check for backtrace_symbols function and dwfl from elfutils
559         dnl ****************************
560         AC_MSG_CHECKING([libc backtrace_symbols function])
561         AC_LINK_IFELSE([AC_LANG_PROGRAM(
562                 [[#include <execinfo.h>]],
563                 [[{ void *bt[1]; backtrace_symbols (bt, backtrace(bt, 1)); }]])],
564                 [AC_DEFINE(HAVE_BACKTRACE_SYMBOLS, 1, [libc provides backtrace_symbols function]) ac_cv_have_bsf=yes],[ac_cv_have_bsf=no])
565         AC_MSG_RESULT([$ac_cv_have_bsf])
566
567         if test "x$ac_cv_have_bsf" = xyes; then
568                 LIBS="$LIBS -ldw"
569
570                 AC_MSG_CHECKING([elfutils/libdwfl])
571                 AC_LINK_IFELSE([AC_LANG_PROGRAM(
572                         [[#include <elfutils/libdwfl.h>]],
573                         [[{
574                                 Dwfl *dwfl;
575                                 Dwfl_Module *module;
576                                 Dwarf_Addr module_low_addr;
577                                 Dwfl_Line *line;
578
579                                 dwfl_standard_find_debuginfo;
580                                 dwfl_linux_proc_find_elf;
581                                 dwfl_begin (NULL);
582                                 dwfl_linux_proc_report (NULL, 1);
583                                 dwfl_report_end (NULL, NULL, NULL);
584                                 dwfl_end (NULL);
585                                 dwfl_module_addrname (NULL, NULL);
586                                 dwfl_module_getsrc (NULL, NULL);
587                                 dwfl_lineinfo (NULL, NULL, NULL, NULL, NULL, NULL);
588                                 DWARF_CB_ABORT; DWARF_CB_OK;
589                                 dwfl_getmodules (NULL, NULL, NULL, 0);
590                         }]])],
591                         [AC_DEFINE(HAVE_ELFUTILS_LIBDWFL, 1, [have elfutils/libdwfl.h functions]) ac_cv_have_elfdwfl=yes],[ac_cv_have_elfdwfl=no])
592                 AC_MSG_RESULT([$ac_cv_have_elfdwfl])
593
594                 LIBS="$save_LIBS"
595
596                 if test "x$ac_cv_have_elfdwfl" = xyes; then
597                         LIBDWFL_LIBS="-ldw"
598                         AC_SUBST(LIBDWFL_LIBS)
599                 fi
600         fi
601 fi
602
603 dnl **********************************
604 dnl Check for nl_langinfo and CODESET
605 dnl **********************************
606 AC_MSG_CHECKING([for nl_langinfo (CODESET)])
607 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
608         [[#include <langinfo.h>]],
609         [[char *codeset = nl_langinfo (CODESET);]]
610         )],[ac_cv_langinfo_codeset=yes],[ac_cv_langinfo_codeset=no])
611 if test "x$ac_cv_langinfo_codeset" = "xyes"; then
612         AC_DEFINE(HAVE_CODESET, 1, [Have nl_langinfo (CODESET)])
613 fi
614 AC_MSG_RESULT([$ac_cv_langinfo_codeset])
615
616 dnl *******************************************************
617 dnl Check to see if strftime supports the use of %l and %k
618 dnl *******************************************************
619 AC_MSG_CHECKING([for %l and %k support in strftime])
620 AC_RUN_IFELSE([AC_LANG_SOURCE(
621         [[      #include <stdlib.h>
622                 #include <string.h>
623                 #include <time.h>
624                 int main(int argc, char **argv) {
625                 char buf[10];
626                 time_t rawtime;
627                 struct tm *timeinfo;
628
629                 time(&rawtime);
630                 timeinfo=localtime(&rawtime);
631                 buf[0] = '\0';
632                 strftime(buf, 10, "%lx%k", timeinfo);
633
634                 if (buf[0] == '\0' || buf[0] == 'x' || strstr(buf, "l") || strstr(buf, "k"))
635                         exit(1);
636                 else
637                         exit(0);
638                 return 0;
639                 }
640         ]]
641         )],[AC_DEFINE(HAVE_LKSTRFTIME, 1, [strftime supports use of l and k]) ac_cv_lkstrftime=yes],[ac_cv_lkstrftime=no],[ac_cv_lkstrftime=no])
642 AC_MSG_RESULT([$ac_cv_lkstrftime])
643
644 dnl ********************************************************************************
645 dnl security extension support (SSL and S/MIME)
646 dnl
647 dnl The following voodoo does detection of mozilla libraries (nspr and nss)
648 dnl needed by Camel (SSL and S/MIME).
649 dnl
650 dnl The Evolution security extensions are only built if these libraries are found
651 dnl ********************************************************************************
652 msg_smime="no"
653
654 AC_ARG_ENABLE([smime],
655         AS_HELP_STRING([--enable-smime],
656         [Enable SMIME support through Mozilla nss @<:@default=yes@:>@ ]),
657         [enable_smime="$enableval"],[enable_smime="yes"])
658
659 AC_ARG_WITH([nspr-includes],
660         AS_HELP_STRING([--with-nspr-includes],
661         [Prefix of Mozilla nspr4 includes.]),
662         [with_nspr_includes="$withval"])
663
664 AC_ARG_WITH([nspr-libs],
665         AS_HELP_STRING([--with-nspr-libs],
666         [Prefix of Mozilla nspr4 libs.]),
667         [with_nspr_libs="$withval"])
668
669 AC_ARG_WITH([nss-includes],
670         AS_HELP_STRING([--with-nss-includes],
671         [Prefix of Mozilla nss3 includes.]),
672         [with_nss_includes="$withval"])
673
674 AC_ARG_WITH([nss-libs],
675         AS_HELP_STRING([--with-nss-libs],
676         [Prefix of Mozilla nss3 libs.]),
677         [with_nss_libs="$withval"])
678
679 if test -n "${with_nspr_includes}" || test -n "${with_nspr_libs}" || test -n "${with_nss_includes}" || test -n "${with_nss_libs}"; then
680         check_manually="yes"
681 else
682         check_manually="no"
683 fi
684
685 dnl check if pkg-config files exist (which are only shipped by distributions, not upstream)
686 if test "x${check_manually}" = "xno"; then
687         AC_MSG_CHECKING(Mozilla NSPR pkg-config module name)
688         mozilla_nspr_pcs="nspr mozilla-nspr firefox-nspr xulrunner-nspr seamonkey-nspr"
689         for pc in $mozilla_nspr_pcs; do
690                 if $PKG_CONFIG --exists $pc; then
691                         AC_MSG_RESULT($pc)
692                         mozilla_nspr=$pc
693                         break;
694                 fi
695         done
696
697         AC_MSG_CHECKING(Mozilla NSS pkg-config module name)
698         mozilla_nss_pcs="nss mozilla-nss firefox-nss xulrunner-nss seamonkey-nss"
699         for pc in $mozilla_nss_pcs; do
700                 if $PKG_CONFIG --exists $pc; then
701                         AC_MSG_RESULT($pc)
702                         mozilla_nss=$pc
703                         break;
704                 fi
705         done
706
707         if test -n "$mozilla_nspr" -a -n "$mozilla_nss"; then
708                 if test "x$enable_smime" = "xyes"; then
709                         AC_DEFINE(ENABLE_SMIME,1,[Define if SMIME should be enabled])
710                         msg_smime="yes"
711                 fi
712                 MANUAL_NSPR_CFLAGS=""
713                 MANUAL_NSPR_LIBS=""
714                 MANUAL_NSS_CFLAGS=""
715                 MANUAL_NSS_LIBS=""
716         else
717                 check_manually="yes"
718                 mozilla_nspr=""
719                 mozilla_nss=""
720         fi
721 fi
722
723 if test "x${check_manually}" = "xyes"; then
724 dnl ******************
725 dnl Check for NSPR 4
726 dnl ******************
727         AC_MSG_CHECKING([for Mozilla nspr4 includes])
728                 CPPFLAGS_save="$CPPFLAGS"
729                 if test -n "$with_nspr_includes"; then
730                         CPPFLAGS="$CPPFLAGS -I$with_nspr_includes"
731                 fi
732
733                 AC_CHECK_HEADERS(nspr.h prio.h,
734                 [moz_nspr_includes="yes"],[moz_nspr_includes="no"])
735                 CPPFLAGS="$CPPFLAGS_save"
736
737                 if test "x${moz_nspr_includes}" = "xyes"; then
738                         MANUAL_NSPR_CFLAGS="-I$with_nspr_includes"
739                 else
740                         AC_MSG_FAILURE([NSPR headers not found. Use --with-nspr-includes to specify the include dir of NSPR.])
741                 fi
742         AC_MSG_RESULT([$moz_nspr_includes])
743
744         AC_MSG_CHECKING([for Mozilla nspr libraries])
745                 CFLAGS_save="$CFLAGS"
746                 LDFLAGS_save="$LDFLAGS"
747                 LIBS_save="$LIBS"
748                 nsprlibs="$DL_LIB -lplc4 -lplds4 -lnspr4"
749
750                 CFLAGS="$CFLAGS $MANUAL_NSPR_CFLAGS"
751                 LIBS="$nsprlibs"
752                 dnl Test to protect from giving libtool an -L , which results in failure (used below,too)
753                 if test -n "${with_nspr_libs}"; then
754                         LDFLAGS="$LDFLAGS -L$with_nspr_libs"
755                 else
756                         LDFLAGS="$LDFLAGS"
757                 fi
758
759                 AC_LINK_IFELSE([AC_LANG_CALL([],[PR_Init])],
760                 [moz_nspr_libs="yes"],[moz_nspr_libs="no"])
761
762                 CFLAGS="$CFLAGS_save"
763                 LDFLAGS="$LDFLAGS_save"
764                 LIBS="$LIBS_save"
765
766                 if test "x${moz_nspr_libs}" = "xyes"; then
767                         if test -n "${with_nspr_libs}"; then
768                                 MANUAL_NSPR_LIBS="-L$with_nspr_libs $nsprlibs"
769                         else
770                                 MANUAL_NSPR_LIBS="$nsprlibs"
771                         fi
772                 else
773                         AC_MSG_FAILURE([NSPR libs not found. Use --with-nspr-libs to specify the libdir of NSPR.])
774                 fi
775         AC_MSG_RESULT([$moz_nspr_libs])
776
777 dnl *****************
778 dnl Check for NSS 3
779 dnl *****************
780         AC_MSG_CHECKING([for Mozilla nss3 includes])
781                 CPPFLAGS_save="$CPPFLAGS"
782                 CPPFLAGS="$CPPFLAGS -I$with_nspr_includes -I$with_nss_includes"
783
784                 AC_CHECK_HEADERS(nss.h ssl.h smime.h,
785                 [moz_nss_includes="yes"],[moz_nss_includes="no"])
786                 CPPFLAGS="$CPPFLAGS_save"
787
788                 if test "x${moz_nss_includes}" = "xyes"; then
789                         MANUAL_NSS_CFLAGS="-I$with_nss_includes"
790                 else
791                         AC_MSG_FAILURE([NSS headers not found. Use --with-nss-includes to specify the include dir of NSS.])
792                 fi
793         AC_MSG_RESULT($moz_nss_includes)
794
795         AC_MSG_CHECKING([for Mozilla nss libraries])
796                 LDFLAGS_save="$LDFLAGS"
797                 LIBS_save="$LIBS"
798                 nsslibs="-lssl3 -lsmime3 -lnss3"
799
800                 LIBS="$nsslibs $nsprlibs"
801                 dnl Test to protect from giving libtool an -L , which results in failure (used below,too)
802                 if test -n "${with_nss_libs}"; then
803                         LDFLAGS="$LDFLAGS -L$with_nss_libs $MANUAL_NSPR_LIBS"
804                 else
805                         LDFLAGS="$LDFLAGS $LDFLAGS_NSPR $MANUAL_NSPR_LIBS"
806                 fi
807
808                 AC_LINK_IFELSE([AC_LANG_CALL([],[NSS_Init])],
809                 [moz_nss_libs="yes"],[moz_nss_libs="no"])
810                 LDFLAGS="$LDFLAGS_save"
811                 LIBS="$LIBS_save"
812
813                 if test "x${moz_nss_libs}" = "xyes"; then
814                         if test "x${enable_smime}" = "xyes"; then
815                                 AC_DEFINE(ENABLE_SMIME,1,[Define if SMIME should be enabled])
816                                 msg_smime="yes"
817                         fi
818                         if test -n "${with_nss_libs}"; then
819                                 MANUAL_NSS_LIBS="-L$with_nss_libs $nsslibs"
820                         else
821                                 MANUAL_NSS_LIBS="$nsslibs"
822                         fi
823                 else
824                         AC_MSG_FAILURE([NSS libs not found. Use --with-nss-libs to specify the libdir of NSS.])
825                 fi
826         AC_MSG_RESULT([$moz_nss_libs])
827
828         MANUAL_NSS_CFLAGS="$MANUAL_NSPR_CFLAGS $MANUAL_NSS_CFLAGS"
829         MANUAL_NSS_LIBS="$MANUAL_NSPR_LIBS $MANUAL_NSS_LIBS"
830 fi
831
832 AM_CONDITIONAL(ENABLE_SMIME, test "x$msg_smime" != "xno")
833
834 dnl For pkgconfig files.
835 AC_SUBST(mozilla_nss)
836 AC_SUBST(mozilla_nspr)
837
838 AC_SUBST(MANUAL_NSPR_CFLAGS)
839 AC_SUBST(MANUAL_NSPR_LIBS)
840 AC_SUBST(MANUAL_NSS_CFLAGS)
841 AC_SUBST(MANUAL_NSS_LIBS)
842
843 dnl ******************************
844 dnl system mail stuff
845 dnl ******************************
846 AC_PATH_PROG(SENDMAIL, sendmail, [/usr/sbin/sendmail], [/usr/sbin:/usr/lib])
847 AC_DEFINE_UNQUOTED(SENDMAIL_PATH, "$SENDMAIL", [Path to a sendmail binary, or equivalent])
848
849 AC_MSG_CHECKING([system mail directory])
850 if test -d /var/mail -a '!' -h /var/mail ; then
851         system_mail_dir="/var/mail"
852 else
853         system_mail_dir="/var/spool/mail"
854 fi
855 AC_DEFINE_UNQUOTED(SYSTEM_MAIL_DIR, "$system_mail_dir", [Directory local mail is delivered to])
856
857 case `ls -ld $system_mail_dir 2>&1 | awk '{print $1;}'` in
858         d??????rw?)
859                 CAMEL_LOCK_HELPER_USER=""
860                 CAMEL_LOCK_HELPER_GROUP=""
861                 system_mail_perm="world writable"
862         ;;
863         d???rw????)
864                 CAMEL_LOCK_HELPER_USER=""
865                 CAMEL_LOCK_HELPER_GROUP=`ls -ld $system_mail_dir 2>&1 | awk '{print $4;}'`
866                 system_mail_perm="writable by group $CAMEL_LOCK_HELPER_GROUP"
867         ;;
868         drw???????)
869                 CAMEL_LOCK_HELPER_USER=`ls -ld $system_mail_dir 2>&1 | awk '{print $3;}'`
870                 CAMEL_LOCK_HELPER_GROUP=""
871                 system_mail_perm="writable by user $CAMEL_LOCK_HELPER_USER"
872         ;;
873         *)
874                 CAMEL_LOCK_HELPER_USER=""
875                 CAMEL_LOCK_HELPER_GROUP=""
876                 system_mail_perm="???"
877         ;;
878 esac
879
880 AC_MSG_RESULT([$system_mail_dir, $system_mail_perm])
881 AC_SUBST(CAMEL_LOCK_HELPER_USER)
882 AC_SUBST(CAMEL_LOCK_HELPER_GROUP)
883
884 dnl ******************************
885 dnl Timezone checks
886 dnl ******************************
887 AC_CACHE_CHECK(for tm_gmtoff in struct tm, [ac_cv_struct_tm_gmtoff],
888         AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
889         [[      #include <time.h>       ]],
890         [[
891                 struct tm tm;
892                 tm.tm_gmtoff = 1;
893         ]]
894         )],[ac_cv_struct_tm_gmtoff=yes],[ac_cv_struct_tm_gmtoff=no]))
895 if test "x$ac_cv_struct_tm_gmtoff" = "xyes"; then
896         AC_DEFINE(HAVE_TM_GMTOFF, 1, [Define if struct tm has a tm_gmtoff member])
897 else
898         AC_CACHE_CHECK(for timezone variable, [ac_cv_var_timezone],
899                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
900                 [[      #include <time.h> ]],
901                 [[      timezone = 1;   ]]
902                 )],[ac_cv_var_timezone=yes],[ac_cv_var_timezone=no]))
903         if test "x$ac_cv_var_timezone" = "xyes"; then
904                 AC_DEFINE(HAVE_TIMEZONE, 1, [Define if libc defines a timezone variable])
905                 AC_CACHE_CHECK(for altzone variable, [ac_cv_var_altzone],
906                         AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
907                         [[      #include <time.h>       ]],
908                         [[      altzone = 1; ]]
909                         )],[ac_cv_var_altzone=yes],[ac_cv_var_altzone=no]))
910                 if test "x$ac_cv_var_altzone" = "xyes"; then
911                         AC_DEFINE(HAVE_ALTZONE, 1, [Define if libc defines an altzone variable])
912                 fi
913         else
914                 AC_MSG_ERROR([unable to find a way to determine timezone])
915         fi
916 fi
917
918 dnl ******************************
919 dnl ctime_r prototype
920 dnl ******************************
921 AC_CACHE_CHECK([if ctime_r wants three arguments], [ac_cv_ctime_r_three_args],
922 [
923         AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
924         [[      #include <time.h> ]],
925         [[      char *buf;
926                 time_t date;
927                 ctime_r (&date, buf, 100); ]]
928         )],[ac_cv_ctime_r_three_args=yes],[ac_cv_ctime_r_three_args=no])
929 ])
930
931 if test "x$ac_cv_ctime_r_three_args" = "xyes" ; then
932         AC_DEFINE(CTIME_R_THREE_ARGS, 1, [Solaris-style ctime_r])
933 fi
934
935 dnl ******************************
936 dnl gethostbyname_r prototype
937 dnl ******************************
938 AC_CHECK_FUNCS(gethostbyname_r,[
939 AC_CACHE_CHECK([if gethostbyname_r wants five arguments], [ac_cv_gethostbyname_r_five_args],
940 [
941         AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
942         [[
943                 #include "confdefs.h"
944                 #include <sys/types.h>
945                 #include <sys/socket.h>
946                 #include <netinet/in.h>
947                 #include <netdb.h>
948                 #define BUFSIZE (sizeof(struct hostent)+10)
949         ]],
950         [[
951                 struct hostent hent;
952                 char buffer[BUFSIZE];
953                 int bufsize=BUFSIZE;
954                 int h_errno;
955                 (void)gethostbyname_r ("www.ximian.com", &hent, buffer, bufsize, &h_errno);
956         ]]
957         )],[ac_cv_gethostbyname_r_five_args=yes],[ac_cv_gethostbyname_r_five_args=no])
958 ])])
959
960 if test "x$ac_cv_gethostbyname_r_five_args" = "xyes" ; then
961         AC_DEFINE(GETHOSTBYNAME_R_FIVE_ARGS, 1, [Solaris-style gethostbyname_r])
962 fi
963
964 dnl ******************************
965 dnl gethostbyaddr_r prototype
966 dnl ******************************
967 AC_CHECK_FUNCS(gethostbyaddr_r,[
968 AC_CACHE_CHECK([if gethostbyaddr_r wants seven arguments], [ac_cv_gethostbyaddr_r_seven_args],
969 [
970         AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
971         [[
972                 #include "confdefs.h"
973                 #include <sys/types.h>
974                 #include <sys/socket.h>
975                 #include <netinet/in.h>
976                 #include <netdb.h>
977                 #define BUFSIZE (sizeof(struct hostent)+10)
978         ]],
979         [[
980                 struct hostent hent;
981                 char buffer[BUFSIZE];
982                 int bufsize=BUFSIZE;
983                 int h_errno;
984                 (void)gethostbyaddr_r ("www.ximian.com", 14, AF_INET, &hent, buffer, bufsize, &h_errno); ]]
985         )],[ac_cv_gethostbyaddr_r_seven_args=yes],[ac_cv_gethostbyaddr_r_seven_args=no])
986 ])])
987
988 if test "x$ac_cv_gethostbyaddr_r_seven_args" = "xyes" ; then
989         AC_DEFINE(GETHOSTBYADDR_R_SEVEN_ARGS, 1, [Solaris-style gethostbyaddr_r])
990 fi
991
992 dnl ******************************
993 dnl stat(v)fs location/type
994 dnl ******************************
995 AC_CHECK_HEADER([sys/statvfs.h],
996         [AC_DEFINE([HAVE_SYS_STATVFS_H], 1, [Have <sys/statvfs.h>])],,
997         [[      #if HAVE_SYS_STATVFS_H
998                 #include <sys/statvfs.h>
999                 #endif
1000         ]])
1001 AC_CHECK_FUNCS(statvfs)
1002
1003 AC_CHECK_HEADER([sys/param.h],
1004         [AC_DEFINE([HAVE_SYS_PARAM_H], 1, [Have <sys/param.h>])],,
1005         [[      #if HAVE_SYS_PARAM_H
1006                 #include <sys/param.h>
1007                 #endif
1008         ]])
1009 AC_CHECK_HEADER([sys/mount.h],
1010         [AC_DEFINE([HAVE_SYS_MOUNT_H], 1, [Have <sys/mount.h>])],,
1011         [[      #if HAVE_SYS_MOUNT_H
1012                 #include <sys/mount.h>
1013                 #endif
1014         ]])
1015 AC_CHECK_FUNCS(statfs)
1016
1017 dnl ******************************
1018 dnl IPv6 support and getaddrinfo calls
1019 dnl ******************************
1020 AC_CACHE_CHECK([if system supports getaddrinfo and getnameinfo], [ac_cv_have_addrinfo],
1021 [
1022         AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
1023         [[      #include "confdefs.h"
1024                 #include <sys/types.h>
1025                 #include <sys/socket.h>
1026                 #include <netinet/in.h>
1027                 #include <netdb.h>
1028                 #include <stddef.h>
1029         ]],
1030         [[      #ifndef NI_MAXHOST
1031                 #define NI_MAXHOST      1025
1032                 #endif
1033
1034                 #ifndef NI_MAXSERV
1035                 #define NI_MAXSERV      32
1036                 #endif
1037
1038                 struct addrinfo hints, *res;
1039                 struct sockaddr_in6 sin6;
1040                 int af = AF_INET6;
1041                 char host[NI_MAXHOST];
1042                 char serv[NI_MAXSERV];
1043
1044                 getaddrinfo ("www.ximian.com", NULL, &hints, &res);
1045                 freeaddrinfo (res);
1046                 getnameinfo((struct sockaddr *)&sin6, sizeof(sin6), host, sizeof(host), serv, sizeof(serv), 0); ]]
1047         )],[ac_cv_have_addrinfo=yes],[ac_cv_have_addrinfo=no])
1048 ])
1049
1050 if test "x$ac_cv_have_addrinfo" = "xno" ; then
1051         AC_DEFINE(NEED_ADDRINFO,1,[Enable getaddrinfo emulation])
1052         if test "x$enable_ipv6" = "xyes" ; then
1053                 AC_MSG_ERROR([system doesn't support necessary interfaces for ipv6 support])
1054         fi
1055         msg_ipv6="no"
1056 else
1057         AC_ARG_ENABLE([ipv6],
1058         AS_HELP_STRING([--enable-ipv6=no/yes],
1059         [Enable support for resolving IPv6 addresses.]),
1060         [enable_ipv6=$enableval],[enable_ipv6=yes])
1061         if test "x$enable_ipv6" = "xyes"; then
1062                 msg_ipv6="yes"
1063                 AC_DEFINE(ENABLE_IPv6,1,[Enable IPv6 support])
1064                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
1065                 [[      #include "confdefs.h"
1066                         #include <sys/types.h>
1067                         #include <sys/socket.h>
1068                         #include <netinet/in.h>
1069                         #include <netdb.h>
1070                 ]],
1071                 [[      struct addrinfo hints;
1072                         hints.ai_flags = AI_ADDRCONFIG;
1073                 ]]
1074                 )],[AC_DEFINE(HAVE_AI_ADDRCONFIG,1,[Define if the system defines the AI_ADDRCONFIG flag for getaddrinfo])],[])
1075         else
1076                 msg_ipv6="no"
1077         fi
1078 fi
1079
1080 AM_CONDITIONAL(ENABLE_IPv6, [test "x$enable_ipv6" = "xyes"])
1081
1082 AC_CHECK_HEADER([wspiapi.h],
1083         [AC_DEFINE([HAVE_WSPIAPI_H], 1, [Have <wspiapi.h>])],,)
1084
1085 dnl **********************************
1086 dnl Weather calendar backend support
1087 dnl **********************************
1088 AC_MSG_CHECKING([if we should build the weather calendar backend])
1089 AC_ARG_ENABLE([weather],
1090         [AS_HELP_STRING([--enable-weather],
1091         [Build the weather calendar backend (default=yes)])],
1092         [use_gweather=$enableval], [use_gweather=yes])
1093
1094 AC_MSG_RESULT([$use_gweather])
1095 if test "x$use_gweather" = "xyes"; then
1096         PKG_CHECK_MODULES([LIBGWEATHER], [gweather-3.0 >= gweather_minimum_version],[],
1097         [AC_MSG_ERROR([The weather calendar backend requires GWeather >= gweather_minimum_version. Alternatively, you may specify --disable-weather as a configure option to avoid building the backend.])])
1098 fi
1099 AM_CONDITIONAL(ENABLE_WEATHER, [test $use_gweather = yes])
1100
1101 dnl ******************************
1102 dnl NNTP support.
1103 dnl ******************************
1104 AC_ARG_ENABLE([nntp],
1105         AS_HELP_STRING([--enable-nntp],
1106         [Build Usenet news (NNTP) backend]),
1107         [enable_nntp=$enableval],[enable_nntp=yes])
1108 if test "x$enable_nntp" = "xyes"; then
1109         AC_DEFINE(ENABLE_NNTP,1,[Build NNTP backend])
1110         msg_nntp="yes"
1111 else
1112         msg_nntp="no"
1113 fi
1114 AM_CONDITIONAL(ENABLE_NNTP, [test x$enable_nntp = xyes])
1115
1116 AC_DEFINE(HANDLE_LIBICAL_MEMORY, 1, [Define it once memory returned by libical is free'ed properly])
1117
1118 dnl ******************************
1119 dnl File locking
1120 dnl ******************************
1121 AC_ARG_ENABLE([dot-locking],
1122         AS_HELP_STRING([--enable-dot-locking=yes/no],
1123         [Enable support for locking mail files with dot locking]),
1124         [enable_dot_locking=$enableval],[enable_dot_locking=yes])
1125
1126 if test "x$os_win32" != "xyes" -a "x$enable_dot_locking" = "xyes"; then
1127         AC_DEFINE(USE_DOT,1,[Define to use dot locking for mbox files])
1128         msg_dot="yes"
1129 else
1130         msg_dot="no"
1131 fi
1132
1133 AC_ARG_ENABLE([file-locking],
1134         AS_HELP_STRING([--enable-file-locking=fcntl/flock/no],
1135         [Enable support for locking mail files with file locking]),
1136         [],[enable_file_locking=fcntl])
1137
1138 if test "x$os_win32" != "xyes" -a "x$enable_file_locking" = "xfcntl"; then
1139         AC_DEFINE(USE_FCNTL,1,[Define to use fcntl locking for mbox files])
1140         msg_file="fcntl"
1141 else
1142         if test "x$os_win32" != "xyes" -a "x$enable_file_locking" = "xflock"; then
1143                 AC_DEFINE(USE_FLOCK,1,[Define to use flock locking for mbox files])
1144                 msg_file="flock"
1145         else
1146                 msg_file="no"
1147         fi
1148 fi
1149
1150 dnl ******************************
1151 dnl sendmail operation
1152 dnl ******************************
1153 AC_MSG_CHECKING([for SunOS broken spool format])
1154 if test "x$host_os" = "xsunos" ; then
1155         with_broken_spool="yes"
1156 fi
1157
1158 AC_ARG_WITH([broken-spool],
1159         AS_HELP_STRING([--with-broken-spool=yes/no],
1160         [Using SunOS/Solaris sendmail which has a broken spool format]),
1161         [with_broken_spool=$enableval],[with_broken_spool=${with_broken_spool:=no}])
1162
1163 if test "x$with_broken_spool" = "xyes"; then
1164         AC_DEFINE(HAVE_BROKEN_SPOOL,1,[Define if mail delivered to the system mail directory is in broken Content-Length format])
1165 fi
1166
1167 AC_MSG_RESULT([$with_broken_spool])
1168
1169 dnl ******************************
1170 dnl DBus call timeout
1171 dnl ******************************
1172
1173 AC_ARG_WITH([dbus-call-timeout],
1174         AS_HELP_STRING([--with-dbus-call-timeout=miliseconds],
1175         [Default timeout used when invoking g_dbus_proxy_call() family functions in EBook and ECal library (default=-1)]),
1176         [ac_cv_dbus_call_timeout=$withval],[ac_cv_dbus_call_timeout=-1])
1177
1178 DEFAULT_EDS_DBUS_TIMEOUT=$ac_cv_dbus_call_timeout
1179 AC_SUBST(DEFAULT_EDS_DBUS_TIMEOUT)
1180
1181 dnl ***********
1182 dnl Kerberos 5
1183 dnl ***********
1184 EVO_KRB5_SUPPORT(no)
1185
1186 dnl ******************************
1187 dnl Purify support
1188 dnl ******************************
1189 EVO_PURIFY_SUPPORT
1190
1191 dnl ******************************
1192 dnl LDAP support.
1193 dnl ******************************
1194 if test "x$os_win32" != "xyes"; then
1195         EVO_LDAP_CHECK(no)
1196         case $with_openldap in
1197         no)
1198                 msg_ldap="no"
1199         ;;
1200         *)
1201                 case $with_static_ldap in
1202                 yes)
1203                         msg_ldap="$with_openldap (static)"
1204                         ;;
1205                 *)
1206                         msg_ldap="$with_openldap (dynamic)"
1207                         ;;
1208                 esac
1209         esac
1210
1211 dnl SunLDAP support, but if OpenLDAP support, skip check SunLDAP.
1212         if test "x$with_openldap" = "xno" ; then
1213                 EVO_SUNLDAP_CHECK(no)
1214                 case $with_sunldap in
1215                 no)
1216                         msg_ldap="no"
1217                         ;;
1218                 *)
1219                         case $with_static_sunldap in
1220                         yes)
1221                                 msg_ldap="$with_sunldap (static)"
1222                                 ;;
1223                         *)
1224                                 msg_ldap="$with_sunldap (dynamic)"
1225                                 ;;
1226                 esac
1227         esac
1228         else
1229                 with_sunldap="no"
1230         fi
1231         AM_CONDITIONAL(SUNLDAP, [test "$with_sunldap" != no])
1232
1233         LDAP_CFLAGS="$LDAP_CFLAGS -DLDAP_DEPRECATED"
1234 else
1235         dnl Win32 LDAP support
1236         LDAP_CFLAGS="-DLDAP_DEPRECATED"
1237         LDAP_LIBS="-lwldap32"
1238         AC_SUBST(LDAP_CFLAGS)
1239         AC_SUBST(LDAP_LIBS)
1240         AC_DEFINE(HAVE_LDAP,1,[Define if you have LDAP support])
1241         AM_CONDITIONAL(ENABLE_LDAP, true)
1242         AM_CONDITIONAL(SUNLDAP, false)
1243         msg_ldap="yes"
1244 fi
1245
1246 dnl ******************************
1247 dnl GObject marshalling
1248 dnl ******************************
1249 AM_PATH_GLIB_2_0
1250
1251 dnl We use AC_SUBST_FILE because AC_SUBST won't deal with newlines
1252 EVO_MARSHAL_RULE=$srcdir/marshal.mk
1253 AC_SUBST_FILE(EVO_MARSHAL_RULE)
1254
1255 dnl ******************************
1256 dnl Code coverage flags
1257 dnl ******************************
1258
1259 AC_ARG_ENABLE([code-coverage],
1260         AS_HELP_STRING([--enable-code-coverage], [compile with code coverage code]),
1261         [enable_code_coverage=$enableval], [enable_code_coverage=no])
1262
1263 if test "x$GCC" = "xyes"; then
1264         if test "x$enable_code_coverage" = "xyes"; then
1265                 CODE_COVERAGE_CFLAGS="-fprofile-arcs -ftest-coverage -O0 -ggdb"
1266                 CODE_COVERAGE_LDFLAGS="-lgcov"
1267         fi
1268 fi
1269
1270 AC_SUBST([CODE_COVERAGE_CFLAGS])
1271 AC_SUBST([CODE_COVERAGE_LDFLAGS])
1272
1273 dnl ******************************
1274 dnl Utility macro to set compiler flags for a specific lib.
1275 dnl EVO_SET_COMPILE_FLAGS(VAR-PREFIX, DEPS, EXTRA-CFLAGS, EXTRA-LIBS)
1276 dnl ******************************
1277 AC_DEFUN([EVO_SET_COMPILE_FLAGS], [
1278         PKG_CHECK_MODULES([$1], [$2])
1279         $1_CFLAGS="[$]$1_CFLAGS $3 "
1280         $1_LIBS="[$]$1_LIBS $4 "
1281 ])
1282
1283 dnl ******************************
1284 dnl sqlite3 flags
1285 dnl ******************************
1286 PKG_CHECK_MODULES(SQLITE3, [sqlite3 >= sqlite_minimum_version])
1287
1288 dnl ******************************
1289 dnl libedataserver flags
1290 dnl ******************************
1291 E_DATA_SERVER_DEPS="gio-2.0 gmodule-2.0 gnome-keyring-1 libxml-2.0 libsoup-2.4 $mozilla_nspr"
1292
1293 EVO_SET_COMPILE_FLAGS(E_DATA_SERVER, $E_DATA_SERVER_DEPS, $MANUAL_NSPR_CFLAGS, $MANUAL_NSPR_LIBS)
1294 AC_SUBST(E_DATA_SERVER_CFLAGS)
1295 AC_SUBST(E_DATA_SERVER_LIBS)
1296
1297 dnl ******************************
1298 dnl libedataserverui
1299 dnl ******************************
1300 E_DATA_SERVER_UI_DEPS="gtk+-3.0 libxml-2.0 libsoup-2.4"
1301
1302 EVO_SET_COMPILE_FLAGS(E_DATA_SERVER_UI, $E_DATA_SERVER_UI_DEPS, , )
1303 AC_SUBST(E_DATA_SERVER_UI_CFLAGS)
1304 AC_SUBST(E_DATA_SERVER_UI_LIBS)
1305
1306 if test "x$enable_maintainer_mode" = "xyes" ; then
1307         FACTORY_GTK_CFLAGS=$E_DATA_SERVER_UI_CFLAGS
1308         FACTORY_GTK_LIBS=$E_DATA_SERVER_UI_LIBS
1309         AC_SUBST(FACTORY_GTK_CFLAGS)
1310         AC_SUBST(FACTORY_GTK_LIBS)
1311 fi
1312
1313 E_BACKEND_DEPS="gio-2.0 gmodule-2.0 gnome-keyring-1 libsoup-2.4 libxml-2.0"
1314
1315 dnl ******************************
1316 dnl libebackend flags
1317 dnl ******************************
1318 EVO_SET_COMPILE_FLAGS(E_BACKEND, $E_BACKEND_DEPS)
1319 AC_SUBST(E_BACKEND_CFLAGS)
1320 AC_SUBST(E_BACKEND_LIBS)
1321
1322 dnl ******************************
1323 dnl evolution-addressbook flags
1324 dnl ******************************
1325 EVOLUTION_ADDRESSBOOK_DEPS="gio-2.0 libxml-2.0 libsoup-2.4 gnome-keyring-1"
1326
1327 EVO_SET_COMPILE_FLAGS(EVOLUTION_ADDRESSBOOK, $EVOLUTION_ADDRESSBOOK_DEPS)
1328 AC_SUBST(EVOLUTION_ADDRESSBOOK_CFLAGS)
1329 AC_SUBST(EVOLUTION_ADDRESSBOOK_LIBS)
1330
1331 dnl ******************************
1332 dnl evolution-calendar flags
1333 dnl ******************************
1334 EVOLUTION_CALENDAR_DEPS="gio-2.0 libical >= libical_minimum_version libsoup-2.4 libxml-2.0 gnome-keyring-1"
1335
1336 dnl *****
1337 dnl libical.pc from libical-0.43 has a bug in it's CFlags.
1338 dnl It wants apps to include <libical/ical*.h> but it's CFlags make it difficult
1339 dnl to differentiate between <libical/ical.h> and <ical.h>
1340 dnl We have fixed all our instances to use <libical/ical.h>. Until the .pc from
1341 dnl libical is fixed, we have to work-around the buggy CFlags.
1342 dnl *****
1343         LIBICAL_EXTRA_CFLAGS=" -I`$PKG_CONFIG --variable=includedir libical` "
1344         LIBICAL_EXTRA_LIBS=""
1345         AC_SUBST(LIBICAL_EXTRA_CFLAGS)
1346         AC_SUBST(LIBICAL_EXTRA_LIBS)
1347
1348         EVO_SET_COMPILE_FLAGS(EVOLUTION_CALENDAR, $EVOLUTION_CALENDAR_DEPS, $LIBICAL_EXTRA_CFLAGS, $LIBICAL_EXTRA_LIBS)
1349         AC_SUBST(EVOLUTION_CALENDAR_CFLAGS)
1350         AC_SUBST(EVOLUTION_CALENDAR_LIBS)
1351
1352         dnl ****************************
1353         dnl Check for ical_set_unknown_token_handling_setting function
1354         dnl ****************************
1355         AC_MSG_CHECKING([ical_set_unknown_token_handling_setting function])
1356         save_cflags=$CFLAGS; CFLAGS=$EVOLUTION_CALENDAR_CFLAGS
1357         save_libs=$LIBS; LIBS="$EVOLUTION_CALENDAR_LIBS"
1358         AC_LINK_IFELSE([AC_LANG_PROGRAM(
1359                 [[#include <libical/ical.h>]],
1360                 [[ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN)]])],
1361                 [AC_DEFINE(HAVE_ICAL_UNKNOWN_TOKEN_HANDLING, 1, [libical provides ical_set_unknown_token_handling_setting function]) ac_cv_have_iuth=yes],[ac_cv_have_iuth=no])
1362         CFLAGS=$save_cflags
1363         LIBS=$save_libs
1364         AC_MSG_RESULT([$ac_cv_have_iuth])
1365
1366 dnl ******************************
1367 dnl Google flags
1368 dnl ******************************
1369 LIBGDATA_REQUIRED=libgdata_minimum_version
1370 AC_SUBST(LIBGDATA_REQUIRED)
1371
1372 EVO_SET_COMPILE_FLAGS(GDATA, libgdata)
1373 AC_SUBST(GDATA_CFLAGS)
1374 AC_SUBST(GDATA_LIBS)
1375
1376 dnl ******************************
1377 dnl Groupwise flags
1378 dnl ******************************
1379 LIBSOUP_REQUIRED=libsoup_minimum_version
1380 AC_SUBST(LIBSOUP_REQUIRED)
1381
1382 EVO_SET_COMPILE_FLAGS(SOUP, libsoup-2.4)
1383 AC_SUBST(SOUP_CFLAGS)
1384 AC_SUBST(SOUP_LIBS)
1385
1386 dnl ******************************
1387 dnl Camel flags
1388 dnl ******************************
1389 SQLITE_REQUIRED=sqlite_minimum_version
1390 AC_SUBST(SQLITE_REQUIRED)
1391
1392 zlib_found="false"
1393 dnl deflateInit is a #define, use deflateEnd instead
1394 AC_CHECK_LIB([z], [deflateEnd], [AC_CHECK_HEADER(zlib.h, [zlib_found=true])])
1395
1396 if test "x$zlib_found" = "xfalse"; then
1397         AC_MSG_ERROR([*** zlib is required])
1398 fi
1399
1400 dnl ******************************
1401 dnl Checks for large file support
1402 dnl ******************************
1403 AC_ARG_ENABLE([largefile],
1404         AS_HELP_STRING([--enable-largefile],
1405         [enable support for large files [[default=no]]]),
1406         [],[enable_largefile="yes"])
1407
1408 if test "x$enable_largefile" != "xno"; then
1409         AC_SYS_LARGEFILE
1410         AC_CACHE_CHECK([for _LARGEFILE64_SOURCE value needed for large files], [ac_cv_largefile64_source],
1411         [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
1412         [[      #include <sys/types.h>
1413                 #include <sys/stat.h>
1414                 #include <fcntl.h>
1415         ]],
1416         [[      int fd = open ("__o_largefile", O_CREAT | O_RDWR | O_LARGEFILE, 0644);  ]]
1417         )],[ac_cv_largefile64_source="no"],
1418                 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
1419                 [[      #define _LARGEFILE64_SOURCE
1420                         #include <sys/types.h>
1421                         #include <sys/stat.h>
1422                         #include <fcntl.h>
1423                 ]],
1424                 [[ int fd = open ("__o_largefile", O_CREAT | O_RDWR | O_LARGEFILE, 0644); ]])],[ac_cv_largefile64_source="yes"],
1425                 [ac_cv_largefile64_source="unknown"])])
1426         ])
1427
1428         enable_largefile="no"
1429
1430         if test "x$ac_cv_largefile64_source" = "xyes"; then
1431                 LARGEFILE_CFLAGS="-D_LARGEFILE64_SOURCE"
1432                 enable_largefile="yes"
1433         elif test "x$ac_cv_largefile64_source" = "xunknown"; then
1434                 AC_DEFINE(O_LARGEFILE, 0, [Define to 0 if your system does not have the O_LARGEFILE flag])
1435         fi
1436
1437         if test -n "$ac_cv_sys_large_files" -a "x$ac_cv_sys_large_files" != "xno"; then
1438                 LARGEFILE_CFLAGS="$LARGEFILE_CFLAGS -D_LARGE_FILES"
1439                 enable_largefile="yes"
1440         fi
1441
1442         if test "x$ac_cv_sys_file_offset_bits" != "xno"; then
1443                 LARGEFILE_CFLAGS="$LARGEFILE_CFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
1444                 enable_largefile="yes"
1445         fi
1446 else
1447         AC_DEFINE(O_LARGEFILE, 0, [Define to 0 if your system does not have the O_LARGEFILE flag])
1448         LARGEFILE_CFLAGS=""
1449 fi
1450
1451 AM_CONDITIONAL(ENABLE_LARGEFILE, [test "x$enable_largefile" = "xyes"])
1452
1453 EVO_SET_COMPILE_FLAGS(CAMEL, gio-2.0 gmodule-2.0 $mozilla_nss sqlite3 >= sqlite_minimum_version, $KRB5_CFLAGS $MANUAL_NSS_CFLAGS $LARGEFILE_CFLAGS, -lz $KRB5_LIBS $MANUAL_NSS_LIBS)
1454 AC_SUBST(CAMEL_CFLAGS)
1455 AC_SUBST(CAMEL_LIBS)
1456
1457 dnl ******************************
1458 dnl Special directories
1459 dnl ******************************
1460
1461 dnl If you add something here, consider whether or not you also
1462 dnl need to add it to one or more .pc.in files (for Connector,
1463 dnl etc)
1464
1465 privdatadir='${datadir}'/evolution-data-server-$BASE_VERSION
1466 AC_SUBST(privdatadir)
1467
1468 privincludedir='${includedir}'/evolution-data-server-$BASE_VERSION
1469 AC_SUBST(privincludedir)
1470
1471 privlibdir='${libdir}'/evolution-data-server-$BASE_VERSION
1472 AC_SUBST(privlibdir)
1473
1474 imagesdir='${datadir}'/pixmaps/evolution-data-server
1475 AC_SUBST(imagesdir)
1476
1477 moduledir='${libdir}'/evolution-data-server/registry-modules
1478 AC_SUBST(moduledir)
1479
1480 ebook_backenddir='${libdir}'/evolution-data-server/addressbook-backends
1481 AC_SUBST(ebook_backenddir)
1482
1483 ecal_backenddir='${libdir}'/evolution-data-server/calendar-backends
1484 AC_SUBST(ecal_backenddir)
1485
1486 ro_sourcesdir='${datadir}'/evolution-data-server-$BASE_VERSION/ro-sources
1487 AC_SUBST(ro_sourcesdir)
1488
1489 rw_sourcesdir='${datadir}'/evolution-data-server-$BASE_VERSION/rw-sources
1490 AC_SUBST(rw_sourcesdir)
1491
1492 if test "x$use_gweather" = "xyes"; then
1493         weatherdatadir="$privdatadir/weather"
1494         AC_SUBST(weatherdatadir)
1495 fi
1496
1497 dnl separate camel from e-d-s? or should it be under the same spot? same for now.
1498 camel_providerdir='${libdir}'/evolution-data-server/camel-providers
1499 AC_SUBST(camel_providerdir)
1500
1501 dnl *******************
1502 dnl D-BUS service stuff
1503 dnl *******************
1504 m4_pattern_allow([AM_V_GEN])
1505 EVO_SUBST_SERVICE_RULE='%.service: %.service.in Makefile ; $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" -e s"|\@ADDRESS_BOOK_DBUS_SERVICE_NAME\@|$(ADDRESS_BOOK_DBUS_SERVICE_NAME)|" -e "s|\@CALENDAR_DBUS_SERVICE_NAME\@|$(CALENDAR_DBUS_SERVICE_NAME)|" -e "s|\@SOURCES_DBUS_SERVICE_NAME\@|$(SOURCES_DBUS_SERVICE_NAME)|" $< > $@'
1506 AC_SUBST(EVO_SUBST_SERVICE_RULE)
1507
1508 dnl ******************************
1509 dnl GLib stuff
1510 dnl ******************************
1511 GLIB_GSETTINGS
1512 AM_PATH_GLIB_2_0
1513
1514 dnl We use AC_SUBST_FILE because AC_SUBST won't deal with newlines
1515 EVO_MARSHAL_RULE=$srcdir/marshal.mk
1516 AC_SUBST_FILE(EVO_MARSHAL_RULE)
1517
1518 dnl ******************************
1519 dnl gperf stuff
1520 dnl ******************************
1521 AC_PATH_PROG(GPERF, gperf, [no])
1522 if test "x$GPERF" = "xno"; then
1523   AC_MSG_ERROR([You need gperf to build evolution-data-server])
1524 fi
1525
1526 GOBJECT_INTROSPECTION_CHECK([0.9.12])
1527
1528 dnl ******************************
1529 dnl Vala binding
1530 dnl ******************************
1531 AC_ARG_ENABLE(vala-bindings,
1532         AC_HELP_STRING([--enable-vala-bindings],
1533         [build the EXPERIMENTAL Vala bindings]),
1534         enable_vala_bindings=$enableval,
1535         enable_vala_bindings=no)
1536
1537 if test x$enable_vala_bindings = xyes; then
1538   if test "x$INTROSPECTION_SCANNER" = x; then
1539     AC_MSG_ERROR([GObject-Introspection must be enabled for Vala bindings])
1540   fi
1541
1542   AM_PROG_VALAC([0.13.0])
1543   have_vala=yes
1544
1545   AC_PATH_PROG(VALAC, valac, valac)
1546   AC_SUBST(VALAC)
1547   AC_SUBST(VALAFLAGS)
1548
1549   AC_PATH_PROG([VAPIGEN], [vapigen], [false])
1550
1551   if test "x$VAPIGEN" = "xfalse"; then
1552     AC_MSG_ERROR([vapigen not found. Was vala compiled with --enable-vapigen?])
1553   fi
1554
1555   AC_SUBST(VAPIGEN)
1556 fi
1557
1558 AM_CONDITIONAL([HAVE_VALA], [test "x$have_vala" = "xyes"])
1559 AC_SUBST(HAVE_VALA)
1560
1561 dnl ******************************
1562 dnl Makefiles
1563 dnl ******************************
1564 export privlibdir
1565 export privincludedir
1566 export privdatadir
1567
1568 AC_CONFIG_FILES([
1569 Makefile
1570 evolution-data-server-zip
1571 evolution-data-server.pc
1572 addressbook/Makefile
1573 addressbook/libebook/Makefile
1574 addressbook/libebook/libebook.pc
1575 addressbook/libedata-book/Makefile
1576 addressbook/libedata-book/libedata-book.pc
1577 addressbook/libegdbus/Makefile
1578 addressbook/backends/Makefile
1579 addressbook/backends/file/Makefile
1580 addressbook/backends/vcf/Makefile
1581 addressbook/backends/ldap/Makefile
1582 addressbook/backends/google/Makefile
1583 addressbook/backends/google/tests/Makefile
1584 addressbook/backends/webdav/Makefile
1585 art/Makefile
1586 calendar/Makefile
1587 calendar/libecal/Makefile
1588 calendar/libecal/libecal.pc
1589 calendar/libedata-cal/Makefile
1590 calendar/libedata-cal/libedata-cal.pc
1591 calendar/libegdbus/Makefile
1592 calendar/backends/Makefile
1593 calendar/backends/caldav/Makefile
1594 calendar/backends/file/Makefile
1595 calendar/backends/http/Makefile
1596 calendar/backends/contacts/Makefile
1597 calendar/backends/weather/Makefile
1598 camel/Makefile
1599 camel/providers/Makefile
1600 camel/providers/imap/Makefile
1601 camel/providers/imapx/Makefile
1602 camel/providers/local/Makefile
1603 camel/providers/nntp/Makefile
1604 camel/providers/pop3/Makefile
1605 camel/providers/sendmail/Makefile
1606 camel/providers/smtp/Makefile
1607 camel/tests/Makefile
1608 camel/tests/folder/Makefile
1609 camel/tests/lib/Makefile
1610 camel/tests/message/Makefile
1611 camel/tests/mime-filter/Makefile
1612 camel/tests/misc/Makefile
1613 camel/tests/smime/Makefile
1614 camel/camel.pc
1615 data/Makefile
1616 data/sources/Makefile
1617 libebackend/Makefile
1618 libebackend/libebackend.pc
1619 libedataserver/Makefile
1620 libedataserver/eds-version.h
1621 libedataserver/libedataserver.pc
1622 libedataserverui/Makefile
1623 libedataserverui/libedataserverui.pc
1624 modules/Makefile
1625 modules/cache-reaper/Makefile
1626 modules/google-backend/Makefile
1627 modules/online-accounts/Makefile
1628 modules/yahoo-backend/Makefile
1629 private/Makefile
1630 services/Makefile
1631 services/evolution-addressbook-factory/Makefile
1632 services/evolution-calendar-factory/Makefile
1633 services/evolution-source-registry/Makefile
1634 tests/Makefile
1635 tests/libebook/Makefile
1636 tests/libebook/client/Makefile
1637 tests/libebook/vcard/Makefile
1638 tests/libecal/Makefile
1639 tests/libecal/client/Makefile
1640 tests/libedata-cal/Makefile
1641 tests/libedataserver/Makefile
1642 tests/libedataserverui/Makefile
1643 docs/Makefile
1644 docs/reference/Makefile
1645 docs/reference/addressbook/Makefile
1646 docs/reference/addressbook/libebook/Makefile
1647 docs/reference/addressbook/libedata-book/Makefile
1648 docs/reference/calendar/Makefile
1649 docs/reference/calendar/libecal/Makefile
1650 docs/reference/calendar/libedata-cal/Makefile
1651 docs/reference/camel/Makefile
1652 docs/reference/libedataserver/Makefile
1653 docs/reference/libedataserverui/Makefile
1654 docs/reference/libebackend/Makefile
1655 docs/reference/private/Makefile
1656 po/Makefile.in
1657 vala/Makefile
1658 ])
1659 AC_OUTPUT
1660
1661 echo "
1662         evolution-data-server has been configured as follows:
1663         Weather calendar:       $use_gweather
1664         Mail Directory:         $system_mail_dir, $system_mail_perm
1665         LDAP support:           $msg_ldap
1666         NNTP support:           $msg_nntp
1667         Kerberos 5:             $msg_krb5
1668         SMIME support:          $msg_smime
1669         IPv6 support:           $msg_ipv6
1670         Dot Locking:            $msg_dot
1671         File Locking:           $msg_file
1672         Large files:            $enable_largefile
1673         Gtk Doc:                $enable_gtk_doc
1674         Introspection:          $enable_introspection
1675         Vala bindings:          $enable_vala_bindings
1676         GNOME Online Accounts   $enable_goa
1677         Code coverage (gcov):   $enable_code_coverage
1678 "