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