]> www.fi.muni.cz Git - evince.git/blobdiff - configure.ac
Add --with-platform configure switch
[evince.git] / configure.ac
index d1f1ed7e6587c82862fff4b215d3352ffa76a735..3d80da6cb980d80431da271919cf669e68079f00 100644 (file)
@@ -41,12 +41,15 @@ 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])
 
 AC_PREREQ([2.57])
 AC_INIT([Evince],[ev_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=evince],[evince])
-AM_INIT_AUTOMAKE([1.9 dist-bzip2 no-dist-gzip])
+AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip])
 
 
-AM_CONFIG_HEADER(config.h)
-AC_CONFIG_MACRO_DIR(m4)
+AC_CONFIG_HEADERS([config.h])
+AC_CONFIG_MACRO_DIR([m4])
 
 
-AM_MAINTAINER_MODE
+if test -z "$enable_maintainer_mode"; then
+  enable_maintainer_mode=yes
+fi
+AM_MAINTAINER_MODE([enable])
 
 AM_PROG_LIBTOOL
 
 
 AM_PROG_LIBTOOL
 
@@ -73,43 +76,42 @@ AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
 AM_GLIB_GNU_GETTEXT
 
 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
 AM_GLIB_GNU_GETTEXT
 
-dnl check for win32 platform
-AC_MSG_CHECKING([for Win32 platform])
-case "$host" in
-  *-*-mingw*|*-*-cygwin*)
-    platform_win32=yes
-    AC_CHECK_TOOL(WINDRES, windres)
-    ;;
-  *)
-    platform_win32=no
-    ;;
-esac
-AC_MSG_RESULT([$platform_win32])
-AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
-
-AC_MSG_CHECKING([for native Win32])
-case "$host" in
-  *-*-mingw*)
-    os_win32=yes
-    ;;
-  *)
-    os_win32=no
-    ;;
-esac
-AC_MSG_RESULT([$os_win32])
-AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
+# 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)])],
+  [case "$withval" in
+    gnome|win32|hildon) ;;
+    *) AC_MSG_ERROR([invalid argument "$withval" for --with-platform]) ;;
+   esac],
+  [case "$host" in
+     *-*-mingw*|*-*-cygwin*) with_platform="win32" ;;
+     *) with_platform=gnome ;;
+   esac])
+
+AC_MSG_RESULT([$with_platform])
+
+if test "$with_platform" = "win32"; then
+  AC_CHECK_TOOL([WINDRES],[windres])
+  AC_MSG_CHECKING([for native Win32])
+  case "$host" in
+    *-*-mingw*)
+      os_win32=yes
+      ;;
+    *)
+      os_win32=no
+      ;;
+  esac
+  AC_MSG_RESULT([$os_win32])
+fi
 
 
-dnl Check dependencies
-
-# LIB_CFLAGS       for helpers and generic widgets. (libdocument, cut-and-paste)
-# BACKEND_CFLAGS   for backend implementations.
-# FRONTEND_CFLAGS  for frontend implementations. (properties, thumbnailer)
-# FRONTEND_LIBS
-# SHELL_CFLAGS     for shell implementation.
-# SHELL_LIBS
+AM_CONDITIONAL([PLATFORM_WIN32],[test "with_platform" = "win32"])
+AM_CONDITIONAL([OS_WIN32],[test "$os_win32" = "yes"])
 
 
+dnl Specify required versions of dependencies
 DBUS_GLIB_REQUIRED=0.70
 DBUS_GLIB_REQUIRED=0.70
-GTK_REQUIRED=2.14.0
+GTK_REQUIRED=2.12.0
 GLIB_REQUIRED=2.18.0
 KEYRING_REQUIRED=2.22.0
 AC_SUBST([GLIB_REQUIRED])
 GLIB_REQUIRED=2.18.0
 KEYRING_REQUIRED=2.22.0
 AC_SUBST([GLIB_REQUIRED])
@@ -118,12 +120,21 @@ AC_SUBST([GTK_REQUIRED])
 GNOME_ICON_THEME_REQUIRED=2.17.1
 LIBXML_REQUIRED=2.5.0
 
 GNOME_ICON_THEME_REQUIRED=2.17.1
 LIBXML_REQUIRED=2.5.0
 
