-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.57)
-AC_INIT([Evince],[2.21.90],[http://bugzilla.gnome.org/enter_bug.cgi?product=evince],[evince])
+# *****************************************************************************
+# Versioning
+# *****************************************************************************
+
+m4_define([ev_major_version],[2])
+m4_define([ev_minor_version],[25])
+m4_define([ev_micro_version],[90])
+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.25])
+
+# Libtool versioning. The backend and view libraries have separate versions.
+# Before making a release, the libtool version should be modified.
+# The string is of the form C:R:A.
+# - If interfaces have been changed or added, but binary compatibility has
+# been preserved, change to C+1:0:A+1
+# - If binary compatibility has been broken (eg removed or changed interfaces)
+# change to C+1:0:0
+# - 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],[1])
+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],[1])
+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])
+m4_define([ev_view_lt_current_minus_age],[m4_eval(ev_view_lt_current - ev_view_lt_age)])
+
+# Binary version for the document backends
+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 dist-bzip2 no-dist-gzip])
-EV_API_VERSION=2.20
-AC_SUBST(EV_API_VERSION)
-
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
AC_ISC_POSIX
AC_PROG_CC
AM_PROG_CC_STDC
+AM_PROG_CC_C_O
AC_PROG_CXX
AC_STDC_HEADERS
IT_PROG_INTLTOOL([0.35.0])
GNOME_MAINTAINER_MODE_DEFINES
GNOME_COMPILE_WARNINGS
GNOME_CXX_WARNINGS
-GNOME_DEBUG_CHECK
GTK_DOC_CHECK(1.0)
# SHELL_LIBS
DBUS_GLIB_REQUIRED=0.70
-GTK_REQUIRED=2.10.0
-GLIB_REQUIRED=2.15.4
-KEYRING_REQUIRED=0.4.0
+GTK_REQUIRED=2.12.0
+GLIB_REQUIRED=2.18.0
+KEYRING_REQUIRED=2.22.0
+AC_SUBST([GLIB_REQUIRED])
+AC_SUBST([GTK_REQUIRED])
-LIBGNOMEUI_REQUIRED=2.14.0
-LIBGNOME_REQUIRED=2.14.0
-LIBGNOMEPRINTUI_REQUIRED=2.6.0
GNOME_ICON_THEME_REQUIRED=2.17.1
LIBXML_REQUIRED=2.5.0
-GTK_PRINT_REQUIRED=2.10.0
-
-PKG_CHECK_MODULES(LIB, gtk+-2.0 >= $GTK_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED 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 libglade-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 libglade-2.0 gconf-2.0)
+PKG_CHECK_MODULES(FRONTEND_CORE, 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 gtk+-unix-print-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED gthread-2.0 gconf-2.0)
-BACKEND_LIBTOOL_FLAGS="-module -avoid-version"
+PKG_CHECK_MODULES(SMCLIENT, gtk+-2.0 gthread-2.0)
+AC_SUBST(SMCLIENT_CFLAGS)
+AC_SUBST(SMCLIENT_LIBS)
+
+BACKEND_LIBTOOL_FLAGS="-module -avoid-version -export-symbols \$(top_srcdir)/backend/backend.symbols"
AC_SUBST(BACKEND_LIBTOOL_FLAGS)
+dnl ===== Check special functions
+evince_save_LIBS=$LIBS
+LIBS="$LIBS $BACKEND_LIBS"
+AC_CHECK_FUNCS(cairo_format_stride_for_width)
+LIBS=$evince_save_LIBS
+
AC_ARG_WITH(keyring,
AC_HELP_STRING([--without-keyring],[disable the use of gnome-keyring]),
[case "${withval}" in
AC_DEFINE([WITH_KEYRING],[1],[Define if KEYRING support is enabled])
fi
-AC_ARG_WITH(libgnome,
- AC_HELP_STRING([--without-libgnome],[disable the use of libgnome]),
- [case "${withval}" in
- yes) WITH_GNOME=yes ;;
- no) WITH_GNOME=no ;;
- *) AC_MSG_ERROR(bad value ${withval} for --with-libgnome) ;;
- esac],
- [WITH_GNOME=yes]) dnl Default value
-AM_CONDITIONAL(WITH_GNOME, test x$WITH_GNOME = "xyes")
-
-if test x$WITH_GNOME = "xyes"; then
- PKG_CHECK_MODULES(GNOME, libgnome-2.0 >= $LIBGNOME_REQUIRED)
- PKG_CHECK_MODULES(GNOMEUI, libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED)
- AC_DEFINE([WITH_GNOME],[1],[Define if GNOME support is enabled])
-fi
-
GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
AC_SUBST(GLIB_GENMARSHAL)
-dnl ========= Print support
-AC_ARG_WITH(print,
- [AC_HELP_STRING([--with-print=no/gtk/gnome/auto], [Compile with print support [default=auto]])],
- PRINT=$withval,
- PRINT="auto")
-
-PKG_CHECK_MODULES(GNOME_PRINT,
- libgnomeprintui-2.2 >= $LIBGNOMEPRINTUI_REQUIRED,
- enable_gnome_print=yes, enable_gnome_print=no)
-PKG_CHECK_MODULES(GTK_PRINT,
- gtk+-unix-print-2.0 >= $GTK_PRINT_REQUIRED,
- enable_gtk_print=yes, enable_gtk_print=no)
-enable_print=no
-if test x$PRINT = xgnome -a x$enable_gnome_print = xyes; then
- enable_print=gnome
-else
- if test x$PRINT = xgtk -a x$enable_gtk_print = xyes; then
- enable_print=gtk
- else
- if test x$PRINT = xauto; then
- if test x$enable_gtk_print = xyes; then
- enable_print=gtk
- else
- if test x$enable_gnome_print = xyes; then
- enable_print=gnome
- fi
- fi
- fi
- fi
-fi
+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])
-if test x$enable_print = xgnome; then
- AC_SUBST(GNOME_PRINT_CFLAGS)
- AC_SUBST(GNOME_PRINT_LIBS)
- AC_DEFINE([WITH_GNOME_PRINT],[1],[Enable GNOME Print Support.])
- AC_DEFINE([WITH_PRINT],[1],[Enable Print Support.])
-fi
+ 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
-if test x$enable_print = xgtk; then
- AC_SUBST(GTK_PRINT_CFLAGS)
- AC_SUBST(GTK_PRINT_LIBS)
- AC_DEFINE([WITH_GTK_PRINT],[1],[Enable GTK Print Support.])
- AC_DEFINE([WITH_PRINT],[1],[Enable Print Support.])
-fi
-
-AM_CONDITIONAL(WITH_GNOME_PRINT, test x$enable_print = xgnome)
-AM_CONDITIONAL(WITH_GTK_PRINT, test x$enable_print = xgtk)
+ if test "x$enable_dbus" = "xyes" ; then
+ 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
+fi
-dnl ========= Check for DBUS
-PKG_CHECK_MODULES([DBUS], [dbus-glib-1 >= $DBUS_GLIB_REQUIRED],
- [enable_dbus=yes],[enable_dbus=no])
AC_SUBST([DBUS_CFLAGS])
AC_SUBST([DBUS_LIBS])
-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
+AM_CONDITIONAL([ENABLE_DBUS], [test "x$enable_dbus" = "xyes"])
+AM_CONDITIONAL([DBUS_TOOL_NO_PREFIX], [test "x$DBUS_VERSION" = "x33"])
-if test "x$enable_dbus" = "xyes" ; then
- AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool], [no])
+dnl Debug mode
+AC_ARG_ENABLE([debug],
+ AC_HELP_STRING([--enable-debug],
+ [Turn on evince debug mode]),,
+ [enable_debug=no])
+
+if test "x$enable_debug" = "xyes"; then
+ DEBUG_FLAGS="-DEV_ENABLE_DEBUG"
+fi
- 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
+LIBDOCUMENT_CFLAGS="$LIBDOCUMENT_CFLAGS $DEBUG_FLAGS"
+LIBDOCUMENT_LIBS="$LIBDOCUMENT_LIBS"
+AC_SUBST(LIBDOCUMENT_CFLAGS)
+AC_SUBST(LIBDOCUMENT_LIBS)
-LIB_CFLAGS="$LIB_CFLAGS $GNOME_CFLAGS"
-LIB_LIBS="$LIB_LIBS $GNOME_LIBS"
-AC_SUBST(LIB_CFLAGS)
-AC_SUBST(LIB_LIBS)
+LIBVIEW_CFLAGS="$LIBVIEW_CFLAGS $DEBUG_FLAGS"
+LIBVIEW_LIBS="$LIBVIEW_LIBS"
+AC_SUBST(LIBVIEW_CFLAGS)
+AC_SUBST(LIBVIEW_LIBS)
-BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE"
+BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
AC_SUBST(BACKEND_CFLAGS)
AC_SUBST(BACKEND_LIBS)
-SHELL_CFLAGS="$SHELL_CORE_CFLAGS $DBUS_CFLAGS $GNOMEUI_CFLAGS $KEYRING_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE"
-SHELL_LIBS="$SHELL_CORE_LIBS $DBUS_LIBS $GNOMEUI_LIBS $KEYRING_LIBS -lz"
+SHELL_CFLAGS="$SHELL_CORE_CFLAGS $DBUS_CFLAGS $KEYRING_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
+SHELL_LIBS="$SHELL_CORE_LIBS $DBUS_LIBS $KEYRING_LIBS -lz"
AC_SUBST(SHELL_CFLAGS)
AC_SUBST(SHELL_LIBS)
-FRONTEND_CFLAGS="$FRONTEND_CORE_CFLAGS $GNOME_CFLAGS"
-FRONTEND_LIBS="$FRONTEND_CORE_LIBS $GNOME_LIBS -lz"
+FRONTEND_CFLAGS="$FRONTEND_CORE_CFLAGS $DEBUG_FLAGS"
+FRONTEND_LIBS="$FRONTEND_CORE_LIBS -lz"
AC_SUBST(FRONTEND_CFLAGS)
AC_SUBST(FRONTEND_LIBS)
-AM_CONDITIONAL([ENABLE_DBUS], [test "x$enable_dbus" = "xyes"])
-AM_CONDITIONAL([DBUS_TOOL_NO_PREFIX], [test "x$DBUS_VERSION" = "x33"])
-
dnl Check for Nautilus property page build
AC_ARG_ENABLE(nautilus,
AC_HELP_STRING([--enable-nautilus],[compile the nautilus plugin]),
[AC_HELP_STRING([--enable-pdf], [Compile with pdf support])],enable_pdf="$enableval",enable_pdf=yes)
if test "x$enable_pdf" = "xyes"; then
- POPPLER_REQUIRED=0.6
+ POPPLER_REQUIRED=0.8.0
PKG_CHECK_MODULES(POPPLER, poppler-glib >= $POPPLER_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_render_for_printing)
- AC_CHECK_FUNCS(poppler_page_get_image)
+ AC_CHECK_FUNCS(poppler_layers_iter_new)
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
+ if test x$enable_cairo_pdf = xyes; then
AC_DEFINE([HAVE_CAIRO_PDF], [1], [defined if cairo-pdf is available])
fi
PKG_CHECK_MODULES(CAIRO_PS, cairo-ps, enable_cairo_ps=yes, enable_cairo_ps=no)
- if test x$enable_cairo_ps == xyes; then
+ if test x$enable_cairo_ps = xyes; then
AC_DEFINE([HAVE_CAIRO_PS], [1], [defined if cairo-ps is available])
fi
else
AM_CONDITIONAL(ENABLE_PDF, test x$enable_pdf = xyes)
dnl ================== end of pdf checks ============================================
-SPECTRE_REQUIRED=0.2.0
dnl libspectre (used by ps and dvi backends)
+SPECTRE_REQUIRED=0.2.0
PKG_CHECK_MODULES(SPECTRE, libspectre >= $SPECTRE_REQUIRED,have_spectre=yes,have_spectre=no)
AM_CONDITIONAL(HAVE_SPECTRE, test x$have_spectre = xyes)
if test "x$have_spectre" = "xyes"; then
- AC_DEFINE([HAVE_SPECTRE], [1], [Have libpectre])
+ AC_DEFINE([HAVE_SPECTRE], [1], [Have libspectre])
fi
dnl ================== ps checks ====================================================
AC_ARG_ENABLE(ps,
[AC_HELP_STRING([--disable-ps], [Compile without PostScript backend])],enable_ps=$enableval,enable_ps="yes")
-ps_backend=""
-if test x$enable_ps = xyes; then
- AC_DEFINE([ENABLE_PS], [1], [Enable support for PostScript files.])
-
+if test "x$enable_ps" = "xyes"; then
if test "x$have_spectre" = "xyes"; then
- ps_backend="(libspectre)"
+ AC_DEFINE([ENABLE_PS], [1], [Enable support for PostScript files.])
else
- dnl check for GS version
- AC_MSG_CHECKING(for Ghostscript version...)
- GS_VERSION=`gs --version | head -n 1 | sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
- AC_MSG_RESULT(found $GS_VERSION)
- if test "$GS_VERSION" -lt "7"; then
- AC_MSG_WARN([PS support is disabled since libspectre (version >= $SPECTRE_REQUIRED) or Ghostscript (version >= 7) are needed])
- enable_ps=no
- else
- AC_ARG_WITH(gs-aa-params,
- [AC_HELP_STRING([--with-gs-aa-params], [Define antialiasing params for ghostscript])],AA_PARAMS=$withval,
- AA_PARMS="-sDEVICE=x11alpha -dNOPLATFONTS -dGraphicsAlphaBits=4 -dTextAlphaBits=4 -dDOINTERPOLATE"
- )
- AC_DEFINE_UNQUOTED(ALPHA_PARAMS, "$AA_PARMS", [Anti-aliasing parameters for Ghostscript.])
- AC_MSG_RESULT(Antialiasing parameters for Ghostscript: $AA_PARMS)
- ps_backend="(gs)"
- fi
+ enable_ps="no"
+ AC_MSG_WARN([PS support is disabled since libspectre (version >= $SPECTRE_REQUIRED) is needed])
fi
fi
AM_CONDITIONAL(ENABLE_PS, test x$enable_ps = xyes)
EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/postscript;application/x-bzpostscript;application/x-gzpostscript;image/x-eps;image/x-bzeps;image/x-gzeps;"
fi
if test "x$enable_dvi" = "xyes"; then
- EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/x-dvi;"
+ EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/x-dvi;application/x-bzdvi;application/x-gzdvi;"
fi
if test "x$enable_djvu" = "xyes"; then
EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/vnd.djvu;"
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;"
+ 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/*;"
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]))
+
+# Backends directory
+
+AC_SUBST([backenddir],"\$(libdir)/evince/ev_binary_version/backends")
+
+# 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_BINARY_VERSION],[ev_binary_version])
+
+AC_SUBST([EV_DOCUMENT_LT_VERSION_INFO],[ev_document_lt_version_info])
+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([
backend/Makefile
backend/comics/Makefile
backend/ps/Makefile
backend/tiff/Makefile
cut-n-paste/Makefile
+cut-n-paste/evmountoperation/Makefile
cut-n-paste/gedit-message-area/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
data/icons/scalable/apps/Makefile
help/Makefile
help/reference/Makefile
-help/reference/version.xml
+help/reference/libdocument/Makefile
+help/reference/libdocument/version.xml
+help/reference/libview/Makefile
+help/reference/libview/version.xml
+help/reference/shell/Makefile
+help/reference/shell/version.xml
libdocument/Makefile
+libdocument/ev-version.h
+libview/Makefile
Makefile
po/Makefile.in
properties/Makefile
thumbnailer/Makefile
])
+AC_CONFIG_FILES(evince-document-[]ev_api_version[].pc:evince-document.pc.in)
+AC_CONFIG_FILES(evince-view-[]ev_api_version[].pc:evince-view.pc.in)
+
AC_OUTPUT
echo "
Configure summary:
- GNOME Support......: $WITH_GNOME
- Print Support......: $enable_print
Keyring Support....: $WITH_KEYRING
DBUS Support.......: $enable_dbus
Nautilus Plugin....: $HAVE_NAUTILUS
Thumbnailer........: $ENABLE_THUMBNAILER
Gtk-Doc Support....: $enable_gtk_doc
+ Debug mode.........: $enable_debug
PDF Backend........: $enable_pdf
- PostScript Backend.: $enable_ps $ps_backend
+ PostScript Backend.: $enable_ps
TIFF Backend.......: $enable_tiff
DJVU Backend.......: $enable_djvu
DVI Backend........: $enable_dvi