X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure.ac;h=654dda8bc3ddb0e510968a511ec28cddfec48122;hb=c431222838e86a21add15a4c73b1f32de33b812b;hp=5f81db033796d2505ccbc69f46541e2ff8784f96;hpb=0228e36638363798335f5ecd6ab2706c6192826b;p=platform%2Fupstream%2Fevolution-data-server.git diff --git a/configure.ac b/configure.ac index 5f81db0..654dda8 100644 --- a/configure.ac +++ b/configure.ac @@ -1,8 +1,8 @@ dnl Evolution-Data-Server version m4_define([eds_major_version], [3]) -m4_define([eds_minor_version], [7]) -m4_define([eds_micro_version], [91]) +m4_define([eds_minor_version], [12]) +m4_define([eds_micro_version], [1]) 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. -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. @@ -35,16 +35,16 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) 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([soup_minimum_version], [2.40.3]) -m4_define([soup_encoded_version], [SOUP_VERSION_2_40]) +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]) @@ -54,8 +54,8 @@ 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]) @@ -73,9 +73,9 @@ GLIB_GSETTINGS dnl ****************************** dnl D-Bus versioning dnl ****************************** -ADDRESS_BOOK_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.AddressBook5" +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.Sources1" +SOURCES_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.Sources3" USER_PROMPTER_DBUS_SERVICE_NAME="org.gnome.evolution.dataserver.UserPrompter0" AC_DEFINE_UNQUOTED( @@ -106,19 +106,19 @@ AC_SUBST(USER_PROMPTER_DBUS_SERVICE_NAME) dnl ****************************** dnl Libtool versioning dnl ****************************** -LIBEDATASERVER_CURRENT=17 +LIBEDATASERVER_CURRENT=18 LIBEDATASERVER_REVISION=0 LIBEDATASERVER_AGE=0 -LIBECAL_CURRENT=15 +LIBECAL_CURRENT=16 LIBECAL_REVISION=0 LIBECAL_AGE=0 -LIBEDATACAL_CURRENT=20 +LIBEDATACAL_CURRENT=23 LIBEDATACAL_REVISION=0 LIBEDATACAL_AGE=0 -LIBEDATABOOK_CURRENT=17 +LIBEDATABOOK_CURRENT=20 LIBEDATABOOK_REVISION=0 LIBEDATABOOK_AGE=0 @@ -130,11 +130,11 @@ LIBEBOOK_CONTACTS_CURRENT=0 LIBEBOOK_CONTACTS_REVISION=0 LIBEBOOK_CONTACTS_AGE=0 -LIBCAMEL_CURRENT=43 +LIBCAMEL_CURRENT=49 LIBCAMEL_REVISION=0 LIBCAMEL_AGE=0 -LIBEBACKEND_CURRENT=6 +LIBEBACKEND_CURRENT=7 LIBEBACKEND_REVISION=0 LIBEBACKEND_AGE=0 @@ -175,7 +175,6 @@ dnl ********************************************* dnl Figure out early if we'll need a C++ compiler dnl ********************************************* -evo_with_cxx=no EVO_PHONENUMBER_ARGS dnl ****************************** @@ -214,48 +213,22 @@ dnl -Wstrict-aliasing=2 AM_CFLAGS="$WARNING_FLAGS -fno-strict-aliasing" AC_SUBST(AM_CFLAGS) -if test "x$evo_with_cxx" = xyes; then - AC_PROG_CXX +dnl C++ Compiler flags, needed for ICU C++ access and libphonenumber usage +AC_PROG_CXX - 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++]) -else - dnl Autoconf requires those automake conditionals to be defined when - dnl generating the config files, but apparently it forgets to initialize - dnl them dnl if AC_PROG_CXX never gets called. Therefore we do it manually. - am__fastdepCXX_TRUE='#' - am__fastdepCXX_FALSE= -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 ******************************* -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 Permits linking of C++ based libraries using the C linker if needed. +AC_SUBST([predeps_CXX]) +AC_SUBST([postdeps_CXX]) AM_CPPFLAGS= -if test "x$enable_strict" = xyes; then - AM_CPPFLAGS="$AM_CPPFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED" -fi - 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" @@ -326,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 Add the option install unit tests +EDS_INSTALLED_TESTS + dnl ****************************** dnl Gtk Doc stuff dnl ****************************** @@ -418,6 +394,35 @@ 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 ], + [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 ************************* @@ -428,19 +433,57 @@ AC_ARG_ENABLE([gtk], 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([ + 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 ******************************* @@ -451,24 +494,21 @@ 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 - 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. + ])]) 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]) -fi - dnl ******************************** dnl Check for Ubuntu Online Accounts dnl ******************************** @@ -479,7 +519,8 @@ AC_ARG_ENABLE([uoa], 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], + PKG_CHECK_MODULES( + [LIBACCOUNTS_GLIB], [libaccounts-glib >= libaccounts_glib_minimum_version],, [AC_MSG_ERROR([ @@ -487,9 +528,11 @@ if test "x$enable_uoa" = xyes; then If you want to disable Ubuntu Online Accounts support, please append --disable-uoa to configure. + ])]) - PKG_CHECK_MODULES([LIBSIGNON_GLIB], + PKG_CHECK_MODULES( + [LIBSIGNON_GLIB], [libsignon-glib >= libsignon_glib_minimum_version],, [AC_MSG_ERROR([ @@ -497,24 +540,29 @@ if test "x$enable_uoa" = xyes; then If you want to disable Ubuntu Online Accounts support, please append --disable-uoa to configure. + ])]) - PKG_CHECK_MODULES([JSON_GLIB], [json-glib-1.0],, + 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],, + 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]) @@ -556,10 +604,16 @@ dnl ****************************** 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 @@ -575,6 +629,19 @@ AC_SUBST(DB_CFLAGS) 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" @@ -1223,25 +1290,18 @@ AC_ARG_ENABLE([weather], 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 -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]) @@ -1362,15 +1422,6 @@ else 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 ****************************** @@ -1496,7 +1547,7 @@ dnl Checks for large file support 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 @@ -1544,7 +1595,7 @@ fi 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) @@ -1605,10 +1656,6 @@ dnl ****************************** 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 ****************************** @@ -1716,15 +1763,19 @@ modules/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 @@ -1736,9 +1787,13 @@ services/evolution-calendar-factory/Makefile services/evolution-source-registry/Makefile services/evolution-user-prompter/Makefile tests/Makefile +tests/libedata-book/Makefile tests/libebook/Makefile +tests/libebook-contacts/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 @@ -1748,19 +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 +examples/Makefile +examples/cursor/Makefile docs/Makefile docs/reference/Makefile -docs/reference/addressbook/Makefile -docs/reference/addressbook/libebook/Makefile -docs/reference/addressbook/libebook-contacts/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/libedataserver/Makefile -docs/reference/libebackend/Makefile docs/reference/private/Makefile +docs/reference/eds/Makefile +docs/reference/eds/version.xml po/Makefile.in vala/Makefile ]) @@ -1771,7 +1821,6 @@ echo " 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 @@ -1786,6 +1835,7 @@ echo " Ubuntu Online Accounts $enable_uoa Google Contacts $enable_google GTK+: $enable_gtk + Examples: $enable_examples Code coverage (gcov): $enable_code_coverage - Strict building: $enable_strict + Installed tests: $enable_installed_tests "