+dnl Check dependencies
+
+# LIB_CFLAGS       for helpers and generic widgets. (libdocument, cut-and-paste)
+# BACKEND_CFLAGS   for backend implementations.
+# FRONTEND_CFLAGS  for frontend implementations. (properties, thumbnailer)
+# FRONTEND_LIBS
+# 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(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 gtk+-unix-print-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
-PKG_CHECK_MODULES(SHELL_CORE, libxml-2.0 >= $LIBXML_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gtk+-unix-print-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED gthread-2.0)
+PKG_CHECK_MODULES(PREVIEWER, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
+PKG_CHECK_MODULES(SHELL_CORE, libxml-2.0 >= $LIBXML_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED gthread-2.0)
 
 if test "$os_win32" = no; then
        PKG_CHECK_MODULES(SMCLIENT, gtk+-2.0 gthread-2.0 sm >= 1.0.0)
 
 if test "$os_win32" = no; then
        PKG_CHECK_MODULES(SMCLIENT, gtk+-2.0 gthread-2.0 sm >= 1.0.0)
@@ -143,18 +154,39 @@ LIBS="$LIBS $BACKEND_LIBS"
 AC_CHECK_FUNCS(cairo_format_stride_for_width)
 LIBS=$evince_save_LIBS
 
 AC_CHECK_FUNCS(cairo_format_stride_for_width)
 LIBS=$evince_save_LIBS
 
-dnl ========= Check for Keyring
+# ******************
+# GKT+ Unix Printing
+# ******************
+
+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])],
+  [],[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])
+   AC_DEFINE([GTKUNIXPRINT_ENABLED], [1], [Define if gtk+-unix-print is enabled.])
+fi
+
+# *********************
+# GNOME Keyring support
+# *********************
+
 AC_ARG_WITH(keyring,
 AC_ARG_WITH(keyring,
-        AC_HELP_STRING([--without-keyring],[disable the use of gnome-keyring]),
-       [case "${withval}" in
-       yes) WITH_KEYRING=yes ;;
-       no) WITH_KEYRING=no ;;
-       *) AC_MSG_ERROR(bad value ${withval} for --with-keyring) ;;
-       esac],
-       [WITH_KEYRING=yes]) dnl Default value
-AM_CONDITIONAL(WITH_KEYRING, test x$WITH_KEYRING = "xyes")
-
-if test x$WITH_KEYRING = "xyes"; then
+        [AS_HELP_STRING([--without-keyring],[disable the use of gnome-keyring])],
+        [],
+        [case "$with_platform" in
+           gnome) with_keyring=yes ;;
+           hildon|win32) with_keyring=no ;;
+         esac])
+
+AM_CONDITIONAL([WITH_KEYRING],[test "$with_keyring" = "yes"])
+
+if test "$with_keyring" = "yes"; then
         PKG_CHECK_MODULES(KEYRING, gnome-keyring-1 >= $KEYRING_REQUIRED)
         AC_DEFINE([WITH_KEYRING],[1],[Define if KEYRING support is enabled])
 fi
         PKG_CHECK_MODULES(KEYRING, gnome-keyring-1 >= $KEYRING_REQUIRED)
         AC_DEFINE([WITH_KEYRING],[1],[Define if KEYRING support is enabled])
 fi
