]> www.fi.muni.cz Git - evince.git/blob - configure.ac
Make smclient optional
[evince.git] / configure.ac
1 # *****************************************************************************
2 # Versioning
3 # *****************************************************************************
4
5 m4_define([ev_major_version],[2])
6 m4_define([ev_minor_version],[27])
7 m4_define([ev_micro_version],[1])
8 m4_define([ev_extra_version],[])
9 m4_define([ev_version],[ev_major_version.ev_minor_version.ev_micro_version()ev_extra_version])
10
11 # The evince API version
12 m4_define([ev_api_version], [2.25])
13
14 # Libtool versioning. The backend and view libraries have separate versions.
15 # Before making a release, the libtool version should be modified.
16 # The string is of the form C:R:A.
17 # - If interfaces have been changed or added, but binary compatibility has
18 #   been preserved, change to C+1:0:A+1
19 # - If binary compatibility has been broken (eg removed or changed interfaces)
20 #   change to C+1:0:0
21 # - If the interface is the same as the previous version, change to C:R+1:A
22
23 # Libtool version of the backend library
24 m4_define([ev_document_lt_current],[1])
25 m4_define([ev_document_lt_revision],[0])
26 m4_define([ev_document_lt_age],[0])
27 m4_define([ev_document_lt_version_info],[ev_document_lt_current:ev_document_lt_revision:ev_document_lt_age])
28 m4_define([ev_document_lt_current_minus_age],[m4_eval(ev_document_lt_current - ev_document_lt_age)])
29
30 # Libtool version of the view library
31 m4_define([ev_view_lt_current],[1])
32 m4_define([ev_view_lt_revision],[0])
33 m4_define([ev_view_lt_age],[0])
34 m4_define([ev_view_lt_version_info],[ev_view_lt_current:ev_view_lt_revision:ev_view_lt_age])
35 m4_define([ev_view_lt_current_minus_age],[m4_eval(ev_view_lt_current - ev_view_lt_age)])
36
37 # Binary version for the document backends
38 m4_define([ev_binary_version],[ev_document_lt_current])
39
40 # *****************************************************************************
41
42 AC_PREREQ([2.57])
43 AC_INIT([Evince],[ev_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=evince],[evince])
44 AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip])
45
46 AC_CONFIG_HEADERS([config.h])
47 AC_CONFIG_MACRO_DIR([m4])
48
49 if test -z "$enable_maintainer_mode"; then
50   enable_maintainer_mode=yes
51 fi
52 AM_MAINTAINER_MODE([enable])
53
54 AM_PROG_LIBTOOL
55
56 AC_ISC_POSIX
57 AC_PROG_CC
58 AM_PROG_CC_STDC
59 AM_PROG_CC_C_O
60 AC_PROG_CXX
61 AC_STDC_HEADERS
62 IT_PROG_INTLTOOL([0.35.0])
63 AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
64 AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
65
66 GNOME_COMMON_INIT
67 GNOME_DOC_INIT
68 GNOME_MAINTAINER_MODE_DEFINES
69 GNOME_COMPILE_WARNINGS
70 GNOME_CXX_WARNINGS
71
72 GTK_DOC_CHECK(1.0)
73
74 GETTEXT_PACKAGE=evince
75 AC_SUBST(GETTEXT_PACKAGE)
76 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
77 AM_GLIB_GNU_GETTEXT
78
79 # Check which platform to use
80
81 AC_MSG_CHECKING([for which platform to build])
82 AC_ARG_WITH([platform],
83   [AS_HELP_STRING([--with-platform=gnome|win32|hildon (default: gnome)])],
84   [case "$withval" in
85     gnome|win32|hildon) ;;
86     *) AC_MSG_ERROR([invalid argument "$withval" for --with-platform]) ;;
87    esac],
88   [case "$host" in
89      *-*-mingw*|*-*-cygwin*) with_platform="win32" ;;
90      *) with_platform=gnome ;;
91    esac])
92
93 AC_MSG_RESULT([$with_platform])
94
95 if test "$with_platform" = "win32"; then
96   AC_CHECK_TOOL([WINDRES],[windres])
97   AC_MSG_CHECKING([for native Win32])
98   case "$host" in
99     *-*-mingw*)
100       os_win32=yes
101       ;;
102     *)
103       os_win32=no
104       ;;
105   esac
106   AC_MSG_RESULT([$os_win32])
107 fi
108
109 AM_CONDITIONAL([PLATFORM_WIN32],[test "with_platform" = "win32"])
110 AM_CONDITIONAL([OS_WIN32],[test "$os_win32" = "yes"])
111
112 dnl Specify required versions of dependencies
113 DBUS_GLIB_REQUIRED=0.70
114 GTK_REQUIRED=2.12.0
115 GLIB_REQUIRED=2.18.0
116 KEYRING_REQUIRED=2.22.0
117 AC_SUBST([GLIB_REQUIRED])
118 AC_SUBST([GTK_REQUIRED])
119
120 GNOME_ICON_THEME_REQUIRED=2.17.1
121 LIBXML_REQUIRED=2.5.0
122
123 dnl Check dependencies
124
125 # LIB_CFLAGS       for helpers and generic widgets. (libdocument, cut-and-paste)
126 # BACKEND_CFLAGS   for backend implementations.
127 # FRONTEND_CFLAGS  for frontend implementations. (properties, thumbnailer)
128 # FRONTEND_LIBS
129 # SHELL_CFLAGS     for shell implementation.
130 # SHELL_LIBS
131
132 PKG_CHECK_MODULES(LIBDOCUMENT, gtk+-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED)
133 PKG_CHECK_MODULES(LIBVIEW, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
134 PKG_CHECK_MODULES(BACKEND, gtk+-2.0 >= $GTK_REQUIRED)
135 PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
136 PKG_CHECK_MODULES(PREVIEWER, gtk+-2.0 >= $GTK_REQUIRED gtk+-unix-print-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED)
137 PKG_CHECK_MODULES(SHELL_CORE, libxml-2.0 >= $LIBXML_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gtk+-unix-print-2.0 >= $GTK_REQUIRED gio-2.0 >= $GLIB_REQUIRED gthread-2.0)
138
139 # *********
140 # SM client
141 # *********
142
143 GDK_TARGET="$($PKG_CONFIG --variable target gdk-2.0)"
144
145 SMCLIENT_PKGS=
146 AC_MSG_CHECKING([which smclient backend to use])
147 AC_ARG_WITH([smclient],
148   [AS_HELP_STRING([--with-smclient-backend],[which smclient backend to use (no|xsmp|win32|quartz)])],
149   [],
150   [case "$GDK_TARGET" in
151     x11) case "$with_platform" in
152            gnome) with_smclient=xsmp SMCLIENT_PKGS="sm >= 1.0.0" ;;
153            *) with_smclient=no ;;
154          esac ;;
155     win32|quartz) with_smclient=$GDK_TARGET ;;
156     *) with_smclient=no ;;
157    esac])
158 AC_MSG_RESULT([$with_smclient])
159
160 if test "$with_smclient" != "no"; then
161   AC_DEFINE([WITH_SMCLIENT],[1],[Define if smclient is enabled])
162
163   PKG_CHECK_MODULES([SMCLIENT],[gtk+-2.0 gthread-2.0 $SMCLIENT_PKGS])
164   AC_SUBST([SMCLIENT_CFLAGS])
165   AC_SUBST([SMCLIENT_LIBS])
166 fi
167
168 AM_CONDITIONAL([WITH_SMCLIENT],[test "$with_smclient" != "no"])
169 AM_CONDITIONAL([WITH_SMCLIENT_XSMP],[test "$with_smclient" = "xsmp"])
170 AM_CONDITIONAL([WITH_SMCLIENT_WIN32],[test "$with_smclient" = "win32"])
171 AM_CONDITIONAL([WITH_SMCLIENT_QUARTZ],[test "$with_smclient" = "quartz"])
172
173 # ***
174
175 BACKEND_LIBTOOL_FLAGS="-module -avoid-version -no-undefined -export-symbols \$(top_srcdir)/backend/backend.symbols"
176 AC_SUBST(BACKEND_LIBTOOL_FLAGS)
177
178 if test "$with_platform" = "gnome"; then
179   PKG_CHECK_EXISTS([gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED])
180 fi
181
182 dnl ===== Check special functions
183 evince_save_LIBS=$LIBS
184 LIBS="$LIBS $BACKEND_LIBS"
185 AC_CHECK_FUNCS(cairo_format_stride_for_width)
186 LIBS=$evince_save_LIBS
187
188 # ******************
189 # GKT+ Unix Printing
190 # ******************
191
192 AC_MSG_CHECKING([whether gtk+-unix-print support is requested])
193 AC_ARG_WITH([gtk-unix-print],
194   [AS_HELP_STRING([--without-gtk-unix-print],[disable the use of gtk-unix-print])],
195   [],[case "$os_win32" in
196         yes) with_gtk_unix_print=no ;;
197         *) with_gtk_unix_print=yes ;;
198       esac])
199 AC_MSG_RESULT([$with_gtk_unix_print])
200
201 if test "$with_gtk_unix_print" = "yes"; then
202    PKG_CHECK_MODULES(GTKUNIXPRINT, [gtk+-unix-print-2.0 >= $GTK_REQUIRED])
203    AC_DEFINE([GTKUNIXPRINT_ENABLED], [1], [Define if gtk+-unix-print is enabled.])
204 fi
205
206 # *********************
207 # GNOME Keyring support
208 # *********************
209
210 AC_ARG_WITH(keyring,
211         [AS_HELP_STRING([--without-keyring],[disable the use of gnome-keyring])],
212         [],
213         [case "$with_platform" in
214            gnome) with_keyring=yes ;;
215            hildon|win32) with_keyring=no ;;
216          esac])
217
218 AM_CONDITIONAL([WITH_KEYRING],[test "$with_keyring" = "yes"])
219
220 if test "$with_keyring" = "yes"; then
221         PKG_CHECK_MODULES(KEYRING, gnome-keyring-1 >= $KEYRING_REQUIRED)
222         AC_DEFINE([WITH_KEYRING],[1],[Define if KEYRING support is enabled])
223 fi
224
225 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`  
226 AC_SUBST(GLIB_GENMARSHAL)
227
228 dnl ========= Check for DBUS
229 AC_ARG_ENABLE(dbus,
230         [AC_HELP_STRING([--enable-dbus], [Compile with support for dbus])],
231         enable_dbus="$enableval",enable_dbus=yes)
232 if test "x$enable_dbus" != "xno"; then
233         PKG_CHECK_MODULES([DBUS], [dbus-glib-1 >= $DBUS_GLIB_REQUIRED],
234         [enable_dbus=yes],[enable_dbus=no])
235
236         if test "x$enable_dbus" = "xno"; then
237            AC_MSG_WARN([DBUS support is disabled since dbus $DBUS_GLIB_REQUIRED or higher was not found])
238         fi         
239
240         if test "x$enable_dbus" = "xyes" ; then
241                 AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool], [no])
242
243                 if test x$DBUS_BINDING_TOOL = "xno" ; then
244                         AC_MSG_ERROR([dbus-binding-tool executable not found in your path - should be installed with dbus glib bindings])
245                 fi                                            
246
247                 AC_DEFINE([ENABLE_DBUS],[1],[Define if DBUS support is enabled])
248         fi
249 fi
250
251 AC_SUBST([DBUS_CFLAGS])
252 AC_SUBST([DBUS_LIBS])
253
254 AM_CONDITIONAL([ENABLE_DBUS], [test "x$enable_dbus" = "xyes"])
255 AM_CONDITIONAL([DBUS_TOOL_NO_PREFIX], [test "x$DBUS_VERSION" = "x33"])
256
257 dnl ========= Check for GConf
258
259 AC_MSG_CHECKING([whether GConf support is requested])
260 AC_ARG_WITH([gconf],
261   [AS_HELP_STRING([--without-gconf],[disable the use of gconf])],
262   [],
263   [case "$os_win32" in
264      yes) with_gconf=no ;;
265      *) with_gconf=yes ;;
266    esac])
267 AC_MSG_RESULT([$with_gconf])
268
269 AM_CONDITIONAL([WITH_GCONF],[test "$with_gconf" = "yes"])
270
271 if test "$with_gconf" = "yes"; then
272    PKG_CHECK_MODULES([GCONF],[gconf-2.0])
273    AC_DEFINE([WITH_GCONF],[1],[Define if GConf support is enabled])
274 fi
275
276 AM_GCONF_SOURCE_2
277
278 AC_PATH_PROG([GCONFTOOL], [gconftool-2], [false])
279 if test "$with_gconf" = "yes" -a "$GCONFTOOL" = "false"; then
280   AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
281 fi
282
283 dnl Debug mode
284
285 AC_ARG_ENABLE([debug],
286         AC_HELP_STRING([--enable-debug],
287                         [Turn on evince debug mode]),,
288                 [enable_debug=no])
289                 
290 if test "x$enable_debug" = "xyes"; then
291    DEBUG_FLAGS="-DEV_ENABLE_DEBUG"
292 fi
293
294
295 LIBDOCUMENT_CFLAGS="$LIBDOCUMENT_CFLAGS $DEBUG_FLAGS"
296 LIBDOCUMENT_LIBS="$LIBDOCUMENT_LIBS"
297 AC_SUBST(LIBDOCUMENT_CFLAGS)
298 AC_SUBST(LIBDOCUMENT_LIBS)
299
300 LIBVIEW_CFLAGS="$LIBVIEW_CFLAGS $DEBUG_FLAGS"
301 LIBVIEW_LIBS="$LIBVIEW_LIBS"
302 AC_SUBST(LIBVIEW_CFLAGS)
303 AC_SUBST(LIBVIEW_LIBS)
304
305 BACKEND_CFLAGS="$BACKEND_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
306 AC_SUBST(BACKEND_CFLAGS)
307 AC_SUBST(BACKEND_LIBS)
308
309 SHELL_CFLAGS="$SHELL_CORE_CFLAGS $GTKUNIXPRINT_CFLAGS $DBUS_CFLAGS $KEYRING_CFLAGS $GCONF_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
310 SHELL_LIBS="$SHELL_CORE_LIBS $GTKUNIXPRINT_CFLAGS $DBUS_LIBS $KEYRING_LIBS $GCONF_LIBS -lz"
311 AC_SUBST(SHELL_CFLAGS)
312 AC_SUBST(SHELL_LIBS)
313
314 FRONTEND_CFLAGS="$FRONTEND_CORE_CFLAGS $DEBUG_FLAGS"
315 FRONTEND_LIBS="$FRONTEND_CORE_LIBS -lz"
316 AC_SUBST(FRONTEND_CFLAGS)
317 AC_SUBST(FRONTEND_LIBS)
318
319 # Check for Nautilus property page build
320 AC_ARG_ENABLE([nautilus],
321   [AS_HELP_STRING([--enable-nautilus],[compile the nautilus plugin])],
322   [],
323   [case "$with_platform" in
324      gnome) enable_nautilus=yes ;;
325      *) enable_nautilus=no ;;
326     esac])
327
328 if test "$enable_nautilus" = "yes" ; then
329   PKG_CHECK_MODULES([NAUTILUS],[gtk+-x11-2.0 $MM gthread-2.0 libnautilus-extension])
330   NAUTILUS_EXTENSION_DIR=`$PKG_CONFIG --variable=extensiondir libnautilus-extension`
331   AC_SUBST([nautilusextensiondir],[$NAUTILUS_EXTENSION_DIR])
332   AC_SUBST(NAUTILUS_CFLAGS)
333   AC_SUBST(NAUTILUS_LIBS)
334
335   AC_DEFINE([HAVE_NAUTILUS],[1], [defined if you build the nautilus plugin])
336 fi
337
338 AM_CONDITIONAL([ENABLE_NAUTILUS],[test "$enable_nautilus" = "yes"])
339
340 # Check for thumbnailer build
341
342 AC_ARG_ENABLE([thumbnailer],
343   [AS_HELP_STRING([--disable-thumbnailer],[disable the GNOME thumbnailer])],
344   [],
345   [case "$with_platform" in
346      gnome) enable_thumbnailer=yes ;;
347      *) enable_thumbnailer=no ;;
348     esac])
349
350 AM_CONDITIONAL([ENABLE_THUMBNAILER],[test "$enable_thumbnailer" = "yes"])
351
352 # ***************
353 # Print Previewer
354 # ***************
355
356 AC_ARG_ENABLE([previewer],
357   [AS_HELP_STRING([--disable-previewer],[disable the GNOME Document Previewer])],
358   [],
359   [case "$with_platform" in
360       gnome) enable_previewer=yes ;;
361       *) enable_previewer=no ;;
362     esac])
363
364 if test x$enable_previewer = "xyes" ; then
365   PKG_CHECK_MODULES([PREVIEWER],[gtk+-2.0 >= $GTK_REQUIRED gtk+-unix-print-2.0 >= $GTK_REQUIRED gthread-2.0 gio-2.0 >= $GLIB_REQUIRED])
366 fi
367
368 AM_CONDITIONAL([ENABLE_PREVIEWER],[test "$enable_previewer" = "yes"])
369 PREVIEWER_CFLAGS="$PREVIEWER_CFLAGS $GTKUNIXPRINT_CFLAGS $DEBUG_FLAGS"
370 PREVIEWER_LIBS="$PREVIEWER_LIBS $GTKUNIXPRINT_LIBS -lz"
371 AC_SUBST(PREVIEWER_CFLAGS)
372 AC_SUBST(PREVIEWER_LIBS)
373
374 # ***
375 # GIR
376 # ***
377
378 AC_MSG_CHECKING([whether GObject introspection is requested])
379 AC_ARG_ENABLE([introspection],
380         AS_HELP_STRING([--enable-introspection],[Enable GObject introspection]),
381         [],[enable_introspection=no])
382 AC_MSG_RESULT([$enable_introspection])
383
384 G_IR_SCANNER=
385 G_IR_COMPILER=
386 G_IR_GENERATE=
387 GIRDIR=
388 GIRTYPELIBDIR=
389
390 if test "$enable_introspection" = "yes"; then
391   GOBJECT_INTROSPECTION_REQUIRED=0.6
392   PKG_CHECK_MODULES([GOBJECT_INTROSPECTION],[gobject-introspection-1.0 >= $GOBJECT_INTROSPECTION_REQUIRED])
393
394   G_IR_SCANNER="$($PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0)"
395   G_IR_COMPILER="$($PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0)"
396   G_IR_GENERATE="$($PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0)"
397   GIRDIR="$($PKG_CONFIG --variable=girdir gobject-introspection-1.0)"
398   GIRTYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
399 fi
400
401 AC_SUBST([G_IR_SCANNER])
402 AC_SUBST([G_IR_COMPILER])
403 AC_SUBST([G_IR_GENERATE])
404 AC_SUBST([GIRDIR])
405 AC_SUBST([GIRTYPELIBDIR])
406
407 AM_CONDITIONAL([ENABLE_INTROSPECTION],[test "$enable_introspection" = "yes"])
408
409 dnl ================== portability checks ===========================================
410
411 dnl for backtrace()
412 AC_CHECK_HEADERS([execinfo.h])
413
414 AC_CHECK_DECL([_NL_MEASUREMENT_MEASUREMENT],[
415   AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT],[1],[Define if _NL_MEASUREMENT_MEASUREMENT is available])
416   ],[],[#include <langinfo.h>])
417
418 dnl ================== pdf checks ===================================================
419 AC_ARG_ENABLE(pdf,
420               [AC_HELP_STRING([--enable-pdf], [Compile with pdf support])],enable_pdf="$enableval",enable_pdf=yes)
421
422 if test "x$enable_pdf" = "xyes"; then
423     POPPLER_REQUIRED=0.11.0
424     PKG_CHECK_MODULES(POPPLER, poppler-glib >= $POPPLER_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED,enable_pdf=yes,enable_pdf=no)
425
426     if test "x$enable_pdf" = "xyes"; then
427             AC_DEFINE([ENABLE_PDF], [1], [Enable pdf support.])
428             SHELL_LIBS="$SHELL_LIBS $POPPLER_LIBS"
429             SHELL_CFLAGS="$SHELL_CFLAGS $POPPLER_CFLAGS"
430
431             evince_save_LIBS=$LIBS
432             LIBS="$LIBS $POPPLER_LIBS"
433             AC_CHECK_FUNCS(poppler_page_render)
434             AC_CHECK_FUNCS(poppler_page_get_image)
435             LIBS=$evince_save_LIBS
436
437             PKG_CHECK_MODULES(CAIRO_PDF, cairo-pdf, enable_cairo_pdf=yes, enable_cairo_pdf=no)
438             if test x$enable_cairo_pdf = xyes; then
439                     AC_DEFINE([HAVE_CAIRO_PDF], [1], [defined if cairo-pdf is available])
440             fi
441
442             PKG_CHECK_MODULES(CAIRO_PS, cairo-ps, enable_cairo_ps=yes, enable_cairo_ps=no)
443             if test x$enable_cairo_ps = xyes; then
444                     AC_DEFINE([HAVE_CAIRO_PS], [1], [defined if cairo-ps is available])
445             fi
446     else
447             AC_MSG_WARN("PDF support is disabled since poppler-glib library version $POPPLER_REQUIRED or newer not found")
448     fi 
449 fi
450
451 AM_CONDITIONAL(ENABLE_PDF, test x$enable_pdf = xyes)
452 dnl ================== end of pdf checks ============================================
453
454 dnl libspectre (used by ps and dvi backends)
455 SPECTRE_REQUIRED=0.2.0 
456 PKG_CHECK_MODULES(SPECTRE, libspectre >= $SPECTRE_REQUIRED,have_spectre=yes,have_spectre=no)
457 AM_CONDITIONAL(HAVE_SPECTRE, test x$have_spectre = xyes)
458 if test "x$have_spectre" = "xyes"; then
459    AC_DEFINE([HAVE_SPECTRE], [1], [Have libspectre])
460 fi
461
462 dnl ================== ps checks ====================================================
463 AC_ARG_ENABLE(ps,
464         [AC_HELP_STRING([--disable-ps], [Compile without PostScript backend])],enable_ps=$enableval,enable_ps="yes")
465
466 if test "x$enable_ps" = "xyes"; then
467    if test "x$have_spectre" = "xyes"; then
468       AC_DEFINE([ENABLE_PS], [1], [Enable support for PostScript files.])
469    else
470       enable_ps="no"
471       AC_MSG_WARN([PS support is disabled since libspectre (version >= $SPECTRE_REQUIRED) is needed])
472    fi
473 fi
474 AM_CONDITIONAL(ENABLE_PS, test x$enable_ps = xyes)
475 dnl ======================== End of ps checks ===================================
476
477 dnl ================== tiff checks ===================================================
478 AC_ARG_ENABLE(tiff,
479             [AC_HELP_STRING([--enable-tiff], [Compile with support of multipage tiff])],enable_tiff="$enableval",enable_tiff=yes)
480
481 if test "x$enable_tiff" = "xyes"; then
482     AC_CHECK_HEADERS([tiff.h],enable_tiff=yes,enable_tiff=no,)
483     if test "x$enable_tiff" = "xyes"; then
484         AC_CHECK_LIB([tiff],TIFFOpen,enable_tiff=yes,enable_tiff=no,"-lz")
485         AC_CHECK_LIB([tiff],TIFFReadRGBAImageOriented,enable_tiff=yes,enable_tiff=no,"-lz")
486     fi
487     if test "x$enable_tiff" = "xyes"; then
488             AC_DEFINE([ENABLE_TIFF], [1], [Enable multipage tiff support.])
489     else
490             AC_MSG_WARN("Tiff support is disabled since tiff library version 3.6 or newer not found")
491     fi 
492 fi
493
494 AM_CONDITIONAL(ENABLE_TIFF, test x$enable_tiff = xyes)
495 dnl ================== end of tiff checks ============================================
496
497 dnl ================== djvu checks ===================================================
498
499 AC_ARG_ENABLE(djvu,
500             [AC_HELP_STRING([--enable-djvu], [Compile with support of djvu viewer])],enable_djvu="$enableval",enable_djvu=yes)
501
502 if test "x$enable_djvu" = "xyes"; then
503     DJVULIBRE_REQUIRED=3.5.17
504     PKG_CHECK_MODULES(DJVU, ddjvuapi >= $DJVULIBRE_REQUIRED, enable_djvu=yes, enable_djvu=no)
505
506     if test "x$enable_djvu" = "xyes"; then
507         AC_DEFINE([ENABLE_DJVU], [1], [Enable djvu viewer support.])
508     else
509         AC_MSG_WARN([   
510 ** Djvu support is disabled since a recent version of the djvulibre 
511 ** library was not found. You need at least djvulibre-3.5.17 which 
512 ** can be found on http://djvulibre.djvuzone.org 
513 ])
514     fi 
515 fi
516
517 AM_CONDITIONAL(ENABLE_DJVU, test x$enable_djvu = xyes)
518
519 dnl ================== End of djvu checks ===================================================
520
521 dnl ================== dvi checks ===================================================
522
523 AC_ARG_ENABLE(dvi,
524             [AC_HELP_STRING([--enable-dvi], [Compile with support of dvi viewer])],enable_dvi="$enableval",enable_dvi=yes)
525
526 AC_ARG_ENABLE(t1lib,
527             [AC_HELP_STRING([--enable-t1lib], [Compile with support of t1lib for type1 fonts in dvi])],enable_type1_fonts="$enableval",enable_type1_fonts=no)
528
529 if test "x$enable_dvi" = "xyes"; then
530     AC_C_CONST
531     AC_C_INLINE
532     AC_TYPE_SIZE_T
533     AC_CHECK_SIZEOF(long, 4)
534     AC_CHECK_SIZEOF(int, 4)
535     AC_CHECK_SIZEOF(short, 2)
536     AC_CHECK_SIZEOF(void *, 4)
537     AC_CHECK_LIB([kpathsea],[kpse_init_prog],[enable_dvi=yes],[enable_dvi=no])
538
539     if test "x$enable_dvi" = "xyes"; then
540         AC_DEFINE([ENABLE_DVI], [1], [Enable dvi viewer support.])
541     else
542         AC_MSG_WARN("Dvi support is disabled since kpathsea library is not found. Check your TeX installation.")
543     fi
544 fi
545 AM_CONDITIONAL(ENABLE_DVI, test x$enable_dvi = xyes)
546
547 if test "x$enable_dvi" = "xyes"; then
548     if test "x$enable_type1_fonts" = "xyes"; then
549         AC_CHECK_LIB([t1],T1_InitLib,enable_type1_fonts=yes,enable_type1_fonts=no,[-lm])
550     fi
551
552     if test "x$enable_type1_fonts" = xyes; then
553         AC_DEFINE([WITH_TYPE1_FONTS], [1], [Enable t1lib support in dvi.])
554     fi
555 else 
556     enable_type1_fonts=no
557 fi
558 AM_CONDITIONAL(WITH_TYPE1_FONTS, test x$enable_type1_fonts = xyes)
559
560 dnl ================== End of dvi checks ===================================================
561
562 dnl ================== pixbuf checks ===================================================
563
564 AC_ARG_ENABLE(pixbuf,
565             [AC_HELP_STRING([--enable-pixbuf], [Compile with support of pixbuf])],enable_pixbuf="$enableval",enable_pixbuf=no)
566 if test "x$enable_pixbuf" = "xyes"; then
567         AC_DEFINE([ENABLE_PIXBUF], [1], [Enable pixbuf support.])
568 fi
569 AM_CONDITIONAL(ENABLE_PIXBUF, test x$enable_pixbuf = xyes)
570
571 dnl ================== End of pixbuf checks ===================================================
572
573 dnl ================== comic book checks ===================================================
574  
575 AC_ARG_ENABLE(comics,
576         [AC_HELP_STRING([--enable-comics], [Compile with support for comic book archives])],enable_comics="$enableval",enable_comics=yes)
577 if test "x$enable_comics" = "xyes"; then
578         if test "x$os_win32" = "xyes"; then
579                 # The comics backend is disabled on windows because:
580                 # 1) it uses unix functions from sys/wait.h.
581                 # 2) it uses external decompression tools not generally available on windows.
582                 enable_comics=no
583                 AC_MSG_WARN(The comics backend is not supported on windows.)
584         else
585                 AC_DEFINE([ENABLE_COMICS], [1], [Enable support for comics.])
586         fi
587 fi 
588 AM_CONDITIONAL(ENABLE_COMICS, test x$enable_comics = xyes)
589
590 dnl ================== End of comic book checks ============================================
591
592 dnl ================== impress book checks ===================================================
593
594 AC_ARG_ENABLE(impress,
595         [AC_HELP_STRING([--enable-impress], [Compile with support for impress presentations])],enable_impress="$enableval",enable_impress=no)
596 if test "x$enable_impress" = "xyes"; then
597         AC_DEFINE([ENABLE_IMPRESS], [1], [Enable support for impress.])
598 fi 
599 AM_CONDITIONAL(ENABLE_IMPRESS, test x$enable_impress = xyes)
600
601 dnl ================== End of impress book checks ============================================
602
603 dnl =================== Mime types list ====================================================
604
605 if test "x$enable_pdf" = "xyes" ; then
606         EVINCE_MIME_TYPES="application/pdf;application/x-bzpdf;application/x-gzpdf;"
607 fi
608 if test "x$enable_ps" = "xyes" ; then
609         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/postscript;application/x-bzpostscript;application/x-gzpostscript;image/x-eps;image/x-bzeps;image/x-gzeps;"
610 fi
611 if test "x$enable_dvi" = "xyes"; then
612         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/x-dvi;application/x-bzdvi;application/x-gzdvi;"
613 fi
614 if test "x$enable_djvu" = "xyes"; then
615         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/vnd.djvu;"
616 fi
617 if test "x$enable_tiff" = "xyes"; then
618         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/tiff;"
619 fi
620 if test "x$enable_comics" = "xyes"; then
621         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/x-cbr;application/x-cbz;application/x-cb7;"
622 fi
623 if test "x$enable_pixbuf" = "xyes"; then
624         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}image/*;"
625 fi
626 if test "x$enable_impress" = "xyes"; then
627         EVINCE_MIME_TYPES="${EVINCE_MIME_TYPES}application/vnd.sun.xml.impress;application/vnd.oasis.opendocument.presentation;"
628 fi
629 AC_SUBST(EVINCE_MIME_TYPES)
630
631 AC_CHECK_FUNC(localtime_r, AC_DEFINE(HAVE_LOCALTIME_R, 1, [Defines if localtime_r is available on your system]))
632
633 # Backends directory
634
635 AC_SUBST([backenddir],"\$(libdir)/evince/ev_binary_version/backends")
636 AC_SUBST([backend_binary_version],"ev_binary_version")
637
638 # Versioning
639
640 AC_SUBST([EV_MAJOR_VERSION],[ev_major_version])
641 AC_SUBST([EV_MINOR_VERSION],[ev_minor_version])
642 AC_SUBST([EV_MICRO_VERSION],[ev_micro_version])
643
644 AC_SUBST([EV_API_VERSION],[ev_api_version])
645 AC_SUBST([EV_BINARY_VERSION],[ev_binary_version])
646
647 AC_SUBST([EV_DOCUMENT_LT_VERSION_INFO],[ev_document_lt_version_info])
648 AC_SUBST([EV_DOCUMENT_LT_CURRENT_MINUS_AGE],[ev_document_lt_current_minus_age])
649 AC_SUBST([EV_VIEW_LT_VERSION_INFO],[ev_view_lt_version_info])
650 AC_SUBST([EV_VIEW_LT_CURRENT_MINUS_AGE],[ev_view_lt_current_minus_age])
651
652 # *****************************************************************************
653
654 SHAVE_INIT([], [enable])
655
656 AC_CONFIG_FILES([
657 backend/Makefile
658 backend/comics/Makefile
659 backend/djvu/Makefile
660 backend/dvi/Makefile
661 backend/dvi/mdvi-lib/Makefile
662 backend/impress/Makefile
663 backend/pdf/Makefile
664 backend/pixbuf/Makefile
665 backend/ps/Makefile
666 backend/tiff/Makefile
667 cut-n-paste/Makefile
668 cut-n-paste/gedit-message-area/Makefile
669 cut-n-paste/gimpcellrenderertoggle/Makefile
670 cut-n-paste/smclient/Makefile
671 cut-n-paste/toolbar-editor/Makefile
672 cut-n-paste/zoom-control/Makefile
673 cut-n-paste/totem-screensaver/Makefile
674 data/evince.desktop.in
675 data/Makefile
676 data/icons/Makefile
677 data/icons/16x16/Makefile
678 data/icons/16x16/apps/Makefile
679 data/icons/16x16/actions/Makefile
680 data/icons/22x22/Makefile
681 data/icons/22x22/apps/Makefile
682 data/icons/22x22/actions/Makefile
683 data/icons/24x24/Makefile
684 data/icons/24x24/apps/Makefile
685 data/icons/24x24/actions/Makefile
686 data/icons/32x32/Makefile
687 data/icons/32x32/actions/Makefile
688 data/icons/48x48/Makefile
689 data/icons/48x48/apps/Makefile
690 data/icons/48x48/actions/Makefile
691 data/icons/scalable/Makefile
692 data/icons/scalable/apps/Makefile
693 help/Makefile
694 help/reference/Makefile
695 help/reference/libdocument/Makefile
696 help/reference/libdocument/version.xml
697 help/reference/libview/Makefile
698 help/reference/libview/version.xml
699 help/reference/shell/Makefile
700 help/reference/shell/version.xml
701 libdocument/Makefile
702 libdocument/ev-version.h
703 libmisc/Makefile
704 libview/Makefile
705 Makefile
706 po/Makefile.in
707 previewer/Makefile
708 properties/Makefile
709 shave
710 shave-libtool
711 shell/Makefile
712 test/Makefile
713 thumbnailer/Makefile
714 ])
715
716 AC_CONFIG_FILES(evince-document-[]ev_api_version[].pc:evince-document.pc.in)
717 AC_CONFIG_FILES(evince-view-[]ev_api_version[].pc:evince-view.pc.in)
718
719 AC_OUTPUT
720
721 echo "
722 Configure summary:
723         GConf Support......:  $with_gconf
724         GTK+ Unix Print....:  $with_gtk_unix_print
725         Keyring Support....:  $with_keyring
726         DBUS Support.......:  $enable_dbus
727         SM client support..:  $with_smclient
728         Nautilus Plugin....:  $enable_nautilus
729         Thumbnailer........:  $enable_thumbnailer
730         Previewer..........:  $enable_previewer
731         Gtk-Doc Support....:  $enable_gtk_doc
732         Debug mode.........:  $enable_debug
733         GObj. Introspection:  $enable_introspection
734
735         PDF Backend........:  $enable_pdf
736         PostScript Backend.:  $enable_ps
737         TIFF Backend.......:  $enable_tiff
738         DJVU Backend.......:  $enable_djvu
739         DVI Backend........:  $enable_dvi
740         Pixbuf Backend.....:  $enable_pixbuf
741         Comics Backend.....:  $enable_comics
742         Impress Backend....:  $enable_impress
743 "