X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=configure.ac;h=f617f12eeee227d229ca314bec420ddc9accee34;hb=f4dd355fb0ec24f49be5d8d4321ceeeb9088fd90;hp=01eef2b868b01c919b6fdd23400d52fb90dad76b;hpb=b81ab84ffbb263771071c9ed79350dbb4017a17b;p=evince.git diff --git a/configure.ac b/configure.ac index 01eef2b8..f617f12e 100644 --- a/configure.ac +++ b/configure.ac @@ -3,13 +3,13 @@ # ***************************************************************************** m4_define([ev_major_version],[2]) -m4_define([ev_minor_version],[30]) -m4_define([ev_micro_version],[0]) +m4_define([ev_minor_version],[31]) +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.30]) +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.30]) # - 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]) @@ -66,7 +66,6 @@ AC_PROG_SED AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal]) AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums]) -GNOME_DOC_INIT GNOME_MAINTAINER_MODE_DEFINES GNOME_COMPILE_WARNINGS GNOME_CXX_WARNINGS @@ -86,6 +85,8 @@ 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]) @@ -120,13 +121,35 @@ 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=3.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.18.0 +CAIRO_REQUIRED=1.9.10 +GLIB_REQUIRED=2.25.11 KEYRING_REQUIRED=2.22.0 + +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]) +AC_SUBST([GTK_API_VERSION]) GNOME_ICON_THEME_REQUIRED=2.17.1 LIBXML_REQUIRED=2.5.0 @@ -140,11 +163,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 @@ -170,13 +193,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], @@ -202,7 +225,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 @@ -221,7 +244,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 # ****************** @@ -240,7 +262,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 @@ -277,24 +299,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 @@ -360,8 +376,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) @@ -385,7 +401,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]) @@ -404,8 +420,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"]) @@ -419,12 +435,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"]) @@ -487,17 +503,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]) @@ -669,21 +684,6 @@ AM_CONDITIONAL(ENABLE_COMICS, test x$enable_comics = xyes) dnl ================== End of comic book checks ============================================ -dnl ================== impress book checks =================================================== - -AC_ARG_ENABLE(impress, - [AS_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) - -dnl ================== End of impress book checks ============================================ - dnl =================== Mime types list ==================================================== if test "x$enable_pdf" = "xyes" ; then @@ -707,13 +707,38 @@ fi if test "x$enable_pixbuf" = "xyes"; then EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/*;" fi -if test "x$enable_impress" = "xyes"; then - EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/vnd.sun.xml.impress;application/vnd.oasis.opendocument.presentation;" -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 # ***************** @@ -721,7 +746,7 @@ AC_CHECK_FUNC(localtime_r, AC_DEFINE(HAVE_LOCALTIME_R, 1, [Defines if localtime_ 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 @@ -739,6 +764,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]) @@ -755,7 +781,6 @@ 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 @@ -766,6 +791,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 @@ -820,11 +846,13 @@ 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 DBUS Support.......: $enable_dbus SM client support..: $with_smclient + Help files.........: $enable_help Nautilus Plugin....: $enable_nautilus Thumbnailer........: $enable_thumbnailer Previewer..........: $enable_previewer @@ -840,5 +868,4 @@ Configure summary: DVI Backend........: $enable_dvi Pixbuf Backend.....: $enable_pixbuf Comics Backend.....: $enable_comics - Impress Backend....: $enable_impress "