X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=configure.ac;h=2558bd85bd922cae46c1f01aba1bf9ed1bc51279;hb=bcae23ea9af280bf62c7005b22487b132a8fe4ab;hp=f958ab220cbdd6ed953253d4bc86e9fa48d2f0b3;hpb=891cb3e7733ab34e949e3aeef1f3461ab2431717;p=evince.git diff --git a/configure.ac b/configure.ac index f958ab22..2558bd85 100644 --- a/configure.ac +++ b/configure.ac @@ -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.3) 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 @@ -18,57 +15,130 @@ AC_PROG_CC AM_PROG_CC_STDC AC_PROG_CXX AC_STDC_HEADERS -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 el en_CA en_GB es fi fr hu ja ko lt nb nl no pt_BR ru rw sv uk wa zh_CN zh_TW" - AM_GLIB_GNU_GETTEXT 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 + +POPPLER_REQUIRED=0.5.2 +DBUS_GLIB_REQUIRED=0.33 +GTK_REQUIRED=2.8.15 +KEYRING_REQUIRED=0.4.0 + +LIBGNOMEUI_REQUIRED=2.14.0 +LIBGNOMEPRINTUI_REQUIRED=2.6.0 -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) +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 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 - -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="" + +dnl ========= Check for libgnomeprintui +AC_ARG_ENABLE(gnome-print, + [AC_HELP_STRING([--disable-gnome-print], [Compile without print support])], + enable_gnome_print="$enableval", + enable_gnome_print=yes) + +if test x$enable_gnome_print = xyes; then + PKG_CHECK_MODULES(GNOME_PRINT, + libgnomeprintui-2.2 >= $LIBGNOMEPRINTUI_REQUIRED, + enable_gnome_print=yes, enable_gnome_print=no) +fi + +AC_SUBST(GNOME_PRINT_CFLAGS) +AC_SUBST(GNOME_PRINT_LIBS) + +if test x$enable_gnome_print = xyes; then + AC_DEFINE([WITH_GNOME_PRINT],[1],[Enable Print Support.]) +fi + +AM_CONDITIONAL(WITH_GNOME_PRINT, test x$enable_gnome_print = xyes) + +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 + +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 -AC_SUBST(EVINCE_DISABLE_DEPRECATED) +AM_CONDITIONAL(HAVE_NAUTILUS, test x$HAVE_NAUTILUS = "xyes") +dnl GConf configuration AM_GCONF_SOURCE_2 AC_PATH_PROG([GCONFTOOL], [gconftool-2], [no]) @@ -76,21 +146,22 @@ 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.]) - -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 evince) - fi -else - GS_PROG=$with_gs -fi +AC_ARG_ENABLE(ps, + [AC_HELP_STRING([--disable-ps], [Compile without PostScript backend])],enable_ps=$enableval,enable_ps="yes") -AC_DEFINE_UNQUOTED(GS_PATH, "$GS_PROG", [Path to the 'gs' executable.]) +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 dnl check for GS version AC_MSG_CHECKING(for Ghostscript version...) @@ -99,9 +170,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 =================================================== @@ -116,6 +193,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 @@ -130,24 +209,18 @@ 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 - AC_CHECK_HEADERS([libdjvu/ddjvuapi.h],enable_djvu=yes,enable_djvu=no,) - if test "x$enable_djvu" = "xyes"; then - AC_CHECK_LIB([djvulibre],ddjvu_context_create,enable_djvu=yes,enable_djvu=no,"-lpthread") - AC_CHECK_LIB([djvulibre],ddjvu_document_get_pageinfo,enable_djvu=yes,enable_djvu=no,"-lpthread") - fi +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 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.17 which +** can be found on http://djvulibre.djvuzone.org ]) fi fi @@ -184,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 @@ -197,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$enable_ps" = "xyes" ; 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 @@ -210,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 @@ -280,10 +329,27 @@ 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 + +echo " +Configure summary: + Print Support......: $enable_gnome_print + DBUS Support.......: $enable_dbus + Nautilus Plugin....: $HAVE_NAUTILUS + + PostScript Backend.: $enable_ps + TIFF Backend.......: $enable_tiff + DJVU Backend.......: $enable_djvu + DVI Backend........: $enable_dvi + Pixbuf Backend.....: $enable_pixbuf + Comics Backend.....: $enable_comics +"