]> www.fi.muni.cz Git - evince.git/blobdiff - configure.ac
Hungarian translation updated.
[evince.git] / configure.ac
index 4a1a913b1edab59a93c796dfc29d9f980b008628..97669dad812eb3c44a5f950a8c5a116f3c2b41ca 100644 (file)
@@ -1,12 +1,9 @@
 dnl Process this file with autoconf to produce a configure script.
 
 AC_PREREQ(2.57)
-AC_INIT(evince, 0.3.1)
+AC_INIT(evince, 0.5.0)
 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
 
-dnl make sure we keep ACLOCAL_FLAGS around for maintainer builds to work
-AC_SUBST(ACLOCAL_AMFLAGS, "$ACLOCAL_FLAGS")
-
 AM_CONFIG_HEADER(config.h)
 
 AM_MAINTAINER_MODE
@@ -19,10 +16,17 @@ AM_PROG_CC_STDC
 AC_PROG_CXX
 AC_STDC_HEADERS
 AC_PROG_INTLTOOL
-
+AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
+AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
+
+GNOME_COMMON_INIT
+GNOME_DOC_INIT
+GNOME_MAINTAINER_MODE_DEFINES
+GNOME_COMPILE_WARNINGS
+GNOME_CXX_WARNINGS
 GNOME_DEBUG_CHECK
 
-ALL_LINGUAS="bg ca cs da de el en_CA en_GB es fi fr hu ja ko lt nb nl no pt_BR ru rw sv th uk wa zh_CN zh_TW"
+ALL_LINGUAS="be bg bn ca cs cy da de el en_CA en_GB es et eu fa fi fr gl gu he hi hu id it ja ko ku lt mk nb ne nl no pa pl pt pt_BR ro ru rw sk sq sr sr@Latn sv th tr uk vi wa zh_CN zh_HK zh_TW"
 
 AM_GLIB_GNU_GETTEXT
 
@@ -30,50 +34,96 @@ GETTEXT_PACKAGE=AC_PACKAGE_NAME
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
 
