* src/maemo/modest-account-view-window.c:
[modest] / configure.ac
index 8b094f1..d6d7f28 100644 (file)
@@ -32,7 +32,6 @@ AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_SRCDIR(src/modest-main.c)
 AM_INIT_AUTOMAKE([dist-bzip2])
 
-
 ALL_LINGUAS="en_GB"
 
 MODEST_LOCALE_DIR='$prefix/${DATADIRNAME}/locale'
@@ -47,6 +46,7 @@ fi
 AC_SUBST(prefix)
 
 AC_PROG_CC
+AC_PROG_CXX
 AM_PROG_CC_STDC
 AC_HEADER_STDC
 AC_PROG_LIBTOOL
@@ -54,7 +54,7 @@ AC_PROG_LIBTOOL
 
 # Option to enable debugging
 AC_ARG_ENABLE(debug,
-              [AC_HELP_STRING([  --enable-debug],[Debugging (default=no)])],
+              [AC_HELP_STRING([--enable-debug],[Debugging (default=no)])],
               [with_debug=yes], [with_debug=no])
 
 if test "x$with_debug" == "xyes" ; then
@@ -64,42 +64,117 @@ else
 fi
 
 
+
+dnl -------
+dnl GtkHTML
+dnl -------
+
+AC_MSG_CHECKING(for installed version of libgtkhtml3)
+pkg-config --exists libgtkhtml-3.14
+retval=$?
+gtk_html_found=false
+if test $retval -eq 0 ; then
+    gtk_html_found=true
+    gtk_html_version=3.14
+else
+    pkg-config --exists libgtkhtml-3.8
+    retval=$?
+    if test $retval -eq 0 ; then
+      gtk_html_found=true
+      gtk_html_version=3.8
+    else
+          if [ $gui = "true" ]; then
+            AC_MSG_RESULT(libgtkhtml 3.4 or higher is not found!)
+          fi
+    fi
+fi
+
+if [ $gtk_html_found = "true" ]; then
+   version=`pkg-config --modversion libgtkhtml-${gtk_html_version}`
+   AC_MSG_RESULT(found version $version)
+else
+   AC_MSG_ERROR([install gtkhtml 3.8 or newer])
+fi
+
+
 dnl # GLib/Gobject/Gtk/Gconf => mandatory
-PKG_CHECK_MODULES(MODEST_GSTUFF,glib-2.0 >= 2.6 gobject-2.0 gtk+-2.0 >= 2.6 gconf-2.0 gnome-vfs-2.0 libgtkhtml-3.8 libtinymail-1.0 libtinymail-camel-1.0 libtinymail-gnomevfs-1.0 libtinymailui-1.0 libtinymailui-gtk-1.0) 
+
+PKG_CHECK_MODULES(MODEST_GSTUFF,glib-2.0 >= 2.6 gobject-2.0 gtk+-2.0 >= 2.6 gconf-2.0 gnome-vfs-2.0 libgtkhtml-${gtk_html_version} libtinymail-1.0 libtinymail-camel-1.0 libtinymail-gnomevfs-1.0 libtinymailui-1.0 libtinymailui-gtk-1.0) 
 AC_SUBST(MODEST_GSTUFF_CFLAGS)
 AC_SUBST(MODEST_GSTUFF_LIBS)
 
