]> www.fi.muni.cz Git - evince.git/blobdiff - configure.ac
[release] 2.31.6.1
[evince.git] / configure.ac
index 3a3915862261a32c54f2a6852cd63f98c81fbf56..245d1798dfab383c4670bfd2ed6372edb3085e98 100644 (file)
@@ -4,9 +4,9 @@
 
 m4_define([ev_major_version],[2])
 m4_define([ev_minor_version],[31])
-m4_define([ev_micro_version],[1])
-m4_define([ev_extra_version],[])
-m4_define([ev_version],[ev_major_version.ev_minor_version.ev_micro_version()ev_extra_version])
+m4_define([ev_micro_version],[6])
+m4_define([ev_extra_version],[1])
+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.30])
@@ -121,12 +121,32 @@ fi
 AM_CONDITIONAL([PLATFORM_HILDON],[test "$with_platform" = "hildon"])
 AM_CONDITIONAL([PLATFORM_WIN32],[test "$with_platform" = "win32"])
 
+AC_MSG_CHECKING([which gtk+ version to compile against])
+AC_ARG_WITH([gtk],
+  [AS_HELP_STRING([--with-gtk=2.0|3.0],[which gtk+ version to compile against (default: 2.0)])],
+  [case "$with_gtk" in
+     2.0|3.0) ;;
+     *) AC_MSG_ERROR([invalid gtk version specified]) ;;
+   esac],
+  [with_gtk=2.0])
+AC_MSG_RESULT([$with_gtk])
+
 dnl Specify required versions of dependencies
-DBUS_GLIB_REQUIRED=0.70
-GTK_REQUIRED=2.20.0
-GLIB_REQUIRED=2.25.3
+CAIRO_REQUIRED=1.9.10
+GLIB_REQUIRED=2.25.11
 KEYRING_REQUIRED=2.22.0
-GCONF_REQUIRED=2.31.2
+
+case "$with_gtk" in
+  2.0) GTK_API_VERSION=2.0
+       GAIL_API_VERSION=
+       GTK_REQUIRED=2.21.5
+       ;;
+  3.0) GTK_API_VERSION=3.0
+       GAIL_API_VERSION=-3.0
+       GTK_REQUIRED=2.90.5
+       ;;
+esac
+
 AC_SUBST([GLIB_REQUIRED])
 AC_SUBST([GTK_REQUIRED])
 
@@ -142,11 +162,11 @@ 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+-$GTK_API_VERSION >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED)
+PKG_CHECK_MODULES(LIBVIEW, gtk+-$GTK_API_VERSION >= $GTK_REQUIRED gail$GAIL_API_VERSION >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
+PKG_CHECK_MODULES(BACKEND, cairo >= $CAIRO_REQUIRED gtk+-$GTK_API_VERSION >= $GTK_REQUIRED)
+PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-$GTK_API_VERSION >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
 
 SHELL_PLATFORM_PKGS=
 case "$with_platform" in
@@ -172,13 +192,13 @@ case "$with_platform" in
         ;;
 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+-$GTK_API_VERSION >= $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-$GTK_API_VERSION)"
 
 AC_MSG_CHECKING([which smclient backend to use])
 AC_ARG_WITH([smclient],
@@ -204,7 +224,7 @@ if test "$with_smclient" != "no"; then
     *) SMCLIENT_PKGS="" ;;
   esac
 
-  PKG_CHECK_MODULES([SMCLIENT],[gtk+-2.0 gthread-2.0 $SMCLIENT_PKGS])
+  PKG_CHECK_MODULES([SMCLIENT],[gtk+-$GTK_API_VERSION gthread-2.0 $SMCLIENT_PKGS])
   AC_SUBST([SMCLIENT_CFLAGS])
   AC_SUBST([SMCLIENT_LIBS])
 fi
@@ -241,7 +261,7 @@ AC_ARG_WITH([gtk-unix-print],
 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-$GTK_API_VERSION >= $GTK_REQUIRED])
    AC_DEFINE([GTKUNIXPRINT_ENABLED], [1], [Define if gtk+-unix-print is enabled.])
 fi
 
@@ -278,24 +298,18 @@ 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])
+   PKG_CHECK_MODULES([EV_DAEMON], [gio-2.0 >= $GLIB_REQUIRED])
+fi
 
 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])
+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 ========= Check for GConf
@@ -314,7 +328,7 @@ 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 >= $GCONF_REQUIRED])
+   PKG_CHECK_MODULES([GCONF],[gconf-2.0])
    AC_DEFINE([WITH_GCONF],[1],[Define if GConf support is enabled])
 
    AM_GCONF_SOURCE_2
@@ -361,8 +375,8 @@ BACKEND_LIBS="$BACKEND_LIBS -lm"
 AC_SUBST(BACKEND_CFLAGS)
 AC_SUBST(BACKEND_LIBS)
 
-SHELL_CFLAGS="$SHELL_CORE_CFLAGS $DBUS_CFLAGS $KEYRING_CFLAGS $GCONF_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
-SHELL_LIBS="$SHELL_CORE_LIBS $DBUS_LIBS $KEYRING_LIBS $GCONF_LIBS -lz -lm"
+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)
 
@@ -386,7 +400,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-$GTK_API_VERSION $MM gthread-2.0 libnautilus-extension],
                     [],[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])
@@ -405,8 +419,8 @@ AC_ARG_ENABLE([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"])
@@ -420,12 +434,12 @@ AC_ARG_ENABLE([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+-$GTK_API_VERSION >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED])
 fi
 
 AM_CONDITIONAL([ENABLE_PREVIEWER],[test "$enable_previewer" = "yes"])
@@ -488,17 +502,16 @@ AC_ARG_ENABLE([pdf],
   [enable_pdf=yes])
 
 if test "x$enable_pdf" = "xyes"; then
-    POPPLER_REQUIRED=0.12.0
+    POPPLER_REQUIRED=0.14.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
            evince_save_LIBS=$LIBS
            LIBS="$LIBS $POPPLER_LIBS"
-           AC_CHECK_FUNCS(poppler_page_render)
-           AC_CHECK_FUNCS(poppler_page_get_image)
-           AC_CHECK_FUNCS(poppler_annot_file_attachment_get_attachment)
+           AC_CHECK_FUNCS(poppler_page_get_text_layout)
+           AC_CHECK_FUNCS(poppler_page_get_selected_text)
+           AC_CHECK_FUNCS(poppler_page_add_annot)
            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])
@@ -750,7 +763,7 @@ AM_CONDITIONAL(ENABLE_HELP, test "x$enable_help" = "xyes")
 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+-2.0)])
+AC_SUBST([GTK_PREFIX],[$($PKG_CONFIG --variable=prefix gtk+-$GTK_API_VERSION)])
 
 # ******************
 # Backends directory
@@ -768,6 +781,7 @@ 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])
@@ -795,6 +809,7 @@ 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
@@ -849,6 +864,7 @@ AC_OUTPUT
 echo "
 Configure summary:
         Platform...........:  $with_platform
+        GTK+ version.......:  $with_gtk
         GConf Support......:  $with_gconf
        GTK+ Unix Print....:  $with_gtk_unix_print
        Keyring Support....:  $with_keyring