]> www.fi.muni.cz Git - evince.git/blobdiff - configure.ac
[dualscreen] fix crash on ctrl+w and fix control window closing
[evince.git] / configure.ac
index 3ca8401de0cfa9131e3180dd6cdff761f4b47372..e5924c9416c6342d3c0822f586a968968f16a006 100644 (file)
@@ -2,14 +2,14 @@
 # Versioning
 # *****************************************************************************
 
-m4_define([ev_major_version],[2])
-m4_define([ev_minor_version],[29])
-m4_define([ev_micro_version],[1])
+m4_define([ev_major_version],[3])
+m4_define([ev_minor_version],[0])
+m4_define([ev_micro_version],[0])
 m4_define([ev_extra_version],[])
 m4_define([ev_version],[ev_major_version.ev_minor_version.ev_micro_version()ev_extra_version])
 
 # The evince API version
-m4_define([ev_api_version], [2.29])
+m4_define([ev_api_version], [3.0])
 
 # Libtool versioning. The backend and view libraries have separate versions.
 # Before making a release, the libtool version should be modified.
@@ -21,14 +21,14 @@ m4_define([ev_api_version], [2.29])
 # - If the interface is the same as the previous version, change to C:R+1:A
 
 # Libtool version of the backend library
-m4_define([ev_document_lt_current],[2])
+m4_define([ev_document_lt_current],[3])
 m4_define([ev_document_lt_revision],[0])
 m4_define([ev_document_lt_age],[0])
 m4_define([ev_document_lt_version_info],[ev_document_lt_current:ev_document_lt_revision:ev_document_lt_age])
 m4_define([ev_document_lt_current_minus_age],[m4_eval(ev_document_lt_current - ev_document_lt_age)])
 
 # Libtool version of the view library
-m4_define([ev_view_lt_current],[2])
+m4_define([ev_view_lt_current],[3])
 m4_define([ev_view_lt_revision],[0])
 m4_define([ev_view_lt_age],[0])
 m4_define([ev_view_lt_version_info],[ev_view_lt_current:ev_view_lt_revision:ev_view_lt_age])
@@ -41,7 +41,7 @@ m4_define([ev_binary_version],[ev_document_lt_current])
 
 AC_PREREQ([2.57])
 AC_INIT([Evince],[ev_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=evince],[evince])
-AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip])
+AM_INIT_AUTOMAKE([1.10 foreign dist-bzip2 no-dist-gzip])
 
 AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_MACRO_DIR([m4])
@@ -66,13 +66,13 @@ AC_PROG_SED
 AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
 AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
 
-GNOME_COMMON_INIT
-GNOME_DOC_INIT
 GNOME_MAINTAINER_MODE_DEFINES
 GNOME_COMPILE_WARNINGS
 GNOME_CXX_WARNINGS
 
-GTK_DOC_CHECK(1.0)
+dnl FIXME: remove this when required gtk+ >= 2.19.7
+DISABLE_DEPRECATED=
+AC_SUBST([DISABLE_DEPRECATED])
 
 IT_PROG_INTLTOOL([0.35.0])
 
@@ -85,11 +85,14 @@ m4_pattern_allow([AM_V_GEN])dnl Make autoconf not complain about the rule below
 EV_INTLTOOL_EVINCE_BACKEND_RULE='%.evince-backend:   %.evince-backend.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(AM_V_GEN) LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
 AC_SUBST([EV_INTLTOOL_EVINCE_BACKEND_RULE])
 
+GLIB_GSETTINGS
+
 # Check which platform to use
 
 AC_MSG_CHECKING([for which platform to build])
 AC_ARG_WITH([platform],
-  [AS_HELP_STRING([--with-platform=gnome|win32|hildon (default: gnome)])],
+  [AS_HELP_STRING([--with-platform=gnome|win32|hildon],
+                  [Setting platform (default: gnome)])],
   [case "$withval" in
     gnome|win32|hildon) ;;
     *) AC_MSG_ERROR([invalid argument "$withval" for --with-platform]) ;;
@@ -119,10 +122,12 @@ AM_CONDITIONAL([PLATFORM_HILDON],[test "$with_platform" = "hildon"])
 AM_CONDITIONAL([PLATFORM_WIN32],[test "$with_platform" = "win32"])
 
 dnl Specify required versions of dependencies
-DBUS_GLIB_REQUIRED=0.70
-GTK_REQUIRED=2.14.0
-GLIB_REQUIRED=2.18.0
+CAIRO_REQUIRED=1.10.0
+GLIB_REQUIRED=2.25.11
 KEYRING_REQUIRED=2.22.0
+GTK_REQUIRED=3.0.2
+NAUTILUS_REQUIRED=2.91.4
+
 AC_SUBST([GLIB_REQUIRED])
 AC_SUBST([GTK_REQUIRED])
 
