m4_define([ev_major_version],[2])
m4_define([ev_minor_version],[27])
-m4_define([ev_micro_version],[1])
+m4_define([ev_micro_version],[3])
m4_define([ev_extra_version],[])
m4_define([ev_version],[ev_major_version.ev_minor_version.ev_micro_version()ev_extra_version])
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
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_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
+GTK_REQUIRED=2.12.0
GLIB_REQUIRED=2.18.0
KEYRING_REQUIRED=2.22.0
AC_SUBST([GLIB_REQUIRED])
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(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)
+
+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"
+ ;;
+esac
-if test "$os_win32" = no; then
- PKG_CHECK_MODULES(SMCLIENT, gtk+-2.0 gthread-2.0 sm >= 1.0.0)
-else
- PKG_CHECK_MODULES(SMCLIENT, gtk+-2.0 gthread-2.0)
+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])
+
+# *********
+# SM client
+# *********
+
+GDK_TARGET="$($PKG_CONFIG --variable target gdk-2.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)])],
+ [],
+ [case "$GDK_TARGET" in
+ x11) case "$with_platform" in
+ gnome) with_smclient=xsmp SMCLIENT_PKGS="sm >= 1.0.0" ;;
+ *) 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])
+ AC_SUBST([SMCLIENT_CFLAGS])
+ AC_SUBST([SMCLIENT_LIBS])
fi
-AC_SUBST(SMCLIENT_CFLAGS)
-AC_SUBST(SMCLIENT_LIBS)
+AM_CONDITIONAL([WITH_SMCLIENT],[test "$with_smclient" != "no"])
+AM_CONDITIONAL([WITH_SMCLIENT_XSMP],[test "$with_smclient" = "xsmp"])
+AM_CONDITIONAL([WITH_SMCLIENT_WIN32],[test "$with_smclient" = "win32"])
+AM_CONDITIONAL([WITH_SMCLIENT_QUARTZ],[test "$with_smclient" = "quartz"])
+
+# ***
BACKEND_LIBTOOL_FLAGS="-module -avoid-version -no-undefined -export-symbols \$(top_srcdir)/backend/backend.symbols"
AC_SUBST(BACKEND_LIBTOOL_FLAGS)
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_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
GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
AC_SUBST(GLIB_GENMARSHAL)
-dnl ========= Check for DBUS
-AC_ARG_ENABLE(dbus,
- [AC_HELP_STRING([--enable-dbus], [Compile with support for dbus])],
- enable_dbus="$enableval",enable_dbus=yes)
-if test "x$enable_dbus" != "xno"; then
- PKG_CHECK_MODULES([DBUS], [dbus-glib-1 >= $DBUS_GLIB_REQUIRED],
- [enable_dbus=yes],[enable_dbus=no])
+# ****
+# DBUS
+# ****
- if test "x$enable_dbus" = "xno"; then
- AC_MSG_WARN([DBUS support is disabled since dbus $DBUS_GLIB_REQUIRED or higher was not found])
- fi
+AC_ARG_ENABLE([dbus],
+ [AS_HELP_STRING([--enable-dbus], [Compile with support for dbus])],
+ [],
+ [case "$with_platform" in
+ gnome) enable_dbus=yes ;;
+ hildon) enable_dbus=no ;;
+ esac])
- if test "x$enable_dbus" = "xyes" ; then
- AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool], [no])
+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])])
- 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_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_DEFINE([ENABLE_DBUS],[1],[Define if DBUS support is enabled])
fi
AC_SUBST([DBUS_CFLAGS])
AC_SUBST([DBUS_LIBS])
-AM_CONDITIONAL([ENABLE_DBUS], [test "x$enable_dbus" = "xyes"])
-AM_CONDITIONAL([DBUS_TOOL_NO_PREFIX], [test "x$DBUS_VERSION" = "x33"])
+AM_CONDITIONAL([ENABLE_DBUS], [test "$enable_dbus" = "yes"])
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])],
- [],[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"])
if test "$with_gconf" = "yes"; then
PKG_CHECK_MODULES([GCONF],[gconf-2.0])
AC_DEFINE([WITH_GCONF],[1],[Define if GConf support is enabled])
-fi
-AM_GCONF_SOURCE_2
+ AM_GCONF_SOURCE_2
-AC_PATH_PROG([GCONFTOOL], [gconftool-2], [false])
-if test "$with_gconf" = "yes" -a "$GCONFTOOL" = "false"; then
- AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
+ 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
fi
dnl Debug mode
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(FRONTEND_CFLAGS)
AC_SUBST(FRONTEND_LIBS)
-dnl Check for Nautilus property page build
-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
- 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`
- AC_SUBST(NAUTILUS_EXTENSION_DIR)
+# Check for Nautilus property page build
+AC_ARG_ENABLE([nautilus],
+ [AS_HELP_STRING([--disable-nautilus],[Build the nautilus extensions])],
+ [],
+ [case "$with_platform" in
+ gnome) enable_nautilus=yes ;;
+ *) enable_nautilus=no ;;
+ esac])
+
+if test "$enable_nautilus" = "yes" ; then
+ PKG_CHECK_MODULES([NAUTILUS],[gtk+-x11-2.0 $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])
+ AC_SUBST(NAUTILUS_CFLAGS)
+ AC_SUBST(NAUTILUS_LIBS)
+
+ AC_DEFINE([HAVE_NAUTILUS],[1], [defined if you build the nautilus plugin])
fi
-AC_SUBST(NAUTILUS_CFLAGS)
-AC_SUBST(NAUTILUS_LIBS)
-if test x$HAVE_NAUTILUS = "xyes"; then
- AC_DEFINE(HAVE_NAUTILUS, 1, [defined if you build the nautilus plugin])
-fi
-AM_CONDITIONAL(HAVE_NAUTILUS, test x$HAVE_NAUTILUS = "xyes")
-
-
-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")
-
-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_MSG_WARN([Previewer support is disabled since gtk+-unix-print $GTK_REQUIRED or higher was not found])
- fi
+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])],
+ [],
+ [case "$with_platform" in
+ gnome) enable_thumbnailer=yes ;;
+ *) enable_thumbnailer=no ;;
+ esac])
+
+AM_CONDITIONAL([ENABLE_THUMBNAILER],[test "$enable_thumbnailer" = "yes"])
+
+# ***************
+# Print Previewer
+# ***************
+
+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 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])
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)
# Backends directory
AC_SUBST([backenddir],"\$(libdir)/evince/ev_binary_version/backends")
+AC_SUBST([backend_binary_version],"ev_binary_version")
# Versioning
# *****************************************************************************
-SHAVE_INIT([.], [enable])
+SHAVE_INIT([], [enable])
AC_CONFIG_FILES([
backend/Makefile
echo "
Configure summary:
+ Platform...........: $with_platform
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
- Thumbnailer........: $ENABLE_THUMBNAILER
- Previewer..........: $ENABLE_PREVIEWER
+ SM client support..: $with_smclient
+ Nautilus Plugin....: $enable_nautilus
+ Thumbnailer........: $enable_thumbnailer
+ Previewer..........: $enable_previewer
Gtk-Doc Support....: $enable_gtk_doc
Debug mode.........: $enable_debug
GObj. Introspection: $enable_introspection