]> www.fi.muni.cz Git - evince.git/blobdiff - configure.ac
Make screensaver code compile for w32. These changes have been copied from
[evince.git] / configure.ac
index 5d2c8a37cb4183ecc5f29a6c81f6d7599f683be8..c04a07b1c09f35e4d9bea06b37b99d4c4d6f0489 100644 (file)
@@ -1,12 +1,48 @@
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.57)
-AC_INIT([Evince],[2.25.4],[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
@@ -16,6 +52,7 @@ AM_PROG_LIBTOOL
 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])
@@ -48,20 +85,23 @@ DBUS_GLIB_REQUIRED=0.70
 GTK_REQUIRED=2.12.0
 GLIB_REQUIRED=2.18.0
 KEYRING_REQUIRED=2.22.0
+AC_SUBST([GLIB_REQUIRED])
+AC_SUBST([GTK_REQUIRED])
 
 GNOME_ICON_THEME_REQUIRED=2.17.1
 LIBXML_REQUIRED=2.5.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 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)
+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(SMCLIENT, gtk+-2.0 gthread-2.0)
 AC_SUBST(SMCLIENT_CFLAGS)
 AC_SUBST(SMCLIENT_LIBS)
 
-BACKEND_LIBTOOL_FLAGS="-module -avoid-version"
+BACKEND_LIBTOOL_FLAGS="-module -avoid-version -export-symbols \$(top_srcdir)/backend/backend.symbols"
 AC_SUBST(BACKEND_LIBTOOL_FLAGS)
 
 dnl ===== Check special functions
@@ -70,6 +110,7 @@ LIBS="$LIBS $BACKEND_LIBS"
 AC_CHECK_FUNCS(cairo_format_stride_for_width)
 LIBS=$evince_save_LIBS
 
+dnl ========= Check for Keyring
 AC_ARG_WITH(keyring,
         AC_HELP_STRING([--without-keyring],[disable the use of gnome-keyring]),
        [case "${withval}" in
@@ -117,6 +158,22 @@ AC_SUBST([DBUS_LIBS])
 AM_CONDITIONAL([ENABLE_DBUS], [test "x$enable_dbus" = "xyes"])
 AM_CONDITIONAL([DBUS_TOOL_NO_PREFIX], [test "x$DBUS_VERSION" = "x33"])
 
+dnl ========= Check for GConf
+AC_ARG_WITH(gconf,
+       AC_HELP_STRING([--without-gconf],[disable the use of gconf]),
+       [case "${withval}" in
+       yes) WITH_GCONF=yes ;;
+       no) WITH_GCONF=no ;;
+       *) AC_MSG_ERROR(bad value ${withval} for --with-gconf) ;;
+       esac],
+       [WITH_GCONF=yes]) dnl Default value
+AM_CONDITIONAL(WITH_GCONF, test x$WITH_GCONF = "xyes")
+
+if test x$WITH_GCONF = "xyes"; then
+   PKG_CHECK_MODULES(GCONF, gconf-2.0)
+   AC_DEFINE([WITH_GCONF],[1],[Define if GConf support is enabled])
+fi
+
 dnl Debug mode
 AC_ARG_ENABLE([debug],
        AC_HELP_STRING([--enable-debug],
@@ -128,17 +185,22 @@ if test "x$enable_debug" = "xyes"; then
 fi
 
 
-LIB_CFLAGS="$LIB_CFLAGS $DEBUG_FLAGS"
-LIB_LIBS="$LIB_LIBS"
-AC_SUBST(LIB_CFLAGS)
-AC_SUBST(LIB_LIBS)
+LIBDOCUMENT_CFLAGS="$LIBDOCUMENT_CFLAGS $DEBUG_FLAGS"
+LIBDOCUMENT_LIBS="$LIBDOCUMENT_LIBS"
+AC_SUBST(LIBDOCUMENT_CFLAGS)
+AC_SUBST(LIBDOCUMENT_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 $DEBUG_FLAGS"
 AC_SUBST(BACKEND_CFLAGS)
 AC_SUBST(BACKEND_LIBS)
 
-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"
+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"
 AC_SUBST(SHELL_CFLAGS)
 AC_SUBST(SHELL_LIBS)
 
@@ -405,6 +467,28 @@ if test "x$enable_impress" = "xyes"; then
 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
@@ -445,8 +529,15 @@ data/icons/scalable/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
@@ -455,10 +546,14 @@ test/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:
+        GConf Support......:  $WITH_GCONF
        Keyring Support....:  $WITH_KEYRING
        DBUS Support.......:  $enable_dbus
        Nautilus Plugin....:  $HAVE_NAUTILUS