-dnl dnl now, determine what to build
-AC_MSG_NOTICE([Determining what platform to build])
-PKG_CHECK_MODULES(MODEST_MAEMO_LIBS,libosso,[with_platform=maemo],true)
+modest_save_cflags="$CFLAGS"
+modest_save_libs="$LIBS"
+CFLAGS="$MODEST_GSTUFF_CFLAGS"
+LIBS="$MODEST_GSTUFF_LIBS"
+AC_CHECK_DECLS([gtk_widget_tap_and_hold_setup],[],[], [#include <gtk/gtk.h>])
+CFLAGS="$modest_save_cflags"
+LIBS="$modest_save_libs"
+
+__COPY_LIBS="$LIBS"
+LIBS="$LIBS $MODEST_GSTUFF_LIBS"
+AC_CHECK_FUNCS(gtk_html_get_selection_area)
+AC_SUBST(HAVE_GTK_HTML_GET_SELECTION_AREA)
+AC_CHECK_FUNCS(gtk_tree_view_column_get_cell_data_hint)
+AC_SUBST(HAVE_GTK_TREE_VIEW_COLUMN_GET_CELL_DATA_HINT)
+LIBS="$__COPY_LIBS"
 
-AC_ARG_WITH(platform,
-[--with-platform=gnome         platform to build for [gnome]],
+dnl dnl now, determine what to build
+dnl AC_MSG_NOTICE([Determining what platform to build])
+PKG_CHECK_MODULES(MODEST_MAEMO_LIBS,conic,[detected_platform=maemo],[detected_platform=gnome])
+
+AC_ARG_WITH(platform, [
+Target platform:
+  --with-platform=detect  detect target platform (default)
+  --with-platform=gnome   build for Gnome
+  --with-platform=maemo   build for Maemo
+],
 [case "${with_platform}" in
-       gnome)    MODEST_PLATFORM=gnome;;
-       maemo) MODEST_PLATFORM=maemo;;
-       *)      MODEST_PLATFORM=${with_platform}
-esac], [MODEST_PLATFORM=gnome
-               with_platform=gnome])
+       gnome|maemo|detect)    MODEST_PLATFORM=${with_platform};;
+       *)        AC_MSG_ERROR([Unknown platform selected]);;
+esac], [MODEST_PLATFORM=detect])
+
+if test "$MODEST_PLATFORM" = "detect"; then
+       MODEST_PLATFORM="$detected_platform"
+       with_platform=$detected_platform
+fi
+
+
+dnl Whether to use maemo-launcher or not
+AC_ARG_ENABLE([maemo-launcher],
+             [AS_HELP_STRING([--enable-maemo-launcher],
+                             [build with maemo-launcher support])],
+                             [case "${enableval}" in
+                              yes) maemo_launcher=true ;;
+                              no)  maemo_launcher=false ;;
+                              *) AC_MSG_ERROR([bad value ${enableval} for --enable-maemo-launcher]) ;;
+                              esac], [maemo_launcher=false])
+if test x$maemo_launcher = xtrue
+then
+       PKG_CHECK_MODULES(MAEMO_LAUNCHER, [maemo-launcher-app])
+       AC_SUBST(MAEMO_LAUNCHER_CFLAGS)
+       AC_SUBST(MAEMO_LAUNCHER_LIBS)
+fi
 
 have_easysetup=false
 if test "x$with_platform" == "xgnome"; then
       PKG_CHECK_MODULES(MODEST_PLATFORM,libtinymail-gnome-desktop-1.0 libnm_glib glib-2.0 >= 2.8 gtk+-2.0 >= 2.10 libnotify)
     AC_DEFINE_UNQUOTED(MODEST_PLATFORM_GNOME, 1, ["Whether modest is being built for the GNOME platform."])
-    AC_MSG_ERROR([The GNOME Build is currently broken; please try the Maemo build instead])
+dnl     AC_MSG_ERROR([The GNOME Build is currently broken; please try the Maemo build instead])
 else
     have_easysetup=true
-    PKG_CHECK_MODULES(MODEST_PLATFORM,libosso conic libtinymail-maemo-1.0 osso-addressbook-1.0 libebook-1.2 libalarm)
+    have_dbusapi=true
+    PKG_CHECK_MODULES(MODEST_PLATFORM,libosso dbus-1 libtinymail-maemo-1.0 libebook-1.2 )
     AC_DEFINE_UNQUOTED(MODEST_PLATFORM_MAEMO, 1, ["Whether modest is being built for the MAEMO platform."])
     AC_DEFINE_UNQUOTED(MODEST_HAVE_EASYSETUP, 1, ["Whether we have the easysetup feature"])
 fi                 
 
 AM_CONDITIONAL(MODEST_HAVE_EASYSETUP,test "x$have_easysetup" == "xtrue")
+AM_CONDITIONAL(MODEST_HAVE_DBUS_API,test "x$have_dbusapi" == "xtrue")
 AC_SUBST(MODEST_PLATFORM)
 
 
 
-
 #
 # check for wpeditor or libwpeditor-plus (on maemo)
 #
@@ -121,28 +196,52 @@ fi
 
 
 #
-# check the providers-data (on maemo)
+# check libalarm
 #
 if test "x$with_platform" == "xmaemo"; then  
