configure.ac 10.8 KB
Newer Older
Kristian Høgsberg's avatar
Kristian Høgsberg committed
1
AC_PREREQ(2.59)
2
AC_INIT(poppler, 0.5.2)
Kristian Høgsberg's avatar
Kristian Høgsberg committed
3
4
5
6
7
8
9
10
11
12
13
14
15
16
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
AM_CONFIG_HEADER(config.h)
AM_CONFIG_HEADER(poppler/poppler-config.h)

dnl ##### Checks for programs.
AC_PROG_LIBTOOL
AC_PROG_CC
AC_ISC_POSIX
AC_PROG_CC_STDC
#if test -z "$CXX" -a "$CC" = "gcc"; then
#  CXX="gcc"
#fi
AC_PROG_CXX
AC_PROG_INSTALL
17
AC_CHECK_FUNC(gettimeofday, AC_DEFINE(HAVE_GETTIMEOFDAY, 1, [Defines if gettimeofday is available on your system]))
Kristian Høgsberg's avatar
Kristian Høgsberg committed
18
19

dnl Enable these unconditionally.
20
AC_DEFINE([OPI_SUPPORT], [1], [Generate OPI comments in PS output.])
Kristian Høgsberg's avatar
Kristian Høgsberg committed
21
22
23
AC_DEFINE([MULTITHREADED], [1], [Enable multithreading support.])
AC_DEFINE([TEXTOUT_WORD_LIST], [1], [Enable word list support.])

24
25
26
27
28
29
30
31
dnl Install xpdf headers
AC_ARG_ENABLE(xpdf-headers,
	      AC_HELP_STRING([--enable-xpdf-headers],
	                     [Install unsupported xpdf headers.]),
              enable_xpdf_headers=$enableval,
              enable_xpdf_headers="no")
AM_CONDITIONAL(ENABLE_XPDF_HEADERS, test x$enable_xpdf_headers = xyes)

32
33
AC_ARG_ENABLE(fixedpoint,
[  --enable-fixedpoint     use fixed point (instead of floating point) arithmetic],
34
AC_DEFINE(USE_FIXEDPOINT, [1], [Use fixed point arithmetic]))
35

Kristian Høgsberg's avatar
Kristian Høgsberg committed
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
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_PATH_XTRA
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 ##### Check for extra libraries needed by X.  (LynxOS needs this.)
AC_CHECK_FUNC(gethostbyname)
if test $ac_cv_func_gethostbyname = no; then
  AC_CHECK_LIB(bsd, gethostbyname, X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd")
fi

dnl ##### Checks for library functions.
67
AC_CHECK_FUNCS(popen mkstemp mkstemps)
Kristian Høgsberg's avatar
Kristian Høgsberg committed
68
69
70
71
72
73
74
75
76
77
78
79
80
81

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)
fi