-POPPLER_REQUIRED=0.3.2
+dnl Check dependencies
+
+# LIB_CFLAGS       for helpers and generic widgets. (lib, 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(LIBEVPRIVATE, gtk+-2.0 >= 2.4.0)
-PKG_CHECK_MODULES(TOOLBAR_EDITOR, gtk+-2.0 >= 2.4.0 libgnomeui-2.0 >= 2.4.0)
-PKG_CHECK_MODULES(RECENT_FILES, gtk+-2.0 >= 2.4.0 libgnomeui-2.0 >= 2.4.0)
-PKG_CHECK_MODULES(ZOOM_CONTROL, gtk+-2.0 >= 2.4.0)
-PKG_CHECK_MODULES(SHELL, gtk+-2.0 >= 2.6.0 libgnomeui-2.0 gnome-vfs-2.0 libgnomeprint-2.2 libgnomeprintui-2.2 libglade-2.0 gconf-2.0 poppler-glib >= $POPPLER_REQUIRED)
-PKG_CHECK_MODULES(THUMBNAILER, gtk+-2.0 >= 2.6.0 gnome-vfs-2.0 poppler-glib >= $POPPLER_REQUIRED)
-PKG_CHECK_MODULES(DVI, gtk+-2.0 >= 2.6.0)
-PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.6.0)
-PKG_CHECK_MODULES(PS, gtk+-2.0 >= 2.6.0 gnome-vfs-2.0 libgnomeui-2.0)
-PKG_CHECK_MODULES(POPPLER_GLIB, poppler-glib >= $POPPLER_REQUIRED)
+POPPLER_REQUIRED=0.5.0
+DBUS_GLIB_REQUIRED=0.33
+GTK_REQUIRED=2.6.0
+LIBGNOMEUI_REQUIRED=2.6.0
+KEYRING_REQUIRED=0.4.0
+
+PKG_CHECK_MODULES(LIB, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED)
+PKG_CHECK_MODULES(BACKEND, gtk+-2.0 >= $GTK_REQUIRED gnome-vfs-2.0)
+PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libglade-2.0 poppler-glib >= $POPPLER_REQUIRED)
+PKG_CHECK_MODULES(POPPLER, poppler-glib >= $POPPLER_REQUIRED)
+PKG_CHECK_MODULES(SHELL_CORE, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED gnome-vfs-2.0 libgnomeprint-2.2 >= 2.5.1 libgnomeprintui-2.2 libglade-2.0 gconf-2.0 poppler-glib >= $POPPLER_REQUIRED gnome-keyring-1 >= $KEYRING_REQUIRED)
 
 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`  
 AC_SUBST(GLIB_GENMARSHAL)
 
-dnl Compile with disable-deprecated switches
+PKG_CHECK_MODULES([DBUS], [dbus-glib-1 >= $DBUS_GLIB_REQUIRED],
+       [enable_dbus=yes],[enable_dbus=no])
+AC_SUBST([DBUS_CFLAGS])
+AC_SUBST([DBUS_LIBS])
 
-AC_ARG_ENABLE(deprecated,
-AC_HELP_STRING([--disable-deprecated],
-              [Don't allow any deprecated GTK+/etc. features.]),
-set_enable_deprecated="$enableval",[
-if test -f $srcdir/autogen.sh; then
-       is_cvs_version=true
-       set_enable_deprecated=no
-else
-       set_enable_deprecated=yes
-       fi
-])
-AC_MSG_CHECKING([whether to disable deprecated glib/gtk+/etc. features])
-if test "$set_enable_deprecated" != "yes"; then
-       AC_MSG_RESULT(yes)
-       EVINCE_DISABLE_DEPRECATED="-DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -DBONOBO_DISABLE_DEPRECATED"
-else
-       AC_MSG_RESULT(no)
-       EVINCE_DISABLE_DEPRECATED=""
+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_SUBST(EVINCE_DISABLE_DEPRECATED)
 
+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])
+
+       DBUS_VERSION=`$PKG_CONFIG --modversion dbus-glib-1 | sed 's/0\.\([[0-9]]*\)\.\{0,1\}\([[0-9]]*\)/\1/'`
+       AC_DEFINE_UNQUOTED(DBUS_VERSION, $DBUS_VERSION, [DBUS version.])
+fi
+
+SHELL_CFLAGS="$SHELL_CORE_CFLAGS $DBUS_CFLAGS"
+SHELL_LIBS="$SHELL_CORE_LIBS $DBUS_LIBS -lz"
+AC_SUBST(SHELL_CFLAGS)
+AC_SUBST(SHELL_LIBS)
+
+FRONTEND_CFLAGS="$FRONTEND_CORE_CFLAGS"
+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]),
+       [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])
+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 functions not present in gtk 2.6
 evince_save_LIBS=$LIBS
-LIBS="$LIBS $GTK_LIBS"
+LIBS="$LIBS $FRONTEND_CORE_LIBS"
 AC_CHECK_FUNCS(gtk_icon_view_get_visible_range)
+AC_CHECK_FUNCS(gtk_window_present_with_time)
+AC_CHECK_FUNCS(g_file_set_contents)
 LIBS=$evince_save_LIBS
 
+dnl GConf configuration
 AM_GCONF_SOURCE_2
 
 AC_PATH_PROG([GCONFTOOL], [gconftool-2], [no])
@@ -81,9 +131,24 @@ if test "x$GCONFTOOL" = "xno"; then
        AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
 fi
 
+dnl ================== portability checks ===========================================
+
+dnl for backtrace()
+AC_CHECK_HEADERS([execinfo.h])
+
 dnl ================== ggv checks ===================================================
-AC_ARG_WITH(gs-pkg,
-            [  --with-gs=dir       Directory Where GhostScript package is installed.])
+AC_ARG_ENABLE(ps,
+       [AC_HELP_STRING([--disable-ps], [Compile without PostScript backend])],enable_ps=$enableval,enable_ps="yes")
+
+if test x$enable_ps = xyes; then
+       AC_DEFINE([ENABLE_PS], [1], [Enable support for PostScript files.])
+fi 
+
+AM_CONDITIONAL(ENABLE_PS, test x$enable_ps = xyes)
+
+if test x$enable_ps = xyes; then
+AC_ARG_WITH(gs,
+            [AC_HELP_STRING([--with-gs=dir], [Directory Where GhostScript package is installed.])])
 
 if test "x$with_gs" = "x"; then
         AC_PATH_PROG(GS_PROG, gs)
@@ -96,7 +161,6 @@ fi
 
 AC_DEFINE_UNQUOTED(GS_PATH, "$GS_PROG", [Path to the 'gs' executable.])
 
-
 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/'`