-PKG_CHECK_MODULES(MODEST_PROVIDERS_DATA,modest-providers-data,have_modest_providers_data=true,have_modest_providers_data=false)
-if test "x$have_modest_providers_data" == "xfalse"; then
-   PKG_CHECK_MODULES(MODEST_PROVIDERS_DATA,maemo-providers-data,have_maemo_providers_data=true,have_maemo_providers_data=false)
-   if test "x$have_maemo_providers_data" == "xfalse"; then
-       echo "x$have_maemo_providers_data"   
-               AC_MSG_ERROR([you need to have either modest-providers-data or maemo-providers-data installed])
-   else
-       AC_DEFINE_UNQUOTED(MODEST_HAVE_MAEMO_PROVIDERS_DATA, 1, ["Whether maemo-providers-data is used."])
-       AC_DEFINE_UNQUOTED([MODEST_PROVIDERS_DATA_PATH],["`$PKG_CONFIG --variable=path maemo-providers-data`"],[maemo-providers-data file path])
-       providers_data="maemo-providers-data"           
-   fi
+PKG_CHECK_MODULES(MODEST_LIBALARM,libalarm,have_libalarm=true,have_libalarm=false)
+if test "x$have_libalarm" == "xtrue"; then
+   libalarm="libalarm" 
+   AC_DEFINE_UNQUOTED(MODEST_HAVE_LIBALARM, 1, ["Whether libalarm is used."])          
+   AC_SUBST(MODEST_LIBALARM_CFLAGS)
+   AC_SUBST(MODEST_LIBALARM_LIBS)
+else
+   libalarm=""
+fi
+fi
+
+#
+# check for MCE
+#
+if test "x$with_platform" == "xmaemo"; then  
+PKG_CHECK_MODULES(MODEST_MCE,mce,have_mce=true,have_mce=false)
+if test "x$have_mce" == "xtrue"; then
+   mce="mce"   
+   AC_DEFINE_UNQUOTED(MODEST_HAVE_MCE, 1, ["Whether mce is used."])
+   AC_SUBST(MODEST_MCE_CFLAGS)
+   AC_SUBST(MODEST_MCE_LIBS)
 else
-  AC_DEFINE_UNQUOTED(MODEST_HAVE_MODEST_PROVIDERS_DATA, 1, ["Whether modest-providers-data is used."])
-  AC_DEFINE_UNQUOTED([MODEST_PROVIDERS_DATA_PATH],["`$PKG_CONFIG --variable=path modest-providers-data`"],[modest-providers-data file path])
-  providers_data="modest-providers-data"                                                               
+   mce=""
+fi
 fi
-fi      
-   
 
+#
+# check for libconic; this is a trick to check whether we run
+# on a 'real' maemo platform, or on, say, ubuntu embedded
+# this determines whether we build with the non-hildon GTK+
+#
+if test "x$with_platform" == "xmaemo"; then  
+PKG_CHECK_MODULES(MODEST_LIBCONIC,conic,have_libconic=true,have_libconic=false)
+if test "x$have_libconic" == "xtrue"; then
+   AC_DEFINE_UNQUOTED(MODEST_HAVE_HILDON_GTK,1,["Whether modest is being built with Hildon/Gtk"])
+   AC_DEFINE_UNQUOTED(MODEST_HAVE_CONIC,1,["Whether modest has conic available"])
+   AC_SUBST(MODEST_LIBCONIC_CLAGS)
+   AC_SUBST(MODEST_LIBCONIC_LIBS)
+else
+# if we define this, tinymail will not try to #include conic headers
+   CFLAGS="$CFLAGS -DLIBTINYMAIL_MAEMO_WITHOUT_CONIC"
+fi
+fi
 
 #
 # check hildon-help (only for maemo)
@@ -190,12 +289,32 @@ if test "x$with_platform" == "xmaemo"; then
        AC_MSG_ERROR([you need to have either osso-mime or hildon-mime installed])
       fi
    else
-     helplib="hildon-mime"     
+     mimelib="hildon-mime"     
      AC_DEFINE_UNQUOTED(MODEST_HAVE_HILDON_MIME, 1, ["Whether hildon-mime is used."])          
    fi
 fi
 