82
83
84
85
86
dnl Test for zlib
AC_ARG_ENABLE(zlib,
	      AC_HELP_STRING([--disable-zlib],
	                     [Don't build against zlib.]),
              enable_zlib=$enableval,
87
              enable_zlib="no")
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
if test x$enable_zlib = xyes; then
  AC_CHECK_LIB([z], [inflate],,
	       AC_MSG_ERROR("*** zlib library not found ***"))
  AC_CHECK_HEADERS([zlib.h],,
		   AC_MSG_ERROR("*** zlib headers not found ***"))
elif test x$enable_zlib = xtry; then
  AC_CHECK_LIB([z], [inflate],
               [enable_zlib="yes"],
	       [enable_zlib="no"])
  AC_CHECK_HEADERS([zlib.h],,
		   [enable_zlib="no"])
fi

if test x$enable_zlib = xyes; then
  ZLIB_LIBS="-lz"
  AC_SUBST(ZLIB_LIBS)
  AC_DEFINE(ENABLE_ZLIB)
fi

AM_CONDITIONAL(BUILD_ZLIB, test x$enable_zlib = xyes)
AH_TEMPLATE([ENABLE_ZLIB],
	    [Use zlib instead of builtin zlib decoder.])
110
111
112
113
114
115
116

dnl Test for libjpeg
AC_ARG_ENABLE(libjpeg,
	      AC_HELP_STRING([--disable-libjpeg],
	                     [Don't build against libjpeg.]),
              enable_libjpeg=$enableval,
              enable_libjpeg="try")
117
if test x$enable_libjpeg != xno; then
118
  POPPLER_FIND_JPEG
119
120
121
122
123
124
125
fi

AM_CONDITIONAL(BUILD_LIBJPEG, test x$enable_libjpeg = xyes)
AH_TEMPLATE([ENABLE_LIBJPEG],
            [Use libjpeg instead of builtin jpeg decoder.])


Kristian Høgsberg's avatar
Kristian Høgsberg committed
126
127
128
dnl Check for freetype headers
FREETYPE_LIBS=
FREETYPE_CFLAGS=
129

130
PKG_CHECK_MODULES(FREETYPE, freetype2,
131
132
133
134
                  [freetype_pkgconfig=yes], [freetype_pkgconfig=no])

if test "x$freetype_pkgconfig" = "xyes"; then

Kristian Høgsberg's avatar
Kristian Høgsberg committed
135
136
  AC_DEFINE(HAVE_FREETYPE_H, 1, [Have FreeType2 include files])

137
138
139
140
else

  AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
  if test "x$FREETYPE_CONFIG" != "xno" ; then
141
	  
142
143
144
    FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
    FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
    AC_DEFINE(HAVE_FREETYPE_H, 1, [Have FreeType2 include files])
145

Kristian Høgsberg's avatar
Kristian Høgsberg committed
146
147
148
149
150
151
152
153
154
155
156
  fi

fi

AC_SUBST(FREETYPE_CFLAGS)
AC_SUBST(FREETYPE_LIBS)

AC_ARG_ENABLE(splash-output,
              AC_HELP_STRING([--disable-splash-output],
	                     [Don't build the Splash graphics backend.]),,
              enable_splash_output="yes")
157
158
159
if test x$enable_splash_output = xyes; then
  PKG_CHECK_MODULES(SPLASH, fontconfig)
fi
Kristian Høgsberg's avatar
Kristian Høgsberg committed
160
AM_CONDITIONAL(BUILD_SPLASH_OUTPUT, test x$enable_splash_output = xyes)
161
162
163
164
AH_TEMPLATE([HAVE_SPLASH], [Use splash for rendering.])
if test x$enable_splash_output = xyes; then
  AC_DEFINE(HAVE_SPLASH)
fi
Kristian Høgsberg's avatar
Kristian Høgsberg committed
165

166
167
CAIRO_VERSION="0.5"
AC_SUBST(CAIRO_VERSION)
Kristian Høgsberg's avatar
Kristian Høgsberg committed
168
169
AC_ARG_ENABLE(cairo-output,
              AC_HELP_STRING([--disable-cairo-output],
170
171
172
                             [Don't build the cairo graphics backend.]),
              enable_cairo_output=$enableval,
              enable_cairo_output="try")
Kristian Høgsberg's avatar
Kristian Høgsberg committed
173
if test x$enable_cairo_output = xyes; then
174
  PKG_CHECK_MODULES(CAIRO, cairo >= $CAIRO_VERSION fontconfig)
175
elif test x$enable_cairo_output = xtry; then
176
  PKG_CHECK_MODULES(CAIRO, cairo >= $CAIRO_VERSION fontconfig,
177
178
                    [enable_cairo_output="yes"],
                    [enable_cairo_output="no"])
Kristian Høgsberg's avatar
Kristian Høgsberg committed
179
180
fi

181
182
183
184
AM_CONDITIONAL(BUILD_CAIRO_OUTPUT, test x$enable_cairo_output = xyes)
AH_TEMPLATE([HAVE_CAIRO], [Use cairo for rendering.])
if test x$enable_cairo_output = xyes; then
  AC_DEFINE(HAVE_CAIRO)
185
186
187
188
189
  CAIRO_FEATURE="#define POPPLER_HAS_CAIRO 1"
  CAIRO_REQ="cairo"
else
  CAIRO_FEATURE="#undef POPPLER_HAS_CAIRO"
  CAIRO_REQ=""
190
fi
191
192
AC_SUBST(CAIRO_FEATURE)
AC_SUBST(CAIRO_REQ)
193

194
AC_ARG_ENABLE(poppler-glib,
195
196
197
198
199
              AC_HELP_STRING([--disable-poppler-glib],
	                     [Don't compile poppler glib wrapper.]),
              enable_poppler_glib=$enableval,
              enable_poppler_glib="try")
if test x$enable_poppler_glib = xyes; then
200
  PKG_CHECK_MODULES(POPPLER_GLIB, gdk-2.0 >= 2.4.0 fontconfig)
201
elif test x$enable_poppler_glib = xtry; then
202
  PKG_CHECK_MODULES(POPPLER_GLIB, gdk-2.0 >= 2.4.0 fontconfig,
203
204
205
                    [enable_poppler_glib="yes"],
                    [enable_poppler_glib="no"])
fi
206
207
208
if test x$enable_poppler_glib = xyes; then
  AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
fi
209
210
AM_CONDITIONAL(BUILD_POPPLER_GLIB, test x$enable_poppler_glib = xyes)

211
212
GTK_DOC_CHECK([1.0])

213
214
215
216
217
218
219
AC_ARG_ENABLE(poppler-qt,
	      AC_HELP_STRING([--disable-poppler-qt],
			     [Don't compile poppler qt wrapper.]),
	      enable_poppler_qt=$enableval,
	      enable_poppler_qt="try")

if test x$enable_poppler_qt = xyes; then
220
  POPPLER_FIND_QT(POPPLER_QT,,)
221
elif test x$enable_poppler_qt = xtry; then
222
223
224
  POPPLER_FIND_QT(POPPLER_QT,
		  [enable_poppler_qt="yes"],
                  [enable_poppler_qt="no"])
225
fi
226
227
AC_SUBST(POPPLER_QT_CXXFLAGS)
AC_SUBST(POPPLER_QT_LIBS)
228
AM_CONDITIONAL(BUILD_POPPLER_QT, test x$enable_poppler_qt = xyes)
229

230
231
232
233
234
235
236
237
238
dnl 
dnl Try Qt4
dnl
AC_ARG_ENABLE(poppler-qt4,
	      AC_HELP_STRING([--disable-poppler-qt4],
			     [Don't compile poppler Qt4 wrapper.]),
	      enable_poppler_qt4=$enableval,
	      enable_poppler_qt4="try")

239
240
241
242
243
244
if test x$enable_poppler_qt4 = xyes; then
  POPPLER_FIND_QT4(POPPLER_QT4)
elif test x$enable_poppler_qt4 = xtry; then
  POPPLER_FIND_QT4(POPPLER_QT4,
		  [enable_poppler_qt4="yes"],
                  [enable_poppler_qt4="no"])
245
fi
246
247
248
249
250

AC_SUBST(POPPLER_QT4_CXXFLAGS)
AC_SUBST(POPPLER_QT4_LIBS)
AM_CONDITIONAL(BUILD_POPPLER_QT4, test x$enable_poppler_qt4 = xyes)

251
if test x$enable_poppler_qt4 = xyes; then
Albert Astals Cid's avatar
Albert Astals Cid committed
252
253
254
  POPPLER_FIND_QT4TEST(POPPLER_QTTEST,
                      [enable_poppler_qt4testlib="yes"],
                      [enable_poppler_qt4testlib="no"])
255
256
  AC_SUBST(POPPLER_QTTEST_CXXFLAGS)
  AC_SUBST(POPPLER_QTTEST_LIBS)
257
else
Albert Astals Cid's avatar
Albert Astals Cid committed
258
  enable_poppler_qt4testlib="no"
259
260
261
262
fi

AM_CONDITIONAL(BUILD_POPPLER_QT4TESTS, test x$enable_poppler_qt4testlib = xyes)

Kristian Høgsberg's avatar
Kristian Høgsberg committed
263
264
AC_ARG_ENABLE(gtk-test,
              AC_HELP_STRING([--disable-gtk-test],
265
266
267
	                     [Don't compile GTK+ test program.]),
              enable_gtk_test=$enableval,
              enable_gtk_test="try")
Kristian Høgsberg's avatar
Kristian Høgsberg committed
268
if test x$enable_gtk_test = xyes; then
269
  PKG_CHECK_MODULES(GTK_TEST, gtk+-2.0 >= 2.2.0 gdk-pixbuf-2.0 libglade-2.0)
270
elif test x$enable_gtk_test = xtry; then
271
  PKG_CHECK_MODULES(GTK_TEST, gtk+-2.0 >= 2.2.0 gdk-pixbuf-2.0 libglade-2.0,
272
273
                    [enable_gtk_test="yes"],
                    [enable_gtk_test="no"])
Kristian Høgsberg's avatar
Kristian Høgsberg committed
274
fi
275
AM_CONDITIONAL(BUILD_GTK_TEST, test x$enable_gtk_test = xyes)
Kristian Høgsberg's avatar
Kristian Høgsberg committed
276

277

278
279
280
281
282
AC_ARG_ENABLE(utils,
              AC_HELP_STRING([--disable-utils],
	                     [Don't compile poppler command line utils.]),
              enable_utils=$enableval,
              enable_utils="yes")
283
284
285
if test x$enable_utils = xyes; then
  PKG_CHECK_MODULES(UTILS, fontconfig)
fi
286
287
AM_CONDITIONAL(BUILD_UTILS, test x$enable_utils = xyes)

288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
AC_ARG_ENABLE(compile-warnings,
              AC_HELP_STRING([--enable-compile-warnings=@<:@no/yes/kde@:>@]
                             [Turn on compiler warnings.]),,
              [enable_compile_warnings="yes"])

if test "x$GCC" != xyes; then
  enable_compile_warnings=no
fi
case "$enable_compile_warnings" in
  no)	;;
  yes)	CXXFLAGS="-Wall -Wno-unused $CXXFLAGS" ;;
  kde)	CXXFLAGS="-Wnon-virtual-dtor -Wno-long-long -Wundef -ansi \
		-D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align \
		-Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith \
		-Wwrite-strings -O2 -Wformat-security \
		-Wmissing-format-attribute -fno-exceptions -fno-check-new \
		-fno-common $CXXFLAGS" ;;
esac

307
308
309
310
311
312
313
314
315
316
317
case $($PKG_CONFIG --version) in
  0.?|0.1[0-7])
    PC_REQUIRES_PRIVATE="";
    PC_REQUIRES="poppler = $VERSION";;
  *)
    PC_REQUIRES_PRIVATE="Requires.private: poppler = $VERSION";
    PC_REQUIRES="";;
esac

AC_SUBST(PC_REQUIRES)
AC_SUBST(PC_REQUIRES_PRIVATE)
318

Kristian Høgsberg's avatar
Kristian Høgsberg committed
319
320
321
322
323
324
AC_OUTPUT([
Makefile
goo/Makefile
fofi/Makefile
splash/Makefile
poppler/Makefile
325
utils/Makefile
326
glib/Makefile
327
glib/poppler-features.h
328
glib/reference/Makefile
Kristian Høgsberg's avatar
Kristian Høgsberg committed
329
test/Makefile
330
qt/Makefile
331
332
333
qt4/Makefile
qt4/src/Makefile
qt4/tests/Makefile
Kristian Høgsberg's avatar
Kristian Høgsberg committed
334
335
poppler.pc
poppler-cairo.pc
336
poppler-splash.pc
337
poppler-glib.pc
338
339
poppler-qt.pc
poppler-qt4.pc])
340
341
342
343


echo ""
echo "Building poppler with support for:"
344
345
346
347
348
349
echo "  splash output:      $enable_splash_output"
echo "  cairo output:       $enable_cairo_output"
echo "  qt wrapper:         $enable_poppler_qt"
echo "  qt4 wrapper:        $enable_poppler_qt4"
echo "  qt4 unittests:      $enable_poppler_qt4testlib"
echo "  glib wrapper:       $enable_poppler_glib"
350
echo "  use gtk-doc:        $enable_gtk_doc"
351
352
353
echo "  use libjpeg:        $enable_libjpeg"
echo "  use zlib:           $enable_zlib"
echo "  command line utils: $enable_poppler_glib"