updated changelog
[platform/upstream/evolution-data-server.git] / configure.ac
index 22a0edf..ca18ea8 100644 (file)
@@ -1,8 +1,8 @@
 
 dnl Evolution-Data-Server version
 m4_define([eds_major_version], [3])
 
 dnl Evolution-Data-Server version
 m4_define([eds_major_version], [3])
-m4_define([eds_minor_version], [7])
-m4_define([eds_micro_version], [4])
+m4_define([eds_minor_version], [12])
+m4_define([eds_micro_version], [2])
 
 m4_define([eds_version],
        [eds_major_version.eds_minor_version.eds_micro_version])
 
 m4_define([eds_version],
        [eds_major_version.eds_minor_version.eds_micro_version])
@@ -11,8 +11,8 @@ dnl Base Version: This is for API/version tracking for things like
 dnl Bonobo server files.  This should always be the major/minor of
 dnl the stable version or stable version to be.  Note, this is set
 dnl the way it is so that GETTEXT_PACKAGE will be parsed correctly.
 dnl Bonobo server files.  This should always be the major/minor of
 dnl the stable version or stable version to be.  Note, this is set
 dnl the way it is so that GETTEXT_PACKAGE will be parsed correctly.
-BASE_VERSION=3.8
-m4_define([base_version], [3.8])
+BASE_VERSION=3.12
+m4_define([base_version], [3.12])
 
 dnl This number is meaningless, but we're now stuck with it in our
 dnl library names for backward compatibility.
 
 dnl This number is meaningless, but we're now stuck with it in our
 dnl library names for backward compatibility.
@@ -35,24 +35,29 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 dnl Required Package Versions
 
 dnl Keep these two definitions in agreement.
 dnl Required Package Versions
 
 dnl Keep these two definitions in agreement.
-m4_define([glib_minimum_version], [2.34])
-m4_define([glib_encoded_version], [GLIB_VERSION_2_34])
+m4_define([glib_minimum_version], [2.36])
+m4_define([glib_encoded_version], [GLIB_VERSION_2_36])
 
 dnl Keep these two definitions in agreement.
 m4_define([gdk_minimum_version], [3.2])
 m4_define([gdk_encoded_version], [GDK_VERSION_3_2])
 
 
 dnl Keep these two definitions in agreement.
 m4_define([gdk_minimum_version], [3.2])
 m4_define([gdk_encoded_version], [GDK_VERSION_3_2])
 
+dnl Keep these two definitions in agreement.
+m4_define([soup_minimum_version], [2.42])
+m4_define([soup_encoded_version], [SOUP_VERSION_2_42])
+
 m4_define([gcr_minimum_version], [3.4])
 m4_define([libsecret_minimum_version], [0.5])
 m4_define([libxml_minimum_version], [2.0.0])           dnl XXX Just a Guess
 m4_define([gcr_minimum_version], [3.4])
 m4_define([libsecret_minimum_version], [0.5])
 m4_define([libxml_minimum_version], [2.0.0])           dnl XXX Just a Guess
-m4_define([libsoup_minimum_version], [2.38.1])
 m4_define([libgdata_minimum_version], [0.10])
 m4_define([sqlite_minimum_version], [3.5])
 m4_define([libical_minimum_version], [0.43])
 
 dnl Optional Packages
 m4_define([libgdata_minimum_version], [0.10])
 m4_define([sqlite_minimum_version], [3.5])
 m4_define([libical_minimum_version], [0.43])
 
 dnl Optional Packages
-m4_define([goa_minimum_version], [3.2])
-m4_define([gweather_minimum_version], [3.5.0])
+m4_define([goa_minimum_version], [3.8])
+m4_define([gweather_minimum_version], [3.8])
+m4_define([libaccounts_glib_minimum_version], [1.4])
+m4_define([libsignon_glib_minimum_version], [1.8])
 
 AC_SUBST([BASE_VERSION],[base_version])
 AC_SUBST([API_VERSION],[api_version])
 
 AC_SUBST([BASE_VERSION],[base_version])
 AC_SUBST([API_VERSION],[api_version])
@@ -68,9 +73,9 @@ GLIB_GSETTINGS
 dnl ******************************
 dnl D-Bus versioning
 dnl ******************************
 dnl ******************************
 dnl D-Bus versioning
 dnl ******************************