@@ -138,48 +143,69 @@ dnl Check dependencies
 # SHELL_CFLAGS     for shell implementation.
 # SHELL_LIBS
 
-PKG_CHECK_MODULES(LIBDOCUMENT, gtk+-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED)
-PKG_CHECK_MODULES(LIBVIEW, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
-PKG_CHECK_MODULES(BACKEND, gtk+-2.0 >= $GTK_REQUIRED)
-PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
-PKG_CHECK_MODULES(PREVIEWER, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
+
+PKG_CHECK_MODULES(LIBDOCUMENT, gtk+-3.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED)
+PKG_CHECK_MODULES(LIBVIEW, gtk+-3.0 >= $GTK_REQUIRED gail-3.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
+PKG_CHECK_MODULES(BACKEND, cairo >= $CAIRO_REQUIRED gtk+-3.0 >= $GTK_REQUIRED)
+PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-3.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
 
 SHELL_PLATFORM_PKGS=
 case "$with_platform" in
   hildon) AC_DEFINE([PLATFORM_HILDON],[1],[Define if building for the hildon platform])
           SHELL_PLATFORM_PKGS="hildon-1 hildon-fm-2 libosso"
           ;;
-  *) SHELL_PLATFORM_PKGS="gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED"
-     ;;
+  gnome)
+        # Evince has a rather soft run-time dependency on hicolor-icon-theme.
+        # If the hicolor theme is not available, Evince fails to display some
+        # icons. Because we cannot check for it at run-time, we instead
+        # would like to require the icon theme at compile-time. But, because
+        # the hicolor-icon-theme does not have a pkgconfig file, on gnome we
+        # require the gnome icon theme instead.
+        SHELL_PLATFORM_PKGS="gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED"
+        # The totem-screensaver and egg_smclient code use x11 directly.
+        SHELL_PLATFORM_PKGS="$SHELL_PLATFORM_PKGS x11"
+        ;;
+  *)
+        # On all other platforms we issue a warning about the runtime
+        # dependency.
+        AC_MSG_WARN([Evince has a soft run-time dependency on hicolor-icon-theme. You are advised to have this theme installed when running Evince.]);
+        SHELL_PLATFORM_PKGS=""
+        ;;
 esac
 
-PKG_CHECK_MODULES([SHELL_CORE],[libxml-2.0 >= $LIBXML_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED gthread-2.0 $SHELL_PLATFORM_PKGS])
+PKG_CHECK_MODULES([SHELL_CORE],[libxml-2.0 >= $LIBXML_REQUIRED gtk+-3.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED gthread-2.0 $SHELL_PLATFORM_PKGS])
 
 # *********
 # SM client
 # *********
 
-GDK_TARGET="$($PKG_CONFIG --variable target gdk-2.0)"
+GDK_TARGET="$($PKG_CONFIG --variable target gdk-3.0)"
 
-SMCLIENT_PKGS=
 AC_MSG_CHECKING([which smclient backend to use])
 AC_ARG_WITH([smclient],
-  [AS_HELP_STRING([--with-smclient-backend],[which smclient backend to use (no|xsmp|win32|quartz)])],
+  [AS_HELP_STRING([--with-smclient-backend=no|xsmp|win32|quartz],
+                 [Setting smclient backend (default:auto)])],
   [],
   [case "$GDK_TARGET" in
     x11) case "$with_platform" in
-           gnome) with_smclient=xsmp SMCLIENT_PKGS="sm >= 1.0.0" ;;
+           gnome) with_smclient=xsmp ;;
            *) with_smclient=no ;;
          esac ;;
     win32|quartz) with_smclient=$GDK_TARGET ;;
     *) with_smclient=no ;;
    esac])
+   
 AC_MSG_RESULT([$with_smclient])
 
 if test "$with_smclient" != "no"; then
   AC_DEFINE([WITH_SMCLIENT],[1],[Define if smclient is enabled])
 
-  PKG_CHECK_MODULES([SMCLIENT],[gtk+-2.0 gthread-2.0 $SMCLIENT_PKGS])
+  case "$with_smclient" in
+    xsmp) SMCLIENT_PKGS="sm >= 1.0.0 ice" ;;
+    *) SMCLIENT_PKGS="" ;;
+  esac
+
+  PKG_CHECK_MODULES([SMCLIENT],[gtk+-3.0 gthread-2.0 $SMCLIENT_PKGS])
   AC_SUBST([SMCLIENT_CFLAGS])
   AC_SUBST([SMCLIENT_LIBS])
 fi
