]> www.fi.muni.cz Git - evince.git/blobdiff - configure.ac
Hungarian translation updated.
[evince.git] / configure.ac
index 65d76da0d181051e08c4f9d317bfc56354996d34..fc7d22403343fb562338441149a055ad83aae60b 100644 (file)
@@ -1,7 +1,7 @@
 dnl Process this file with autoconf to produce a configure script.
 
-AC_PREREQ(2.59)
-AC_INIT(evince, 0.1.0)
+AC_PREREQ(2.57)
+AC_INIT(evince, 0.3.1)
 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
 
 dnl make sure we keep ACLOCAL_FLAGS around for maintainer builds to work
@@ -18,10 +18,13 @@ AC_PROG_CC
 AM_PROG_CC_STDC
 AC_PROG_CXX
 AC_STDC_HEADERS
-AC_PROG_RANLIB
 AC_PROG_INTLTOOL
+AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
+AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
 
-ALL_LINGUAS="cs de en_CA ja nl pt_BR sv zh_CN"
+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"
 
 AM_GLIB_GNU_GETTEXT
 
@@ -29,12 +32,18 @@ GETTEXT_PACKAGE=AC_PACKAGE_NAME
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
 
+POPPLER_REQUIRED=0.3.2
+
 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(SHELL, gtk+-2.0 >= 2.5.0 libgnomeui-2.0 gnome-vfs-2.0 libgnomeprint-2.2 libgnomeprintui-2.2 libglade-2.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)
 
 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`  
 AC_SUBST(GLIB_GENMARSHAL)
@@ -62,218 +71,18 @@ else
 fi
 AC_SUBST(EVINCE_DISABLE_DEPRECATED)
 
-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
-else
-  system_xpdfrc="$sysconfdir/xpdfrc"
-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 <stdlib.h>
-#include <stddef.h>
-#include <unistd.h>
-#include <sys/types.h>],
-  [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 <stdlib.h>
-#include <stddef.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/select.h>],
-    [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 <stdlib.h>
-#include <stddef.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/bsdtypes.h>],
-      [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
-fi
+evince_save_LIBS=$LIBS
+LIBS="$LIBS $GTK_LIBS"
+AC_CHECK_FUNCS(gtk_icon_view_get_visible_range)
+LIBS=$evince_save_LIBS
 
-dnl Look for header that defines FD_ZERO.
-AC_MSG_CHECKING([FD_ZERO and strings.h or bstring.h])
-AC_TRY_COMPILE([#include <stdlib.h>
-#include <sys/types.h>
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#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 <stdlib.h>
-#include <sys/types.h>
-#include <strings.h>
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#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 <stdlib.h>
-#include <sys/types.h>
-#include <bstring.h>
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#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
-fi
-
-dnl Look for rewinddir.
-AC_CHECK_FUNCS(rewinddir)
-if test $ac_cv_func_rewinddir = no; then
-  AC_CHECK_LIB(cposix, rewinddir)
-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 <stdlib.h>
-#include <unistd.h>],
-[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().])
-fi
-dnl Check for mkstemps, just like mkstemp.
-AC_CACHE_CHECK([for mkstemps],
-xpdf_cv_func_mkstemps,
-[AC_TRY_LINK([#include <stdlib.h>
-#include <unistd.h>],
-[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().])
-fi
+AM_GCONF_SOURCE_2
 
-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 <sys/types.h>
-#include <sys/time.h>
-#include <unistd.h>
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#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_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
 
-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().])
-fi
-
-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])
-fi
-
-AC_SUBST(FREETYPE_CFLAGS)
-AC_SUBST(FREETYPE_LIBS)
-
-dnl ================== End of xpdf checks ===========================================
-
 dnl ================== ggv checks ===================================================
 AC_ARG_WITH(gs-pkg,
             [  --with-gs=dir       Directory Where GhostScript package is installed.])
@@ -281,7 +90,7 @@ AC_ARG_WITH(gs-pkg,
 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)
+                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
@@ -290,21 +99,125 @@ fi
 AC_DEFINE_UNQUOTED(GS_PATH, "$GS_PROG", [Path to the 'gs' executable.])
 
 
-dnl check for GS version and define appropriate alpha parameters
+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
+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_DEFINE_UNQUOTED(ALPHA_PARAMS, "$AA_PARMS", [Anti-aliasing parameters for Ghostscript.])
 AC_MSG_RESULT(Antialiasing parameters for Ghostscript: $AA_PARMS)
+dnl ======================== End of ggv checks =================================
+
+dnl ================== tiff checks ===================================================
+AC_ARG_ENABLE(tiff,
+            [AC_HELP_STRING([--enable-tiff], [Compile with support of multipage tiff])],enable_tiff="$enableval",enable_tiff=yes)
+
+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.])
+    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
+    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
+
+    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
+])
+    fi 
+fi
+
+AM_CONDITIONAL(ENABLE_DJVU, test x$enable_djvu = xyes)
+
+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([t1lib],T1_InitLib,enable_type1_fonts=yes,enable_type1_fonts=no)
+    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 =================== Mime types list ====================================================
+
+EVINCE_MIME_TYPES="application/pdf;application/postscript;application/x-gzpostscript"
+
+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
+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
@@ -358,23 +271,26 @@ else
        AC_MSG_RESULT(no)
 fi
 
-dnl ======================== End of ggv checks =================================
-
 AC_OUTPUT([
 Makefile
 cut-n-paste/Makefile
 cut-n-paste/recent-files/Makefile
+cut-n-paste/zoom-control/Makefile
+cut-n-paste/toolbar-editor/Makefile
 data/Makefile
+data/evince.desktop.in
+lib/Makefile
 pdf/Makefile
-pdf/goo/Makefile
-pdf/fofi/Makefile
-pdf/splash/Makefile
-pdf/xpdf/Makefile
 pixbuf/Makefile
+tiff/Makefile
 ps/Makefile
+djvu/Makefile
+dvi/Makefile
+dvi/mdvi-lib/Makefile
 po/Makefile.in
 backend/Makefile
 shell/Makefile
-dvi/Makefile
-dvi/dvilib/Makefile
+thumbnailer/Makefile
+help/Makefile
+help/C/Makefile
 ])