-ADDRESS_BOOK_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.AddressBook4"
-CALENDAR_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Calendar3"
-SOURCES_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Sources1"
+ADDRESS_BOOK_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.AddressBook6"
+CALENDAR_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Calendar4"
+SOURCES_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Sources3"
 USER_PROMPTER_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.UserPrompter0"
 
 AC_DEFINE_UNQUOTED(
 USER_PROMPTER_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.UserPrompter0"
 
 AC_DEFINE_UNQUOTED(
@@ -101,23 +106,19 @@ AC_SUBST(USER_PROMPTER_DBUS_SERVICE_NAME)
 dnl ******************************
 dnl Libtool versioning
 dnl ******************************
 dnl ******************************
 dnl Libtool versioning
 dnl ******************************
-LIBEDATASERVER_CURRENT=17
+LIBEDATASERVER_CURRENT=18
 LIBEDATASERVER_REVISION=0
 LIBEDATASERVER_AGE=0
 
 LIBEDATASERVER_REVISION=0
 LIBEDATASERVER_AGE=0
 
-LIBEDATASERVERUI_CURRENT=5
-LIBEDATASERVERUI_REVISION=0
-LIBEDATASERVERUI_AGE=0
-
-LIBECAL_CURRENT=15
+LIBECAL_CURRENT=16
 LIBECAL_REVISION=0
 LIBECAL_AGE=0
 
 LIBECAL_REVISION=0
 LIBECAL_AGE=0
 
-LIBEDATACAL_CURRENT=19
+LIBEDATACAL_CURRENT=23
 LIBEDATACAL_REVISION=0
 LIBEDATACAL_AGE=0
 
 LIBEDATACAL_REVISION=0
 LIBEDATACAL_AGE=0
 
-LIBEDATABOOK_CURRENT=16
+LIBEDATABOOK_CURRENT=20
 LIBEDATABOOK_REVISION=0
 LIBEDATABOOK_AGE=0
 
 LIBEDATABOOK_REVISION=0
 LIBEDATABOOK_AGE=0
 
@@ -125,11 +126,15 @@ LIBEBOOK_CURRENT=17
 LIBEBOOK_REVISION=1
 LIBEBOOK_AGE=3
 
 LIBEBOOK_REVISION=1
 LIBEBOOK_AGE=3
 
-LIBCAMEL_CURRENT=43
+LIBEBOOK_CONTACTS_CURRENT=0
+LIBEBOOK_CONTACTS_REVISION=0
+LIBEBOOK_CONTACTS_AGE=0
+
+LIBCAMEL_CURRENT=49
 LIBCAMEL_REVISION=0
 LIBCAMEL_AGE=0
 
 LIBCAMEL_REVISION=0
 LIBCAMEL_AGE=0
 
-LIBEBACKEND_CURRENT=5
+LIBEBACKEND_CURRENT=7
 LIBEBACKEND_REVISION=0
 LIBEBACKEND_AGE=0
 
 LIBEBACKEND_REVISION=0
 LIBEBACKEND_AGE=0
 
@@ -139,9 +144,6 @@ AC_SUBST(EDS_MICRO_VERSION)
 AC_SUBST(LIBEDATASERVER_CURRENT)
 AC_SUBST(LIBEDATASERVER_REVISION)
 AC_SUBST(LIBEDATASERVER_AGE)
 AC_SUBST(LIBEDATASERVER_CURRENT)
 AC_SUBST(LIBEDATASERVER_REVISION)
 AC_SUBST(LIBEDATASERVER_AGE)
-AC_SUBST(LIBEDATASERVERUI_CURRENT)
-AC_SUBST(LIBEDATASERVERUI_REVISION)
-AC_SUBST(LIBEDATASERVERUI_AGE)
 AC_SUBST(LIBECAL_CURRENT)
 AC_SUBST(LIBECAL_REVISION)
 AC_SUBST(LIBECAL_AGE)
 AC_SUBST(LIBECAL_CURRENT)
 AC_SUBST(LIBECAL_REVISION)
 AC_SUBST(LIBECAL_AGE)
@@ -151,6 +153,9 @@ AC_SUBST(LIBEDATACAL_AGE)
 AC_SUBST(LIBEBOOK_CURRENT)
 AC_SUBST(LIBEBOOK_REVISION)
 AC_SUBST(LIBEBOOK_AGE)
 AC_SUBST(LIBEBOOK_CURRENT)
 AC_SUBST(LIBEBOOK_REVISION)
 AC_SUBST(LIBEBOOK_AGE)
+AC_SUBST(LIBEBOOK_CONTACTS_CURRENT)
+AC_SUBST(LIBEBOOK_CONTACTS_REVISION)
+AC_SUBST(LIBEBOOK_CONTACTS_AGE)
 AC_SUBST(LIBEDATABOOK_CURRENT)
 AC_SUBST(LIBEDATABOOK_REVISION)
 AC_SUBST(LIBEDATABOOK_AGE)
 AC_SUBST(LIBEDATABOOK_CURRENT)
 AC_SUBST(LIBEDATABOOK_REVISION)
 AC_SUBST(LIBEDATABOOK_AGE)
@@ -166,21 +171,34 @@ dnl Put the ACLOCAL flags in the Makefile
 dnl **************************************
 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
 
 dnl **************************************
 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
 
+dnl *********************************************
+dnl Figure out early if we'll need a C++ compiler
+dnl *********************************************
+
+EVO_PHONENUMBER_ARGS
+
 dnl ******************************
 dnl Compiler Warning Flags
 dnl ******************************
 dnl ******************************
 dnl Compiler Warning Flags
 dnl ******************************
-AS_COMPILER_FLAGS(WARNING_FLAGS,
-       "-Wall -Wextra
+proposed_warning_flags="-Wall -Wextra
        -Wdeprecated-declarations
        -Wdeprecated-declarations
+       -Wformat-security -Winit-self
+       -Wmissing-declarations -Wmissing-include-dirs
+       -Wmissing-noreturn -Wpointer-arith
+       -Wredundant-decls -Wundef -Wwrite-strings"
+
+proposed_c_warning_flags="$proposed_warning_flags
+       -Werror-implicit-function-declaration
+       -Wdeclaration-after-statement
        -Wno-missing-field-initializers
        -Wno-sign-compare
        -Wno-unused-parameter
        -Wno-missing-field-initializers
        -Wno-sign-compare
        -Wno-unused-parameter
-       -Wdeclaration-after-statement
-       -Werror-implicit-function-declaration
-       -Wformat-security -Winit-self
-       -Wmissing-declarations -Wmissing-include-dirs
-       -Wmissing-noreturn -Wnested-externs -Wpointer-arith
-       -Wredundant-decls -Wundef -Wwrite-strings")
+       -Wnested-externs"
+
+proposed_cxx_warning_flags="$proposed_warning_flags
+       -Wabi"
+
+AS_COMPILER_FLAGS(WARNING_FLAGS, [$proposed_c_warning_flags])
 AC_SUBST(WARNING_FLAGS)
 
 dnl Other useful compiler warnings for test builds only.
 AC_SUBST(WARNING_FLAGS)
 
 dnl Other useful compiler warnings for test builds only.
@@ -192,34 +210,29 @@ dnl       -Wmissing-format-attribute
 dnl    -Wshadow
 dnl    -Wstrict-aliasing=2
 
 dnl    -Wshadow
 dnl    -Wstrict-aliasing=2
 
-AM_CPPFLAGS="$WARNING_FLAGS -fno-strict-aliasing"
+AM_CFLAGS="$WARNING_FLAGS -fno-strict-aliasing"
+AC_SUBST(AM_CFLAGS)
 
 
-dnl *******************************
-dnl Check for --enable-strict
-dnl *******************************
-AC_ARG_ENABLE([strict],
-       [AS_HELP_STRING([--enable-strict],
-       [enable strict building, like without deprecated symbols (default=auto); auto enables strict building only if .git subdirectory exists])],
-       [enable_strict=$enableval], [enable_strict=auto])
-
-AC_MSG_CHECKING([if strict building is enabled])
-if test "x$enable_strict" = xauto; then
-       dnl Be strict when compiling with .git subdirectory
-       if test -d .git ; then
-               enable_strict=yes
-       else
-               enable_strict=no
-       fi
-fi
-AC_MSG_RESULT([$enable_strict])
+dnl C++ Compiler flags, needed for ICU C++ access and libphonenumber usage
+AC_PROG_CXX
 
 
-if test "x$enable_strict" = xyes; then
-       AM_CPPFLAGS="$AM_CPPFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DLIBSOUP_DISABLE_DEPRECATED"
-fi
+AC_LANG_PUSH([C++])
+AS_COMPILER_FLAGS(CXX_WARNING_FLAGS, [$proposed_cxx_warning_flags])
+AC_SUBST(CXX_WARNING_FLAGS)
+AM_CXXFLAGS="$CXX_WARNING_FLAGS"
+AC_SUBST(AM_CXXFLAGS)
+AC_LANG_POP([C++])
+
+dnl Permits linking of C++ based libraries using the C linker if needed.
+AC_SUBST([predeps_CXX])
+AC_SUBST([postdeps_CXX])
+
+AM_CPPFLAGS=
 
 
-dnl Warn about GLib/GTK+ API usage that violates our minimum requirements.
+dnl Warn about API usage that violates our minimum requirements.
 AM_CPPFLAGS="$AM_CPPFLAGS -DGLIB_VERSION_MAX_ALLOWED=glib_encoded_version"
 AM_CPPFLAGS="$AM_CPPFLAGS -DGDK_VERSION_MAX_ALLOWED=gdk_encoded_version"
 AM_CPPFLAGS="$AM_CPPFLAGS -DGLIB_VERSION_MAX_ALLOWED=glib_encoded_version"
 AM_CPPFLAGS="$AM_CPPFLAGS -DGDK_VERSION_MAX_ALLOWED=gdk_encoded_version"
+AM_CPPFLAGS="$AM_CPPFLAGS -DSOUP_VERSION_MAX_ALLOWED=soup_encoded_version"
 
 dnl These will suppress warnings about newly-deprecated symbols.  Ideally
 dnl these settings should match our minimum requirements and we will clean
 
 dnl These will suppress warnings about newly-deprecated symbols.  Ideally
 dnl these settings should match our minimum requirements and we will clean
@@ -227,6 +240,7 @@ dnl up any new deprecation warnings after bumping our minimum requirements.
 dnl But if the warnings get to be overwhelming, use fixed versions instead.
 AM_CPPFLAGS="$AM_CPPFLAGS -DGLIB_VERSION_MIN_REQUIRED=glib_encoded_version"
 AM_CPPFLAGS="$AM_CPPFLAGS -DGDK_VERSION_MIN_REQUIRED=gdk_encoded_version"
 dnl But if the warnings get to be overwhelming, use fixed versions instead.
 AM_CPPFLAGS="$AM_CPPFLAGS -DGLIB_VERSION_MIN_REQUIRED=glib_encoded_version"
 AM_CPPFLAGS="$AM_CPPFLAGS -DGDK_VERSION_MIN_REQUIRED=gdk_encoded_version"
+AM_CPPFLAGS="$AM_CPPFLAGS -DSOUP_VERSION_MIN_REQUIRED=soup_encoded_version"
 
 AC_SUBST(AM_CPPFLAGS)
 
 
 AC_SUBST(AM_CPPFLAGS)
 
@@ -285,6 +299,9 @@ dnl This relies on $SED, which is defined in ltmain.sh, which
 dnl is invoked by LT_INIT (at least I think that's how it works).
 GNOME_CODE_COVERAGE
 
 dnl is invoked by LT_INIT (at least I think that's how it works).
 GNOME_CODE_COVERAGE
 
+dnl Add the option install unit tests
+EDS_INSTALLED_TESTS
+
 dnl ******************************
 dnl Gtk Doc stuff
 dnl ******************************
 dnl ******************************
 dnl Gtk Doc stuff
 dnl ******************************
@@ -364,15 +381,109 @@ dnl ***********************************
 PKG_CHECK_MODULES(GNOME_PLATFORM,
        [gio-2.0 >= glib_minimum_version
        gmodule-2.0 >= glib_minimum_version
 PKG_CHECK_MODULES(GNOME_PLATFORM,
        [gio-2.0 >= glib_minimum_version
        gmodule-2.0 >= glib_minimum_version
-       gtk+-3.0 >= gdk_minimum_version
        libxml-2.0 >= libxml_minimum_version
        libxml-2.0 >= libxml_minimum_version
-       libsoup-2.4 >= libsoup_minimum_version
-       libgdata >= libgdata_minimum_version])
+       libsoup-2.4 >= soup_minimum_version])
 
 if test x$os_win32 = xno; then
        PKG_CHECK_MODULES(GIO_UNIX, [gio-unix-2.0])
 fi
 
 
 if test x$os_win32 = xno; then
        PKG_CHECK_MODULES(GIO_UNIX, [gio-unix-2.0])
 fi
 
+dnl ******************************
+dnl Check for libphonenumber
+dnl ******************************
+
+EVO_PHONENUMBER_SUPPORT
+
+dnl *******************
+dnl Check for ICU
+dnl *******************
+dnl
+dnl ICU recently started shipping pkg-config files but it's
+dnl not present on many systems, if we don't find the pkg-config
+dnl file then let's fallback on a manual check
+enable_icu=no
+PKG_CHECK_MODULES(ICU, icu-i18n, enable_icu=yes, [
+        enable_icu=yes
+       AC_CHECK_HEADERS(unicode/ucol.h,, enable_icu=no)
+       AC_MSG_CHECKING([for libicui18n])
+       LIBS_old=$LIBS
+       LIBS="$LIBS -licui18n -licuuc -licudata"
+       AC_TRY_LINK([#include <unicode/ucol.h>],
+               [ucol_open ("", NULL);],
+               AC_MSG_RESULT(yes),
+               AC_MSG_RESULT(no); enable_icu=no)
+       LIBS=$LIBS_old
+       if [test x$enable_icu = xyes]; then
+               ICU_CFLAGS=-D_REENTRANT
+               ICU_LIBS="-licui18n -licuuc -licudata"
+               AC_SUBST(ICU_CFLAGS)
+               AC_SUBST(ICU_LIBS)
+       else
+               AC_MSG_ERROR([ICU libs not found, icu-i18n is required.])
+       fi
+])
+
+dnl *************************
+dnl Check for GTK+
+dnl *************************
+AC_ARG_ENABLE([gtk],
+       [AS_HELP_STRING([--enable-gtk],
+       [enable GTK+ (default=yes)])],
+       [enable_gtk=$enableval], [enable_gtk=yes])
+AC_MSG_CHECKING([if GTK+ support is enabled])
+AC_MSG_RESULT([$enable_gtk])
+if test "x$enable_gtk" = xyes; then
+       PKG_CHECK_MODULES(
+               [GTK], [gtk+-3.0 >= gdk_minimum_version],,
+               [AC_MSG_ERROR([
+
+       gtk+-3.0 not found (or version < gdk_minimum_version)
+
+       If you want to disable GTK+ support,
+       please append --disable-gtk to configure.
+
+       ])])
+
+       PKG_CHECK_MODULES(
+               [GCR], [gcr-3 >= gcr_minimum_version],,
+               [AC_MSG_ERROR([
+
+       gcr-3.0 not found (or version < gcr_minimum_version)
+
+       If you want to disable gcr-3.0's GTK+ widgets,
+       please append --disable-gtk to configure.
+
+       ])])
+
+       AC_DEFINE(HAVE_GTK, 1, [Define to 1 if you have the gtk+-3.0 package.])
+fi
+AM_CONDITIONAL(HAVE_GTK, [test x$enable_gtk = xyes])
+
+
+dnl ******************************************
+dnl Check whether to build examples/demos
+dnl ******************************************
+AC_ARG_ENABLE([examples],
+       [AS_HELP_STRING([--enable-examples],
+       [enable the building examples (default=yes)])],
+       [enable_examples=$enableval], [enable_examples=yes])
+AC_MSG_CHECKING([if examples should be built])
+AC_MSG_RESULT([$enable_examples])
+if test "x$enable_examples" = xyes; then
+       PKG_CHECK_MODULES([EXAMPLES],
+               [gtk+-3.0 >= 3.10 glib-2.0 >= 2.38],,
+       [AC_MSG_ERROR([
+       Some packages were not available to build the example program(s).
+
+       If you want to disable examples, please
+       append --disable-examples to configure.
+       ])])
+
+       AC_DEFINE(BUILD_EXAMPLES, 1, [Define to 1 if the examples should be built.])
+fi
+AM_CONDITIONAL(BUILD_EXAMPLES, [test x$enable_examples = xyes])
+
+
 dnl *******************************
 dnl Check for GNOME Online Accounts
 dnl *******************************
 dnl *******************************
 dnl Check for GNOME Online Accounts
 dnl *******************************
@@ -383,23 +494,80 @@ AC_ARG_ENABLE([goa],
 AC_MSG_CHECKING([if GNOME Online Accounts support is enabled])
 AC_MSG_RESULT([$enable_goa])
 if test "x$enable_goa" = xyes; then
 AC_MSG_CHECKING([if GNOME Online Accounts support is enabled])
 AC_MSG_RESULT([$enable_goa])
 if test "x$enable_goa" = xyes; then
-       PKG_CHECK_MODULES([GOA], [goa-1.0 >= goa_minimum_version],,
-       [AC_MSG_ERROR([
+       PKG_CHECK_MODULES(
+               [GOA], [goa-1.0 >= goa_minimum_version],,
+               [AC_MSG_ERROR([
 
        goa-1.0 not found (or version < goa_minimum_version)
 
        If you want to disable GNOME Online Accounts support,
        please append --disable-goa to configure.
 
        goa-1.0 not found (or version < goa_minimum_version)
 
        If you want to disable GNOME Online Accounts support,
        please append --disable-goa to configure.
+
        ])])
 
        AC_DEFINE(HAVE_GOA, 1, [Define to 1 if you have the goa-1.0 package.])
 fi
 AM_CONDITIONAL(HAVE_GOA, [test x$enable_goa = xyes])
 
        ])])
 
        AC_DEFINE(HAVE_GOA, 1, [Define to 1 if you have the goa-1.0 package.])
 fi
 AM_CONDITIONAL(HAVE_GOA, [test x$enable_goa = xyes])
 
-dnl GoaPasswordBased was introduced in version 3.5.
-if `$PKG_CONFIG --atleast-version=3.5 goa-1.0`; then
-       AC_DEFINE(HAVE_GOA_PASSWORD_BASED,1,[Have GoaPasswordBased in goa-1.0])
+dnl ********************************
+dnl Check for Ubuntu Online Accounts
+dnl ********************************
+AC_ARG_ENABLE([uoa],
+       [AS_HELP_STRING([--enable-uoa],
+       [enable Ubuntu Online Accounts support (default=yes)])],
+       [enable_uoa=$enableval], [enable_uoa=yes])
+AC_MSG_CHECKING([if Ubuntu Online Accounts support is enabled])
+AC_MSG_RESULT([$enable_uoa])
+if test "x$enable_uoa" = xyes; then
+       PKG_CHECK_MODULES(
+               [LIBACCOUNTS_GLIB],
+               [libaccounts-glib >= libaccounts_glib_minimum_version],,
+               [AC_MSG_ERROR([
+
+       libaccounts-glib not found (or version < libaccounts_glib_minimum_version)
+
+       If you want to disable Ubuntu Online Accounts support,
+       please append --disable-uoa to configure.
+
+       ])])
+
+       PKG_CHECK_MODULES(
+               [LIBSIGNON_GLIB],
+               [libsignon-glib >= libsignon_glib_minimum_version],,
+               [AC_MSG_ERROR([
+
+       libsignon-glib not found (or version < libsignon_glib_minimum_version)
+
+       If you want to disable Ubuntu Online Accounts support,
+       please append --disable-uoa to configure.
+
+       ])])
+
+       PKG_CHECK_MODULES(
+               [JSON_GLIB], [json-glib-1.0],,
+               [AC_MSG_ERROR([
+
+       json-glib-1.0 not found
+
+       If you want to disable Ubuntu Online Accounts support,
+       please append --disable-uoa to configure.
+
+       ])])
+
+       PKG_CHECK_MODULES(
+               [REST], [rest-0.7],,
+               [AC_MSG_ERROR([
+
+       librest-0.7 not found
+
+       If you want to disable Ubuntu Online Accounts support,
+       please append --disable-uoa to configure.
+
+       ])])
+
+       AC_DEFINE(HAVE_UOA, 1, [Have libaccounts-glib])
 fi
 fi
+AM_CONDITIONAL(HAVE_UOA, [test x$enable_uoa = xyes])
 
 dnl ***********************************
 dnl Check for GNOME Keyring.
 
 dnl ***********************************
 dnl Check for GNOME Keyring.
@@ -436,10 +604,16 @@ dnl ******************************
 AC_ARG_WITH([libdb],
        AS_HELP_STRING([--with-libdb=PREFIX],
        [Prefix where libdb is installed]),
 AC_ARG_WITH([libdb],
        AS_HELP_STRING([--with-libdb=PREFIX],
        [Prefix where libdb is installed]),
-       [libdb_prefix="$withval"], [libdb_prefix='${prefix}'])
-
-DB_CFLAGS="-I$libdb_prefix/include"
-DB_LIBS="-L$libdb_prefix/lib -ldb"
+       [
+               DB_CFLAGS="-I$withval/include"
+               DB_LIBS="-L$withval/lib -ldb"
+       ],
+       [
+               if test -z "$DB_CFLAGS" -a -z "$DB_LIBS"; then
+                       DB_CFLAGS=""
+                       DB_LIBS="-ldb"
+               fi
+       ])
 
 AC_MSG_CHECKING([Berkeley DB])
 save_cflags=$CFLAGS; CFLAGS=$DB_CFLAGS
 
 AC_MSG_CHECKING([Berkeley DB])
 save_cflags=$CFLAGS; CFLAGS=$DB_CFLAGS
@@ -455,6 +629,19 @@ AC_SUBST(DB_CFLAGS)
 AC_SUBST(DB_LIBS)
 
 dnl ******************************
 AC_SUBST(DB_LIBS)
 
 dnl ******************************
+dnl db_load checking
+dnl ******************************
+have_db_load=no
+AC_PATH_PROG(DB_LOAD, [db_load])
+if test -z "$DB_LOAD"; then
+   AC_MSG_WARN([db_load not found, some unit tests will not be run.])
+else
+   have_db_load=yes
+fi
+
+AM_CONDITIONAL(HAVE_DB_LOAD, test x"$have_db_load" = "xyes")
+
+dnl ******************************
 dnl iconv checking
 dnl ******************************
 have_iconv="no"
 dnl iconv checking
 dnl ******************************
 have_iconv="no"
@@ -617,18 +804,11 @@ if test "x$enable_backtraces" = xyes; then
        fi
 fi
 
        fi
 fi
 
-dnl **********************************
-dnl Check for nl_langinfo and CODESET
-dnl **********************************
-AC_MSG_CHECKING([for nl_langinfo (CODESET)])
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
-       [[#include <langinfo.h>]],
-       [[char *codeset = nl_langinfo (CODESET);]]
-       )],[ac_cv_langinfo_codeset=yes],[ac_cv_langinfo_codeset=no])
-if test "x$ac_cv_langinfo_codeset" = "xyes"; then
-       AC_DEFINE(HAVE_CODESET, 1, [Have nl_langinfo (CODESET)])
-fi
-AC_MSG_RESULT([$ac_cv_langinfo_codeset])
+dnl ******************************
+dnl Check for nl_langinfo features
+dnl ******************************
+EVO_CHECK_LANGINFO([CODESET])
+EVO_CHECK_LANGINFO([_NL_ADDRESS_COUNTRY_AB2])
 
 dnl *******************************************************
 dnl Check to see if strftime supports the use of %l and %k
 
 dnl *******************************************************
 dnl Check to see if strftime supports the use of %l and %k
@@ -1110,25 +1290,18 @@ AC_ARG_ENABLE([weather],
 
 AC_MSG_RESULT([$use_gweather])
 if test "x$use_gweather" = "xyes"; then
 
 AC_MSG_RESULT([$use_gweather])
 if test "x$use_gweather" = "xyes"; then
-       PKG_CHECK_MODULES([LIBGWEATHER], [gweather-3.0 >= gweather_minimum_version],[],
-       [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.])])
-fi
-AM_CONDITIONAL(ENABLE_WEATHER, [test $use_gweather = yes])
+       PKG_CHECK_MODULES(
+               [LIBGWEATHER], [gweather-3.0 >= gweather_minimum_version],[],
+               [AC_MSG_ERROR([
 
 
-dnl ******************************
-dnl NNTP support.
-dnl ******************************
-AC_ARG_ENABLE([nntp],
-       AS_HELP_STRING([--enable-nntp],
-       [Build Usenet news (NNTP) backend]),
-       [enable_nntp=$enableval],[enable_nntp=yes])
-if test "x$enable_nntp" = "xyes"; then
-       AC_DEFINE(ENABLE_NNTP,1,[Build NNTP backend])
-       msg_nntp="yes"
-else
-       msg_nntp="no"
+       gweather-3.0 not found (or version < gweather_minimum_version)
+
+       If you want to disable weather calendar support,
+       please append --disable-weather to configure.
+
+       ])])
 fi
 fi
-AM_CONDITIONAL(ENABLE_NNTP, [test x$enable_nntp = xyes])
+AM_CONDITIONAL(ENABLE_WEATHER, [test $use_gweather = yes])
 
 AC_DEFINE(HANDLE_LIBICAL_MEMORY, 1, [Define it once memory returned by libical is free'ed properly])
 
 
 AC_DEFINE(HANDLE_LIBICAL_MEMORY, 1, [Define it once memory returned by libical is free'ed properly])
 
@@ -1183,18 +1356,6 @@ fi
 
 AC_MSG_RESULT([$with_broken_spool])
 
 
 AC_MSG_RESULT([$with_broken_spool])
 
-dnl ******************************
-dnl DBus call timeout
-dnl ******************************
-
-AC_ARG_WITH([dbus-call-timeout],
-       AS_HELP_STRING([--with-dbus-call-timeout=miliseconds],
-       [Default timeout used when invoking g_dbus_proxy_call() family functions in EBook and ECal library (default=-1)]),
-       [ac_cv_dbus_call_timeout=$withval],[ac_cv_dbus_call_timeout=-1])
-
-DEFAULT_EDS_DBUS_TIMEOUT=$ac_cv_dbus_call_timeout
-AC_SUBST(DEFAULT_EDS_DBUS_TIMEOUT)
-
 dnl ***********
 dnl Kerberos 5
 dnl ***********
 dnl ***********
 dnl Kerberos 5
 dnl ***********
@@ -1261,15 +1422,6 @@ else
 fi
 
 dnl ******************************
 fi
 
 dnl ******************************
-dnl GObject marshalling
-dnl ******************************
-AM_PATH_GLIB_2_0
-
-dnl We use AC_SUBST_FILE because AC_SUBST won't deal with newlines
-EVO_MARSHAL_RULE=$srcdir/marshal.mk
-AC_SUBST_FILE(EVO_MARSHAL_RULE)
-
-dnl ******************************
 dnl Utility macro to set compiler flags for a specific lib.
 dnl EVO_SET_COMPILE_FLAGS(VAR-PREFIX, DEPS, EXTRA-CFLAGS, EXTRA-LIBS)
 dnl ******************************
 dnl Utility macro to set compiler flags for a specific lib.
 dnl EVO_SET_COMPILE_FLAGS(VAR-PREFIX, DEPS, EXTRA-CFLAGS, EXTRA-LIBS)
 dnl ******************************
@@ -1357,16 +1509,20 @@ dnl Google flags
 dnl ******************************
 LIBGDATA_REQUIRED=libgdata_minimum_version
 AC_SUBST(LIBGDATA_REQUIRED)
 dnl ******************************
 LIBGDATA_REQUIRED=libgdata_minimum_version
 AC_SUBST(LIBGDATA_REQUIRED)
-
-EVO_SET_COMPILE_FLAGS(GDATA, libgdata)
-AC_SUBST(GDATA_CFLAGS)
-AC_SUBST(GDATA_LIBS)
-
-dnl ******************************
-dnl Groupwise flags
-dnl ******************************
-LIBSOUP_REQUIRED=libsoup_minimum_version
-AC_SUBST(LIBSOUP_REQUIRED)
+AC_ARG_ENABLE([google],
+       [AS_HELP_STRING([--enable-google],
+       [enable Google Contacts support (default=yes)])],
+       [enable_google=$enableval], [enable_google=yes])
+AC_MSG_CHECKING([if Google Contacts support is enabled])
+AC_MSG_RESULT([$enable_google])
+if test "x$enable_google" = xyes; then
+       EVO_SET_COMPILE_FLAGS(GDATA, libgdata >= libgdata_minimum_version)
+       AC_SUBST(GDATA_CFLAGS)
+       AC_SUBST(GDATA_LIBS)
+
+       AC_DEFINE(HAVE_GOOGLE, 1, [Define to 1 if you have the google-1.0 package.])
+fi
+AM_CONDITIONAL(HAVE_GOOGLE, [test x$enable_google = xyes])
 
 EVO_SET_COMPILE_FLAGS(SOUP, libsoup-2.4)
 AC_SUBST(SOUP_CFLAGS)
 
 EVO_SET_COMPILE_FLAGS(SOUP, libsoup-2.4)
 AC_SUBST(SOUP_CFLAGS)
@@ -1391,7 +1547,7 @@ dnl Checks for large file support
 dnl ******************************
 AC_ARG_ENABLE([largefile],
        AS_HELP_STRING([--enable-largefile],
 dnl ******************************
 AC_ARG_ENABLE([largefile],
        AS_HELP_STRING([--enable-largefile],
-       [enable support for large files [[default=no]]]),
+       [enable support for large files [[default=yes]]]),
        [],[enable_largefile="yes"])
 
 if test "x$enable_largefile" != "xno"; then
        [],[enable_largefile="yes"])
 
 if test "x$enable_largefile" != "xno"; then
@@ -1439,7 +1595,7 @@ fi
 
 AM_CONDITIONAL(ENABLE_LARGEFILE, [test "x$enable_largefile" = "xyes"])
 
 
 AM_CONDITIONAL(ENABLE_LARGEFILE, [test "x$enable_largefile" = "xyes"])
 
-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)
+EVO_SET_COMPILE_FLAGS(CAMEL, gio-2.0 gmodule-2.0 $mozilla_nss $mozilla_nspr sqlite3 >= sqlite_minimum_version, $KRB5_CFLAGS $MANUAL_NSS_CFLAGS $MANUAL_NSPR_CFLAGS $LARGEFILE_CFLAGS, -lz $KRB5_LIBS $MANUAL_NSS_LIBS $MANUAL_NSPR_LIBS)
 AC_SUBST(CAMEL_CFLAGS)
 AC_SUBST(CAMEL_LIBS)
 
 AC_SUBST(CAMEL_CFLAGS)
 AC_SUBST(CAMEL_LIBS)
 
@@ -1500,10 +1656,6 @@ dnl ******************************
 GLIB_GSETTINGS
 AM_PATH_GLIB_2_0
 
 GLIB_GSETTINGS
 AM_PATH_GLIB_2_0
 
-dnl We use AC_SUBST_FILE because AC_SUBST won't deal with newlines
-EVO_MARSHAL_RULE=$srcdir/marshal.mk
-AC_SUBST_FILE(EVO_MARSHAL_RULE)
-
 dnl ******************************
 dnl gperf stuff
 dnl ******************************
 dnl ******************************
 dnl gperf stuff
 dnl ******************************
@@ -1561,6 +1713,8 @@ evolution-data-server.pc
 addressbook/Makefile
 addressbook/libebook/Makefile
 addressbook/libebook/libebook.pc
 addressbook/Makefile
 addressbook/libebook/Makefile
 addressbook/libebook/libebook.pc
+addressbook/libebook-contacts/Makefile
+addressbook/libebook-contacts/libebook-contacts.pc
 addressbook/libedata-book/Makefile
 addressbook/libedata-book/libedata-book.pc
 addressbook/libegdbus/Makefile
 addressbook/libedata-book/Makefile
 addressbook/libedata-book/libedata-book.pc
 addressbook/libegdbus/Makefile
@@ -1585,7 +1739,6 @@ calendar/backends/contacts/Makefile
 calendar/backends/weather/Makefile
 camel/Makefile
 camel/providers/Makefile
 calendar/backends/weather/Makefile
 camel/Makefile
 camel/providers/Makefile
-camel/providers/imap/Makefile
 camel/providers/imapx/Makefile
 camel/providers/local/Makefile
 camel/providers/nntp/Makefile
 camel/providers/imapx/Makefile
 camel/providers/local/Makefile
 camel/providers/nntp/Makefile
@@ -1601,7 +1754,6 @@ camel/tests/misc/Makefile
 camel/tests/smime/Makefile
 camel/camel.pc
 data/Makefile
 camel/tests/smime/Makefile
 camel/camel.pc
 data/Makefile
-data/sources/Makefile
 libebackend/Makefile
 libebackend/libebackend.pc
 libedataserver/Makefile
 libebackend/Makefile
 libebackend/libebackend.pc
 libedataserver/Makefile
@@ -1611,6 +1763,21 @@ modules/Makefile
 modules/cache-reaper/Makefile
 modules/gnome-online-accounts/Makefile
 modules/google-backend/Makefile
 modules/cache-reaper/Makefile
 modules/gnome-online-accounts/Makefile
 modules/google-backend/Makefile
+modules/outlook-backend/Makefile
+modules/owncloud-backend/Makefile
+modules/secret-monitor/Makefile
+modules/ubuntu-online-accounts/Makefile
+modules/ubuntu-online-accounts/calendar.service-type.in
+modules/ubuntu-online-accounts/contacts.service-type.in
+modules/ubuntu-online-accounts/evolution-data-server.application.in
+modules/ubuntu-online-accounts/evolution-data-server-uoa.desktop.in
+modules/ubuntu-online-accounts/google-calendar.service.in
+modules/ubuntu-online-accounts/google-contacts.service.in
+modules/ubuntu-online-accounts/google-gmail.service.in
+modules/ubuntu-online-accounts/mail.service-type.in
+modules/ubuntu-online-accounts/windows-live-mail.service.in
+modules/ubuntu-online-accounts/yahoo-calendar.service.in
+modules/ubuntu-online-accounts/yahoo-mail.service.in
 modules/trust-prompt/Makefile
 modules/yahoo-backend/Makefile
 private/Makefile
 modules/trust-prompt/Makefile
 modules/yahoo-backend/Makefile
 private/Makefile
@@ -1620,9 +1787,13 @@ services/evolution-calendar-factory/Makefile
 services/evolution-source-registry/Makefile
 services/evolution-user-prompter/Makefile
 tests/Makefile
 services/evolution-source-registry/Makefile
 services/evolution-user-prompter/Makefile
 tests/Makefile
+tests/libedata-book/Makefile
 tests/libebook/Makefile
 tests/libebook/Makefile
+tests/libebook-contacts/Makefile
 tests/libebook/client/Makefile
 tests/libebook/vcard/Makefile
 tests/libebook/client/Makefile
 tests/libebook/vcard/Makefile
+tests/book-migration/Makefile
+tests/book-migration/db/Makefile
 tests/libecal/Makefile
 tests/libecal/client/Makefile
 tests/libedata-cal/Makefile
 tests/libecal/Makefile
 tests/libecal/client/Makefile
 tests/libedata-cal/Makefile
@@ -1632,18 +1803,14 @@ tests/test-server-utils/services/Makefile
 tests/test-server-utils/services/org.gnome.evolution.dataserver.AddressBook.service
 tests/test-server-utils/services/org.gnome.evolution.dataserver.Calendar.service
 tests/test-server-utils/services/org.gnome.evolution.dataserver.Sources.service
 tests/test-server-utils/services/org.gnome.evolution.dataserver.AddressBook.service
 tests/test-server-utils/services/org.gnome.evolution.dataserver.Calendar.service
 tests/test-server-utils/services/org.gnome.evolution.dataserver.Sources.service
+examples/Makefile
+examples/cursor/Makefile
 docs/Makefile
 docs/reference/Makefile
 docs/Makefile
 docs/reference/Makefile
-docs/reference/addressbook/Makefile
-docs/reference/addressbook/libebook/Makefile
-docs/reference/addressbook/libedata-book/Makefile
-docs/reference/calendar/Makefile
-docs/reference/calendar/libecal/Makefile
-docs/reference/calendar/libedata-cal/Makefile
 docs/reference/camel/Makefile
 docs/reference/camel/Makefile
-docs/reference/libedataserver/Makefile
-docs/reference/libebackend/Makefile
 docs/reference/private/Makefile
 docs/reference/private/Makefile
+docs/reference/eds/Makefile
+docs/reference/eds/version.xml
 po/Makefile.in
 vala/Makefile
 ])
 po/Makefile.in
 vala/Makefile
 ])
@@ -1654,10 +1821,10 @@ echo "
        Weather calendar:       $use_gweather
        Mail Directory:         $system_mail_dir, $system_mail_perm
        LDAP support:           $msg_ldap
        Weather calendar:       $use_gweather
        Mail Directory:         $system_mail_dir, $system_mail_perm
        LDAP support:           $msg_ldap
-       NNTP support:           $msg_nntp
        Kerberos 5:             $msg_krb5
        SMIME support:          $msg_smime
        IPv6 support:           $msg_ipv6
        Kerberos 5:             $msg_krb5
        SMIME support:          $msg_smime
        IPv6 support:           $msg_ipv6
+       Phone number support:   $msg_phonenumber
        Dot Locking:            $msg_dot
        File Locking:           $msg_file
        Large files:            $enable_largefile
        Dot Locking:            $msg_dot
        File Locking:           $msg_file
        Large files:            $enable_largefile
@@ -1665,6 +1832,10 @@ echo "
        Introspection:          $enable_introspection
        Vala bindings:          $enable_vala_bindings
        GNOME Online Accounts   $enable_goa
        Introspection:          $enable_introspection
        Vala bindings:          $enable_vala_bindings
        GNOME Online Accounts   $enable_goa
+       Ubuntu Online Accounts  $enable_uoa
+       Google Contacts         $enable_google
+       GTK+:                   $enable_gtk
+       Examples:               $enable_examples
        Code coverage (gcov):   $enable_code_coverage
        Code coverage (gcov):   $enable_code_coverage
-       Strict building:        $enable_strict
+       Installed tests:        $enable_installed_tests
 "
 "