@@ -198,7 +224,6 @@ dnl ===== Check special functions
 evince_save_LIBS=$LIBS
 LIBS="$LIBS $BACKEND_LIBS"
 AC_CHECK_FUNCS(cairo_format_stride_for_width)
-AC_CHECK_FUNCS(gtk_print_operation_get_n_pages_to_print)
 LIBS=$evince_save_LIBS
 
 # ******************
@@ -207,15 +232,17 @@ LIBS=$evince_save_LIBS
 
 AC_MSG_CHECKING([whether gtk+-unix-print support is requested])
 AC_ARG_WITH([gtk-unix-print],
-  [AS_HELP_STRING([--without-gtk-unix-print],[disable the use of gtk-unix-print])],
+  [AS_HELP_STRING([--without-gtk-unix-print],
+                 [Disable the use of gtk-unix-print])],
   [],[case "$os_win32" in
         yes) with_gtk_unix_print=no ;;
         *) with_gtk_unix_print=yes ;;
       esac])
+      
 AC_MSG_RESULT([$with_gtk_unix_print])
 
 if test "$with_gtk_unix_print" = "yes"; then
-   PKG_CHECK_MODULES(GTKUNIXPRINT, [gtk+-unix-print-2.0 >= $GTK_REQUIRED])
+   PKG_CHECK_MODULES(GTKUNIXPRINT, [gtk+-unix-print-3.0 >= $GTK_REQUIRED])
    AC_DEFINE([GTKUNIXPRINT_ENABLED], [1], [Define if gtk+-unix-print is enabled.])
 fi
 