+PKG_CHECK_MODULES(MODEST_MOZEMBED, libtinymailui-mozembed-1.0, have_mozembed=true, have_mozembed=false)
+AC_ARG_ENABLE(mozembed,
+AC_HELP_STRING([--enable-mozembed],
+       [Build with GtkMozEmbed (yes, no)]),
+[case "${enableval}" in
+      yes)
+       if test x$have_mozembed = xfalse; then
+          AC_MSG_ERROR([building of GtkMozEmbed support requested and gtkmozembed not found])
+       fi
+       use_mozembed=true
+       ;;
+      *)
+        use_mozembed=false
+       ;;
+esac],[use_mozembed=false])
+
+AM_CONDITIONAL(BUILD_MOZEMBED, test x$use_mozembed = xtrue)
 
+if test x$use_mozembed = xtrue; then
+       AC_DEFINE_UNQUOTED(MODEST_USE_MOZEMBED, 1, ["Whether we use GtkMozEmbed."])
+fi
 
 #dnl wether we can and should build the 
 #dnl search plugin (on maemo)
@@ -246,21 +365,28 @@ fi
 # check the version of the addressbook on maemo
 #
 if test "x$with_platform" == "xmaemo"; then  
-   PKG_CHECK_MODULES(MODEST_ABOOK, osso-addressbook-1.0 < 2.0, have_old_abook=true,have_old_abook=false)       
-   if test "x$have_old_abook" == "xtrue"; then
-      AC_DEFINE_UNQUOTED(MODEST_HAVE_OLD_ABOOK, 1, ["whether we have an old osso-addressbook"])
+   PKG_CHECK_MODULES(MODEST_ABOOK,osso-addressbook-1.0,have_abook=true,have_abook=false)
+   AC_SUBST(MODEST_ABOOK_CFLAGS)
+   AC_SUBST(MODEST_ABOOK_LIBS)
+
+   if test "x$have_abook" == "xtrue"; then
+      abook_api=`$PKG_CONFIG --modversion osso-addressbook-1.0 | cut -d. -f1`
+      AC_DEFINE_UNQUOTED(OSSO_ABOOK_ENABLE_DEPRECATED, 1, ["use deprecated addressbook API"])
+      AC_DEFINE_UNQUOTED(MODEST_ABOOK_API, $abook_api, ["the API version of osso-addressbook"])
+      AC_DEFINE_UNQUOTED(MODEST_HAVE_ABOOK, 1, ["whether we have osso-addressbook"])
+      addressbook="osso-addressbook"
    fi
 fi
 
 
+#
+# if we don't have an addressbook, use the dummy one
+#
+AM_CONDITIONAL(MODEST_USE_DUMMY_ADDRESS_BOOK,test "x$have_abook" != "xtrue")
 
-#FIXME: hack to set the right gettext package..
-if test "x$have_hildon1" == "xtrue"; then
-     GETTEXT_PACKAGE=osso-email
-else
-     GETTEXT_PACKAGE=modest    
-fi
-# Check for gettext support
+
+# gettext support
+GETTEXT_PACKAGE=modest 
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", ["gettext package"])
 
@@ -385,14 +511,22 @@ echo "Platform         : $with_platform"
 echo "Prefix           : ${prefix}"
 echo "Build tests      : $build_tests"
 echo "Build docs       : $build_docs"
-echo "Gettext Packages : $GETTEXT_PACKAGE"
-echo "Easysetup data   : $providers_data"
-echo "Editor lib       : $wpeditor"
-echo "Help lib         : $helplib"
-echo "Hildon-Notify    : $have_hildon_notify"    
-echo "LibOGS support   : $have_ogs_support"
+echo "Gettext Package  : $GETTEXT_PACKAGE"
+
+if test "x$with_platform" == "xmaemo"; then
+   echo "Maemo Launcher   : $maemo_launcher"
+   echo "Editor lib       : $wpeditor"
+   echo "Addressbook      : $have_abook"
+   echo "Help lib         : $helplib"
+   echo "libconic support : $have_libconic"
+   echo "Alarm            : $have_libalarm"
+   echo "MCE              : $have_mce"
+   echo "Hildon-Notify    : $have_hildon_notify"    
+   echo "LibOGS support   : $have_ogs_support"
+   echo "MozEmbed support : $use_mozembed"
+fi 
+
 echo "CFLAGS           : $CFLAGS"
-echo "Gettext Packages : $GETTEXT_PACKAGE"
 echo "Debug version    : $with_debug"
 echo ""
 echo "NOTE: you should do a 'make clean' after changing architecture or platform (--with-platform=)"