]> git.0d.be Git - empathy.git/blobdiff - configure.ac
prepare 3.9.1
[empathy.git] / configure.ac
index 601c40a583e4f492f6dd06ac205484369a81e2f3..11482c399de49e9780a08c911f6c119e28d5e996 100644 (file)
@@ -1,9 +1,9 @@
 dnl If not 1, append datestamp to the version number
-m4_define(empathy_released, 0)
+m4_define(empathy_released, 1)
 
 m4_define([empathy_major_version], [3])
-m4_define([empathy_minor_version], [5])
-m4_define([empathy_micro_version], [2])
+m4_define([empathy_minor_version], [9])
+m4_define([empathy_micro_version], [1])
 m4_define([empathy_nano_version], [0])
 
 dnl Display the nano_version only if it's not '0'
@@ -34,12 +34,12 @@ AC_COPYRIGHT([
 # Minimal version required
 
 # Hardp deps
-FOLKS_REQUIRED=0.6.6
+FOLKS_REQUIRED=0.9.0
 GNUTLS_REQUIRED=2.8.5
 
-GLIB_REQUIRED=2.32.0
+GLIB_REQUIRED=2.33.3
 AC_DEFINE(GLIB_VERSION_MIN_REQUIRED, GLIB_VERSION_2_30, [Ignore post 2.30 deprecations])
-AC_DEFINE(GLIB_VERSION_MAX_ALLOWED, GLIB_VERSION_2_32, [Prevent post 2.32 APIs])
+AC_DEFINE(GLIB_VERSION_MAX_ALLOWED, GLIB_VERSION_2_34, [Prevent post 2.34 APIs])
 
 GTK_REQUIRED=3.5.1
 AC_DEFINE(GDK_VERSION_MIN_REQUIRED, GDK_VERSION_3_4, [Ignore post 3.4 deprecations])
@@ -50,31 +50,35 @@ AC_DEFINE(CLUTTER_VERSION_MIN_REQUIRED, CLUTTER_VERSION_1_8, [Ignore post 1.8 de
 AC_DEFINE(CLUTTER_VERSION_MAX_ALLOWED, CLUTTER_VERSION_1_10, [Prevent post 1.10 APIs])
 
 CLUTTER_GTK_REQUIRED=1.1.2
-CLUTTER_GST_REQUIRED=1.5.2
 
-TELEPATHY_GLIB_REQUIRED=0.19.1
+TELEPATHY_GLIB_REQUIRED=0.19.9
 AC_DEFINE(TP_VERSION_MIN_REQUIRED, TP_VERSION_0_20, [Ignore post 0.20 deprecations])
 AC_DEFINE(TP_VERSION_MAX_ALLOWED, TP_VERSION_0_20, [Prevent post 0.20 APIs])
 AC_DEFINE(TP_SEAL_ENABLE, 1, [Prevent to use sealed variables])
+AC_DEFINE(TP_DISABLE_SINGLE_INCLUDE, 1, [Disable single include header])
 
 GSTREAMER_REQUIRED=0.10.32
-KEYRING_REQUIRED=2.26.0
+TP_FS_REQUIRED=0.6.0
+LIBSECRET_REQUIRED=0.5
 GCR_REQUIRED=2.91.4
 LIBCANBERRA_GTK_REQUIRED=0.25
 LIBNOTIFY_REQUIRED=0.7.0
-TELEPATHY_FARSTREAM_REQUIRED=0.2.1
-TELEPATHY_LOGGER=0.2.13
-WEBKIT_REQUIRED=1.3.13
+TELEPATHY_LOGGER=0.8.0
+WEBKIT_REQUIRED=1.9.1
 GOA_REQUIRED=3.5.1
 
 # Optional deps
 ENCHANT_REQUIRED=1.2.0
 GEOCLUE_REQUIRED=0.12
+GEOCODE_GLIB_REQUIRED=0.99.1
 ISO_CODES_REQUIRED=0.35
 NAUTILUS_SENDTO_REQUIRED=2.90.0
 NETWORK_MANAGER_REQUIRED=0.7.0
 CHAMPLAIN_REQUIRED=0.12.1
 CHEESE_GTK_REQUIRED=3.4.0
+LIBACCOUNTS_REQUIRED=1.4
+LIBSIGNON_REQUIRED=1.1
+MC_PLUGINS_REQUIRED=5.13.1
 
 # Use --enable-maintainer-mode to disable deprecated symbols,
 # disable single include and enable GSEAL. If this is not a released empathy,
@@ -118,6 +122,9 @@ LT_INIT
 
 AC_PATH_PROG(DBUS_BINDING_TOOL, dbus-binding-tool)
 GLIB_GSETTINGS
+
+GLIB_COMPILE_RESOURCES=`$PKG_CONFIG gio-2.0 --variable=glib_compile_resources`
+AC_SUBST(GLIB_COMPILE_RESOURCES)
 GLIB_GENMARSHAL=`$PKG_CONFIG glib-2.0 --variable=glib_genmarshal`
 AC_SUBST(GLIB_GENMARSHAL)
 
@@ -195,13 +202,11 @@ PKG_CHECK_MODULES(EMPATHY,
    glib-2.0 >= $GLIB_REQUIRED
    gio-2.0 >= $GLIB_REQUIRED
    gio-unix-2.0 >= $GLIB_REQUIRED
-   gnome-keyring-1 >= $KEYRING_REQUIRED
+   libsecret-1 >= $LIBSECRET_REQUIRED
    gnutls >= $GNUTLS_REQUIRED
    gmodule-export-2.0
    gobject-2.0
    gsettings-desktop-schemas
-   gstreamer-0.10 >= $GSTREAMER_REQUIRED
-   gstreamer-interfaces-0.10
    libxml-2.0
    telepathy-glib >= $TELEPATHY_GLIB_REQUIRED
    telepathy-logger-0.2 >= $TELEPATHY_LOGGER
@@ -214,20 +219,65 @@ PKG_CHECK_MODULES(EMPATHY,
    libpulse-mainloop-glib
    webkitgtk-3.0 >= $WEBKIT_REQUIRED
    libsoup-2.4
+   gee-0.8
 ])
 
-PKG_CHECK_MODULES(EMPATHY_CALL,
-[
-   farstream-0.1
-   telepathy-farstream >= $TELEPATHY_FARSTREAM_REQUIRED
-   clutter-1.0 >= $CLUTTER_REQUIRED
-   clutter-gtk-1.0 >= $CLUTTER_GTK_REQUIRED
-   clutter-gst-1.0 >= $CLUTTER_GST_REQUIRED
-])
+# -----------------------------------------------------------
+# GStreamer
+# -----------------------------------------------------------
+AC_ARG_ENABLE(gst-1.0,
+              AS_HELP_STRING([--enable-gst-1.0=@<:@no/yes/auto@:>@],
+                             [build with GStreamer 1.0]),
+                             enable_gst1=$enableval,
+                             enable_gst1=auto)
+
+# Try to use GStreamer 1.0 if available
+have_gst1="no"
+if test "x$enable_gst1" != "xno"; then
+  PKG_CHECK_MODULES(EMPATHY_CALL,
+  [
+     farstream-0.2
+     telepathy-farstream >= $TP_FS_REQUIRED
+     clutter-1.0 >= $CLUTTER_REQUIRED
+     clutter-gtk-1.0 >= $CLUTTER_GTK_REQUIRED
+     clutter-gst-2.0
+     gstreamer-1.0
+     gstreamer-audio-1.0
+     gstreamer-video-1.0
+     cogl-1.0
+  ], have_gst1="yes", have_gst1="no")
+
+  if test "x$have_gst1" = "xyes"; then
+    AC_DEFINE(HAVE_GST1, 1, [Build with GStreamer 1.0])
+  fi
+fi
+
+if test "x$enable_gst1" = "xyes" -a "x$have_gst1" != "xyes"; then
+   AC_MSG_ERROR([Could not find GStreamer 1.0 dependencies:
+
+$EMPATHY_CALL_PKG_ERRORS])
+fi
+
+if test "x$have_gst1" != "xyes"; then
+  PKG_CHECK_MODULES(EMPATHY_CALL,
+  [
+     farstream-0.1
+     telepathy-farstream >= $TP_FS_REQUIRED
+     clutter-1.0 >= $CLUTTER_REQUIRED
+     clutter-gtk-1.0 >= $CLUTTER_GTK_REQUIRED
+     clutter-gst-1.0 >= 1.5.2
+     gstreamer-0.10 >= $GSTREAMER_REQUIRED
+     gstreamer-interfaces-0.10
+  ])
+fi
 
 AC_DEFINE(EMPATHY_GOA_PROVIDER, "org.gnome.OnlineAccounts",
    [Name of provider for accounts imported from GOA])
 
+AC_DEFINE(EMPATHY_UOA_PROVIDER,
+    "im.telepathy.Account.Storage.UOA",
+   [Name of provider for accounts imported from libaccounts])
+
 # -----------------------------------------------------------
 # Enable debug
 # -----------------------------------------------------------
@@ -391,7 +441,7 @@ AC_ARG_ENABLE(geocode,
 if test "x$enable_geocode" != "xno"; then
    PKG_CHECK_MODULES(GEOCODE,
    [
-      geocode-glib
+      geocode-glib >= $GEOCODE_GLIB_REQUIRED
    ], have_geocode="yes", have_geocode="no")
 
    if test "x$have_geocode" = "xyes"; then
@@ -450,18 +500,14 @@ if test "x$enable_goa" != "xno"; then
        mission-control-plugins
        goa-1.0 >= $GOA_REQUIRED
     ], have_goa="yes", have_goa="no")
-
-   AC_MSG_CHECKING([Mission Control plugins dir])
-   MISSION_CONTROL_PLUGINS_DIR=`pkg-config --variable=plugindir mission-control-plugins`
-
-   AC_MSG_RESULT([$MISSION_CONTROL_PLUGINS_DIR])
-   AC_SUBST(MISSION_CONTROL_PLUGINS_DIR)
 else
    have_goa=no
 fi
 
 if test "x$enable_goa" = "xyes" -a "x$have_goa" != "xyes"; then
-   AC_MSG_ERROR([Could not find GOA dependencies.])
+   AC_MSG_ERROR([Could not find GOA dependencies:
+
+$GOA_PKG_ERRORS])
 fi
 
 if test "x$have_goa" = "xyes"; then
@@ -477,7 +523,7 @@ AC_ARG_WITH([cheese],
             with_cheese=auto)
 
 if test x"$with_cheese" != x"no" ; then
-   PKG_CHECK_MODULES(CHEESE, gstreamer-0.10 cheese-gtk >= CHEESE_GTK_REQUIRED, [have_cheese=yes], [have_cheese=no])
+   PKG_CHECK_MODULES(CHEESE, cheese-gtk >= CHEESE_GTK_REQUIRED, [have_cheese=yes], [have_cheese=no])
    if test x${have_cheese} = xyes; then
      AC_DEFINE(HAVE_CHEESE, 1, [Define to 1 to enable cheese webcam support])
    fi
@@ -491,6 +537,83 @@ else
 fi
 AM_CONDITIONAL(BUILD_CHEESE, test x${have_cheese} = xyes)
 
+# -----------------------------------------------------------
+# ubuntu-online-accounts support
+# -----------------------------------------------------------
+AC_ARG_ENABLE(ubuntu-online-accounts,
+              AS_HELP_STRING([--enable-ubuntu-online-accounts=@<:@no/yes/auto@:>@],
+                             [build Ubuntu Online Accounts plugins]), ,
+                             enable_ubuntu_online_accounts=auto)
+
+if test "x$enable_ubuntu_online_accounts" != "xno"; then
+   PKG_CHECK_MODULES(UOA,
+    [
+       account-plugin
+       mission-control-plugins >= $MC_PLUGINS_REQUIRED
+       libaccounts-glib >= $LIBACCOUNTS_REQUIRED
+       libsignon-glib >= $LIBSIGNON_REQUIRED
+    ], have_uoa="yes", have_uoa="no")
+
+   # provider plugin dir
+   AC_MSG_CHECKING([Accounts provider plugin dir])
+   ACCOUNTS_PROVIDER_PLUGIN_DIR=`pkg-config --variable=provider_plugindir account-plugin`
+
+   AC_MSG_RESULT([$ACCOUNTS_PROVIDER_PLUGIN_DIR])
+   AC_SUBST(ACCOUNTS_PROVIDER_PLUGIN_DIR)
+
+   # app plugin dir
+   AC_MSG_CHECKING([Accounts provider app plugin dir])
+   ACCOUNTS_APP_PLUGIN_DIR=`pkg-config --variable=application_plugindir account-plugin`
+
+   AC_MSG_RESULT([$ACCOUNTS_APP_PLUGIN_DIR])
+   AC_SUBST(ACCOUNTS_APP_PLUGIN_DIR)
+
+   # provider files dir
+   AC_MSG_CHECKING([Accounts provider files dir])
+   ACCOUNTS_PROVIDER_FILES_DIR=`pkg-config --variable=providerfilesdir libaccounts-glib`
+
+   AC_MSG_RESULT([$ACCOUNTS_PROVIDER_FILES_DIR])
+   AC_SUBST(ACCOUNTS_PROVIDER_FILES_DIR)
+
+   # service files dir
+   AC_MSG_CHECKING([Accounts service files dir])
+   ACCOUNTS_SERVICE_FILES_DIR=`pkg-config --variable=servicefilesdir libaccounts-glib`
+
+   AC_MSG_RESULT([$ACCOUNTS_SERVICE_FILES_DIR])
+   AC_SUBST(ACCOUNTS_SERVICE_FILES_DIR)
+
+   # application files dir
+   AC_MSG_CHECKING([Accounts applications files dir])
+   ACCOUNTS_APPLICATION_FILES_DIR=`pkg-config --variable=applicationfilesdir libaccounts-glib`
+
+   AC_MSG_RESULT([$ACCOUNTS_APPLICATION_FILES_DIR])
+   AC_SUBST(ACCOUNTS_APPLICATION_FILES_DIR)
+
+else
+   have_uoa=no
+fi
+
+if test "x$enable_ubuntu_online_accounts" = "xyes" -a "x$have_uoa" != "xyes"; then
+   AC_MSG_ERROR([Could not find Ubuntu Online Accounts dependencies:
+
+$UOA_PKG_ERRORS])
+fi
+
+if test "x$have_uoa" = "xyes"; then
+   AC_DEFINE(HAVE_UOA, 1, [Define to 1 to build Ubuntu Online Accounts plugins])
+fi
+
+AM_CONDITIONAL(HAVE_UOA, test "x$have_uoa" = "xyes")
+
+if test "x$have_uoa" = "xyes" -o "x$have_goa" = "xyes"; then
+   AC_MSG_CHECKING([Mission Control plugins dir])
+   MISSION_CONTROL_PLUGINS_DIR=${libdir}/mission-control-plugins.`pkg-config --variable=MCP_ABI_VERSION mission-control-plugins`
+
+   AC_MSG_RESULT([$MISSION_CONTROL_PLUGINS_DIR])
+   AC_SUBST(MISSION_CONTROL_PLUGINS_DIR)
+fi
+
+
 # Help documentation
 YELP_HELP_INIT
 
@@ -510,8 +633,8 @@ AC_CONFIG_FILES([
    Makefile
    data/Makefile
    data/empathy.desktop.in
-   data/empathy-accounts.desktop.in
    data/icons/Makefile
+   data/themes/Makefile
    extensions/Makefile
    po/Makefile.in
    libempathy/Makefile
@@ -519,6 +642,13 @@ AC_CONFIG_FILES([
    src/Makefile
    nautilus-sendto-plugin/Makefile
    goa-mc-plugin/Makefile
+   ubuntu-online-accounts/Makefile
+   ubuntu-online-accounts/mc-plugin/Makefile
+   ubuntu-online-accounts/cc-plugins/Makefile
+   ubuntu-online-accounts/cc-plugins/account-plugins/Makefile
+   ubuntu-online-accounts/cc-plugins/providers/Makefile
+   ubuntu-online-accounts/cc-plugins/services/Makefile
+   ubuntu-online-accounts/cc-plugins/app-plugin/Makefile
    help/Makefile
    tests/Makefile
    tests/interactive/Makefile
@@ -536,6 +666,7 @@ Configure summary:
        Linker Flags................:  ${LDFLAGS}
        Prefix......................:  ${prefix}
        Coding style checks.........:  ${ENABLE_CODING_STYLE_CHECKS}
+       Use GStreamer 1.0...........:  ${have_gst1}
 
     Features:
        Spell checking (enchant)....:  ${have_enchant}
@@ -548,4 +679,5 @@ Configure summary:
     Extras:
        Nautilus-sendto plugin......:  ${have_nst}
        GOA MC plugin...............:  ${have_goa}
+       Ubuntu Online plugins.......:  ${have_uoa}
 "