@@ -104,9 +168,15 @@ AC_MSG_RESULT(found $GS_VERSION)
 if test "$GS_VERSION" -lt "7"; then
        AC_MSG_ERROR([You need Ghostscript version >= 7 in order to run evince])
 fi
-AA_PARMS="-sDEVICE=x11alpha -dNOPLATFONTS"
+
+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)
+
+fi
 dnl ======================== End of ggv checks =================================
 
 dnl ================== tiff checks ===================================================
@@ -121,6 +191,8 @@ if test "x$enable_tiff" = "xyes"; then
     fi
     if test "x$enable_tiff" = "xyes"; then
            AC_DEFINE([ENABLE_TIFF], [1], [Enable multipage tiff support.])
+           FRONTEND_LIBS="$FRONTEND_LIBS -ltiff"
+           SHELL_LIBS="$SHELL_LIBS -ltiff"
     else
            AC_MSG_WARN("Tiff support is disabled since tiff library version 3.6 or newer not found")
     fi 
@@ -146,13 +218,9 @@ if test "x$enable_djvu" = "xyes"; then
         AC_DEFINE([ENABLE_DJVU], [1], [Enable djvu viewer support.])
     else
        AC_MSG_WARN([   
-** Djvu support is disabled since recent version of djvulibre 
-** library was not found. To get proper djvu support you need to
-** install development version of djvulibre. You can get it from
-** anonymous CVS server on djvulibre.sf.net. Just use something
-** like:
-
-** cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/djvu co djvulibre-3.5
+** Djvu support is disabled since a recent version of the djvulibre 
+** library was not found. You need at least djvulibre-3.5.15 which 
+** can be found on http://djvulibre.djvuzone.org 
 ])
     fi 
 fi
@@ -189,7 +257,7 @@ AM_CONDITIONAL(ENABLE_DVI, test x$enable_dvi = xyes)
 
 if test "x$enable_dvi" = "xyes"; then
     if test "x$enable_type1_fonts" = "xyes"; then
-       AC_CHECK_LIB([t1lib],T1_InitLib,enable_type1_fonts=yes,enable_type1_fonts=no)
+       AC_CHECK_LIB([t1],T1_InitLib,enable_type1_fonts=yes,enable_type1_fonts=no,[-lm])
     fi
 
     if test "x$enable_type1_fonts" = xyes; then
@@ -202,10 +270,35 @@ AM_CONDITIONAL(WITH_TYPE1_FONTS, test x$enable_type1_fonts = xyes)
 
 dnl ================== End of dvi checks ===================================================
 