@@ -196,7 +228,11 @@ 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])],
 AC_MSG_CHECKING([whether GConf support is requested])
 AC_ARG_WITH([gconf],
   [AS_HELP_STRING([--without-gconf],[disable the use of gconf])],
-  [],[with_gconf=yes])
+  [],
+  [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"])
 AC_MSG_RESULT([$with_gconf])
 
 AM_CONDITIONAL([WITH_GCONF],[test "$with_gconf" = "yes"])
@@ -239,8 +275,8 @@ BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG
 AC_SUBST(BACKEND_CFLAGS)
 AC_SUBST(BACKEND_LIBS)
 
 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"
+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"
 AC_SUBST(SHELL_CFLAGS)
 AC_SUBST(SHELL_LIBS)
 
 AC_SUBST(SHELL_CFLAGS)
 AC_SUBST(SHELL_LIBS)
 
@@ -249,17 +285,16 @@ FRONTEND_LIBS="$FRONTEND_CORE_LIBS -lz"
 AC_SUBST(FRONTEND_CFLAGS)
 AC_SUBST(FRONTEND_LIBS)
 
 AC_SUBST(FRONTEND_CFLAGS)
 AC_SUBST(FRONTEND_LIBS)
 
-dnl Check for Nautilus property page build
+# Check for Nautilus property page build
 AC_ARG_ENABLE(nautilus,
 AC_ARG_ENABLE(nautilus,
-       AC_HELP_STRING([--enable-nautilus],[compile the nautilus plugin]),
-       [case "${enableval}" in
-       yes) ENABLE_NAUTILUS=yes ;;
-       no) ENABLE_NAUTILUS=no ;;
-       *) AC_MSG_ERROR(bad value ${enableval} for --enable-nautilus) ;;
-       esac],
-       [ENABLE_NAUTILUS=yes]) dnl Default value
-
-if test x$ENABLE_NAUTILUS = "xyes" ; then
+       [AS_HELP_STRING([--enable-nautilus],[compile the nautilus plugin])],
+       [],
+       [case "$with_platform" in
+           gnome) enable_nautilus=yes ;;
+           hildon) enable_nautilus=no ;;
+         esac])
+
+if test x$enable_nautilus = "xyes" ; then
        PKG_CHECK_MODULES(NAUTILUS, gtk+-x11-2.0 $MM gthread-2.0 libnautilus-extension,
                        [HAVE_NAUTILUS=yes], [HAVE_NAUTILUS=no])
        NAUTILUS_EXTENSION_DIR=`$PKG_CONFIG --variable=extensiondir libnautilus-extension`
        PKG_CHECK_MODULES(NAUTILUS, gtk+-x11-2.0 $MM gthread-2.0 libnautilus-extension,
                        [HAVE_NAUTILUS=yes], [HAVE_NAUTILUS=no])
        NAUTILUS_EXTENSION_DIR=`$PKG_CONFIG --variable=extensiondir libnautilus-extension`
@@ -276,34 +311,34 @@ AM_CONDITIONAL(HAVE_NAUTILUS, test x$HAVE_NAUTILUS = "xyes")
 
 dnl Check for thumbnailer build
 AC_ARG_ENABLE(thumbnailer,
 
 dnl Check for thumbnailer build
 AC_ARG_ENABLE(thumbnailer,
-        AC_HELP_STRING([--disable-thumbnailer],[disable the GNOME thumbnailer]),
-       [case "${enableval}" in
-       yes) ENABLE_THUMBNAILER=yes ;;
-       no) ENABLE_THUMBNAILER=no ;;
-       *) AC_MSG_ERROR(bad value ${enableval} for --enable-thumbnailer) ;;
-       esac],
-       [ENABLE_THUMBNAILER=yes]) dnl Default value
-AM_CONDITIONAL(ENABLE_THUMBNAILER, test x$ENABLE_THUMBNAILER = "xyes")
+        [AS_HELP_STRING([--disable-thumbnailer],[disable the GNOME thumbnailer])],
+       [],
+       [case "$with_platform" in
+           gnome) enable_thumbnailer=yes ;;
+           hildon) enable_thumbnailer=no ;;
+         esac])
+
+AM_CONDITIONAL(ENABLE_THUMBNAILER, test x$enable_thumbnailer = "xyes")
 
 dnl Check for previewer build
 
 dnl Check for previewer build
