X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=configure.ac;h=5224e0da5478de4a0e1ba0dd6bb15cb43ea83241;hb=c74c0a3ed020014c55ca9320653e704b6608848a;hp=4e1378bab9f47dc492345085b2607beeaf223eff;hpb=11d69fd1016e02b5d4d0c393035d28e8596c15b6;p=evince.git diff --git a/configure.ac b/configure.ac index 4e1378ba..5224e0da 100644 --- a/configure.ac +++ b/configure.ac @@ -1,11 +1,8 @@ dnl Process this file with autoconf to produce a configure script. -AC_PREREQ(2.59) -AC_INIT(evince, 0.1.4) -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") +AC_PREREQ(2.57) +AC_INIT([Evince],[0.8.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=evince],[evince]) +AM_INIT_AUTOMAKE([1.9 dist-bzip2 no-dist-gzip]) AM_CONFIG_HEADER(config.h) @@ -18,379 +15,457 @@ AC_PROG_CC AM_PROG_CC_STDC AC_PROG_CXX AC_STDC_HEADERS -AC_PROG_RANLIB -AC_PROG_INTLTOOL - +IT_PROG_INTLTOOL([0.35.0]) +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 en_CA en_GB fi ja no nb nl pt_BR sv zh_CN" +GTK_DOC_CHECK(1.0) +GETTEXT_PACKAGE=evince +AC_SUBST(GETTEXT_PACKAGE) +AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package]) AM_GLIB_GNU_GETTEXT -GETTEXT_PACKAGE=AC_PACKAGE_NAME -AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.]) +dnl Check dependencies -PKG_CHECK_MODULES(LIBEVPRIVATE, gtk+-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(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) -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) +# 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 -GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` -AC_SUBST(GLIB_GENMARSHAL) +DBUS_GLIB_REQUIRED=0.70 +GTK_REQUIRED=2.8.15 +KEYRING_REQUIRED=0.4.0 -dnl Compile with disable-deprecated switches +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 -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="" -fi -AC_SUBST(EVINCE_DISABLE_DEPRECATED) +GTK_PRINT_REQUIRED=2.10.0 -AM_GCONF_SOURCE_2 +PKG_CHECK_MODULES(LIB, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED) +PKG_CHECK_MODULES(BACKEND, gtk+-2.0 >= $GTK_REQUIRED gnome-vfs-2.0 libgnome-2.0 >= $LIBGNOME_REQUIRED) +PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libglade-2.0 gnome-vfs-2.0) +PKG_CHECK_MODULES(SHELL_CORE, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED gnome-vfs-2.0 libglade-2.0 gconf-2.0 gnome-keyring-1 >= $KEYRING_REQUIRED) -AC_PATH_PROG([GCONFTOOL], [gconftool-2], [no]) -if test "x$GCONFTOOL" = "xno"; then - AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf]) -fi +BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE" +AC_SUBST(BACKEND_CFLAGS) -dnl ================== Xpdf aconf.h.in checks ================================== - -AH_TEMPLATE([HAVE_LIBSM], [Define to 1 if you have session management.]) -AH_TEMPLATE([ENABLE_NLS], [Use Native Language Support.]) -AH_TEMPLATE([HAVE_CATGETS], [Use catgets functions.]) -AH_TEMPLATE([HAVE_GETTEXT], [Use gettext functions.]) - -dnl Optional features. -AH_TEMPLATE([A4_PAPER], - [Use A4 paper size instead of Letter for PostScript output.]) -AC_ARG_ENABLE(a4-paper, - AC_HELP_STRING([--enable-a4-paper], - [use A4 paper size instead of Letter for - PostScript output]), - AC_DEFINE(A4_PAPER)) - -dnl never define NO_TEXT_SELECT, just remember this Xpdf setting. -AH_TEMPLATE([NO_TEXT_SELECT], [Do not allow text selection.]) - -AH_TEMPLATE([OPI_SUPPORT], - [Include support for OPI comments.]) -AC_ARG_ENABLE(opi, - AC_HELP_STRING([--enable-opi], - [include support for OPI comments]), - AC_DEFINE(OPI_SUPPORT)) - -dnl enable these unconditionally. -AC_DEFINE([MULTITHREADED], [1], [Enable multithreading support.]) -AC_DEFINE([TEXTOUT_WORD_LIST], [1], [Enable word list support.]) - -AH_TEMPLATE([APPDEFDIR], - [Directory with the Xpdf app-defaults file.]) -AC_ARG_WITH(appdef-dir, - AC_HELP_STRING([--with-appdef-dir], - [set app-defaults directory]), - AC_DEFINE_UNQUOTED(APPDEFDIR, "$with_appdef_dir")) - -dnl Path to xpdfrc. -dnl This ugly kludge to get the sysconfdir path is needed because -dnl autoconf doesn't actually set the prefix variable until later. -if test "$sysconfdir" = '${prefix}/etc'; then - if test "x$prefix" = xNONE; then - system_xpdfrc="$ac_default_prefix/etc/xpdfrc" - else - system_xpdfrc="$prefix/etc/xpdfrc" - 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 - system_xpdfrc="$sysconfdir/xpdfrc" + 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 -AC_DEFINE_UNQUOTED(SYSTEM_XPDFRC, "$system_xpdfrc", - [Full path for the system-wide xpdfrc file.]) - -dnl Checks for header files. -AC_HEADER_DIRENT - -dnl Switch over to C++. This will make the checks below a little -dnl bit stricter (requiring function prototypes in include files). -dnl (99% of xpdf is written in C++.) -AC_LANG_CPLUSPLUS - -dnl Look for header that defines select() and fd_set. -AC_MSG_CHECKING([select() and fd_set in sys/select.h and sys/bsdtypes.h]) -AC_TRY_COMPILE([#include -#include -#include -#include ], - [fd_set fds; -select(0, NULL, NULL, NULL, NULL);], xpdf_ok=yes, xpdf_ok=no) -if test $xpdf_ok = yes; then - AC_MSG_RESULT([not needed]) -else - AC_TRY_COMPILE([#include -#include -#include -#include -#include ], - [fd_set fds; -select(0, NULL, NULL, NULL, NULL);], xpdf_ok=yes, xpdf_ok=no) - if test $xpdf_ok = yes; then - AC_DEFINE(HAVE_SYS_SELECT_H, 1, [Have sys/select.h.]) - AC_MSG_RESULT([need sys/select.h]) - else - AC_TRY_COMPILE([#include -#include -#include -#include -#include ], - [fd_set fds; -select(0, NULL, NULL, NULL, NULL);], xpdf_ok=yes, xpdf_ok=no) - if test $xpdf_ok = yes; then - AC_DEFINE(HAVE_SYS_BSDTYPES_H, 1, [Have sys/bsdtypes.h.]) - AC_MSG_RESULT([need sys/bsdtypes.h]) - else - AC_MSG_RESULT([problem]) - fi - fi + +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 -dnl Look for header that defines FD_ZERO. -AC_MSG_CHECKING([FD_ZERO and strings.h or bstring.h]) -AC_TRY_COMPILE([#include -#include -#ifdef HAVE_SYS_SELECT_H -#include -#endif], -[fd_set fds; FD_ZERO(&fds);], xpdf_ok=yes, xpdf_ok=no) -if test $xpdf_ok = yes; then - AC_MSG_RESULT([not needed]) -else - AC_TRY_COMPILE([#include -#include -#include -#ifdef HAVE_SYS_SELECT_H -#include -#endif], - [fd_set fds; FD_ZERO(&fds);], xpdf_ok=yes, xpdf_ok=no) - if test $xpdf_ok = yes; then - AC_DEFINE(HAVE_STRINGS_H, 1, [Have strings.h.]) - AC_MSG_RESULT([need strings.h]) - else - AC_TRY_COMPILE([#include -#include -#include -#ifdef HAVE_SYS_SELECT_H -#include -#endif], - [fd_set fds; FD_ZERO(&fds);], xpdf_ok=yes, xpdf_ok=no) - if test $xpdf_ok = yes; then - AC_DEFINE(HAVE_BSTRING_H, 1, [Have bstring.h.]) - AC_MSG_RESULT([need bstring.h]) - else - AC_MSG_RESULT([problem]) - fi - 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) + -dnl Look for rewinddir. -AC_CHECK_FUNCS(rewinddir) -if test $ac_cv_func_rewinddir = no; then - AC_CHECK_LIB(cposix, rewinddir) +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 -dnl Checks for library functions. -AC_CHECK_FUNCS(popen) -dnl # This should use 'AC_CHECK_FUNCS(mkstemp)' but that fails if -dnl # the mkstemp exists in the library but isn't declared in the -dnl # include file (e.g., in cygwin 1.1.2). -AC_CACHE_CHECK([for mkstemp], -xpdf_cv_func_mkstemp, -[AC_TRY_LINK([#include -#include ], -[mkstemp("foo");], -xpdf_cv_func_mkstemp=yes, xpdf_cv_func_mkstemp=no)]) -if test "$xpdf_cv_func_mkstemp" = yes; then - AC_DEFINE(HAVE_MKSTEMP, 1, [Have mkstemp().]) +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 -dnl Check for mkstemps, just like mkstemp. -AC_CACHE_CHECK([for mkstemps], -xpdf_cv_func_mkstemps, -[AC_TRY_LINK([#include -#include ], -[mkstemps("foo", 0);], -xpdf_cv_func_mkstemps=yes, xpdf_cv_func_mkstemps=no)]) -if test "$xpdf_cv_func_mkstemps" = yes; then - AC_DEFINE(HAVE_MKSTEMPS, 1, [Have mkstemps().]) + +SHELL_CFLAGS="$SHELL_CORE_CFLAGS $DBUS_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE" +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 -dnl Check select argument type: on HP-UX before version 10, select -dnl takes (int *) instead of (fd_set *). -AC_CACHE_CHECK([whether select takes fd_set arguments], -xpdf_cv_func_select_arg, -[AC_TRY_COMPILE([#include -#include -#include -#ifdef HAVE_SYS_SELECT_H -#include -#endif], -[fd_set fds; -select(1, &fds, &fds, &fds, 0);], -xpdf_cv_func_select_arg=yes, xpdf_cv_func_select_arg=no)]) -if test "$xpdf_cv_func_select_arg" != yes; then - AC_DEFINE(SELECT_TAKES_INT, 1, [select() takes int, not fd_set arguments.]) +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 Back to C for the library tests. -AC_LANG_C - -dnl Check for fseeko/ftello or fseek64/ftell64 -dnl The LARGEFILE and FSEEKO macros have to be called in C, not C++, mode. -AC_SYS_LARGEFILE -AC_FUNC_FSEEKO -AC_CHECK_FUNCS(fseek64, xpdf_cv_func_fseek64=yes, xpdf_cv_func_fseek64=no) -AC_CHECK_FUNCS(ftell64, xpdf_cv_func_ftell64=yes, xpdf_cv_func_ftell64=no) -if test "$xpdf_cv_func_fseek64" = yes -a "$xpdf_cv_func_ftell64" = yes; then - AC_DEFINE(HAVE_FSEEK64, 1, [Have fseek64().]) +dnl Check for GtkRecent +PKG_CHECK_MODULES(GTK_RECENT, gtk+-2.0 >= 2.10.0, + [HAVE_GTK_RECENT=yes], [HAVE_GTK_RECENT=no]) +if test x$HAVE_GTK_RECENT = xyes; then + AC_DEFINE([HAVE_GTK_RECENT], [1], [defined if GtkRecent is available]) fi +AM_CONDITIONAL(HAVE_GTK_RECENT, test x$HAVE_GTK_RECENT = "xyes") -dnl Check for freetype headers -FREETYPE_LIBS= -FREETYPE_CFLAGS= -AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no) -if test "x$FREETYPE_CONFIG" != "xno" ; then - FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags` - FREETYPE_LIBS=`$FREETYPE_CONFIG --libs` - AC_DEFINE(HAVE_FREETYPE_H, 1, [Have FreeType2 include files]) - - vers=`$FREETYPE_CONFIG --version 2>/dev/null | sed -e 's/libfreetype //' | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'` - if test -n "$vers" && test "$vers" -le 9005003; then - AC_DEFINE_UNQUOTED(HAVE_FREETYPE_217_OR_OLDER, 1, [Defines if your system has the freetype library 2.1.7 or older]) - else - AC_DEFINE_UNQUOTED(HAVE_FREETYPE_217_OR_OLDER, 0, [Defines if your system has the freetype library 2.1.7 or older]) - fi +dnl GConf configuration +AM_GCONF_SOURCE_2 +AC_PATH_PROG([GCONFTOOL], [gconftool-2], [no]) +if test "x$GCONFTOOL" = "xno"; then + AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf]) fi -AC_SUBST(FREETYPE_CFLAGS) -AC_SUBST(FREETYPE_LIBS) +dnl ================== portability checks =========================================== -dnl ================== End of xpdf 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.]) - -if test "x$with_gs" = "x"; then - AC_PATH_PROG(GS_PROG, gs) - if test -z "$GS_PROG"; then - AC_MSG_ERROR(Unable to find GhostScript in the PATH. Provide the full path for GhostScript(--with-gs=PATH). You need to have Ghostscript installed in order to run GGV) - fi -else - GS_PROG=$with_gs +AC_CHECK_DECL([_NL_MEASUREMENT_MEASUREMENT],[ + AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT],[1],[Define if _NL_MEASUREMENT_MEASUREMENT is available]) + ],[],[#include ]) + +dnl ================== pdf checks =================================================== +AC_ARG_ENABLE(pdf, + [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.5.4 + PKG_CHECK_MODULES(POPPLER, poppler-glib >= $POPPLER_REQUIRED,enable_pdf=yes,enable_pdf=no) + + if test "x$enable_pdf" = "xyes"; then + AC_DEFINE([ENABLE_PDF], [1], [Enable pdf support.]) + FRONTEND_LIBS="$FRONTEND_LIBS $POPPLER_LIBS" + SHELL_LIBS="$SHELL_LIBS $POPPLER_LIBS" + SHELL_CFLAGS="$SHELL_CFLAGS $POPPLER_CFLAGS" + + evince_save_LIBS=$LIBS + LIBS="$LIBS $FRONTEND_LIBS" + AC_CHECK_FUNCS(poppler_page_render) + AC_CHECK_FUNCS(poppler_page_get_duration) + AC_CHECK_FUNCS(poppler_page_get_image_mapping) + 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]) + fi + else + AC_MSG_WARN("PDF support is disabled since poppler-glib library version $POPPLER_REQUIRED or newer not found") + fi fi -AC_DEFINE_UNQUOTED(GS_PATH, "$GS_PROG", [Path to the 'gs' executable.]) +AM_CONDITIONAL(ENABLE_PDF, test x$enable_pdf = xyes) +dnl ================== end of pdf checks ============================================ + +dnl ================== ggv checks =================================================== +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) -dnl check for GS version and define appropriate alpha parameters +if test x$enable_ps = xyes; then + +dnl check for GS version AC_MSG_CHECKING(for Ghostscript version...) -GS_VERSION=`$GS_PROG --version | head -n 1` +GS_VERSION=`gs --version | head -n 1 | sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` AC_MSG_RESULT(found $GS_VERSION) -dnl GS tends to get a lot of BadMatch errors with the *AlphaBits parameters -dnl so I've commented their use out -dnl if test "$GS_VERSION" -gt "5"; then -dnl AA_PARMS="-sDEVICE=x11 -dTextAlphaBits=4 -dGraphicsAlphaBits=4" -dnl else -dnl AA_PARMS="-sDEVICE=x11alpha" -dnl fi -AA_PARMS="-sDEVICE=x11alpha -dNOPLATFONTS" +if test "$GS_VERSION" -lt "7"; then + AC_MSG_ERROR([You need Ghostscript version >= 7 in order to run evince]) +fi + +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 Turn on the additional warnings last, so -Werror doesn't affect other tests. -dnl stolen from nautilus and gnome-common +dnl ================== tiff checks =================================================== +AC_ARG_ENABLE(tiff, + [AC_HELP_STRING([--enable-tiff], [Compile with support of multipage tiff])],enable_tiff="$enableval",enable_tiff=yes) -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 +if test "x$enable_tiff" = "xyes"; then + AC_CHECK_HEADERS([tiff.h],enable_tiff=yes,enable_tiff=no,) + if test "x$enable_tiff" = "xyes"; then + AC_CHECK_LIB([tiff],TIFFOpen,enable_tiff=yes,enable_tiff=no,"-lz") + AC_CHECK_LIB([tiff],TIFFReadRGBAImageOriented,enable_tiff=yes,enable_tiff=no,"-lz") + 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 fi + +AM_CONDITIONAL(ENABLE_TIFF, test x$enable_tiff = xyes) +dnl ================== end of tiff checks ============================================ + +dnl ================== djvu checks =================================================== + +AC_ARG_ENABLE(djvu, + [AC_HELP_STRING([--enable-djvu], [Compile with support of djvu viewer])],enable_djvu="$enableval",enable_djvu=no) + +if test "x$enable_djvu" = "xyes"; then + +DJVULIBRE_REQUIRED=3.5.17 + +PKG_CHECK_MODULES(DJVU, ddjvuapi >= $DJVULIBRE_REQUIRED, enable_djvu=yes, enable_djvu=no) + + 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 a recent version of the djvulibre +** library was not found. You need at least djvulibre-3.5.17 which +** can be found on http://djvulibre.djvuzone.org ]) -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) + fi fi -dnl ======================== End of ggv checks ================================= +AM_CONDITIONAL(ENABLE_DJVU, test x$enable_djvu = xyes) -AC_OUTPUT([ -Makefile +dnl ================== End of djvu checks =================================================== + +dnl ================== dvi checks =================================================== + +AC_ARG_ENABLE(dvi, + [AC_HELP_STRING([--enable-dvi], [Compile with support of dvi viewer])],enable_dvi="$enableval",enable_dvi=no) + +AC_ARG_ENABLE(t1lib, + [AC_HELP_STRING([--enable-t1lib], [Compile with support of t1lib for type1 fonts in dvi])],enable_type1_fonts="$enableval",enable_type1_fonts=no) + +if test "x$enable_dvi" = "xyes"; then + AC_C_CONST + AC_C_INLINE + AC_TYPE_SIZE_T + AC_CHECK_SIZEOF(long, 4) + AC_CHECK_SIZEOF(int, 4) + AC_CHECK_SIZEOF(short, 2) + AC_CHECK_SIZEOF(void *, 4) + AC_CHECK_LIB([kpathsea],[kpse_init_prog],[enable_dvi=yes],[enable_dvi=no]) + + if test "x$enable_dvi" = "xyes"; then + AC_DEFINE([ENABLE_DVI], [1], [Enable dvi viewer support.]) + else + AC_MSG_WARN("Dvi support is disabled since kpathsea library is not found. Check your TeX installation.") + fi +fi +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([t1],T1_InitLib,enable_type1_fonts=yes,enable_type1_fonts=no,[-lm]) + fi + + if test "x$enable_type1_fonts" = xyes; then + AC_DEFINE([WITH_TYPE1_FONTS], [1], [Enable t1lib support in dvi.]) + fi +else + enable_type1_fonts=no +fi +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 ================== impress book checks =================================================== + +AC_ARG_ENABLE(impress, + [AC_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 + EVINCE_MIME_TYPES="application/pdf;application/x-bzpdf;application/x-gzpdf" +fi +if test "x$enable_ps" = "xyes" ; then + 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" +fi +if test "x$enable_djvu" = "xyes"; then + EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;image/vnd.djvu" +fi +if test "x$enable_tiff" = "xyes"; then + 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" +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_CONFIG_FILES([ +backend/Makefile +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 +backend/tiff/Makefile cut-n-paste/Makefile cut-n-paste/recent-files/Makefile +cut-n-paste/toolbar-editor/Makefile +cut-n-paste/zoom-control/Makefile +cut-n-paste/totem-screensaver/Makefile +data/evince.desktop.in data/Makefile -lib/Makefile -pdf/Makefile -pdf/goo/Makefile -pdf/fofi/Makefile -pdf/splash/Makefile -pdf/xpdf/Makefile -pixbuf/Makefile -ps/Makefile +data/icons/Makefile +data/icons/16x16/Makefile +data/icons/16x16/apps/Makefile +data/icons/16x16/actions/Makefile +data/icons/22x22/Makefile +data/icons/22x22/apps/Makefile +data/icons/22x22/actions/Makefile +data/icons/24x24/Makefile +data/icons/24x24/apps/Makefile +data/icons/24x24/actions/Makefile +data/icons/48x48/Makefile +data/icons/48x48/apps/Makefile +data/icons/scalable/Makefile +data/icons/scalable/apps/Makefile +help/Makefile +help/reference/Makefile +help/reference/version.xml +libdocument/Makefile +Makefile po/Makefile.in -backend/Makefile +properties/Makefile shell/Makefile +test/Makefile +thumbnailer/Makefile ]) + +AC_OUTPUT + +echo " +Configure summary: + Print Support......: $enable_print + DBUS Support.......: $enable_dbus + Nautilus Plugin....: $HAVE_NAUTILUS + Gtk-Doc Support....: $enable_gtk_doc + + PDF Backend........: $enable_pdf + PostScript Backend.: $enable_ps + TIFF Backend.......: $enable_tiff + DJVU Backend.......: $enable_djvu + DVI Backend........: $enable_dvi + Pixbuf Backend.....: $enable_pixbuf + Comics Backend.....: $enable_comics + Impress Backend....: $enable_impress +"