+dnl ================== pixbuf checks ===================================================
+
+AC_ARG_ENABLE(pixbuf,
+            [AC_HELP_STRING([--enable-pixbuf], [Compile with support of pixbuf])],enable_pixbuf="$enableval",enable_pixbuf=no)
+if test "x$enable_pixbuf" = "xyes"; then
+       AC_DEFINE([ENABLE_PIXBUF], [1], [Enable pixbuf support.])
+fi
+AM_CONDITIONAL(ENABLE_PIXBUF, test x$enable_pixbuf = xyes)
+
+dnl ================== End of pixbuf checks ===================================================
+
+dnl ================== comic book checks ===================================================
+AC_ARG_ENABLE(comics,
+       [AC_HELP_STRING([--enable-comics], [Compile with support for comic book archives])],enable_comics="$enableval",enable_comics=no)
+if test "x$enable_comics" = "xyes"; then
+       AC_DEFINE([ENABLE_COMICS], [1], [Enable support for comics.])
+fi 
+AM_CONDITIONAL(ENABLE_COMICS, test x$enable_comics = xyes)
+
+dnl ================== End of comic book checks ============================================
+
 dnl =================== Mime types list ====================================================
 
-EVINCE_MIME_TYPES="application/pdf;application/postscript;application/x-gzpostscript"
+EVINCE_MIME_TYPES="application/pdf"
 
+if test "x$disable_ps" = "xno" ; then
+       EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/postscript;application/x-gzpostscript"
+fi
 if test "x$enable_dvi" = "xyes"; then
        EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/x-dvi"
 fi
@@ -215,61 +308,12 @@ fi
 if test "x$enable_tiff" = "xyes"; then
        EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;image/tiff"
 fi
-AC_SUBST(EVINCE_MIME_TYPES)
-
-dnl Turn on the additional warnings last, so -Werror doesn't affect other tests.
-dnl stolen from nautilus and gnome-common
-
-AC_ARG_ENABLE(more-warnings,
-[  --enable-more-warnings  Maximum compiler warnings],
-set_more_warnings="$enableval",[
-if test -f $srcdir/autogen.sh; then
-       is_cvs_version=true
-       set_more_warnings=yes
-else
-       set_more_warnings=no
-fi
-])
-AC_MSG_CHECKING(for more warnings, including -Werror)
-if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
-       AC_MSG_RESULT([yes, using gcc])
-       CFLAGS="\
-       -Wall \
-       -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
-       -Wnested-externs -Wpointer-arith \
-       -Wcast-align -Wsign-compare \
-       -Werror \
-       $CFLAGS"
-
-dnl    case " $CFLAGS " in
-dnl        *[\ \       ]-ansi[\ \      ]*) ;;
-dnl        *) CFLAGS="$CFLAGS -ansi" ;;
-dnl    esac
-dnl    case " $CFLAGS " in
-dnl        *[\ \       ]-pedantic[\ \  ]*) ;;
-dnl        *) CFLAGS="$CFLAGS -pedantic" ;;
-dnl    esac
-
-       for option in -Wno-strict-aliasing -Wno-sign-compare; do
-               SAVE_CFLAGS="$CFLAGS"
-               CFLAGS="$CFLAGS $option"
-               AC_MSG_CHECKING([whether gcc understands $option])
-               AC_TRY_COMPILE([], [],
-                       has_option=yes,
-                       has_option=no,)
-               if test $has_option = no; then
-                       CFLAGS="$SAVE_CFLAGS"
-               fi
-               AC_MSG_RESULT($has_option)
-               unset has_option
-               unset SAVE_CFLAGS
-       done
-       unset option
-else
-       AC_MSG_RESULT(no)
+if test "x$enable_comics" = "xyes"; then
+       EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/x-cbr;application/x-cbz"
 fi
+AC_SUBST(EVINCE_MIME_TYPES)
 
-AC_OUTPUT([
+AC_CONFIG_FILES([
 Makefile
 cut-n-paste/Makefile
 cut-n-paste/recent-files/Makefile
@@ -285,10 +329,13 @@ ps/Makefile
 djvu/Makefile
 dvi/Makefile
 dvi/mdvi-lib/Makefile
+comics/Makefile
 po/Makefile.in
 backend/Makefile
+properties/Makefile
 shell/Makefile
 thumbnailer/Makefile
 help/Makefile
-help/C/Makefile
 ])
+
+AC_OUTPUT