@@ -224,7 +251,8 @@ fi
 # *********************
 
 AC_ARG_WITH(keyring,
-        [AS_HELP_STRING([--without-keyring],[disable the use of gnome-keyring])],
+        [AS_HELP_STRING([--without-keyring],
+                       [Disable the use of gnome-keyring])],
         [],
         [case "$with_platform" in
            gnome) with_keyring=yes ;;
@@ -238,15 +266,12 @@ if test "$with_keyring" = "yes"; then
         AC_DEFINE([WITH_KEYRING],[1],[Define if KEYRING support is enabled])
 fi
 
-GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`  
-AC_SUBST(GLIB_GENMARSHAL)
-
 # ****
 # DBUS
 # ****
 
 AC_ARG_ENABLE([dbus],
-  [AS_HELP_STRING([--enable-dbus], [Compile with support for dbus])],
+  [AS_HELP_STRING([--disable-dbus], [Disable support for dbus])],
   [],
   [case "$with_platform" in
       gnome) enable_dbus=yes ;;
@@ -254,69 +279,36 @@ AC_ARG_ENABLE([dbus],
     esac])
 
 if test "$enable_dbus" = "yes"; then
-  PKG_CHECK_MODULES([DBUS],[dbus-glib-1 >= $DBUS_GLIB_REQUIRED],[],
-                    [AC_MSG_ERROR([DBUS not found; use --disable-dbus to disable DBUS support])])
-
-  AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool], [no])
-  if test x$DBUS_BINDING_TOOL = "xno" ; then
-          AC_MSG_ERROR([dbus-binding-tool executable not found in your path - should be installed with dbus glib bindings])
-  fi
-
   AC_DEFINE([ENABLE_DBUS],[1],[Define if DBUS support is enabled])
-fi
-
-AC_SUBST([DBUS_CFLAGS])
-AC_SUBST([DBUS_LIBS])
 
-AM_CONDITIONAL([ENABLE_DBUS], [test "$enable_dbus" = "yes"])
-
-if test "$enable_dbus" = "yes"; then
-   PKG_CHECK_MODULES([EV_DAEMON], [gthread-2.0 gio-2.0 >= $GLIB_REQUIRED dbus-glib-1 >= $DBUS_GLIB_REQUIRED])
+   PKG_CHECK_MODULES([EV_DAEMON], [gio-2.0 >= $GLIB_REQUIRED])
 fi
 
-dnl ========= Check for GConf
-
-AC_MSG_CHECKING([whether GConf support is requested])
-AC_ARG_WITH([gconf],
-  [AS_HELP_STRING([--without-gconf],[disable the use of gconf])],
-  [],
-  [case "$os_win32" in
-     yes) with_gconf=no ;;
-     *) with_gconf=yes ;;
-   esac])
-AC_MSG_RESULT([$with_gconf])
-
-AM_CONDITIONAL([WITH_GCONF],[test "$with_gconf" = "yes"])
-
-if test "$with_gconf" = "yes"; then
-   PKG_CHECK_MODULES([GCONF],[gconf-2.0])
-   AC_DEFINE([WITH_GCONF],[1],[Define if GConf support is enabled])
-
-   AM_GCONF_SOURCE_2
+AM_CONDITIONAL([ENABLE_DBUS], [test "$enable_dbus" = "yes"])
 
-   AC_PATH_PROG([GCONFTOOL], [gconftool-2], [false])
-   if test "$GCONFTOOL" = "false"; then
-      AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
-   fi
-else
-   AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL],false)
+dnl ========= Check for Desktop Schemas
+PKG_CHECK_MODULES([DESKTOP_SCHEMAS], [gsettings-desktop-schemas],
+                  has_desktop_schemas=yes, has_desktop_schemas=no)
+if test x$has_desktop_schemas = xyes; then
+   AC_DEFINE([HAVE_DESKTOP_SCHEMAS], [1], [Whether GSettings Desktop Schemas are available])
 fi
 
 dnl Debug mode
 
 AC_ARG_ENABLE([debug],
-       AC_HELP_STRING([--enable-debug],
-                       [Turn on evince debug mode]),,
-               [enable_debug=no])
-               
+       AS_HELP_STRING([--enable-debug],
+                      [Turn on evince debug mode]),
+       [enable_debug=$enableval],
+       [enable_debug=no])
+
 if test "x$enable_debug" = "xyes"; then
    DEBUG_FLAGS="-DEV_ENABLE_DEBUG"
 fi
 
 AC_ARG_ENABLE([tests],
-       AC_HELP_STRING([--enable-tests], [Disable tests]),
-       enable_tests="$enableval",
-       enable_tests=yes)
+       AS_HELP_STRING([--enable-tests], [Enable the tests]),
+       [enable_tests=$enableval],
+       [enable_tests=yes])
 
 AM_CONDITIONAL(ENABLE_TESTS, test x$enable_tests = xyes)
 
@@ -325,17 +317,18 @@ LIBDOCUMENT_LIBS="$LIBDOCUMENT_LIBS"
 AC_SUBST(LIBDOCUMENT_CFLAGS)
 AC_SUBST(LIBDOCUMENT_LIBS)
 
-LIBVIEW_CFLAGS="$LIBVIEW_CFLAGS $DEBUG_FLAGS"
-LIBVIEW_LIBS="$LIBVIEW_LIBS"
+LIBVIEW_CFLAGS="$LIBVIEW_CFLAGS $GTKUNIXPRINT_CFLAGS $DEBUG_FLAGS"
+LIBVIEW_LIBS="$LIBVIEW_LIBS $GTKUNIXPRINT_LIBS -lm"
 AC_SUBST(LIBVIEW_CFLAGS)
 AC_SUBST(LIBVIEW_LIBS)
 
 BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
+BACKEND_LIBS="$BACKEND_LIBS -lm"
 AC_SUBST(BACKEND_CFLAGS)
 AC_SUBST(BACKEND_LIBS)
 
-SHELL_CFLAGS="$SHELL_CORE_CFLAGS $GTKUNIXPRINT_CFLAGS $DBUS_CFLAGS $KEYRING_CFLAGS $GCONF_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
-SHELL_LIBS="$SHELL_CORE_LIBS $GTKUNIXPRINT_CFLAGS $DBUS_LIBS $KEYRING_LIBS $GCONF_LIBS -lz"
+SHELL_CFLAGS="$SHELL_CORE_CFLAGS $KEYRING_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
+SHELL_LIBS="$SHELL_CORE_LIBS $KEYRING_LIBS -lz -lm"
 AC_SUBST(SHELL_CFLAGS)
 AC_SUBST(SHELL_LIBS)
 
@@ -350,7 +343,8 @@ AC_SUBST([EV_DAEMON_LIBS])
 
 # Check for Nautilus property page build
 AC_ARG_ENABLE([nautilus],
-  [AS_HELP_STRING([--disable-nautilus],[Build the nautilus extensions])],
+  [AS_HELP_STRING([--disable-nautilus],
+                 [Disable build of nautilus extensions])],
   [],
   [case "$with_platform" in
      gnome) enable_nautilus=yes ;;
@@ -358,7 +352,7 @@ AC_ARG_ENABLE([nautilus],
     esac])
 
 if test "$enable_nautilus" = "yes" ; then
-  PKG_CHECK_MODULES([NAUTILUS],[gtk+-x11-2.0 $MM gthread-2.0 libnautilus-extension],
+  PKG_CHECK_MODULES([NAUTILUS],[gtk+-x11-3.0 $MM gthread-2.0 libnautilus-extension >= $NAUTILUS_REQUIRED],
                     [],[AC_MSG_ERROR([libnautilus-extension not found; use --disable-nautilus to disable the nautilus extensions])])
   NAUTILUS_EXTENSION_DIR=`$PKG_CONFIG --variable=extensiondir libnautilus-extension`
   AC_SUBST([nautilusextensiondir],[$NAUTILUS_EXTENSION_DIR])
@@ -373,11 +367,12 @@ AM_CONDITIONAL([ENABLE_NAUTILUS],[test "$enable_nautilus" = "yes"])
 # Check for thumbnailer build
 
 AC_ARG_ENABLE([thumbnailer],
-  [AS_HELP_STRING([--disable-thumbnailer],[disable the GNOME thumbnailer])],
+  [AS_HELP_STRING([--disable-thumbnailer],
+                 [Disable GNOME thumbnailer])],
   [],
   [case "$with_platform" in
-     gnome) enable_thumbnailer=yes ;;
-     *) enable_thumbnailer=no ;;
+     hildon) enable_thumbnailer=no ;;
+     *) enable_thumbnailer=yes ;;
     esac])
 
 AM_CONDITIONAL([ENABLE_THUMBNAILER],[test "$enable_thumbnailer" = "yes"])
@@ -387,15 +382,16 @@ AM_CONDITIONAL([ENABLE_THUMBNAILER],[test "$enable_thumbnailer" = "yes"])
 # ***************
 
 AC_ARG_ENABLE([previewer],
-  [AS_HELP_STRING([--disable-previewer],[disable the GNOME Document Previewer])],
+  [AS_HELP_STRING([--disable-previewer],
+                 [Disable the GNOME Document Previewer])],
   [],
   [case "$with_platform" in
-      gnome) enable_previewer=yes ;;
-      *) enable_previewer=no ;;
+      hildon) enable_previewer=no ;;
+      *) enable_previewer=yes ;;
     esac])
 
 if test x$enable_previewer = "xyes" ; then
-  PKG_CHECK_MODULES([PREVIEWER],[gtk+-2.0 >= $GTK_REQUIRED gtk+-unix-print-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED])
+  PKG_CHECK_MODULES([PREVIEWER],[gtk+-3.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED])
 fi
 
 AM_CONDITIONAL([ENABLE_PREVIEWER],[test "$enable_previewer" = "yes"])
@@ -410,8 +406,10 @@ AC_SUBST(PREVIEWER_LIBS)
 
 AC_MSG_CHECKING([whether GObject introspection is requested])
 AC_ARG_ENABLE([introspection],
-        AS_HELP_STRING([--enable-introspection],[Enable GObject introspection]),
-        [],[enable_introspection=no])
+        AS_HELP_STRING([--enable-introspection],
+                      [Enable GObject introspection]),
+               [enable_introspection=$enableval],
+       [enable_introspection=no])
 AC_MSG_RESULT([$enable_introspection])
 
 G_IR_SCANNER=
@@ -449,24 +447,17 @@ AC_CHECK_DECL([_NL_MEASUREMENT_MEASUREMENT],[
   ],[],[#include <langinfo.h>])
 
 dnl ================== pdf checks ===================================================
-AC_ARG_ENABLE(pdf,
-              [AC_HELP_STRING([--enable-pdf], [Compile with pdf support])],enable_pdf="$enableval",enable_pdf=yes)
+AC_ARG_ENABLE([pdf],
+  [AS_HELP_STRING([--disable-pdf],
+                 [Disable the PDF support])],
+  [enable_pdf=$enableval],
+  [enable_pdf=yes])
 
 if test "x$enable_pdf" = "xyes"; then
-    POPPLER_REQUIRED=0.12.0
+    POPPLER_REQUIRED=0.16.0
     PKG_CHECK_MODULES(POPPLER, poppler-glib >= $POPPLER_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED,enable_pdf=yes,enable_pdf=no)
 
     if test "x$enable_pdf" = "xyes"; then
-           AC_DEFINE([ENABLE_PDF], [1], [Enable pdf support.])
-           SHELL_LIBS="$SHELL_LIBS $POPPLER_LIBS"
-           SHELL_CFLAGS="$SHELL_CFLAGS $POPPLER_CFLAGS"
-
-           evince_save_LIBS=$LIBS
-           LIBS="$LIBS $POPPLER_LIBS"
-           AC_CHECK_FUNCS(poppler_page_render)
-           AC_CHECK_FUNCS(poppler_page_get_image)
-           LIBS=$evince_save_LIBS
-
            PKG_CHECK_MODULES(CAIRO_PDF, cairo-pdf, enable_cairo_pdf=yes, enable_cairo_pdf=no)
            if test x$enable_cairo_pdf = xyes; then
                    AC_DEFINE([HAVE_CAIRO_PDF], [1], [defined if cairo-pdf is available])
@@ -477,7 +468,7 @@ if test "x$enable_pdf" = "xyes"; then
                    AC_DEFINE([HAVE_CAIRO_PS], [1], [defined if cairo-ps is available])
             fi
     else
-           AC_MSG_WARN("PDF support is disabled since poppler-glib library version $POPPLER_REQUIRED or newer not found")
+           AC_MSG_ERROR("PDF support is disabled since poppler-glib library version $POPPLER_REQUIRED or newer not found")
     fi 
 fi
 
@@ -494,7 +485,10 @@ fi
 
 dnl ================== ps checks ====================================================
 AC_ARG_ENABLE(ps,
-       [AC_HELP_STRING([--disable-ps], [Compile without PostScript backend])],enable_ps=$enableval,enable_ps="yes")
+       [AS_HELP_STRING([--disable-ps],
+                       [Disable the PostScript backend])],
+       [enable_ps=$enableval],
+       [enable_ps=yes])
 
 if test "x$enable_ps" = "xyes"; then
    if test "x$have_spectre" = "xyes"; then
@@ -509,7 +503,10 @@ dnl ======================== End of ps checks ==================================
 
 dnl ================== tiff checks ===================================================
 AC_ARG_ENABLE(tiff,
-            [AC_HELP_STRING([--enable-tiff], [Compile with support of multipage tiff])],enable_tiff="$enableval",enable_tiff=yes)
+            [AS_HELP_STRING([--disable-tiff],
+                           [Disable the support of multipage tiff])],
+           [enable_tiff=$enableval],
+           [enable_tiff=yes])
 
 if test "x$enable_tiff" = "xyes"; then
     AC_CHECK_HEADERS([tiff.h],enable_tiff=yes,enable_tiff=no,)
@@ -530,7 +527,10 @@ dnl ================== end of tiff checks ======================================
 dnl ================== djvu checks ===================================================
 
 AC_ARG_ENABLE(djvu,
-            [AC_HELP_STRING([--enable-djvu], [Compile with support of djvu viewer])],enable_djvu="$enableval",enable_djvu=yes)
+            [AS_HELP_STRING([--disable-djvu],
+                           [Disable the support of djvu viewer])],
+           [enable_djvu=$enableval],
+           [enable_djvu=yes])
 
 if test "x$enable_djvu" = "xyes"; then
     DJVULIBRE_REQUIRED=3.5.17
@@ -554,10 +554,16 @@ dnl ================== End of djvu checks ======================================
 dnl ================== dvi checks ===================================================
 
 AC_ARG_ENABLE(dvi,
-            [AC_HELP_STRING([--enable-dvi], [Compile with support of dvi viewer])],enable_dvi="$enableval",enable_dvi=yes)
+            [AS_HELP_STRING([--disable-dvi],
+           [Disable the support of dvi viewer])],
+           [enable_dvi=$enableval],
+           [enable_dvi=yes])
 
 AC_ARG_ENABLE(t1lib,
-            [AC_HELP_STRING([--enable-t1lib], [Compile with support of t1lib for type1 fonts in dvi])],enable_type1_fonts="$enableval",enable_type1_fonts=no)
+            [AS_HELP_STRING([--enable-t1lib],
+                           [Compile with support of t1lib for type1 fonts in dvi])],
+           [enable_type1_fonts=$enableval],
+           [enable_type1_fonts=no])
 
 if test "x$enable_dvi" = "xyes"; then
     AC_C_CONST
@@ -592,51 +598,49 @@ AM_CONDITIONAL(WITH_TYPE1_FONTS, test x$enable_type1_fonts = xyes)
 
 dnl ================== End of dvi checks ===================================================
 
-dnl ================== pixbuf checks ===================================================
-
-AC_ARG_ENABLE(pixbuf,
-            [AC_HELP_STRING([--enable-pixbuf], [Compile with support of pixbuf])],enable_pixbuf="$enableval",enable_pixbuf=no)
-if test "x$enable_pixbuf" = "xyes"; then
-       AC_DEFINE([ENABLE_PIXBUF], [1], [Enable pixbuf support.])
-fi
-AM_CONDITIONAL(ENABLE_PIXBUF, test x$enable_pixbuf = xyes)
-
-dnl ================== End of pixbuf checks ===================================================
-
 dnl ================== comic book checks ===================================================
  
 AC_ARG_ENABLE(comics,
-       [AC_HELP_STRING([--enable-comics], [Compile with support for comic book archives])],enable_comics="$enableval",enable_comics=yes)
+       [AS_HELP_STRING([--enable-comics],
+                       [Compile with support for comic book archives])],
+       [enable_comics=$enableval],
+       [enable_comics=yes])
+       
 if test "x$enable_comics" = "xyes"; then
-       if test "x$os_win32" = "xyes"; then
-               # The comics backend is disabled on windows because:
-               # 1) it uses unix functions from sys/wait.h.
-               # 2) it uses external decompression tools not generally available on windows.
-               enable_comics=no
-               AC_MSG_WARN(The comics backend is not supported on windows.)
-       else
-               AC_DEFINE([ENABLE_COMICS], [1], [Enable support for comics.])
-       fi
-fi 
+       AC_DEFINE([ENABLE_COMICS], [1], [Enable support for comics.])
+fi
 AM_CONDITIONAL(ENABLE_COMICS, test x$enable_comics = xyes)
 
 dnl ================== End of comic book checks ============================================
 
-dnl ================== impress book checks ===================================================
+dnl ================== XPS checks ===================================================
+
+AC_ARG_ENABLE(xps,
+       [AS_HELP_STRING([--enable-xps],
+                       [Compile with support for XPS documents.])],
+       [enable_xps=$enableval],
+       [enable_xps=yes])
 
-AC_ARG_ENABLE(impress,
-       [AC_HELP_STRING([--enable-impress], [Compile with support for impress presentations])],enable_impress="$enableval",enable_impress=no)
-if test "x$enable_impress" = "xyes"; then
-       AC_DEFINE([ENABLE_IMPRESS], [1], [Enable support for impress.])
-fi 
-AM_CONDITIONAL(ENABLE_IMPRESS, test x$enable_impress = xyes)
+if test "x$enable_xps" = "xyes"; then
+   GXPS_REQUIRED=0.0.1
+   PKG_CHECK_MODULES(GXPS, libgxps >= $GXPS_REQUIRED,enable_xps=yes,enable_xps=no)
 
-dnl ================== End of impress book checks ============================================
+   if test "x$enable_xps" = "xyes"; then
+      AC_DEFINE([ENABLE_XPS], [1], [Enable support for XPS documents.])
+   else
+      enable_xps="no"
+      AC_MSG_WARN(["XPS support is disabled since libgxps (version >= $GXPS_REQUIRED) is needed])
+   fi
+fi
+
+AM_CONDITIONAL(ENABLE_XPS, test x$enable_xps = xyes)
+
+dnl ================== End of XPS checks ===================================================
 
 dnl =================== Mime types list ====================================================
 
 if test "x$enable_pdf" = "xyes" ; then
-       EVINCE_MIME_TYPES="application/pdf;application/x-bzpdf;application/x-gzpdf;"
+       EVINCE_MIME_TYPES="application/pdf;application/x-bzpdf;application/x-gzpdf;application/x-xzpdf;"
 fi
 if test "x$enable_ps" = "xyes" ; then
        EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/postscript;application/x-bzpostscript;application/x-gzpostscript;image/x-eps;image/x-bzeps;image/x-gzeps;"
@@ -651,30 +655,69 @@ if test "x$enable_tiff" = "xyes"; then
        EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/tiff;"
 fi
 if test "x$enable_comics" = "xyes"; then
-       EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/x-cbr;application/x-cbz;application/x-cb7;"
-fi
-if test "x$enable_pixbuf" = "xyes"; then
-       EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/*;"
+       EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/x-cbr;application/x-cbz;application/x-cb7;application/x-cbt;"
 fi
-if test "x$enable_impress" = "xyes"; then
-       EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/vnd.sun.xml.impress;application/vnd.oasis.opendocument.presentation;"
+if test "x$enable_xps" = "xyes"; then
+       EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/oxps;application/vnd.ms-xpsdocument;"
 fi
 AC_SUBST(EVINCE_MIME_TYPES)
 
 AC_CHECK_FUNC(localtime_r, AC_DEFINE(HAVE_LOCALTIME_R, 1, [Defines if localtime_r is available on your system]))
 
+# *****************
+# Help files
+# *****************
+
+GNOME_DOC_INIT([], gnome_doc_utils=yes, gnome_doc_utils=no)
+
+AC_ARG_ENABLE(help,
+    [AS_HELP_STRING([--disable-help], [Disable offline help files])],
+    [enable_help=$enableval],
+    [enable_help=yes])
+
+if test "x$enable_help" = "xyes" && test "x$os_win32" = "xyes" ; then
+    AC_MSG_WARN([Offline help is disabled (not implemented on Windows).])
+    enable_help=no
+fi
+
+if test "x$enable_help" = "xyes" && test "x$gnome_doc_utils" == "xno"; then
+    AC_MSG_ERROR(
+       [gnome-doc-utils not found; use --disable-help to disable help files]
+    )
+fi
+
+if test "x$enable_help" = "xyes"; then
+    AC_DEFINE([OFFLINE_HELP_ENABLED], [1], [Enable offline help])
+fi
+
+AM_CONDITIONAL(ENABLE_HELP, test "x$enable_help" = "xyes")
+
+# *****************
+# API documentation
+# *****************
+
+GTK_DOC_CHECK([1.13],[--flavour no-tmpl])
+
+AC_SUBST([GLIB_PREFIX],[$($PKG_CONFIG --variable=prefix glib-2.0)])
+AC_SUBST([GTK_PREFIX],[$($PKG_CONFIG --variable=prefix gtk+-3.0)])
+
+# ******************
 # Backends directory
+# ******************
 
 AC_SUBST([backenddir],"\$(libdir)/evince/ev_binary_version/backends")
 AC_SUBST([backend_binary_version],"ev_binary_version")
 
+# **********
 # Versioning
+# **********
 
 AC_SUBST([EV_MAJOR_VERSION],[ev_major_version])
 AC_SUBST([EV_MINOR_VERSION],[ev_minor_version])
 AC_SUBST([EV_MICRO_VERSION],[ev_micro_version])
 
 AC_SUBST([EV_API_VERSION],[ev_api_version])
+AC_SUBST([EV_API_VERSION_U],[AS_TR_SH([ev_api_version])])
 AC_SUBST([EV_BINARY_VERSION],[ev_binary_version])
 
 AC_SUBST([EV_DOCUMENT_LT_VERSION_INFO],[ev_document_lt_version_info])
@@ -682,6 +725,7 @@ AC_SUBST([EV_DOCUMENT_LT_CURRENT_MINUS_AGE],[ev_document_lt_current_minus_age])
 AC_SUBST([EV_VIEW_LT_VERSION_INFO],[ev_view_lt_version_info])
 AC_SUBST([EV_VIEW_LT_CURRENT_MINUS_AGE],[ev_view_lt_current_minus_age])
 
+# *****************************************************************************
 # *****************************************************************************
 
 AC_CONFIG_FILES([
@@ -690,37 +734,43 @@ backend/comics/Makefile
 backend/djvu/Makefile
 backend/dvi/Makefile
 backend/dvi/mdvi-lib/Makefile
-backend/impress/Makefile
 backend/pdf/Makefile
-backend/pixbuf/Makefile
 backend/ps/Makefile
 backend/tiff/Makefile
+backend/xps/Makefile
 cut-n-paste/Makefile
-cut-n-paste/evinfobar/Makefile
 cut-n-paste/gimpcellrenderertoggle/Makefile
 cut-n-paste/smclient/Makefile
 cut-n-paste/toolbar-editor/Makefile
 cut-n-paste/zoom-control/Makefile
 cut-n-paste/totem-screensaver/Makefile
+cut-n-paste/synctex/Makefile
 data/evince.desktop.in
 data/Makefile
 data/icons/Makefile
 data/icons/16x16/Makefile
 data/icons/16x16/apps/Makefile
 data/icons/16x16/actions/Makefile
+data/icons/16x16/mimetypes/Makefile
 data/icons/22x22/Makefile
 data/icons/22x22/apps/Makefile
 data/icons/22x22/actions/Makefile
+data/icons/22x22/mimetypes/Makefile
 data/icons/24x24/Makefile
 data/icons/24x24/apps/Makefile
 data/icons/24x24/actions/Makefile
+data/icons/24x24/mimetypes/Makefile
 data/icons/32x32/Makefile
 data/icons/32x32/actions/Makefile
+data/icons/32x32/mimetypes/Makefile
 data/icons/48x48/Makefile
 data/icons/48x48/apps/Makefile
 data/icons/48x48/actions/Makefile
+data/icons/256x256/Makefile
+data/icons/256x256/apps/Makefile
 data/icons/scalable/Makefile
-data/icons/scalable/apps/Makefile
+data/icons/scalable/actions/Makefile
+data/icons/scalable/mimetypes/Makefile
 help/Makefile
 help/reference/Makefile
 help/reference/libdocument/Makefile
@@ -750,11 +800,11 @@ AC_OUTPUT
 echo "
 Configure summary:
         Platform...........:  $with_platform
-        GConf Support......:  $with_gconf
        GTK+ Unix Print....:  $with_gtk_unix_print
        Keyring Support....:  $with_keyring
        DBUS Support.......:  $enable_dbus
        SM client support..:  $with_smclient
+       Help files.........:  $enable_help
        Nautilus Plugin....:  $enable_nautilus
        Thumbnailer........:  $enable_thumbnailer
        Previewer..........:  $enable_previewer
@@ -768,7 +818,6 @@ Configure summary:
        TIFF Backend.......:  $enable_tiff
        DJVU Backend.......:  $enable_djvu
        DVI Backend........:  $enable_dvi
-       Pixbuf Backend.....:  $enable_pixbuf
        Comics Backend.....:  $enable_comics
-       Impress Backend....:  $enable_impress
+       XPS Backend........:  $enable_xps
 "