-AC_ARG_ENABLE(previewer,
-       AC_HELP_STRING([--disable-previewer],[disable the GNOME Document Previewer]),
-       [case "${enableval}" in
-       yes) ENABLE_PREVIEWER=yes ;;
-       no) ENABLE_PREVIEWER=no ;;
-       *) AC_MSG_ERROR(bad value ${enableval} for --enable-previewer) ;;
-       esac],
-       [ENABLE_PREVIEWER=yes]) dnl Default value
-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,
-                    [ENABLE_PREVIEWER=yes],[ENABLE_PREVIEWER=no])
-   if test x$ENABLE_PREVIEWER = "xno" ; then
+AC_ARG_ENABLE([previewer],
+       [AS_HELP_STRING([--disable-previewer],[disable the GNOME Document Previewer])],
+       [],
+       [case "$with_platform" in
+           gnome) enable_previewer=yes ;;
+           *) enable_previewer=no ;;
+         esac])
+
+if test "$enable_previewer" = "yes" ; then
+   PKG_CHECK_MODULES(PREVIEWER, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED,
+                    [enable_previewer=yes],[enable_previewer=no])
+   if test x$enable_previewer = "xno" ; then
       AC_MSG_WARN([Previewer support is disabled since gtk+-unix-print $GTK_REQUIRED or higher was not found])
    fi
 fi
       AC_MSG_WARN([Previewer support is disabled since gtk+-unix-print $GTK_REQUIRED or higher was not found])
    fi
 fi
-AM_CONDITIONAL(ENABLE_PREVIEWER, test x$ENABLE_PREVIEWER = "xyes")
-PREVIEWER_CFLAGS="$PREVIEWER_CFLAGS $DEBUG_FLAGS"
-PREVIEWER_LIBS="$PREVIEWER_LIBS -lz"
+AM_CONDITIONAL([ENABLE_PREVIEWER],[test "$enable_previewer" = "yes"])
+PREVIEWER_CFLAGS="$PREVIEWER_CFLAGS $GTKUNIXPRINT_CFLAGS $DEBUG_FLAGS"
+PREVIEWER_LIBS="$PREVIEWER_LIBS $GTKUNIXPRINT_LIBS -lz"
 AC_SUBST(PREVIEWER_CFLAGS)
 AC_SUBST(PREVIEWER_LIBS)
 
 AC_SUBST(PREVIEWER_CFLAGS)
 AC_SUBST(PREVIEWER_LIBS)
 
@@ -569,6 +604,7 @@ AC_CHECK_FUNC(localtime_r, AC_DEFINE(HAVE_LOCALTIME_R, 1, [Defines if localtime_
 # Backends directory
 
 AC_SUBST([backenddir],"\$(libdir)/evince/ev_binary_version/backends")
 # Backends directory
 
 AC_SUBST([backenddir],"\$(libdir)/evince/ev_binary_version/backends")
+AC_SUBST([backend_binary_version],"ev_binary_version")
 
 # Versioning
 
 
 # Versioning
 
@@ -586,7 +622,7 @@ AC_SUBST([EV_VIEW_LT_CURRENT_MINUS_AGE],[ev_view_lt_current_minus_age])
 
 # *****************************************************************************
 
 
 # *****************************************************************************
 
-SHAVE_INIT([.], [enable])
+SHAVE_INIT([], [enable])
 
 AC_CONFIG_FILES([
 backend/Makefile
 
 AC_CONFIG_FILES([
 backend/Makefile
@@ -656,11 +692,12 @@ AC_OUTPUT
 echo "
 Configure summary:
         GConf Support......:  $with_gconf
 echo "
 Configure summary:
         GConf Support......:  $with_gconf
-       Keyring Support....:  $WITH_KEYRING
+       GTK+ Unix Print....:  $with_gtk_unix_print
+       Keyring Support....:  $with_keyring
        DBUS Support.......:  $enable_dbus
        Nautilus Plugin....:  $HAVE_NAUTILUS
        DBUS Support.......:  $enable_dbus
        Nautilus Plugin....:  $HAVE_NAUTILUS
-       Thumbnailer........:  $ENABLE_THUMBNAILER
-       Previewer..........:  $ENABLE_PREVIEWER
+       Thumbnailer........:  $enable_thumbnailer
+       Previewer..........:  $enable_previewer
        Gtk-Doc Support....:  $enable_gtk_doc
        Debug mode.........:  $enable_debug
        GObj. Introspection:  $enable_introspection
        Gtk-Doc Support....:  $enable_gtk_doc
        Debug mode.........:  $enable_debug
        GObj. Introspection:  $enable_introspection