1 dnl Process this file with autoconf to produce a configure script.
4 AC_INIT([Evince],[0.7.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=evince],[evince])
5 AM_INIT_AUTOMAKE([1.9 dist-bzip2 no-dist-gzip])
7 AM_CONFIG_HEADER(config.h)
18 IT_PROG_INTLTOOL([0.35.0])
19 AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
20 AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
24 GNOME_MAINTAINER_MODE_DEFINES
25 GNOME_COMPILE_WARNINGS
29 GETTEXT_PACKAGE=evince
30 AC_SUBST(GETTEXT_PACKAGE)
31 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
34 dnl Check dependencies
36 # LIB_CFLAGS for helpers and generic widgets. (lib, cut-and-paste)
37 # BACKEND_CFLAGS for backend implementations.
38 # FRONTEND_CFLAGS for frontend implementations. (properties, thumbnailer)
40 # SHELL_CFLAGS for shell implementation.
43 DBUS_GLIB_REQUIRED=0.71
45 KEYRING_REQUIRED=0.4.0
47 LIBGNOMEUI_REQUIRED=2.14.0
48 LIBGNOMEPRINTUI_REQUIRED=2.6.0
49 GNOME_ICON_THEME_REQUIRED=2.17.1
52 GTK_PRINT_REQUIRED=2.10.0
54 PKG_CHECK_MODULES(LIB, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED)
55 PKG_CHECK_MODULES(BACKEND, gtk+-2.0 >= $GTK_REQUIRED gnome-vfs-2.0)
56 PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED libglade-2.0)
57 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 gnome-keyring-1 >= $KEYRING_REQUIRED)
59 BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE"
60 AC_SUBST(BACKEND_CFLAGS)
62 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
63 AC_SUBST(GLIB_GENMARSHAL)
65 dnl ========= Print support
67 [AC_HELP_STRING([--with-print=no/gtk/gnome/auto], [Compile with print support [default=auto]])],
71 PKG_CHECK_MODULES(GNOME_PRINT,
72 libgnomeprintui-2.2 >= $LIBGNOMEPRINTUI_REQUIRED,
73 enable_gnome_print=yes, enable_gnome_print=no)
74 PKG_CHECK_MODULES(GTK_PRINT,
75 gtk+-unix-print-2.0 >= $GTK_PRINT_REQUIRED,
76 enable_gtk_print=yes, enable_gtk_print=no)
78 if test x$PRINT = xgnome -a x$enable_gnome_print = xyes; then
81 if test x$PRINT = xgtk -a x$enable_gtk_print = xyes; then
84 if test x$PRINT = xauto; then
85 if test x$enable_gtk_print = xyes; then
88 if test x$enable_gnome_print = xyes; then
96 if test x$enable_print = xgnome; then
97 AC_SUBST(GNOME_PRINT_CFLAGS)
98 AC_SUBST(GNOME_PRINT_LIBS)
99 AC_DEFINE([WITH_GNOME_PRINT],[1],[Enable GNOME Print Support.])
100 AC_DEFINE([WITH_PRINT],[1],[Enable Print Support.])
103 if test x$enable_print = xgtk; then
104 AC_SUBST(GTK_PRINT_CFLAGS)
105 AC_SUBST(GTK_PRINT_LIBS)
106 AC_DEFINE([WITH_GTK_PRINT],[1],[Enable GTK Print Support.])
107 AC_DEFINE([WITH_PRINT],[1],[Enable Print Support.])
110 AM_CONDITIONAL(WITH_GNOME_PRINT, test x$enable_print = xgnome)
111 AM_CONDITIONAL(WITH_GTK_PRINT, test x$enable_print = xgtk)
114 dnl ========= Check for DBUS
115 PKG_CHECK_MODULES([DBUS], [dbus-glib-1 >= $DBUS_GLIB_REQUIRED],
116 [enable_dbus=yes],[enable_dbus=no])
117 AC_SUBST([DBUS_CFLAGS])
118 AC_SUBST([DBUS_LIBS])
120 if test "x$enable_dbus" = "xno"; then
121 AC_MSG_WARN([DBUS support is disabled since dbus $DBUS_GLIB_REQUIRED or higher was not found])
124 if test "x$enable_dbus" = "xyes" ; then
125 AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool], [no])
127 if test x$DBUS_BINDING_TOOL = "xno" ; then
128 AC_MSG_ERROR([dbus-binding-tool executable not found in your path - should be installed with dbus glib bindings])
131 AC_DEFINE([ENABLE_DBUS],[1],[Define if DBUS support is enabled])
134 SHELL_CFLAGS="$SHELL_CORE_CFLAGS $DBUS_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE"
135 SHELL_LIBS="$SHELL_CORE_LIBS $DBUS_LIBS -lz"
136 AC_SUBST(SHELL_CFLAGS)
139 FRONTEND_CFLAGS="$FRONTEND_CORE_CFLAGS"
140 FRONTEND_LIBS="$FRONTEND_CORE_LIBS -lz"
141 AC_SUBST(FRONTEND_CFLAGS)
142 AC_SUBST(FRONTEND_LIBS)
144 AM_CONDITIONAL([ENABLE_DBUS], [test "x$enable_dbus" = "xyes"])
145 AM_CONDITIONAL([DBUS_TOOL_NO_PREFIX], [test "x$DBUS_VERSION" = "x33"])
147 dnl Check for Nautilus property page build
148 AC_ARG_ENABLE(nautilus,
149 AC_HELP_STRING([--enable-nautilus],[compile the nautilus plugin]),
150 [case "${enableval}" in
151 yes) ENABLE_NAUTILUS=yes ;;
152 no) ENABLE_NAUTILUS=no ;;
153 *) AC_MSG_ERROR(bad value ${enableval} for --enable-nautilus) ;;
155 [ENABLE_NAUTILUS=yes]) dnl Default value
157 if test x$ENABLE_NAUTILUS = "xyes" ; then
158 PKG_CHECK_MODULES(NAUTILUS, gtk+-x11-2.0 $MM gthread-2.0 libnautilus-extension,
159 [HAVE_NAUTILUS=yes], [HAVE_NAUTILUS=no])
162 AC_SUBST(NAUTILUS_CFLAGS)
163 AC_SUBST(NAUTILUS_LIBS)
164 if test x$HAVE_NAUTILUS = "xyes"; then
165 AC_DEFINE(HAVE_NAUTILUS, 1, [defined if you build the nautilus plugin])
167 AM_CONDITIONAL(HAVE_NAUTILUS, test x$HAVE_NAUTILUS = "xyes")
169 dnl Check for GtkRecent
170 PKG_CHECK_MODULES(GTK_RECENT, gtk+-2.0 >= 2.10.0,
171 [HAVE_GTK_RECENT=yes], [HAVE_GTK_RECENT=no])
172 if test x$HAVE_GTK_RECENT = xyes; then
173 AC_DEFINE([HAVE_GTK_RECENT], [1], [defined if GtkRecent is available])
175 AM_CONDITIONAL(HAVE_GTK_RECENT, test x$HAVE_GTK_RECENT = "xyes")
177 dnl GConf configuration
180 AC_PATH_PROG([GCONFTOOL], [gconftool-2], [no])
181 if test "x$GCONFTOOL" = "xno"; then
182 AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
185 dnl ================== portability checks ===========================================
188 AC_CHECK_HEADERS([execinfo.h])
190 AC_CHECK_DECL([_NL_MEASUREMENT_MEASUREMENT],[
191 AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT],[1],[Define if _NL_MEASUREMENT_MEASUREMENT is available])
192 ],[],[#include <langinfo.h>])
194 dnl ================== pdf checks ===================================================
196 [AC_HELP_STRING([--enable-pdf], [Compile with pdf support])],enable_pdf="$enableval",enable_pdf=yes)
198 if test "x$enable_pdf" = "xyes"; then
199 POPPLER_REQUIRED=0.5.4
200 PKG_CHECK_MODULES(POPPLER, poppler-glib >= $POPPLER_REQUIRED,enable_pdf=yes,enable_pdf=no)
202 if test "x$enable_pdf" = "xyes"; then
203 AC_DEFINE([ENABLE_PDF], [1], [Enable pdf support.])
204 FRONTEND_LIBS="$FRONTEND_LIBS $POPPLER_LIBS"
205 SHELL_LIBS="$SHELL_LIBS $POPPLER_LIBS"
206 SHELL_CFLAGS="$SHELL_CFLAGS $POPPLER_CFLAGS"
208 evince_save_LIBS=$LIBS
209 LIBS="$LIBS $FRONTEND_LIBS"
210 AC_CHECK_FUNCS(poppler_page_render)
211 AC_CHECK_FUNCS(poppler_page_get_duration)
212 AC_CHECK_FUNCS(poppler_page_get_image_mapping)
213 LIBS=$evince_save_LIBS
215 PKG_CHECK_MODULES(CAIRO_PDF, cairo-pdf, enable_cairo_pdf=yes, enable_cairo_pdf=no)
216 if test x$enable_cairo_pdf == xyes; then
217 AC_DEFINE([HAVE_CAIRO_PDF], [1], [defined if cairo-pdf is available])
220 AC_MSG_WARN("PDF support is disabled since poppler-glib library version $POPPLER_REQUIRED or newer not found")
224 AM_CONDITIONAL(ENABLE_PDF, test x$enable_pdf = xyes)
225 dnl ================== end of pdf checks ============================================
227 dnl ================== ggv checks ===================================================
229 [AC_HELP_STRING([--disable-ps], [Compile without PostScript backend])],enable_ps=$enableval,enable_ps="yes")
231 if test x$enable_ps = xyes; then
232 AC_DEFINE([ENABLE_PS], [1], [Enable support for PostScript files.])
235 AM_CONDITIONAL(ENABLE_PS, test x$enable_ps = xyes)
237 if test x$enable_ps = xyes; then
239 dnl check for GS version
240 AC_MSG_CHECKING(for Ghostscript version...)
241 GS_VERSION=`gs --version | head -n 1 | sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
242 AC_MSG_RESULT(found $GS_VERSION)
243 if test "$GS_VERSION" -lt "7"; then
244 AC_MSG_ERROR([You need Ghostscript version >= 7 in order to run evince])
247 AC_ARG_WITH(gs-aa-params,
248 [AC_HELP_STRING([--with-gs-aa-params], [Define antialiasing params for ghostscript])],AA_PARAMS=$withval,
249 AA_PARMS="-sDEVICE=x11alpha -dNOPLATFONTS -dGraphicsAlphaBits=4 -dTextAlphaBits=4 -dDOINTERPOLATE"
251 AC_DEFINE_UNQUOTED(ALPHA_PARAMS, "$AA_PARMS", [Anti-aliasing parameters for Ghostscript.])
252 AC_MSG_RESULT(Antialiasing parameters for Ghostscript: $AA_PARMS)
255 dnl ======================== End of ggv checks =================================
257 dnl ================== tiff checks ===================================================
259 [AC_HELP_STRING([--enable-tiff], [Compile with support of multipage tiff])],enable_tiff="$enableval",enable_tiff=yes)
261 if test "x$enable_tiff" = "xyes"; then
262 AC_CHECK_HEADERS([tiff.h],enable_tiff=yes,enable_tiff=no,)
263 if test "x$enable_tiff" = "xyes"; then
264 AC_CHECK_LIB([tiff],TIFFOpen,enable_tiff=yes,enable_tiff=no,"-lz")
265 AC_CHECK_LIB([tiff],TIFFReadRGBAImageOriented,enable_tiff=yes,enable_tiff=no,"-lz")
267 if test "x$enable_tiff" = "xyes"; then
268 AC_DEFINE([ENABLE_TIFF], [1], [Enable multipage tiff support.])
269 FRONTEND_LIBS="$FRONTEND_LIBS -ltiff"
270 SHELL_LIBS="$SHELL_LIBS -ltiff"
272 AC_MSG_WARN("Tiff support is disabled since tiff library version 3.6 or newer not found")
276 AM_CONDITIONAL(ENABLE_TIFF, test x$enable_tiff = xyes)
277 dnl ================== end of tiff checks ============================================
279 dnl ================== djvu checks ===================================================
282 [AC_HELP_STRING([--enable-djvu], [Compile with support of djvu viewer])],enable_djvu="$enableval",enable_djvu=no)
284 if test "x$enable_djvu" = "xyes"; then
286 DJVULIBRE_REQUIRED=3.5.17
288 PKG_CHECK_MODULES(DJVU, ddjvuapi >= $DJVULIBRE_REQUIRED, enable_djvu=yes, enable_djvu=no)
290 if test "x$enable_djvu" = "xyes"; then
291 AC_DEFINE([ENABLE_DJVU], [1], [Enable djvu viewer support.])
294 ** Djvu support is disabled since a recent version of the djvulibre
295 ** library was not found. You need at least djvulibre-3.5.17 which
296 ** can be found on http://djvulibre.djvuzone.org
301 AM_CONDITIONAL(ENABLE_DJVU, test x$enable_djvu = xyes)
303 dnl ================== End of djvu checks ===================================================
305 dnl ================== dvi checks ===================================================
308 [AC_HELP_STRING([--enable-dvi], [Compile with support of dvi viewer])],enable_dvi="$enableval",enable_dvi=no)
311 [AC_HELP_STRING([--enable-t1lib], [Compile with support of t1lib for type1 fonts in dvi])],enable_type1_fonts="$enableval",enable_type1_fonts=no)
313 if test "x$enable_dvi" = "xyes"; then
317 AC_CHECK_SIZEOF(long, 4)
318 AC_CHECK_SIZEOF(int, 4)
319 AC_CHECK_SIZEOF(short, 2)
320 AC_CHECK_SIZEOF(void *, 4)
321 AC_CHECK_LIB([kpathsea],[kpse_init_prog],[enable_dvi=yes],[enable_dvi=no])
323 if test "x$enable_dvi" = "xyes"; then
324 AC_DEFINE([ENABLE_DVI], [1], [Enable dvi viewer support.])
326 AC_MSG_WARN("Dvi support is disabled since kpathsea library is not found. Check your TeX installation.")
329 AM_CONDITIONAL(ENABLE_DVI, test x$enable_dvi = xyes)
331 if test "x$enable_dvi" = "xyes"; then
332 if test "x$enable_type1_fonts" = "xyes"; then
333 AC_CHECK_LIB([t1],T1_InitLib,enable_type1_fonts=yes,enable_type1_fonts=no,[-lm])
336 if test "x$enable_type1_fonts" = xyes; then
337 AC_DEFINE([WITH_TYPE1_FONTS], [1], [Enable t1lib support in dvi.])
340 enable_type1_fonts=no
342 AM_CONDITIONAL(WITH_TYPE1_FONTS, test x$enable_type1_fonts = xyes)
344 dnl ================== End of dvi checks ===================================================
346 dnl ================== pixbuf checks ===================================================
348 AC_ARG_ENABLE(pixbuf,
349 [AC_HELP_STRING([--enable-pixbuf], [Compile with support of pixbuf])],enable_pixbuf="$enableval",enable_pixbuf=no)
350 if test "x$enable_pixbuf" = "xyes"; then
351 AC_DEFINE([ENABLE_PIXBUF], [1], [Enable pixbuf support.])
353 AM_CONDITIONAL(ENABLE_PIXBUF, test x$enable_pixbuf = xyes)
355 dnl ================== End of pixbuf checks ===================================================
357 dnl ================== comic book checks ===================================================
359 AC_ARG_ENABLE(comics,
360 [AC_HELP_STRING([--enable-comics], [Compile with support for comic book archives])],enable_comics="$enableval",enable_comics=no)
361 if test "x$enable_comics" = "xyes"; then
362 AC_DEFINE([ENABLE_COMICS], [1], [Enable support for comics.])
364 AM_CONDITIONAL(ENABLE_COMICS, test x$enable_comics = xyes)
366 dnl ================== End of comic book checks ============================================
368 dnl ================== impress book checks ===================================================
370 AC_ARG_ENABLE(impress,
371 [AC_HELP_STRING([--enable-impress], [Compile with support for impress presentations])],enable_impress="$enableval",enable_impress=no)
372 if test "x$enable_impress" = "xyes"; then
373 AC_DEFINE([ENABLE_IMPRESS], [1], [Enable support for impress.])
375 AM_CONDITIONAL(ENABLE_IMPRESS, test x$enable_impress = xyes)
377 dnl ================== End of impress book checks ============================================
379 dnl =================== Mime types list ====================================================
381 if test "x$enable_pdf" = "xyes" ; then
382 EVINCE_MIME_TYPES="application/pdf"
384 if test "x$enable_ps" = "xyes" ; then
385 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/postscript;application/x-gzpostscript"
387 if test "x$enable_dvi" = "xyes"; then
388 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/x-dvi"
390 if test "x$enable_djvu" = "xyes"; then
391 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;image/vnd.djvu"
393 if test "x$enable_tiff" = "xyes"; then
394 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;image/tiff"
396 if test "x$enable_comics" = "xyes"; then
397 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/x-cbr;application/x-cbz"
399 if test "x$enable_pixbuf" = "xyes"; then
400 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;image/*"
402 if test "x$enable_impress" = "xyes"; then
403 EVINCE_MIME_TYPES="$EVINCE_MIME_TYPES;application/vnd.sun.xml.impress;application/vnd.oasis.opendocument.presentation"
405 AC_SUBST(EVINCE_MIME_TYPES)
409 backend/comics/Makefile
410 backend/djvu/Makefile
412 backend/dvi/mdvi-lib/Makefile
413 backend/impress/Makefile
415 backend/pixbuf/Makefile
417 backend/tiff/Makefile
419 cut-n-paste/recent-files/Makefile
420 cut-n-paste/toolbar-editor/Makefile
421 cut-n-paste/zoom-control/Makefile
422 cut-n-paste/totem-screensaver/Makefile
423 data/evince.desktop.in
424 data/icons/16x16/Makefile
425 data/icons/22x22/Makefile
426 data/icons/24x24/Makefile
427 data/icons/48x48/Makefile
429 data/icons/scalable/Makefile
445 Print Support......: $enable_print
446 DBUS Support.......: $enable_dbus
447 Nautilus Plugin....: $HAVE_NAUTILUS
449 PDF Backend........: $enable_pdf
450 PostScript Backend.: $enable_ps
451 TIFF Backend.......: $enable_tiff
452 DJVU Backend.......: $enable_djvu
453 DVI Backend........: $enable_dvi
454 Pixbuf Backend.....: $enable_pixbuf
455 Comics Backend.....: $enable_comics
456 Impress Backend....: $enable_impress