]> granicus.if.org Git - imagemagick/blob - configure.ac
(no commit message)
[imagemagick] / configure.ac
1 #  Copyright 1999-2013 ImageMagick Studio LLC, a non-profit organization
2 #  dedicated to making software imaging solutions freely available.
3 #
4 #  You may not use this file except in compliance with the License.  You may
5 #  obtain a copy of the License at
6 #
7 #    http://www.imagemagick.org/script/license.php
8 #
9 #  Unless required by applicable law or agreed to in writing, software
10 #  distributed under the License is distributed on an "AS IS" BASIS,
11 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #  See the License for the specific language governing permissions and
13 #  limitations under the License.
14 #
15 #  Copyright (C) 2003 - 2008 GraphicsMagick Group
16 #
17 #  Copying and distribution of this file, with or without modification,
18 #  are permitted in any medium without royalty provided the copyright
19 #  notice and this notice are preserved.
20
21 AC_PREREQ(2.69)
22
23 m4_define([magick_major_version], [7])
24 m4_define([magick_minor_version], [0])
25 m4_define([magick_micro_version], [0])
26 m4_define([magick_patchlevel_version], [0])
27 m4_define([magick_version],
28           [magick_major_version.magick_minor_version.magick_micro_version-magick_patchlevel_version])
29 m4_define([magick_svn_revision], esyscmd([sh -c "(svnversion .) | awk '{ print \$1 }' | tr -d '\n'"]))
30
31 AC_INIT([ImageMagick],[magick_version],[http://www.imagemagick.org],[ImageMagick])
32 AC_CONFIG_SRCDIR([MagickCore/MagickCore.h])
33 AC_CONFIG_AUX_DIR([config])
34 AC_REQUIRE_AUX_FILE([tap-driver.sh])
35 AC_CONFIG_MACRO_DIR([m4])
36 AC_CONFIG_HEADERS([config/config.h])
37 AX_PREFIX_CONFIG_H([MagickCore/magick-baseconfig.h],[MagickCore])
38 AC_CONFIG_FILES([\
39     common.shi \
40     config/configure.xml \
41     config/delegates.xml \
42     config/ImageMagick.rdf \
43     config/MagickCore.dox \
44     config/MagickWand.dox \
45     config/Magick++.dox \
46     config/type-dejavu.xml \
47     config/type-ghostscript.xml \
48     config/type-windows.xml \
49     config/type.xml \
50     ImageMagick.spec \
51     Magick++/bin/Magick++-config \
52     MagickCore/ImageMagick.pc \
53     Magick++/lib/Magick++.pc \
54     MagickCore/MagickCore-config \
55     MagickCore/MagickCore.pc \
56     MagickCore/version.h \
57     Makefile \
58     magick.sh \
59     PerlMagick/check.sh \
60     PerlMagick/Makefile.PL \
61     PerlMagick/quantum/Makefile.PL \
62     PerlMagick/quantum/quantum.pm \
63     PerlMagick/quantum/quantum.xs \
64     PerlMagick/quantum/typemap \
65     PerlMagick/Magick.pm \
66     utilities/animate.1 \
67     utilities/compare.1 \
68     utilities/composite.1 \
69     utilities/conjure.1 \
70     utilities/convert.1 \
71     utilities/display.1 \
72     utilities/identify.1 \
73     utilities/ImageMagick.1 \
74     utilities/import.1 \
75     utilities/mogrify.1 \
76     utilities/montage.1 \
77     utilities/stream.1 \
78     MagickWand/MagickWand-config \
79     MagickWand/MagickWand.pc ])
80
81 #
82 # Save initial user-tunable values
83 #
84 USER_LIBS=$LIBS
85 for var in CC CFLAGS CPPFLAGS CXX CXXCPP LDFLAGS LIBS ; do
86   eval isset=\${$var+set}
87     if test "$isset" = 'set'; then
88         eval val=$`echo $var`
89         DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS}'${var}=${val}' "
90     fi
91 done
92 AC_SUBST(DISTCHECK_CONFIG_FLAGS)
93
94 CONFIGURE_ARGS="$0 ${ac_configure_args}"
95 AC_SUBST(CONFIGURE_ARGS)
96
97 # Source file containing package/library versioning information.
98 . ${srcdir}/version.sh
99
100 echo "configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}${PACKAGE_VERSION_ADDENDUM}"
101 AC_CANONICAL_SYSTEM
102 AC_CANONICAL_BUILD
103 AC_CANONICAL_HOST
104 AC_CANONICAL_TARGET
105
106 MAGICK_TARGET_CPU=$host_cpu
107 AC_SUBST(MAGICK_TARGET_CPU)
108 AC_DEFINE_UNQUOTED(MAGICK_TARGET_CPU,$MAGICK_TARGET_CPU,[Target Host CPU])
109
110 MAGICK_TARGET_VENDOR=$host_vendor
111 AC_SUBST(MAGICK_TARGET_VENDOR)
112 AC_DEFINE_UNQUOTED(MAGICK_TARGET_VENDOR,$MAGICK_TARGET_VENDOR,[Target Host Vendor])
113
114 MAGICK_TARGET_OS=$host_os
115 AC_SUBST(MAGICK_TARGET_OS)
116 AC_DEFINE_UNQUOTED(MAGICK_TARGET_OS,$MAGICK_TARGET_OS,[Target Host OS])
117
118
119 # Substitute versioning
120 AC_SUBST([MAGICK_MAJOR_VERSION],[magick_major_version])
121 AC_SUBST([MAGICK_MINOR_VERSION],[magick_minor_version])
122 AC_SUBST([MAGICK_MICRO_VERSION],[magick_micro_version])
123 AC_SUBST([MAGICK_PATCHLEVEL_VERSION],[magick_patchlevel_version])
124 AC_SUBST([MAGICK_VERSION],[magick_version])
125 AC_SUBST([MAGICK_SVN_REVISION],[magick_svn_revision])
126
127 # Substitute library versioning
128 AC_SUBST(MAGICK_LIBRARY_CURRENT)dnl
129 AC_SUBST(MAGICK_LIBRARY_REVISION)dnl
130 AC_SUBST(MAGICK_LIBRARY_AGE)dnl
131 AC_SUBST([MAGICK_LIBRARY_CURRENT_MIN],
132          [`expr $MAGICK_LIBRARY_CURRENT - $MAGICK_LIBRARY_AGE`])
133 AC_SUBST([MAGICK_LIBRARY_VERSION_INFO],
134          [$MAGICK_LIBRARY_CURRENT:$MAGICK_LIBRARY_REVISION:$MAGICK_LIBRARY_AGE])
135
136
137
138 AC_SUBST(PACKAGE_NAME)dnl
139 AC_SUBST(PACKAGE_VERSION)dnl
140 AC_SUBST(PACKAGE_PERL_VERSION)dnl
141 AC_SUBST(PACKAGE_RELEASE)dnl
142 AC_SUBST(PACKAGE_CHANGE_DATE)dnl
143 AC_SUBST(PACKAGE_LIB_VERSION)dnl
144 AC_SUBST(PACKAGE_LIB_VERSION_NUMBER)dnl
145 AC_SUBST(PACKAGE_RELEASE_DATE)dnl
146 AC_SUBST(PACKAGE_VERSION_ADDENDUM)dnl
147
148 # Ensure that make can run correctly
149 AM_SANITY_CHECK
150
151 AM_INIT_AUTOMAKE([1.11 color-tests foreign parallel-tests silent-rules subdir-objects dist-bzip2 dist-lzip dist-xz dist-zip])
152
153 # Enable support for silent build rules
154 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
155
156 MAGICK_LIB_VERSION="0x"
157 if test ${MAGICK_LIBRARY_CURRENT} -lt 10 ; then
158   MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
159 fi
160 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_CURRENT}
161 if test ${MAGICK_LIBRARY_AGE} -lt 10 ; then
162   MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
163 fi
164 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_AGE}
165 if test ${MAGICK_LIBRARY_REVISION} -lt 10 ; then
166   MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
167 fi
168 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_REVISION}
169 AC_SUBST(MAGICK_LIB_VERSION)
170
171 # Definition used to define MagickLibVersionText in version.h
172 MAGICK_LIB_VERSION_TEXT="${PACKAGE_VERSION}"
173 AC_SUBST(MAGICK_LIB_VERSION_TEXT)
174
175 # Definition used to define MagickLibVersionNumber in version.h
176 MAGICK_LIB_VERSION_NUMBER="${MAGICK_LIBRARY_CURRENT},${MAGICK_LIBRARY_AGE},${MAGICK_LIBRARY_REVISION}"
177 AC_SUBST(MAGICK_LIB_VERSION_NUMBER)
178
179 # Regenerate config.status if ChangeLog or version.sh is updated.
180 AC_SUBST([CONFIG_STATUS_DEPENDENCIES],['$(top_srcdir)/version.sh'])
181
182 PERLMAINCC=$CC
183
184 MAGICK_CFLAGS=''
185 MAGICK_CPPFLAGS=$CPPFLAGS_USER
186 MAGICK_PCFLAGS=$CPPFLAGS_USER
187 MAGICK_LDFLAGS=''
188 MAGICK_LIBS=''
189 MAGICK_FEATURES=''
190
191 #
192 # Evaluate shell variable equivalents to Makefile directory variables
193 #
194 if test "x$prefix" = xNONE; then
195     prefix=$ac_default_prefix
196 fi
197 # Let make expand exec_prefix.
198 if test "x$exec_prefix" = xNONE; then
199     exec_prefix='${prefix}'
200 fi
201
202 #
203 eval "eval PREFIX_DIR=${prefix}"
204 AC_SUBST(PREFIX_DIR)
205 eval "eval EXEC_PREFIX_DIR=${exec_prefix}"
206 AC_SUBST(EXEC_PREFIX_DIR)
207 eval "eval BIN_DIR=$bindir"
208 AC_SUBST(BIN_DIR)
209 eval "eval SBIN_DIR=$sbindir"
210 AC_SUBST(SBIN_DIR)
211 eval "eval LIBEXEC_DIR=$libexecdir"
212 AC_SUBST(LIBEXEC_DIR)
213 eval "eval DATA_DIR=$datadir"
214 AC_SUBST(DATA_DIR)
215 eval "eval DOC_DIR=$datadir/doc"
216 AC_SUBST(DOC_DIR)
217 eval "eval SYSCONF_DIR=$sysconfdir"
218 AC_SUBST(SYSCONF_DIR)
219 eval "eval SHAREDSTATE_DIR=$sharedstatedir"
220 AC_SUBST(SHAREDSTATE_DIR)
221 eval "eval LOCALSTATE_DIR=$localstatedir"
222 AC_SUBST(LOCALSTATE_DIR)
223 eval "eval LIB_DIR=$libdir"
224 AC_SUBST(LIB_DIR)
225 eval "eval INCLUDE_DIR=$includedir"
226 AC_SUBST(INCLUDE_DIR)
227 eval "eval PERSISTINCLUDE_DIR=$oldincludedir"
228 AC_SUBST(PERSISTINCLUDE_DIR)
229 eval "eval INFO_DIR=$infodir"
230 AC_SUBST(INFO_DIR)
231 eval "eval MAN_DIR=$mandir"
232 AC_SUBST(MAN_DIR)
233
234 # Get full paths to source and build directories
235 srcdirfull="`cd $srcdir && pwd`"
236 builddir="`pwd`"
237
238 #
239 # Compute variables useful for running uninstalled software.
240 #
241 MAGICK_CODER_MODULE_PATH="${builddir}/coders"
242 MAGICK_CONFIGURE_SRC_PATH="${srcdirfull}/config"
243 MAGICK_CONFIGURE_BUILD_PATH="${builddir}/config"
244 MAGICK_FILTER_MODULE_PATH="${builddir}/filters"
245 DIRSEP=':'
246 case "${build_os}" in
247     mingw* )
248         MAGICK_CODER_MODULE_PATH=`$WinPathScript "${MAGICK_CODER_MODULE_PATH}" 0`
249         MAGICK_CONFIGURE_SRC_PATH=`$WinPathScript "${MAGICK_CONFIGURE_SRC_PATH}" 0`
250         MAGICK_CONFIGURE_BUILD_PATH=`$WinPathScript "${MAGICK_CONFIGURE_BUILD_PATH}" 0`
251         MAGICK_FILTER_MODULE_PATH=`$WinPathScript "${MAGICK_FILTER_MODULE_PATH}" 0`
252         DIRSEP=';'
253     ;;
254 esac
255 case "${host_os}" in
256   mingw* )
257     DIRSEP=';'
258     ;;
259 esac
260 AC_SUBST(MAGICK_CODER_MODULE_PATH)
261 AC_SUBST(MAGICK_CONFIGURE_SRC_PATH)
262 AC_SUBST(MAGICK_CONFIGURE_BUILD_PATH)
263 AC_SUBST(MAGICK_FILTER_MODULE_PATH)
264 AC_SUBST(DIRSEP)
265
266
267 #
268 # Enable OS features.
269 #
270 AC_USE_SYSTEM_EXTENSIONS
271
272 # Check for programs
273 AC_PROG_CC
274 AC_PROG_CXX
275 AC_PROG_CC_STDC
276 AC_PROG_CPP
277 AC_PROG_LD
278 AC_SUBST(LD)
279 AC_PROG_CC_C99
280 AM_PROG_CC_C_O
281 AX_CFLAGS_WARN_ALL
282 AX_COMPILER_VENDOR
283 AC_PROG_INSTALL
284 AC_PROG_MAKE_SET
285 AC_PROG_LN_S
286 AC_PROG_AWK
287 AM_WITH_DMALLOC
288 AX_C___ATTRIBUTE__
289 AX_GCC_ARCHFLAG([no])
290 PKG_PROG_PKG_CONFIG
291
292 # Check for linker script support 
293 gl_LD_VERSION_SCRIPT
294
295 #
296 # Enable run-time checking.
297 #
298 AC_ARG_ENABLE([bounds-checking],
299     [AC_HELP_STRING([--enable-bounds-checking],
300                     [enable run-time bounds-checking])],
301     [enable_bounds_checking=$enableval],
302     [enable_bounds_checking='no'])
303
304 if test "$enable_bounds_checking" = yes; then
305   AC_DEFINE([_FORTIFY_SOURCE], [2],
306     [enable run-time bounds-checking])
307 fi
308
309 #
310 # Tests for Windows
311 #
312 AC_EXEEXT
313 AC_OBJEXT
314
315 GDI32_LIBS=''
316 native_win32_build='no'
317 cygwin_build='no'
318 case "${host_os}" in
319     cygwin* )
320         cygwin_build='yes'
321         GDI32_LIBS='-lgdi32'
322     ;;
323     mingw* )
324         native_win32_build='yes'
325         GDI32_LIBS='-lgdi32'
326     ;;
327 esac
328 if test "${GDI32_LIBS}x" != 'x'; then
329     AC_DEFINE(WINGDI32_DELEGATE,1,Define to use the Windows GDI32 library)
330 fi
331 AC_SUBST(GDI32_LIBS)
332 AM_CONDITIONAL(WINGDI32_DELEGATE, test "${GDI32_LIBS}x" != 'x' )
333 AM_CONDITIONAL(WIN32_NATIVE_BUILD, test "${native_win32_build}" = 'yes' )
334 AM_CONDITIONAL(CYGWIN_BUILD, test "${cygwin_build}" = 'yes' )
335 AM_CONDITIONAL(USING_CL, test "x${CC}" = 'xcl.exe' )
336
337 WinPathScript="${srcdirfull}/winpath.sh"
338 AC_SUBST(WinPathScript)
339
340 #
341 # Compiler flags tweaks
342 #
343 if test "${GCC}" != "yes"; then
344     case "${host}" in
345         *-*-hpux* )
346             # aCC: HP ANSI C++ B3910B A.03.34
347             CFLAGS="${CFLAGS} -Wp,-H30000"
348             if test -n "${CXXFLAGS}"; then
349                 CXXFLAGS='-AA'
350             else
351                 CXXFLAGS="${CXXFLAGS} -AA"
352             fi
353         ;;
354         *-dec-osf5.* )
355             # Compaq alphaev68-dec-osf5.1 compiler
356             if test -n "${CXXFLAGS}"; then
357                 CXXFLAGS='-std strict_ansi -noimplicit_include'
358             else
359                 CXXFLAGS="${CXXFLAGS} -std strict_ansi -noimplicit_include"
360             fi
361   esac
362 fi
363
364 # Check for lazy-loading.
365 AC_CACHE_CHECK([for linker lazyload option],[im_cv_ld_lazyload],
366 [
367 im_cv_ld_lazyload='none'
368 case "${host}" in
369   *-*-solaris2.8 | *-*-solaris2.9 | *-*-solaris2.1? )
370     if test "$lt_cv_prog_gnu_ld" != 'yes' ; then
371        im_cv_ld_lazyload='-Wl,-zlazyload'
372     fi
373     ;;
374 esac
375 ])
376 if test "${im_cv_ld_lazyload}" != 'none' ; then
377   if test -z "${LDFLAGS}" ; then
378     LDFLAGS="${im_cv_ld_lazyload}"
379   else
380     LDFLAGS="${im_cv_ld_lazyload} ${LDFLAGS}"
381   fi
382 fi
383
384 dnl Platform-specific stuff
385 case "$host" in
386 *darwin* | *-macos10*)
387   dnl OS X universal binary support, requires --disable-dependency-tracking
388   AC_ARG_ENABLE([osx-universal-binary],
389         AC_HELP_STRING([--enable-osx-universal-binary],
390            [build universal binary on OS X [[default=no]]]),
391         [build_osxuniversal="${enableval}"], [build_osxuniversal=no])
392
393   if test "${build_osxuniversal}" != no ; then
394     if test "$enable_dependency_tracking" != no ; then
395       AC_MSG_ERROR([--enable-osx-universal-binary requires --disable-dependency-tracking.
396 Please re-run configure with these options:
397   --disable-dependency-tracking --enable-osx-universal-binary
398         ])
399     fi
400     CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
401     CXXFLAGS="$CXXFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
402     LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
403   fi
404   ;;
405 esac
406
407 #
408 # ARCH specific include directory
409 #
410 AC_ARG_WITH([includearch-dir],
411     [AC_HELP_STRING([--includearch-dir=DIR],
412                     [ARCH specific include directory])],
413                     [includearch_dir=$withval],
414                     [includearch_dir=$INCLUDE_DIR])
415
416 eval "eval INCLUDEARCH_DIR=$includearch_dir"
417 AC_SUBST(INCLUDEARCH_DIR)
418
419 #
420 # ARCH specific configuration directory
421 #
422 AC_ARG_WITH([sharearch-dir],
423     [AC_HELP_STRING([--sharearch-dir=DIR],
424                     [ARCH specific config directory])],
425                     [sharearch_dir=$withval],
426                     [sharearch_dir="${LIB_DIR}"])
427
428 eval "eval SHAREARCH_DIR=$sharearch_dir"
429 AC_SUBST(SHAREARCH_DIR)
430
431 #
432 # Enable support for threads
433 AC_ARG_WITH([threads],
434     [AC_HELP_STRING([--without-threads], [disable threads support])],
435     [with_threads=$withval],
436     [with_threads='yes'])
437
438 have_threads=no
439 if test "$with_threads" != 'no'; then
440     AX_PTHREAD()
441     if test "$ax_pthread_ok" = yes; then
442         have_threads=yes
443         DEF_THREAD="$PTHREAD_CFLAGS"
444         CFLAGS="$CFLAGS $DEF_THREAD"
445         CXXFLAGS="$CXXFLAGS $DEF_THREAD"
446         if test "$CC" != "$PTHREAD_CC"; then
447             AC_MSG_WARN([Replacing compiler $CC with compiler $PTHREAD_CC to support pthreads.])
448             CC="$PTHREAD_CC"
449         fi
450         AC_DEFINE(THREAD_SUPPORT,1,[Define if you have POSIX threads libraries and header files.])
451     fi
452 fi
453
454 # Enable support for OpenMP
455 if test "$have_threads" != 'yes'; then
456   ac_cv_prog_c_openmp=unsupported
457 fi
458 AC_OPENMP([C])
459 CFLAGS="$OPENMP_CFLAGS $CFLAGS"
460 MAGICK_PCFLAGS="$MAGICK_PCFLAGS $OPENMP_CFLAGS"
461 AC_SUBST(OPENMP_CFLAGS)
462 if test "$enable_openmp" != no; then
463   if test "$ac_cv_prog_c_openmp" != 'unsupported'; then
464     MAGICK_FEATURES="OpenMP $MAGICK_FEATURES"
465   fi
466 fi
467
468 # Enable support for OpenCL
469 AX_OPENCL([C])
470 CFLAGS="$CL_CFLAGS $CFLAGS"
471 LIBS="$CL_LIBS $LIBS"
472 AC_SUBST(CL_CFLAGS)
473 if test "$enable_opencl" != no; then
474   if test "X$ax_cv_check_cl_libcl" != Xno; then :
475     MAGICK_FEATURES="OpenCL $MAGICK_FEATURES"
476   fi
477 fi
478
479 ########
480 #
481 # Check for large file support
482 #
483 ########
484 AC_SYS_LARGEFILE
485 AC_FUNC_FSEEKO
486 LFS_CPPFLAGS=''
487 if test "$enable_largefile" != no; then
488     case $ac_cv_sys_file_offset_bits in
489     no)
490         # nothing to do here as the host supports LFS fine
491         ;;
492     unknown)
493         AC_MSG_CHECKING([for native large file support])
494         AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <unistd.h>
495           main () {
496           exit(!(sizeof(off_t) == 8));
497         }])],
498         [ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64)
499          AC_MSG_RESULT([yes])],
500         [AC_MSG_RESULT([no])])
501         ;;
502     *)
503         LFS_CPPFLAGS="$LFS_CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
504         ;;
505     esac
506     if test "$ac_cv_sys_large_files" != 'no'; then
507         LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGE_FILES=1"
508     fi
509     if test "$ac_cv_sys_largefile_source" != 'no'; then
510         LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGEFILE_SOURCE=1"
511     fi
512 fi
513 AC_SUBST(LFS_CPPFLAGS)
514
515 # Configure libtool
516 AC_LIBTOOL_DLOPEN
517 LT_INIT([win32-dll])
518 LT_LANG([C++])
519 AC_SUBST(LIBTOOL_DEPS)
520
521 # Check to see if building shared libraries
522 libtool_build_shared_libs='no'
523 if test "$enable_shared" = 'yes'; then
524     libtool_build_shared_libs='yes'
525 fi
526
527 # Check to see if building static libraries
528 libtool_build_static_libs='no'
529 if test "$enable_static" = 'yes'; then
530     libtool_build_static_libs='yes'
531 fi
532
533 AM_CONDITIONAL(WITH_SHARED_LIBS, test "${libtool_build_shared_libs}" = 'yes')
534 #
535 # Enable support for building loadable modules
536 #
537 build_modules='no'
538 AC_ARG_WITH([modules],
539     [AC_HELP_STRING([--with-modules],
540                     [enable building dynamically loadable modules])],
541     [with_modules=$withval],
542     [with_modules='no'])
543
544 # Only allow building loadable modules if we are building shared libraries
545 if test "$with_modules" != 'no' ; then
546     if test "$libtool_build_shared_libs" = 'no'; then
547         AC_MSG_WARN([Modules may only be built if building shared libraries is enabled.])
548     build_modules='no'
549   else
550     build_modules='yes'
551   fi
552 fi
553 if test "$build_modules" != 'no' ; then
554     AC_DEFINE(BUILD_MODULES,1,Define if coders and filters are to be built as modules.)
555     MAGICK_FEATURES="$MAGICK_FEATURES Modules"
556 fi
557 AM_CONDITIONAL(WITH_MODULES, test "$build_modules" != 'no')
558
559 # Enable build using delegate libraries built in subdirectories rather than installed
560 # delegate libraries (bzlib fftw fpx gslib jp2 jbig jpeg lcms lzma png tiff ttf wmf xml zlib)
561 AC_ARG_ENABLE([delegate-build],
562     [AC_HELP_STRING([--enable-delegate-build],
563                     [look for delegate libraries in build directory])],
564     [enable_delegate_build=$enableval],
565     [enable_delegate_build='no'])
566
567 AC_ARG_ENABLE([deprecated],
568     [AC_HELP_STRING([--disable-deprecated],
569                     [exclude deprecated methods in MagickCore and MagickWand APIs])],
570     [enable_deprecated=$enableval],
571     [enable_deprecated='no'])
572
573 if test "$enable_deprecated" = 'yes'; then
574   AC_DEFINE(EXCLUDE_DEPRECATED,1,[exclude deprecated methods in MagickCore API])
575 else
576   DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --disable-deprecated "
577 fi
578
579 # Build a version of ImageMagick which operates uninstalled.
580 # Used to build distributions located via MAGICK_HOME / executable path
581 AC_ARG_ENABLE([installed],
582     [AC_HELP_STRING([--disable-installed],
583                     [Formally install ImageMagick under PREFIX])],
584     [enable_installed=$enableval],
585     [enable_installed='yes'])
586
587 if test "$enable_installed" = 'yes'; then
588     AC_DEFINE(INSTALLED_SUPPORT,1,[ImageMagick is formally installed under prefix])
589 else
590     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --disable-installed "
591 fi
592
593 # Permit enciphering and deciphering image pixels.
594 AC_ARG_ENABLE([cipher],
595     [AC_HELP_STRING([--disable-cipher],
596                     [disable enciphering and deciphering image pixels])],
597     [enable_cipher=$enableval],
598     [enable_cipher='yes'])
599
600 if test "$enable_cipher" = 'yes'; then
601     AC_DEFINE(CIPHER_SUPPORT,1,[permit enciphering and deciphering image pixels])
602 fi
603
604 # Build a zero-configuration version of ImageMagick.
605 AC_ARG_ENABLE([zero-configuration],
606     [AC_HELP_STRING([--enable-zero-configuration],
607                     [enable self-contained, embeddable, zero-configuration ImageMagick])],
608     [enable_zero_configuration=$enableval],
609     [enable_zero_configuration='no'])
610
611 if test "$enable_zero_configuration" = 'yes'; then
612     AC_DEFINE(ZERO_CONFIGURATION_SUPPORT,1,[Build self-contained, embeddable, zero-configuration ImageMagick])
613     MAGICK_FEATURES="Zero-Configuration $MAGICK_FEATURES"
614 fi
615
616 # Build a high dynamic range version of ImageMagick.
617 AC_ARG_ENABLE([hdri],
618     [AC_HELP_STRING([--enable-hdri],
619                     [accurately represent the wide range of intensity levels found in real scenes])],
620     [enable_hdri=$enableval],
621     [enable_hdri='yes'])
622
623 MAGICK_HDRI=""
624 if test "$enable_hdri" = 'yes'; then
625     MAGICK_HDRI="HDRI"
626     magick_hdri_enable='1';
627     MAGICK_FEATURES="HDRI $MAGICK_FEATURES"
628 else
629     magick_hdri_enable='0'
630 fi
631 AC_DEFINE_UNQUOTED(HDRI_ENABLE_OBSOLETE_IN_H,$magick_hdri_enable,[Whether hdri is enabled or not])
632 AC_SUBST(MAGICK_HDRI)dnl
633 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
634 CFLAGS="$CFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
635 CPPFLAGS="$CPPFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
636
637 # Build a version of ImageMagick with assert statements.
638 AC_ARG_ENABLE([assert],
639     [AC_HELP_STRING([--disable-assert],
640                     [disable assert() statements in build])],
641     [enable_assert=$enableval],
642     [enable_assert='yes'])
643
644 if test "$enable_assert" = 'no'; then
645     AC_DEFINE(NDEBUG,1,[Turn off assert statements])
646 fi
647
648 # Don't emit "rebuild rules" for configure, Makefile.ins, etc.
649 AM_MAINTAINER_MODE
650
651 # Enable ccmalloc memory debugging support
652 AC_ARG_ENABLE([ccmalloc],
653     [AC_HELP_STRING([--enable-ccmalloc],
654                     [enable 'ccmalloc' memory debug support])],
655     [enable_ccmalloc=$enableval],
656     [enable_ccmalloc='no'])
657
658 # Enable Electric Fence memory debugging support
659 AC_ARG_ENABLE([efence],
660     [AC_HELP_STRING([--enable-efence],
661                     [enable 'efence' memory debug support])],
662     [enable_efence=$enableval],
663     [enable_efence='no'])
664
665 # Enable prof-based profiling support
666 AC_ARG_ENABLE([prof],
667     [AC_HELP_STRING([--enable-prof],
668                     [enable 'prof' profiling support])],
669     [enable_prof=$enableval],
670     [enable_prof='no'])
671
672 # Enable gprof-based profiling support
673 AC_ARG_ENABLE([gprof],
674     [AC_HELP_STRING([--enable-gprof],
675                     [enable 'gprof' profiling support])],
676     [enable_gprof=$enableval],
677     [enable_gprof='no'])
678
679 # Enable gcov-based profiling support
680 AC_ARG_ENABLE([gcov],
681     [AC_HELP_STRING([--enable-gcov],
682                     [enable 'gcov' profiling support])],
683     [enable_gcov=$enableval],
684     [enable_gcov='no'])
685
686 enable_profiling='no'
687 if test "$enable_prof" = 'yes' || test "$enable_gprof" = 'yes' || test "$enable_gcov" = 'yes'; then
688     enable_profiling='yes'
689     if test "$libtool_build_shared_libs" = 'yes'; then
690         echo "Warning: Can not profile code using shared libraries"
691     fi
692 fi
693
694 # Magick API method prefix
695 AC_ARG_WITH([method-prefix],
696     [AC_HELP_STRING([--with-method-prefix=PREFIX],
697                     [prefix MagickCore API methods])],
698     [with_method_prefix=$withval],
699     [with_method_prefix='no'])
700
701 if test "$with_method_prefix" != 'no'; then
702     AC_DEFINE_UNQUOTED(NAMESPACE_PREFIX,$with_method_prefix,[Magick API method prefix])
703     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-method-prefix "
704 fi
705
706 # Enable legacy support (default no)
707 AC_ARG_ENABLE(legacy-support,
708               [  --enable-legacy-support  install legacy command-line utilities (default disabled)],
709               [with_legacy_support=$enableval],
710               [with_legacy_support='no'])
711 AM_CONDITIONAL(LEGACY_SUPPORT, test "$with_legacy_support" != 'no')
712
713 # Number of bits in a Quantum
714 AC_ARG_WITH([quantum-depth],
715     [AC_HELP_STRING([--with-quantum-depth=DEPTH],
716                     [number of bits in a pixel quantum (default 16)])],
717     [with_quantum_depth=$withval],
718     [with_quantum_depth=16])
719
720 if test "$with_quantum_depth" != '8'; then
721     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-quantum-depth=$with_quantum_depth "
722 fi
723
724 case "${with_quantum_depth}" in
725     8 ) ;;
726     16 ) ;;
727     32 ) ;;
728     64 ) ;;
729     * ) AC_MSG_ERROR("Pixel quantum depth must have value of 8, 16, 32, or 64") ;;
730 esac
731 QUANTUM_DEPTH="$with_quantum_depth"
732 AC_DEFINE_UNQUOTED(QUANTUM_DEPTH_OBSOLETE_IN_H,$QUANTUM_DEPTH,[Number of bits in a pixel Quantum (8/16/32/64)])
733 AC_SUBST(QUANTUM_DEPTH)dnl
734 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
735 CFLAGS="$CFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
736 CPPFLAGS="$CPPFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
737
738 # define a lib suffix for abi purpose
739 MAGICK_ABI_SUFFIX="Q${QUANTUM_DEPTH}"
740 if test "$enable_hdri" = 'yes'; then
741   MAGICK_ABI_SUFFIX="Q${QUANTUM_DEPTH}${MAGICK_HDRI}"
742 fi
743 AC_SUBST(MAGICK_ABI_SUFFIX)
744
745 # Set pixel cache threshold
746 AC_ARG_WITH([cache],
747     [AC_HELP_STRING([--with-cache=THRESHOLD],
748                     [set pixel cache threshhold in MB (default available memory)])],
749     [with_cache=$withval],
750     [with_cache=''])
751
752 if test "$with_cache" != ''; then
753     AC_DEFINE_UNQUOTED(PixelCacheThreshold,$with_cache,[Pixel cache threshold in MB (defaults to available memory)])
754     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-cache=$with_cache "
755 fi
756
757 # Disable/Enable support for full delegate paths
758 AC_ARG_WITH([frozenpaths],
759     [AC_HELP_STRING([--with-frozenpaths],
760                     [freeze delegate paths])],
761     [with_frozenpaths=$withval],
762     [with_frozenpaths='no'])
763
764 # Enable build/install of Magick++
765 AC_ARG_WITH([magick-plus-plus],
766     [AC_HELP_STRING([--without-magick-plus-plus],
767                     [disable build/install of Magick++])],
768     [with_magick_plus_plus=$withval],
769     [with_magick_plus_plus='yes'])
770
771 # Encode the this name into the shared library.
772 AC_ARG_WITH([package-release-name],
773     [AC_HELP_STRING([--with-package-release-name=NAME],
774                     [encode this name into the shared library])],
775 [MAGICK_LT_RELEASE_OPTS="-release $withval"])
776 AC_SUBST(MAGICK_LT_RELEASE_OPTS)
777
778 # Disable build/install of PerlMagick.
779 AC_ARG_WITH([perl],
780     [AC_HELP_STRING([--with-perl],
781                     [enable build/install of PerlMagick])],
782     [with_perl=$withval],
783     [with_perl='no'])
784
785 # Options to pass when configuring PerlMagick
786 AC_ARG_WITH([perl-options],
787     [AC_HELP_STRING([--with-perl-options=OPTIONS],
788                     [options to pass on command-line when generating PerlMagick build file])],
789 PERL_MAKE_OPTIONS=$withval)
790 AC_SUBST(PERL_MAKE_OPTIONS)
791
792 # Enable umem, object-caching memory allocation library.
793 AC_ARG_WITH(umem,
794         [  --with-umem             enable umem memory allocation library support],
795         [with_umem=$withval],
796         [with_umem='no'])
797 if test "$with_umem" != 'yes' ; then
798     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-umem=$with_umem "
799 fi
800
801 #
802 # Specify path to shared libstdc++ if not in normal location
803 #
804 AC_ARG_WITH([libstdc],
805     [AC_HELP_STRING([--with-libstdc=DIR],
806                     [ use libstdc++ in DIR (for GNU C++)])],
807     [with_libstdc=$withval],
808     [with_libstdc=''])
809
810 if test "$with_libstdc" != ''; then
811     if test -d "$with_libstdc"; then
812         LIBSTDCLDFLAGS="-L$with_libstdc"
813     fi
814 fi
815 AC_SUBST(LIBSTDCLDFLAGS)
816
817 # Does gcc required -traditional?
818 AC_PROG_GCC_TRADITIONAL
819
820 ########
821 #
822 # Set defines required to build DLLs and modules using MinGW
823 #
824 ########
825 # These options are set for multi-thread DLL module build
826 #  libMagickCore:           _DLL _MAGICKMOD_ _MAGICKLIB_
827 #  module:              _DLL
828 #  executable/Magick++: _DLL _MAGICKMOD_
829 MODULE_EXTRA_CPPFLAGS=''
830 LIBRARY_EXTRA_CPPFLAGS=''
831 if test "${native_win32_build}" = 'yes'; then
832     if test "${libtool_build_shared_libs}" = 'yes'; then
833         CPPFLAGS="$CPPFLAGS -D_DLL"
834         MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_DLL"
835         MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_DLL"
836         LIBRARY_EXTRA_CPPFLAGS="$LIBRARY_EXTRA_CPPFLAGS -D_MAGICKLIB_"
837         if test "$build_modules" = 'yes'; then
838             LIBRARY_EXTRA_CPPFLAGS="$LIBRARY_EXTRA_CPPFLAGS -D_MAGICKMOD_"
839         else
840             MODULE_EXTRA_CPPFLAGS="$MODULE_EXTRA_CPPFLAGS -D_MAGICKLIB_"
841         fi
842     else
843         CPPFLAGS="$CPPFLAGS -D_LIB"
844         MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_LIB"
845         MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_LIB"
846     fi
847     if test "$with_threads" = 'yes'; then
848          CPPFLAGS="$CPPFLAGS -D_MT"
849          MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_MT"
850          MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_MT"
851     fi
852 fi
853 AC_SUBST(MODULE_EXTRA_CPPFLAGS)
854 AC_SUBST(LIBRARY_EXTRA_CPPFLAGS)
855
856 # Check standard headers
857 AC_HEADER_STDC
858 if ! test x"$ac_cv_header_stdc" = x"yes"; then
859     AC_MSG_WARN([configure has detected that you do not have the ANSI standard C
860     header files.  Compilation cannot proceed.  Please install the ANSI C
861     headers and rerun this script.]);
862 fi
863 AC_HEADER_ASSERT
864 AC_HEADER_DIRENT
865
866 # Check additional headers
867 AC_CHECK_HEADERS(arm/limits.h arpa/inet.h complex.h errno.h fcntl.h limits.h linux/unistd.h locale.h machine/param.h mach-o/dyld.h netinet/in.h OS.h process.h sun_prefetch.h stdarg.h sys/ipc.h sys/mman.h sys/resource.h sys/socket.h sys/syslimits.h sys/time.h sys/timeb.h sys/times.h sys/wait.h wchar.h xlocale.h)
868
869 ########
870 #
871 # Checks for typedefs, structures, and compiler characteristics.
872 #
873 ########
874
875 AC_HEADER_STDBOOL
876 AC_C_VOLATILE
877 AC_C_STRINGIZE
878 AC_HEADER_STAT
879 AC_HEADER_TIME
880 AC_STRUCT_TM
881 AC_STRUCT_TIMEZONE
882 AC_SYS_INTERPRETER
883
884 #
885 # Checks for language qualifiers and semantics.
886 #
887 AC_C_CHAR_UNSIGNED
888 AC_C_CONST
889 AC_C_INLINE
890 AC_C_RESTRICT
891 AC_C_VOLATILE
892
893 # If words are stored with the most significant byte first (like
894 # Motorola and SPARC CPUs), define `WORDS_BIGENDIAN'.
895 AC_C_BIGENDIAN
896
897 # Define to a suitable type, if standard headers do not define it.
898 AC_TYPE_INT8_T
899 AC_TYPE_INT16_T
900 AC_TYPE_INT32_T
901 AC_TYPE_INT64_T
902 AC_TYPE_INTMAX_T
903 AC_TYPE_INTPTR_T
904 AC_TYPE_LONG_DOUBLE
905 AC_TYPE_LONG_DOUBLE_WIDER
906 AC_TYPE_LONG_LONG_INT
907 AC_TYPE_MBSTATE_T
908 AC_TYPE_MODE_T
909 AC_TYPE_OFF_T
910 AC_TYPE_PID_T
911 AC_TYPE_SIZE_T
912 AC_TYPE_SSIZE_T
913 AC_TYPE_UID_T
914 AC_TYPE_UINT8_T
915 AC_TYPE_UINT16_T
916 AC_TYPE_UINT32_T
917 AC_TYPE_UINT64_T
918 AC_TYPE_UINTMAX_T
919 AC_TYPE_UINTPTR_T
920 AC_TYPE_UNSIGNED_LONG_LONG_INT
921
922 # Float_t and double_t are intended to be the the most efficient type.
923 AC_CHECK_TYPES([float_t], [], [], [[#include <math.h>]])
924 AC_CHECK_TYPES([double_t], [], [], [[#include <math.h>]])
925 AC_CHECK_SIZEOF([float_t], [], [[#include <math.h>]])
926 AC_CHECK_SIZEOF([double_t], [], [[#include <math.h>]])
927
928 # Get size of float, double and long double for comparaison.
929 AC_CHECK_SIZEOF([float])
930 AC_CHECK_SIZEOF([double])
931 AC_CHECK_SIZEOF([long double])
932
933 # Obtain size of an 'signed short' and define as SIZEOF_SIGNED_SHORT
934 AC_CHECK_SIZEOF(signed short)
935
936 # Obtain size of an 'unsigned short' and define as SIZEOF_UNSIGNED_SHORT
937 AC_CHECK_SIZEOF(unsigned short)
938
939 # Obtain size of an 'signed int' and define as SIZEOF_SIGNED_INT
940 AC_CHECK_SIZEOF(signed int)
941
942 # Obtain size of an 'unsigned int' and define as SIZEOF_UNSIGNED_INT
943 AC_CHECK_SIZEOF(unsigned int)
944
945 # Obtain size of a 'signed long' and define as SIZEOF_SIGNED_LONG
946 AC_CHECK_SIZEOF(signed long)
947
948 # Obtain size of a 'unsigned long' and define as SIZEOF_UNSIGNED_LONG
949 AC_CHECK_SIZEOF(unsigned long)
950
951 # Obtain size of a 'long long' and define as SIZEOF_SIGNED_LONG_LONG.  If
952 # 'signed long long' is not supported then the value defined is zero.
953 AC_CHECK_SIZEOF(signed long long)
954
955 # Obtain size of a 'unsigned long long' and define as
956 # SIZEOF_UNSIGNED_LONG_LONG.  If 'unsigned long long' is not
957 # supported then the value defined is zero.
958 AC_CHECK_SIZEOF(unsigned long long)
959
960 # Obtain size of off_t and define as SIZEOF_OFF_T
961 AC_CHECK_SIZEOF(off_t)
962
963 # Obtain size of size_t and define as SIZEOF_SIZE_T
964 AC_CHECK_SIZEOF(size_t)
965
966 # Obtain size of ssize_t and define as SIZEOF_SSIZE_T
967 AC_CHECK_SIZEOF(ssize_t)
968
969 # Obtain size of an unsigned int pointer and define as SIZEOF_UNSIGNED_INTP
970 AC_CHECK_SIZEOF(unsigned int*)
971
972 #
973 # Compute sized types for current CPU and compiler options.
974 #
975
976 AC_MSG_CHECKING(for signed 8-bit type)
977 INT8_T='signed char'
978 AC_MSG_RESULT($INT8_T)
979 AC_SUBST(INT8_T)
980
981 AC_MSG_CHECKING(for unsigned 8-bit type)
982 UINT8_T='unsigned char'
983 AC_MSG_RESULT($UINT8_T)
984 AC_SUBST(UINT8_T)
985
986 AC_MSG_CHECKING(for signed 16-bit type)
987 INT16_T='signed short'
988 AC_MSG_RESULT($INT16_T)
989 AC_SUBST(INT16_T)
990
991 AC_MSG_CHECKING(for unsigned 16-bit type)
992 UINT16_T='unsigned short'
993 AC_MSG_RESULT($UINT16_T)
994 AC_SUBST(UINT16_T)
995
996 AC_MSG_CHECKING(for signed 32-bit type)
997 INT32_T='none'
998 INT32_F='none'
999 if test $ac_cv_sizeof_signed_int -eq 4; then
1000   INT32_T='signed int'
1001   INT32_F='""'
1002 elif test $ac_cv_sizeof_signed_long -eq 4; then
1003   INT32_T='signed long'
1004   INT32_F='"l"'
1005 fi
1006 AC_MSG_RESULT($INT32_T)
1007 AC_SUBST(INT32_T)
1008 AC_SUBST(INT32_F)
1009
1010 AC_MSG_CHECKING(for unsigned 32-bit type)
1011 UINT32_T='none'
1012 UINT32_F='none'
1013 if test $ac_cv_sizeof_unsigned_int -eq 4; then
1014   UINT32_T='unsigned int'
1015   UINT32_F='""'
1016 elif test $ac_cv_sizeof_unsigned_long -eq 4; then
1017   UINT32_T='unsigned long'
1018   UINT32_F='"l"'
1019 fi
1020 AC_MSG_RESULT($UINT32_T)
1021 AC_SUBST(UINT32_T)
1022 AC_SUBST(UINT32_F)
1023
1024 AC_MSG_CHECKING(for signed 64-bit type)
1025 INT64_T='none'
1026 INT64_F='none'
1027 if test $ac_cv_sizeof_signed_long -eq 8; then
1028   INT64_T='signed long'
1029   INT64_F='"l"'
1030 elif test $ac_cv_sizeof_signed_long_long -eq 8; then
1031   INT64_T='signed long long'
1032   INT64_F='"ll"'
1033 fi
1034 case "${host_os}" in
1035   mingw* )
1036     INT64_F='"I64"'
1037     ;;
1038 esac
1039 AC_MSG_RESULT($INT64_T)
1040 AC_SUBST(INT64_T)
1041 AC_SUBST(INT64_F)
1042
1043 AC_MSG_CHECKING(for unsigned 64-bit type)
1044 UINT64_T='none'
1045 UINT64_F='none'
1046 if test $ac_cv_sizeof_unsigned_long -eq 8; then
1047   UINT64_T='unsigned long'
1048   UINT64_F='"l"'
1049 elif test $ac_cv_sizeof_unsigned_long_long -eq 8; then
1050   UINT64_T='unsigned long long'
1051   UINT64_F='"ll"'
1052 fi
1053 case "${host_os}" in
1054   mingw* )
1055     UINT64_F='"I64"'
1056     ;;
1057 esac
1058 AC_MSG_RESULT($UINT64_T)
1059 AC_SUBST(UINT64_T)
1060 AC_SUBST(UINT64_F)
1061
1062 AC_MSG_CHECKING(for unsigned maximum type)
1063 UINTMAX_T='none'
1064 UINTMAX_F='none'
1065 if test "$UINT64_T" != 'none'; then
1066   UINTMAX_T=$UINT64_T
1067   UINTMAX_F=$UINT64_F
1068 elif test "$UINT32_T" != 'none'; then
1069   UINTMAX_T=$UINT32_T
1070   UINTMAX_F=$UINT32_F
1071 fi
1072 AC_MSG_RESULT($UINTMAX_T)
1073 AC_SUBST(UINTMAX_T)
1074 AC_SUBST(UINTMAX_F)
1075
1076 AC_MSG_CHECKING(for pointer difference type)
1077 UINTPTR_T='none'
1078 UINTPTR_F='none'
1079 if test $ac_cv_sizeof_unsigned_long -eq $ac_cv_sizeof_unsigned_intp; then
1080   UINTPTR_T='unsigned long'
1081   UINTPTR_F='"l"'
1082 elif test $ac_cv_sizeof_unsigned_long_long -eq $ac_cv_sizeof_unsigned_intp; then
1083   UINTPTR_T='unsigned long long'
1084   UINTPTR_F='"ll"'
1085 fi
1086 AC_MSG_RESULT($UINTPTR_T)
1087 AC_SUBST(UINTPTR_T)
1088 AC_SUBST(UINTPTR_F)
1089
1090 AC_MSG_CHECKING([whether our compiler supports __func__])
1091 AC_TRY_COMPILE([],
1092  [{ const char *func = __func__; return(func != 0 ? 0 : 1); }],
1093  AC_MSG_RESULT([yes]),
1094  AC_MSG_RESULT([no])
1095  AC_MSG_CHECKING([whether our compiler supports __FUNCTION__])
1096  AC_TRY_COMPILE([],
1097    [{ const char *func = __FUNCTION__; return(func != 0 ? 0 : 1); }],
1098    AC_MSG_RESULT([yes])
1099    AC_DEFINE(__func__, __FUNCTION__,
1100      [Define to appropriate substitue if compiler does not have __func__]),
1101    AC_MSG_RESULT([no])
1102    AC_DEFINE(__func__, __FILE__,
1103      [Define to appropriate substitue if compiler does not have __func__])))
1104
1105 ########
1106 #
1107 # Check for functions
1108 #
1109 ########
1110 MAGICK_FUNC_MMAP_FILEIO
1111 AC_FUNC_CLOSEDIR_VOID
1112 AC_FUNC_MMAP
1113 AC_FUNC_FORK
1114 AC_FUNC_MEMCMP
1115 AC_FUNC_SELECT_ARGTYPES
1116 AC_FUNC_SETVBUF_REVERSED
1117 AC_TYPE_SIGNAL
1118 AC_FUNC_STRTOD
1119 AC_FUNC_STRERROR_R
1120 AC_FUNC_VPRINTF
1121
1122 #
1123 # Find math library
1124 #
1125 MATH_LIBS=''
1126 AC_CHECK_LIB(m,sqrt,MATH_LIBS="-lm",,)
1127 LIBS="$MATH_LIBS $LIBS"
1128 AC_SUBST(MATH_LIBS)
1129
1130 #
1131 # Find socket library
1132 #
1133 AC_SEARCH_LIBS(gethostbyname, resolv nsl)
1134 AC_SEARCH_LIBS(socket, socket,
1135 [
1136   AC_DEFINE([HAVE_SOCKET],[1],[Define to 1 if you have socket support.])
1137   MAGICK_FEATURES="DPC $MAGICK_FEATURES"
1138 ])
1139
1140 AC_CHECK_FUNCS([acosh _aligned_malloc asinh atanh atoll atexit cabs carg cimag creal clock ctime_r directio _exit execvp fchmod floor fork ftime ftruncate getc_unlocked getcwd getpid getexecname getdtablesize getpagesize getrlimit getrusage gettimeofday gmtime_r isnan j0 j1 lltostr localtime_r lstat memmove memset mkstemp munmap nanosleep newlocale _NSGetExecutablePath pclose _pclose poll popen _popen posix_fadvise posix_fallocate posix_madvise posix_memalign posix_spawnp pow pread pwrite qsort_r raise rand_r readlink readdir_r realpath select seekdir setlocale socket sqrt setvbuf stat strchr strrchr strcspn strdup strpbrk strspn strstr strtod strtod_l strtol strtoul symlink sysconf sigemptyset sigaction spawnvp strerror strlcat strlcpy strcasecmp strncasecmp telldir tempnam times ulltostr uselocale usleep utime vfprintf vfprintf_l vsprintf vsnprintf vsnprintf_l waitpid _wfopen _wstat])
1141
1142 #
1143 # Check for clock_gettime().
1144 #
1145 AC_SEARCH_LIBS(clock_gettime, rt,
1146 [
1147   AC_DEFINE([HAVE_CLOCK_GETTIME],[1],[Define to 1 if you have clock_gettime.])
1148   AC_MSG_CHECKING([whether clock_gettime supports CLOCK_REALTIME])
1149   AC_COMPILE_IFELSE([
1150     AC_LANG_PROGRAM(
1151       [[#include <time.h>]],
1152        [[clockid_t clockType = CLOCK_REALTIME;]])],
1153       [
1154         AC_MSG_RESULT(yes)
1155         AC_DEFINE([HAVE_CLOCK_REALTIME],[1],
1156           [Define to 1 if clock_gettime supports CLOCK_REALTIME.])
1157       ],
1158       AC_MSG_RESULT(no)
1159     )
1160   ],
1161   [
1162     AC_CHECK_FUNCS([gettimeofday ftime], [break])
1163   ]
1164 )
1165
1166 ########
1167 #
1168 # Check for function prototypes
1169 #
1170 ########
1171
1172 AC_CHECK_DECLS([pread, pwrite],[],[],[
1173 #include <unistd.h>])
1174
1175 AC_CHECK_DECLS([strlcpy],[],[],[
1176 #include <strings.h>])
1177
1178 AC_CHECK_DECLS([vsnprintf],[],[],[
1179 #include <stdio.h>
1180 #include <stdarg.h>])
1181
1182 ########
1183 #
1184 # C++ Support Tests (For Magick++)
1185 #
1186 ########
1187 have_magick_plus_plus='no'
1188 if test "$with_magick_plus_plus" = 'yes'; then
1189     OLIBS="$LIBS"
1190     LIBS=''
1191     AC_LANG_PUSH(C++)
1192
1193     # Full set of headers used...
1194     # algorithm cctype cerrno cmath cstdio cstdlib cstring ctime exception
1195     # functional iomanip iosfwd iostream iterator list string strstream utility
1196     AC_LANG([C++])
1197     AC_PROG_CXX
1198     AX_CXX_BOOL
1199     AX_CXX_NAMESPACES
1200     AX_CXX_NAMESPACE_STD
1201     AC_CXX_HAVE_STD_LIBS
1202     AC_OPENMP([C++])
1203     AC_LANG_POP
1204
1205     AC_MSG_CHECKING([whether C++ compiler is sufficient for Magick++])
1206     if \
1207         test $ax_cv_cxx_bool = 'yes' && \
1208         test $ax_cv_cxx_namespaces = 'yes' && \
1209         test $ac_cv_cxx_have_std_libs = 'yes' && \
1210         test $ax_cv_cxx_have_std_namespace = 'yes'; then
1211         have_magick_plus_plus='yes'
1212     else
1213         have_magick_plus_plus='no (failed tests)'
1214     fi
1215     AC_MSG_RESULT([$have_magick_plus_plus])
1216     LIBS="$OLIBS"
1217 fi
1218 AM_CONDITIONAL(WITH_MAGICK_PLUS_PLUS, test "$have_magick_plus_plus" = 'yes')
1219
1220 # Only check for delegate libraries in subdirectories if requested.
1221 if test "$enable_delegate_build" != 'no'; then
1222     # Check for delegate sub-directories and add -I & -L options as required.
1223     # This presumes that delegates are installed as detailed in the ImageMagick
1224     # README. If delegates are installed in a standard location where the
1225     # compiler will automatically find them then these options should not be
1226     # required.
1227
1228     #
1229     # Most delegates have includes in the same directory as the library, but not all...
1230     #
1231     # Includes
1232     for dir in bzlib fftw fpx gslib/src jp2 jp2/src/libjasper/include jbig/libjbig jpeg lcms/include lzma magick png tiff/libtiff ttf/include wand webp wmf/include xml/include zlib; do
1233         if test -d "$builddir/$dir"; then
1234             CPPFLAGS="$CPPFLAGS -I$builddir/$dir"
1235         else
1236             if test -d "$srcdirfull/$dir"; then
1237                 CPPFLAGS="$CPPFLAGS -I$srcdirfull/$dir"
1238             fi
1239         fi
1240     done
1241
1242     # Libraries
1243     for dir in bzlib fftw fpx gslib/src jp2 jp2/src/libjasper jbig/libjbig jpeg lcms/src lzma magick png tiff/libtiff ttf/objs wand webp wmf/src xml zlib; do
1244     if test -d "$builddir/$dir/.libs"; then
1245         LDFLAGS="$LDFLAGS -L$builddir/$dir/.libs"
1246     else
1247         if test -d "$srcdirfull/$dir/.libs"; then
1248             LDFLAGS="$LDFLAGS -L$srcdirfull/$dir/.libs"
1249         fi
1250     fi
1251     if test -d "$builddir/$dir"; then
1252         LDFLAGS="$LDFLAGS -L$builddir/$dir"
1253     else
1254         if test -d "$srcdirfull/$dir"; then
1255             LDFLAGS="$LDFLAGS -L$srcdirfull/$dir"
1256         fi
1257     fi
1258   done
1259 fi
1260
1261 # Assume that delegate headers reside under same directory as ImageMagick
1262 # installation prefix.
1263 MAGICK_CPPFLAGS="-I$INCLUDE_DIR/ImageMagick $MAGICK_CPPFLAGS"
1264
1265 #
1266 # Find the X11 RGB database
1267 #
1268 AC_CACHE_CHECK(for X11 configure files,im_cv_x_configure,
1269 [# Look for the header file in a standard set of common directories.
1270 # Check X11 before X11Rn because it is often a symlink to the current release.
1271     for ac_dir in          \
1272     /lib/usr/lib/X11       \
1273     /usr/X11/lib           \
1274     /usr/X11R4/lib         \
1275     /usr/X11R5/lib         \
1276     /usr/X11R6/lib         \
1277     /usr/X11R7/lib         \
1278     /usr/X386/lib          \
1279     /usr/XFree86/lib/X11   \
1280     /usr/athena/lib        \
1281     /usr/lib               \
1282     /usr/lib/X11           \
1283     /usr/lib/X11R4         \
1284     /usr/lib/X11R5         \
1285     /usr/lib/X11R6         \
1286     /usr/lib/X11R7         \
1287     /usr/local/X11/lib     \
1288     /usr/local/X11R4/lib   \
1289     /usr/local/X11R5/lib   \
1290     /usr/local/X11R6/lib   \
1291     /usr/local/lib         \
1292     /usr/local/lib/X11     \
1293     /usr/local/lib/X11R4   \
1294     /usr/local/lib/X11R5   \
1295     /usr/local/lib/X11R6   \
1296     /usr/local/lib/X11R7   \
1297     /usr/local/x11r5/lib   \
1298     /usr/lpp/Xamples/lib   \
1299     /usr/openwin/lib       \
1300     /usr/openwin/share/lib \
1301     /usr/unsupported/lib   \
1302     /usr/x386/lib          \
1303     ; do
1304     if test -f "$ac_dir/X11/rgb.txt"; then
1305       im_cv_x_configure="$ac_dir/X11/"
1306       break
1307     elif test -f "$ac_dir/rgb.txt"; then
1308       im_cv_x_configure="$ac_dir/"
1309       break
1310     fi
1311
1312   done])
1313 X11_CONFIGURE_PATH="$im_cv_x_configure"
1314 case "${build_os}" in
1315   mingw* )
1316     X11ConfigurePath=`$WinPathScript "$X11ConfigurePath=" 1`
1317   ;;
1318 esac
1319 AC_DEFINE_UNQUOTED(X11_CONFIGURE_PATH,"$X11ConfigurePath",[Location of X11 configure files])
1320
1321 #
1322 # Find OpenMP library
1323 #
1324 GOMP_LIBS=''
1325 if test "$enable_openmp" != 'no'; then
1326   if test "${GCC}" = "yes"; then
1327     # Open64 (passes for GCC but uses different OpenMP implementation)
1328     if test "x$GOMP_LIBS" = x ; then
1329       if $CC --version 2>&1 | grep Open64 > /dev/null ; then
1330         AC_CHECK_LIB(openmp,omp_get_num_procs,GOMP_LIBS="-lopenmp",,)
1331       fi
1332     fi
1333     # GCC
1334     if test "x$GOMP_LIBS" = x ; then
1335       AC_CHECK_LIB(gomp,GOMP_parallel_start,GOMP_LIBS="-lgomp",,)
1336     fi
1337   else
1338     # Sun CC
1339     if test "x$GOMP_LIBS" = x ; then
1340       AC_CHECK_LIB(mtsk,sunw_mp_register_warn,GOMP_LIBS="-lmtsk",,)
1341     fi
1342     # AIX xlc
1343     if test "x$GOMP_LIBS" = x ; then
1344     AC_CHECK_LIB(xlsmp,_xlsmpFlush,GOMP_LIBS="-lxlsmp",,)
1345     fi
1346     # SGI IRIX 6.5 MIPSpro C/C++
1347     if test "x$GOMP_LIBS" = x ; then
1348     AC_CHECK_LIB(mp,mp_destroy,GOMP_LIBS="-lmp",,)
1349     fi
1350   fi
1351   LIBS="$GOMP_LIBS $LIBS"
1352 fi
1353 AC_SUBST(GOMP_LIBS)
1354
1355 #
1356 # Find Posix threads library
1357 #
1358 THREAD_LIBS=''
1359 if test "$with_threads" != 'no' && test "$have_threads" = 'yes'; then
1360
1361     if test "x$PTHREAD_LIBS" = "x"; then
1362     case "${host_cpu}-${host_os}" in
1363       *-freebsd*)
1364         MAGICK_CHECK_PTHREAD_LIB(c_r,PTHREAD_LIBS=-lc_r) ;;
1365     esac
1366     fi
1367
1368     for lib in pthread pthreads; do
1369         if test "x$PTHREAD_LIBS" = "x"; then
1370             MAGICK_CHECK_PTHREAD_LIB([$lib],[PTHREAD_LIBS=-l$lib])
1371         fi
1372     done
1373
1374     THREAD_LIBS="$PTHREAD_LIBS"
1375     LIBS="$LIBS $THREAD_LIBS"
1376 fi
1377 AC_SUBST(THREAD_LIBS)
1378
1379 #
1380 # Check for umem.
1381 #
1382 have_umem='no'
1383 UMEM_LIBS=''
1384 if test "$with_umem" != 'no'; then
1385   AC_MSG_CHECKING(for UMEM support )
1386   AC_MSG_RESULT()
1387   failed=0
1388   passed=0
1389   AC_CHECK_HEADER(umem.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1390   AC_CHECK_LIB(umem,umem_alloc,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1391   AC_CHECK_LIB(umem,umem_free,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1392   AC_MSG_CHECKING(if umem memory allocation library is complete)
1393   if test $passed -gt 0; then
1394     if test $failed -gt 0; then
1395       AC_MSG_RESULT(no -- some components failed test)
1396       have_umem='no (failed tests)'
1397     else
1398       UMEM_LIBS='-lumem'
1399       LIBS="$UMEM_LIBS $LIBS"
1400       AC_DEFINE(HasUMEM,1,Define if you have umem memory allocation library)
1401       AC_MSG_RESULT(yes)
1402       have_umem='yes'
1403     fi
1404   else
1405     AC_MSG_RESULT(no)
1406   fi
1407 fi
1408 AM_CONDITIONAL(HasUMEM, test "$have_umem" = 'yes')
1409 AC_SUBST(UMEM_LIBS)
1410
1411 #
1412 # Add support for ccmalloc memory debugging library if requested
1413 #
1414 have_ccmalloc='no'
1415 CCMALLOC_LIBS=''
1416 if test "$enable_ccmalloc" = 'yes'; then
1417     AC_PATH_PROG(CCMALLOCDelegate,ccmalloc,)
1418     if test -n "$CCMALLOCDelegate"; then
1419         eval `grep PREFIX= $CCMALLOCDelegate | sed -e 's/PREFIX/CCMALLOC_PREFIX/'`
1420         OLIBS="$LIBS"
1421         # Assume that gcc is used with ccmalloc.
1422         LIBS="$LIBS $CCMALLOC_PREFIX/lib/ccmalloc-gcc.o"
1423        AC_CHECK_LIB(ccmalloc,ccmalloc_malloc,CCMALLOC_LIBS="$CCMALLOC_PREFIX/lib/ccmalloc-gcc.o -lccmalloc -ldl",,-ldl)
1424         if test -n "$CCMALLOC_LIBS"; then
1425             LIBS="$OLIBS"
1426             LIBS="$LIBS $CCMALLOC_LIBS"
1427             have_ccmalloc='yes'
1428         else
1429             LIBS="$OLIBS"
1430         fi
1431     fi
1432 fi
1433
1434 #
1435 # Add support for efence memory debugging library if requested
1436 #
1437 if test "$enable_efence" = 'yes'; then
1438     EFENCE_LIBS='-lefence'
1439     LIBS="$EFENCE_LIBS $LIBS"
1440 fi
1441
1442 dnl ===========================================================================
1443
1444 #
1445 # Check for BZLIB
1446 #
1447
1448 AC_ARG_WITH([bzlib],
1449     [AC_HELP_STRING([--without-bzlib],
1450                     [disable BZLIB support])],
1451     [with_bzlib=$withval],
1452     [with_bzlib='yes'])
1453
1454 if test "$with_bzlib" != 'yes'; then
1455     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-bzlib=$with_bzlib "
1456 fi
1457
1458 have_bzlib='no'
1459 if test "$with_bzlib" != 'no'; then
1460     BZLIB_LIBS=''
1461     AC_MSG_RESULT([-------------------------------------------------------------])
1462     AC_MSG_CHECKING([for BZLIB])
1463     AC_MSG_RESULT([])
1464     failed=0
1465     passed=0
1466     found_libbz=0
1467     AC_CHECK_HEADER(bzlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1468     AC_CHECK_LIB(bz2,BZ2_bzDecompress,found_libbz=`expr $found_libbz + 1`,,)
1469     if test "$native_win32_build" = 'yes'; then
1470       AC_CHECK_LIB(bz2,_imp__BZ2_decompress,found_libbz=`expr $found_libbz + 1`,,)
1471     fi
1472     if test $found_libbz -gt 0; then
1473       passed=`expr $passed + 1`
1474     else
1475       failed=`expr $failed + 1`
1476     fi
1477     AC_MSG_CHECKING(if BZLIB package is complete)
1478     if test $passed -gt 0; then
1479       if test $failed -gt 0; then
1480         AC_MSG_RESULT(no -- some components failed test)
1481         have_bzlib='no (failed tests)'
1482       else
1483         BZLIB_LIBS='-lbz2'
1484         LIBS="$BZLIB_LIBS $LIBS"
1485         AC_DEFINE(BZLIB_DELEGATE,1,Define if you have the bzip2 library)
1486         AC_MSG_RESULT(yes)
1487         have_bzlib='yes'
1488       fi
1489     else
1490       AC_MSG_RESULT(no)
1491     fi
1492 fi
1493 AM_CONDITIONAL(BZLIB_DELEGATE, test "$have_bzlib" = 'yes')
1494 AC_SUBST(BZLIB_LIBS)
1495
1496 #
1497 # Find the X11 include and library directories.
1498 #
1499 IPC_LIBS=''
1500 X11_LIBS=''
1501 XEXT_LIBS=''
1502 XT_LIBS=''
1503 AC_PATH_XTRA
1504 if test "$no_x" != 'yes'; then
1505     AC_MSG_RESULT([-------------------------------------------------------------])
1506     AC_MSG_CHECKING([for X11])
1507     AC_MSG_RESULT([])
1508     LDFLAGS="$LDFLAGS $X_LIBS"
1509     X11_LIBS="$X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
1510     LIBS="$X11_LIBS $LIBS"
1511     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1512
1513     AC_DEFINE(X11_DELEGATE,1,Define if you have X11 library)dnl
1514
1515     #
1516     # Check for X11 shared memory extension
1517     #
1518     # shmctl is required to support the shared memory extension
1519     AC_CHECK_FUNC([shmctl],[have_shmctl='yes'],[])
1520     if test "$have_shmctl" != 'yes'; then
1521         PERSIST_LIBS=$LIBS
1522         LIBS="$LIBS -lcygipc"
1523         AC_TRY_LINK_FUNC([shmctl],[have_shmctl='yes'; IPC_LIBS='-lcygipc'],[])
1524         LIBS=$PERSIST_LIBS
1525     fi
1526
1527     if test "$have_shmctl" = 'yes'; then
1528         AC_CHECK_LIB([Xext],[XShmAttach],[XEXT_LIBS='-lXext' ; AC_DEFINE(HAVE_SHARED_MEMORY,1,X11 server supports shared memory extension)],[],[])
1529     fi
1530
1531     #
1532     # Check for X11 shape extension
1533     #
1534     AC_CHECK_LIB([Xext],[XShapeCombineMask],[XEXT_LIBS='-lXext' ; AC_DEFINE(HAVE_SHAPE,1,X11 server supports shape extension)],[],[])
1535     AC_CHECK_LIB(Xt,XtSetEventDispatcher,XT_LIBS='-lXt',,)
1536     LIBS="$XEXT_LIBS $XT_LIBS $LIBS"
1537 fi
1538 if test "$no_x" != 'yes'; then
1539   have_x='yes'
1540 else
1541   have_x='no'
1542 fi
1543 AM_CONDITIONAL(X11_DELEGATE, test "$have_x" = 'yes')
1544 AC_SUBST(X11_LIBS)
1545 AC_SUBST(XEXT_LIBS)
1546
1547 dnl ===========================================================================
1548
1549 #
1550 # Check for ZLIB
1551 #
1552 AC_ARG_WITH([zlib],
1553     [AC_HELP_STRING([--without-zlib],
1554                     [disable ZLIB support])],
1555     [with_zlib=$withval],
1556     [with_zlib='yes'])
1557
1558 if test "$with_zlib" != 'yes'; then
1559     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-zlib=$with_zlib "
1560 fi
1561
1562 have_zlib='no'
1563 ZLIB_LIBS=''
1564 dnl PNG requires zlib so enable zlib check if PNG is requested
1565 if test "$with_zlib" != 'no' || test "$with_png" != 'no'; then
1566     AC_MSG_RESULT([-------------------------------------------------------------])
1567     AC_MSG_CHECKING([for ZLIB])
1568     AC_MSG_RESULT([])
1569     ZLIB_LIBS=''
1570     failed=0
1571     passed=0
1572     AC_CHECK_HEADER(zconf.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1573     AC_CHECK_HEADER(zlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1574     AC_CHECK_LIB(z,compress,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1575     AC_CHECK_LIB(z,uncompress,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1576     AC_CHECK_LIB(z,deflate,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1577     AC_CHECK_LIB(z,inflate,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1578     AC_CHECK_LIB(z,gzseek,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1579     AC_CHECK_LIB(z,gztell,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1580     AC_MSG_CHECKING([if ZLIB package is complete])
1581     if test $passed -gt 0; then
1582         if test $failed -gt 0; then
1583             AC_MSG_RESULT([no -- some components failed test])
1584             have_zlib='no (failed tests)'
1585         else
1586             ZLIB_LIBS='-lz'
1587             LIBS="$ZLIB_LIBS $LIBS"
1588             AC_DEFINE(ZLIB_DELEGATE,1,Define if you have zlib compression library)
1589             AC_MSG_RESULT([yes])
1590             have_zlib='yes'
1591         fi
1592     else
1593         AC_MSG_RESULT([no])
1594     fi
1595 fi
1596 AM_CONDITIONAL(ZLIB_DELEGATE, test "$have_zlib" = 'yes')
1597 AC_SUBST(ZLIB_LIBS)
1598
1599 # whether modules are built or not.
1600 with_ltdl='yes'
1601 have_ltdl='no'
1602 LTDL_LIBS=''
1603 if test "$build_modules" != 'no' ; then
1604   AC_MSG_RESULT([-------------------------------------------------------------])
1605   AC_MSG_CHECKING([for libltdl])
1606   AC_MSG_RESULT([])
1607   failed=0
1608   passed=0
1609   AC_CHECK_HEADER([ltdl.h],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`])
1610   AC_CHECK_LIB([ltdl],[lt_dlinit],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`],)
1611   AC_MSG_CHECKING([if libltdl package is complete])
1612   if test $passed -gt 0 ; then
1613     if test $failed -gt 0 ; then
1614       AC_MSG_RESULT([no -- some components failed test])
1615       have_ltdl='no (failed tests)'
1616     else
1617       LTDL_LIBS='-lltdl'
1618       LIBS="$LTDL_LIBS $LIBS"
1619       AC_DEFINE(LTDL_DELEGATE,1,[Define if using libltdl to support dynamically loadable modules])
1620       AC_MSG_RESULT([yes])
1621       have_ltdl='yes'
1622     fi
1623   else
1624     AC_MSG_RESULT([no])
1625   fi
1626   if test "$have_ltdl" != 'yes' ; then
1627     AC_MSG_FAILURE([libltdl is required for modules build],[1])
1628   fi
1629 fi
1630 AM_CONDITIONAL(WITH_LTDL, test "$have_ltdl" != 'no')
1631
1632 #
1633 # If profiling, then check for -ldl and dlopen (required for Solaris & gcc)
1634 #
1635 LIB_DL=''
1636 if test "$enable_profiling" = 'yes'; then
1637     AC_CHECK_LIB(dl,dlopen,LIB_DL='-ldl',,)
1638     LIBS="$LIB_DL $LIBS"
1639 fi
1640 AC_SUBST(LIB_DL)
1641
1642 dnl ===========================================================================
1643
1644 #
1645 # Check for Autotrace delegate library.
1646 #
1647 AC_ARG_WITH([autotrace],
1648     [AC_HELP_STRING([--with-autotrace],
1649                     [enable autotrace support])],
1650         [with_autotrace=$withval],
1651         [with_autotrace='no'])
1652
1653 if test "$with_autotrace" != 'yes'; then
1654     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-autotrace=$with_autotrace "
1655 fi
1656
1657 have_autotrace='no'
1658 AUTOTRACE_CFLAGS=""
1659 AUTOTRACE_LIBS=""
1660 AUTOTRACE_PKG=""
1661 if test "x$with_autotrace" = "xyes"; then
1662     AC_MSG_RESULT([-------------------------------------------------------------])
1663     PKG_CHECK_MODULES(AUTOTRACE,[autotrace >= 0.31.1], have_autotrace=yes, have_autotrace=no)
1664     AC_MSG_RESULT([])
1665 fi
1666
1667 if test "$have_autotrace" = 'yes'; then
1668     failed=0
1669     AC_DEFINE(AUTOTRACE_DELEGATE,1,Define if you have AUTOTRACE library)
1670     if test "$build_modules" = 'no'; then
1671       CPPFLAGS="$AUTOTRACE_CFLAGS $CPPFLAGS"
1672     fi
1673 fi
1674
1675 AM_CONDITIONAL(AUTOTRACE_DELEGATE,test "$have_autotrace" = 'yes')
1676 AC_SUBST(AUTOTRACE_CFLAGS)
1677 AC_SUBST(AUTOTRACE_LIBS)
1678
1679 dnl ===========================================================================
1680
1681 #
1682 # Check for Display Postscript delegate library.
1683 #
1684 AC_ARG_WITH([dps],
1685     [AC_HELP_STRING([--without-dps],
1686                     [disable Display Postscript support])],
1687     [with_dps=$withval],
1688     [with_dps='yes'])
1689
1690 if test "$with_dps" != 'yes'; then
1691     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-dps=$with_dps "
1692 fi
1693
1694 have_dps='no'
1695 DPS_LIBS=''
1696 if test "$with_dps" != 'no' && test "$with_x" != 'no'; then
1697     AC_MSG_RESULT([-------------------------------------------------------------])
1698     AC_MSG_CHECKING([for DPS])
1699     AC_MSG_RESULT([])
1700     failed=0
1701     passed=0
1702     PERSIST_CPPFLAGS="$CPPFLAGS"
1703     CPPFLAGS="$CPPFLAGS -I${ac_x_includes}/X11"
1704     AC_CHECK_HEADER(DPS/dpsXclient.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1705     # DPS issues:
1706     # XFree86-4.x needs -lXt to provide XtMalloc for -ldps.
1707     # Cygwin doesn't deliver -lXt as a DLL, which prevents a DLL build.
1708     # Adobe DPS (as delivered on Solaris) doesn't require -lXt.
1709     # ImageMagick itself doesn't use -lXt.
1710     have_libdps='no'
1711     LIBDPS_XT=''
1712     AC_CHECK_LIB(dps,DPSInitialize,have_libdps='yes',have_libdps='no',)
1713     if test "$have_libdps" != 'yes'; then
1714         # Unset cache variable so we can try again.
1715         unset ac_cv_lib_dps_DPSInitialize
1716         AC_CHECK_LIB(dps,DPSInitialize,have_libdps='yes',have_libdps='no',-lXt)
1717         if test "$have_libdps" = 'yes'; then
1718             LIBDPS_XT='-lXt'
1719         fi
1720     fi
1721     if test "$have_libdps" = 'yes'; then
1722         passed=`expr $passed + 1`
1723     else
1724         failed=`expr $failed + 1`
1725     fi
1726     AC_CHECK_LIB(dpstk,XDPSPixelsPerPoint,passed=`expr $passed + 1`,failed=`expr $failed + 1`,-ldps $LIBDPS_XT)
1727     AC_MSG_CHECKING([if DPS package is complete])
1728     if test $passed -gt 0; then
1729         if test $failed -gt 0; then
1730             AC_MSG_RESULT([no -- some components failed test])
1731             have_dps='no (failed tests)'
1732             CPPFLAGS="$PERSIST_CPPFLAGS"
1733         else
1734             DPS_LIBS="-ldpstk -ldps ${LIBDPS_XT}"
1735             LIBS="$DPS_LIBS $LIBS"
1736             AC_DEFINE(DPS_DELEGATE,1,Define if you have Display Postscript)
1737             AC_MSG_RESULT([yes])
1738             have_dps='yes'
1739         fi
1740     else
1741         AC_MSG_RESULT([no])
1742         CPPFLAGS=$PERSIST_CPPFLAGS
1743     fi
1744 fi
1745 AM_CONDITIONAL(DPS_DELEGATE, test "$have_dps" = 'yes')
1746 AC_SUBST(DPS_LIBS)
1747
1748 dnl ===========================================================================
1749
1750 #
1751 # Check for DJVU delegate library.
1752 #
1753 AC_ARG_WITH([djvu],
1754     [AC_HELP_STRING([--without-djvu],
1755                     [disable DjVu support])],
1756     [with_djvu=$withval],
1757     [with_djvu='yes'])
1758
1759 if test "$with_djvu" != 'yes'; then
1760     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-djvu=$with_djvu "
1761 fi
1762
1763 have_djvu='no'
1764 DJVU_LIBS=''
1765 if test "$with_djvu" != 'no'; then
1766     AC_MSG_RESULT([-------------------------------------------------------------])
1767     AC_MSG_CHECKING([for DJVU])
1768     AC_MSG_RESULT([])
1769     failed=0
1770     passed=0
1771     AC_CHECK_HEADER(libdjvu/ddjvuapi.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1772     AC_CHECK_LIB(djvulibre,ddjvu_context_create,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1773     AC_MSG_CHECKING([if DJVU package is complete])
1774     if test $passed -gt 0; then
1775         if test $failed -gt 0; then
1776             AC_MSG_RESULT([no -- some components failed test])
1777             have_djvu='no (failed tests)'
1778         else
1779             DJVU_LIBS='-ldjvulibre'
1780             LIBS="$DJVU_LIBS $LIBS"
1781             AC_DEFINE(DJVU_DELEGATE,1,Define if you have DJVU library)
1782             AC_MSG_RESULT([yes])
1783             have_djvu='yes'
1784         fi
1785     else
1786         AC_MSG_RESULT([no])
1787     fi
1788 fi
1789 AM_CONDITIONAL(DJVU_DELEGATE, test "$have_djvu" = 'yes')
1790 AC_SUBST(DJVU_LIBS)
1791
1792 dnl ===========================================================================
1793
1794 #
1795 # Set DejaVu font directory.
1796 #
1797 AC_ARG_WITH([dejavu-font-dir],
1798     [AC_HELP_STRING([--with-dejavu-font-dir=DIR],
1799                     [DejaVu font directory])],
1800     [with_dejavu_font_dir=$withval],
1801     [with_dejavu_font_dir='default'])
1802
1803 if test "$with_dejavu_font_dir" != 'default'; then
1804     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-dejavu-font-dir=$with_dejavu_font_dir "
1805 fi
1806
1807 dnl ===========================================================================
1808
1809 #
1810 # Check for FFTW delegate library.
1811 #
1812 AC_ARG_WITH([fftw],
1813     [AC_HELP_STRING([--without-fftw],
1814                     [disable FFTW support])],
1815     [with_fftw=$withval],
1816     [with_fftw='yes'])
1817
1818 if test "$with_fftw" != 'yes'; then
1819     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fftw=$with_fftw "
1820 fi
1821
1822 have_fftw='no'
1823 FFTW_LIBS=''
1824 if test "$with_fftw" != 'no'; then
1825     AC_MSG_RESULT([-------------------------------------------------------------])
1826     AC_MSG_CHECKING([for FFTW])
1827     AC_MSG_RESULT([])
1828     failed=0
1829     passed=0
1830     AC_CHECK_HEADER(fftw3.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1831     AC_CHECK_LIB(fftw3,fftw_execute,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1832     AC_MSG_CHECKING([if FFTW package is complete])
1833     if test $passed -gt 0; then
1834         if test $failed -gt 0; then
1835             AC_MSG_RESULT([no -- some components failed test])
1836             have_fftw='no (failed tests)'
1837         else
1838             FFTW_LIBS='-lfftw3'
1839             LIBS="$FFTW_LIBS $LIBS"
1840             AC_DEFINE(FFTW_DELEGATE,1,Define if you have FFTW library)
1841             AC_MSG_RESULT([yes])
1842             have_fftw='yes'
1843         fi
1844     else
1845         AC_MSG_RESULT([no])
1846     fi
1847 fi
1848 AM_CONDITIONAL(FFTW_DELEGATE, test "$have_fftw" = 'yes')
1849 AC_SUBST(FFTW_LIBS)
1850
1851 dnl ===========================================================================
1852
1853 #
1854 # Check for FlashPIX delegate library.
1855 #
1856 AC_ARG_WITH([fpx],
1857     [AC_HELP_STRING([--without-fpx],
1858                     [disable FlashPIX support])],
1859     [with_fpx=$withval],
1860     [with_fpx='yes'])
1861
1862 if test "$with_fpx" != 'yes'; then
1863     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fpx=$with_fpx "
1864 fi
1865
1866 have_fpx='no'
1867 FPX_LIBS=''
1868 if test "$with_fpx" != 'no'; then
1869     AC_MSG_RESULT([-------------------------------------------------------------])
1870     AC_MSG_CHECKING([for FlashPIX])
1871     AC_MSG_RESULT([])
1872     failed=0
1873     passed=0
1874     AC_LANG_PUSH(C++)
1875     AC_CHECK_HEADER(fpxlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1876     AC_CHECK_LIB(fpx,FPX_OpenImageByFilename,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1877     AC_LANG_POP
1878     AC_MSG_CHECKING([if FlashPIX package is complete])
1879     if test $passed -gt 0; then
1880         if test $failed -gt 0; then
1881             AC_MSG_RESULT([no -- some components failed test])
1882             have_fpx='no (failed tests)'
1883         else
1884             FPX_LIBS='-lfpx'
1885             AC_DEFINE(FPX_DELEGATE,1,Define if you have FlashPIX library)
1886             AC_MSG_RESULT([yes])
1887             have_fpx='yes'
1888             PERLMAINCC="$CXX"
1889         fi
1890     else
1891         AC_MSG_RESULT([no])
1892     fi
1893 fi
1894 AM_CONDITIONAL(FPX_DELEGATE, test "$have_fpx" = 'yes')
1895 AC_SUBST(FPX_LIBS)
1896
1897 dnl ===========================================================================
1898
1899 #
1900 # Check for fontconfig delegate library.
1901 #
1902 AC_ARG_WITH([fontconfig],
1903     [AC_HELP_STRING([--without-fontconfig],
1904                     [disable fontconfig support])],
1905         [with_fontconfig=$withval],
1906         [with_fontconfig='yes'])
1907
1908 if test "$with_fontconfig" != 'yes'; then
1909     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fontconfig=$with_fontconfig "
1910 fi
1911
1912 have_fontconfig='no'
1913 FONTCONFIG_CFLAGS=""
1914 FONTCONFIG_LIBS=""
1915 FONTCONFIG_PKG=""
1916 if test "x$with_fontconfig" = "xyes"; then
1917     AC_MSG_RESULT([-------------------------------------------------------------])
1918     PKG_CHECK_MODULES(FONTCONFIG,[fontconfig >= 2.1.0], have_fontconfig=yes, have_fontconfig=no)
1919     AC_MSG_RESULT([])
1920 fi
1921
1922 if test "$have_fontconfig" = 'yes'; then
1923   AC_DEFINE(FONTCONFIG_DELEGATE,1,Define if you have FONTCONFIG library)
1924   if test "$build_modules" = 'no'; then
1925     CPPFLAGS="$FONTCONFIG_CFLAGS $CPPFLAGS"
1926   fi
1927 fi
1928
1929 AM_CONDITIONAL(FONTCONFIG_DELEGATE,test "$have_fontconfig" = 'yes')
1930 AC_SUBST(FONTCONFIG_CFLAGS)
1931 AC_SUBST(FONTCONFIG_LIBS)
1932
1933 dnl ===========================================================================
1934
1935 #
1936 # Check for the Freetype delegate library.
1937 #
1938 AC_ARG_WITH([freetype],
1939     [AC_HELP_STRING([--without-freetype],
1940                     [disable Freetype support])],
1941     [with_freetype=$withval],
1942     [with_freetype='yes'])
1943
1944 if test "$with_freetype" != 'yes'; then
1945     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-freetype=$with_freetype "
1946 fi
1947
1948 have_freetype='no'
1949 FREETYPE_CFLAGS=""
1950 FREETYPE_LIBS=""
1951 FREETYPE_PKG=""
1952 if test "x$with_freetype" = "xyes"; then
1953     AC_MSG_RESULT([-------------------------------------------------------------])
1954     PKG_CHECK_MODULES(FREETYPE,[freetype2], have_freetype=yes, have_freetype=no)
1955     AC_MSG_RESULT([])
1956 fi
1957
1958 if test "$have_freetype" = 'yes'; then
1959     AC_DEFINE(FREETYPE_DELEGATE,1,Define if you have FREETYPE library)
1960     CFLAGS="$FREETYPE_CFLAGS $CFLAGS"
1961 fi
1962
1963 AM_CONDITIONAL(FREETYPE_DELEGATE, test "$have_freetype" = 'yes')
1964 AC_SUBST(FREETYPE_CFLAGS)
1965 AC_SUBST(FREETYPE_LIBS)
1966
1967 dnl ===========================================================================
1968
1969 #
1970 # Check for Ghostscript library or framework.
1971 #
1972 # Test for iapi.h & test for gsapi_new_instance in -lgs
1973 # or -framework Ghostscript
1974
1975 AC_ARG_WITH([gslib],
1976     [AC_HELP_STRING([--without-gslib],
1977                     [enable Ghostscript library support])],
1978     [with_gslib=$withval],
1979     [with_gslib='no'])
1980
1981 gslib_framework='no'
1982 if test "$with_gslib" != 'yes'; then
1983     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gslib=$with_gslib "
1984 fi
1985
1986 have_gslib='no'
1987 GS_LIBS=''
1988 if test "$with_gslib" != 'no'; then
1989     AC_MSG_RESULT([-------------------------------------------------------------])
1990     AC_MSG_CHECKING([for Ghostscript])
1991     AC_MSG_RESULT([])
1992     framework=0
1993     failed=0
1994     passed=0
1995     AC_CHECK_HEADER(ghostscript/iapi.h,passed=`expr $passed + 1`,
1996         failed=`expr $failed + 1`,)
1997     AC_CHECK_HEADER(ghostscript/ierrors.h,passed=`expr $passed + 1`,
1998         failed=`expr $failed + 1`,)
1999     AC_CHECK_FRAMEWORK(Ghostscript,gsapi_new_instance,framework=`expr $framework + 1`,
2000     AC_CHECK_LIB(gs,gsapi_new_instance,passed=`expr $passed + 1`,failed=`expr $failed + 1`,),)
2001     AC_MSG_CHECKING([if Ghostscript package is complete])
2002     if test $passed -gt 0; then
2003         if test $failed -gt 0; then
2004             AC_MSG_RESULT([no -- some components failed test])
2005             have_gslib='no (failed tests)'
2006         else
2007             if test $framework -gt 0; then
2008                 GS_LIBS='-framework Ghostscript'
2009                 gslib_framework='yes'
2010                 AC_MSG_RESULT([yes, using framework.])
2011             else
2012                 AC_MSG_RESULT([yes, using library.])
2013                 GS_LIBS='-lgs'
2014             fi
2015             LIBS="$GS_LIBS $LIBS"
2016             AC_DEFINE(GS_DELEGATE,1,Define if you have Ghostscript library or framework)
2017             have_gslib='yes'
2018         fi
2019     else
2020         AC_MSG_RESULT([no])
2021     fi
2022 fi
2023 AM_CONDITIONAL(GS_DELEGATE, test "$have_gslib" = 'yes')
2024 AC_SUBST(GS_LIBS)
2025
2026 # Set default font search path
2027 AC_ARG_WITH([fontpath],
2028     [AC_HELP_STRING([--with-fontpath=DIR],
2029                     [prepend to default font search path])],
2030     [with_fontpath=$withval],
2031     [with_fontpath=''])
2032
2033 if test "$with_fontpath" != "yes" && test -z "$with_fontpath"; then
2034     with_fontpath=''
2035 else
2036     AC_DEFINE_UNQUOTED(MAGICK_FONT_PATH,"$with_fontpath",[Define to prepend to default font search path.])
2037 fi
2038 if test "$with_fontpath=" != ''; then
2039     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fontpath=$with_fontpath "
2040 fi
2041
2042 # Set Ghostscript font directory
2043 AC_ARG_WITH([gs-font-dir],
2044     [AC_HELP_STRING([--with-gs-font-dir=DIR],
2045                     [Ghostscript font directory])],
2046     [with_gs_font_dir=$withval],
2047     [with_gs_font_dir='default'])
2048
2049 if test "$with_gs_font_dir" != 'default'; then
2050     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gs-font-dir=$with_gs_font_dir "
2051 fi
2052
2053 dnl ===========================================================================
2054
2055 #
2056 # Check for GVC delegate library.
2057 #
2058 AC_ARG_WITH(gvc,
2059     [AC_HELP_STRING([--with-gvc],
2060                     [disable GVC support])],
2061     [with_gvc=$withval],
2062     [with_gvc='no'])
2063
2064 if test "$with_gvc" != 'yes'; then
2065     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gvc=$with_gvc "
2066 fi
2067
2068 GVC_PKG=""
2069 if test "x$with_gvc" = "xyes"; then
2070     AC_MSG_RESULT([-------------------------------------------------------------])
2071     PKG_CHECK_MODULES(GVC,[libgvc >= 2.9.0], have_gvc=yes, have_gvc=no)
2072     AC_MSG_RESULT([])
2073 fi
2074
2075 if test "$have_gvc" = 'yes'; then
2076     AC_DEFINE(GVC_DELEGATE,1,Define if you have GVC library)
2077     if test "$build_modules" = 'no'; then
2078         CPPFLAGS="$GVC_CFLAGS $CPPFLAGS"
2079     fi
2080 fi
2081
2082 AM_CONDITIONAL(GVC_DELEGATE, test "$have_gvc" = 'yes')
2083 AC_SUBST(GVC_CFLAGS)
2084 AC_SUBST(GVC_LIBS)
2085
2086 dnl ===========================================================================
2087
2088 #
2089 # Check for JBIG delegate library.
2090 #
2091
2092 AC_ARG_WITH([jbig],
2093     [AC_HELP_STRING([--without-jbig],
2094                     [disable JBIG support])],
2095     [with_jbig=$withval],
2096     [with_jbig='yes'])
2097
2098 have_jbig='no'
2099 JBIG_LIBS=''
2100 if test "$with_jbig" != 'no'; then
2101     AC_MSG_RESULT([-------------------------------------------------------------])
2102     AC_MSG_CHECKING([for JBIG])
2103     AC_MSG_RESULT([])
2104     failed=0
2105     passed=0
2106     AC_CHECK_HEADER(jbig.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2107     AC_CHECK_LIB(jbig,jbg_dec_init,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2108     AC_MSG_CHECKING([if JBIG package is complete])
2109     if test $passed -gt 0; then
2110         if test $failed -gt 0; then
2111             AC_MSG_RESULT([no -- some components failed test])
2112             have_jbig='no (failed tests)'
2113         else
2114             JBIG_LIBS='-ljbig'
2115             LIBS="$JBIG_LIBS $LIBS"
2116             AC_DEFINE(JBIG_DELEGATE,1,Define if you have JBIG library)
2117             AC_MSG_RESULT([yes])
2118             have_jbig='yes'
2119         fi
2120     else
2121         AC_MSG_RESULT([no])
2122     fi
2123 fi
2124 AM_CONDITIONAL(JBIG_DELEGATE, test "$have_jbig" = 'yes')
2125 AC_SUBST(JBIG_LIBS)
2126
2127 dnl ===========================================================================
2128
2129 #
2130 # Check for JPEG delegate library.
2131 #
2132 AC_ARG_WITH([jpeg],
2133     [AC_HELP_STRING([--without-jpeg],
2134                     [disable JPEG support])],
2135     [with_jpeg=$withval],
2136     [with_jpeg='yes'])
2137
2138 if test "$with_jpeg" != 'yes'; then
2139     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-jpeg=$with_jpeg "
2140 fi
2141
2142 have_jpeg='no'
2143 JPEG_LIBS=''
2144 if test "$with_jpeg" != 'no'; then
2145     AC_MSG_RESULT([-------------------------------------------------------------])
2146     AC_MSG_CHECKING([for JPEG])
2147     AC_MSG_RESULT([])
2148     failed=0
2149     passed=0
2150     AC_CHECK_HEADER(jconfig.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2151     AC_CHECK_HEADER(jerror.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2152     AC_CHECK_HEADER(jmorecfg.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2153     AC_CHECK_HEADER(jpeglib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2154     AC_CHECK_LIB(jpeg,jpeg_read_header,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2155
2156 # Test for compatible JPEG library
2157 if test "$ac_cv_jpeg_version_ok" != 'yes'; then
2158 AC_CACHE_CHECK(for JPEG library is version 6b or later, ac_cv_jpeg_version_ok,
2159 [AC_TRY_COMPILE(
2160 #include <stdio.h>
2161 #include <stdlib.h>
2162 #include <jpeglib.h>
2163 ,
2164 changequote(<<, >>)dnl
2165 <<
2166 #if JPEG_LIB_VERSION < 62
2167 #error IJG JPEG library must be version 6b or newer!
2168 #endif
2169 return 0;
2170 >>,
2171 changequote([, ])dnl
2172 ac_cv_jpeg_version_ok='yes'; passed=`expr $passed + 1`,
2173 ac_cv_jpeg_version_ok='no'; failed=`expr $failed + 1`)])
2174 fi
2175     AC_MSG_CHECKING([if JPEG package is complete])
2176     if test $passed -gt 0; then
2177         if test $failed -gt 0; then
2178             AC_MSG_RESULT([no -- some components failed test])
2179             have_jpeg='no (failed tests)'
2180         else
2181             JPEG_LIBS='-ljpeg'
2182             LIBS="$JPEG_LIBS $LIBS"
2183             AC_DEFINE(JPEG_DELEGATE,1,Define if you have JPEG library)
2184             AC_MSG_RESULT([yes])
2185             have_jpeg='yes'
2186         fi
2187     else
2188         AC_MSG_RESULT([no])
2189     fi
2190 fi
2191 AM_CONDITIONAL(JPEG_DELEGATE, test "$have_jpeg" = 'yes')
2192 AC_SUBST(JPEG_LIBS)
2193
2194 dnl ===========================================================================
2195
2196 #
2197 # Check for JPEG Version 2 delegate library.
2198 #
2199 AC_ARG_WITH([jp2],
2200     [AC_HELP_STRING([--without-jp2],
2201                     [disable JPEG-2000 support])],
2202     [with_jp2=$withval],
2203     [with_jp2='yes'])
2204
2205 if test "$with_jp2" != 'yes'; then
2206     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-jp2=$with_jp2 "
2207 fi
2208
2209 have_jp2='no'
2210 JP2_LIBS=''
2211 if test "$with_jp2" != 'no'; then
2212     AC_MSG_RESULT([-------------------------------------------------------------])
2213     AC_MSG_CHECKING([for JPEG Version 2])
2214     AC_MSG_RESULT([])
2215     failed=0
2216     passed=0
2217     AC_CHECK_HEADER(jasper/jasper.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2218     AC_CHECK_LIB(jasper,jas_stream_fopen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2219     AC_MSG_CHECKING([if JPEG version 2 support package is complete])
2220     if test $passed -gt 0; then
2221         if test $failed -gt 0; then
2222             AC_MSG_RESULT([no -- some components failed test])
2223             have_jp2='no (failed tests)'
2224         else
2225             JP2_LIBS='-ljasper'
2226             LIBS="$JP2_LIBS $LIBS"
2227             AC_DEFINE(JP2_DELEGATE,1,Define if you have JPEG version 2 "Jasper" library)
2228             AC_MSG_RESULT([yes])
2229             have_jp2='yes'
2230         fi
2231     else
2232         AC_MSG_RESULT([no])
2233     fi
2234 fi
2235 AM_CONDITIONAL(JP2_DELEGATE, test "$have_jp2" = 'yes')
2236 AC_SUBST(JP2_LIBS)
2237
2238 dnl ===========================================================================
2239
2240 #
2241 # Check for LCMS delegate library.
2242 #
2243 # Disable LCMS.
2244 AC_ARG_WITH(lcms,
2245         [  --without-lcms          disable lcms (v1.1X) support],
2246         [with_lcms=$withval],
2247         [with_lcms='yes'])
2248 if test "$with_lcms" != 'yes' ; then
2249     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lcms=$with_lcms "
2250 fi
2251
2252 # Disable LCMS2.
2253 AC_ARG_WITH(lcms2,
2254         [  --without-lcms2         disable lcms (v2.X) support],
2255         [with_lcms2=$withval],
2256         [with_lcms2='yes'])
2257 if test "$with_lcms2" != 'yes' ; then
2258     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lcms2=$with_lcms2 "
2259 fi
2260
2261 have_lcms2='no'
2262 LCMS_LIBS=''
2263 if test "$with_lcms2" != 'no'; then
2264     AC_MSG_RESULT([-------------------------------------------------------------])
2265     AC_MSG_CHECKING([for LCMS v2])
2266     AC_MSG_RESULT()
2267     failed=0
2268     passed=0
2269     have_lcms_header='no'
2270
2271     # Check for <lcms2.h>
2272     AC_CHECK_HEADER(lcms2.h,have_lcms_header='yes',,)
2273     if test "$have_lcms_header" = 'yes'; then
2274        AC_DEFINE(HAVE_LCMS2_H,1,Define if you have the <lcms2.h> header file.)
2275        passed=`expr $passed + 1`
2276     fi
2277
2278     # Check for <lcms2/lcms2.h)
2279     if test "$have_lcms_header" != 'yes'; then
2280       AC_CHECK_HEADER(lcms2/lcms2.h,have_lcms_header='yes',,)
2281       if test "$have_lcms_header" = 'yes'; then
2282         passed=`expr $passed + 1`
2283         AC_DEFINE(HAVE_LCMS2_LCMS2_H,1,Define if you have the <lcms2/lcms2.h> header file.)
2284       fi
2285     fi
2286
2287     # Failed to find lcms header?
2288     if test "$have_lcms_header" != 'yes'; then
2289       failed=`expr $failed + 1`
2290     fi
2291
2292     AC_CHECK_LIB(lcms2,cmsSetLogErrorHandler,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2293     AC_MSG_CHECKING(if LCMS v2 package is complete)
2294     if test $passed -gt 0; then
2295       if test $failed -gt 0; then
2296         AC_MSG_RESULT(no -- some components failed test)
2297         have_lcms2='no (failed tests)'
2298       else
2299         LCMS_LIBS='-llcms2'
2300         LIBS="$LCMS_LIBS $LIBS"
2301         AC_MSG_RESULT(yes)
2302         have_lcms2='yes'
2303       fi
2304     else
2305       AC_MSG_RESULT(no)
2306     fi
2307 fi
2308
2309 #
2310 # Check for LCMS v1 (1.11 or later)
2311 #
2312 if test $have_lcms2 = 'yes'; then
2313   with_lcms='no'
2314 fi
2315
2316 have_lcms='no'
2317 if test "$with_lcms" != 'no'; then
2318     AC_MSG_RESULT([-------------------------------------------------------------])
2319     AC_MSG_CHECKING([for LCMS v1.1X])
2320     AC_MSG_RESULT()
2321     failed=0
2322     passed=0
2323     have_lcms_header='no'
2324
2325     # Check for <lcms.h>
2326     if test "$have_lcms_header" != 'yes'; then
2327       AC_CHECK_HEADER(lcms.h,have_lcms_header='yes',,)
2328       if test "$have_lcms_header" = 'yes'; then
2329         passed=`expr $passed + 1`
2330         AC_DEFINE(HAVE_LCMS_H,1,Define if you have the <lcms.h> header file.)
2331       fi
2332     fi
2333
2334     # Check for <lcms/lcms.h>
2335     if test "$have_lcms_header" != 'yes'; then
2336       AC_CHECK_HEADER(lcms/lcms.h,have_lcms_header='yes',,)
2337       if test "$have_lcms_header" = 'yes'; then
2338         passed=`expr $passed + 1`
2339         AC_DEFINE(HAVE_LCMS_LCMS_H,1,Define if you have the <lcms/lcms.h> header file.)
2340       fi
2341     fi
2342
2343     # Failed to find lcms header?
2344     if test "$have_lcms_header" != 'yes'; then
2345       failed=`expr $failed + 1`
2346     fi
2347
2348     AC_CHECK_LIB(lcms,cmsSetErrorHandler,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2349     AC_MSG_CHECKING(if LCMS package is complete)
2350     if test $passed -gt 0; then
2351       if test $failed -gt 0; then
2352         AC_MSG_RESULT(no -- some components failed test)
2353         have_lcms='no (failed tests)'
2354       else
2355         LCMS_LIBS='-llcms'
2356         LIBS="$LCMS_LIBS $LIBS"
2357         AC_MSG_RESULT(yes)
2358         have_lcms='yes'
2359       fi
2360     else
2361       AC_MSG_RESULT(no)
2362     fi
2363 fi
2364
2365 AM_CONDITIONAL(LCMS_DELEGATE, test "$have_lcms2" = 'yes' -o "$have_lcms" = 'yes')
2366 if test "$have_lcms2" = 'yes' -o "$have_lcms" = 'yes'; then
2367   AC_DEFINE(LCMS_DELEGATE,1,[Define if you have LCMS (v1.11 or later) library])
2368 fi
2369 AC_SUBST(LCMS_LIBS)
2370
2371
2372 dnl ===========================================================================
2373
2374 #
2375 # Check for the LQR (Liquid Rescale) delegate library.
2376 #
2377 AC_ARG_WITH([lqr],
2378     [AC_HELP_STRING([--without-lqr],
2379                     [disable Liquid Rescale support])],
2380     [with_lqr=$withval],
2381     [with_lqr='yes'])
2382
2383 if test "$with_lqr" != 'yes'; then
2384     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lqr=$with_lqr "
2385 fi
2386
2387 have_lqr='no'
2388 LQR_CFLAGS=""
2389 LQR_LIBS=""
2390 LQR_PKG=""
2391 if test "x$with_lqr" = "xyes"; then
2392     AC_MSG_RESULT([-------------------------------------------------------------])
2393     PKG_CHECK_MODULES(LQR,[lqr-1 >= 0.1.0], have_lqr=yes, have_lqr=no)
2394     AC_MSG_RESULT([])
2395 fi
2396
2397 if test "$have_lqr" = 'yes'; then
2398     AC_DEFINE(LQR_DELEGATE,1,Define if you have LQR library)
2399     CFLAGS="$LQR_CFLAGS $CFLAGS"
2400 fi
2401
2402 AM_CONDITIONAL(LQR_DELEGATE, test "$have_lqr" = 'yes')
2403 AC_SUBST(LQR_CFLAGS)
2404 AC_SUBST(LQR_LIBS)
2405
2406 dnl ===========================================================================
2407
2408 # Disable LZMA (lzma library)
2409 AC_ARG_WITH(lzma,
2410             [  --without-lzma          disable LZMA support],
2411             [with_lzma=$withval],
2412             [with_lzma='yes'])
2413 if test "$with_lzma" != 'yes' ; then
2414     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lzma=$with_lzma "
2415 fi
2416
2417 LZMA_PKG=""
2418 if test "x$with_lzma" = "xyes"; then
2419     AC_MSG_RESULT([-------------------------------------------------------------])
2420     PKG_CHECK_MODULES(LZMA,[liblzma >= 2.9.0], have_lzma=yes, have_lzma=no)
2421     AC_MSG_RESULT([])
2422 fi
2423
2424 if test "$have_lzma" = 'yes'; then
2425     AC_DEFINE(LZMA_DELEGATE,1,Define if you have LZMA library)
2426     if test "$build_modules" = 'no'; then
2427         CPPFLAGS="$LZMA_CFLAGS $CPPFLAGS"
2428     fi
2429 fi
2430
2431 AM_CONDITIONAL(LZMA_DELEGATE, test "$have_lzma" = 'yes')
2432 AC_SUBST(LZMA_CFLAGS)
2433 AC_SUBST(LZMA_LIBS)
2434
2435 dnl ===========================================================================
2436
2437 #
2438 # Check for the OpenEXR delegate library.
2439 #
2440 AC_ARG_WITH([openexr],
2441     [AC_HELP_STRING([--without-openexr],
2442                     [disable OpenEXR support])],
2443     [with_openexr=$withval],
2444     [with_openexr='yes'])
2445
2446 if test "$with_openexr" != 'yes'; then
2447     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-openexr=$with_openexr "
2448 fi
2449
2450 have_openexr='no'
2451 OPENEXR_CFLAGS=""
2452 OPENEXR_LIBS=""
2453 OPENEXR_PKG=""
2454 if test "x$with_openexr" = "xyes"; then
2455     AC_MSG_RESULT([-------------------------------------------------------------])
2456     PKG_CHECK_MODULES(OPENEXR,[OpenEXR >= 1.0.6], have_openexr=yes, have_openexr=no)
2457     AC_MSG_RESULT([])
2458 fi
2459
2460 if test "$have_openexr" = 'yes'; then
2461     AC_DEFINE(OPENEXR_DELEGATE,1,Define if you have OPENEXR library)
2462     if test "$build_modules" = 'no'; then
2463         CFLAGS="$OPENEXR_CFLAGS $CFLAGS"
2464     fi
2465 fi
2466
2467 AM_CONDITIONAL(OPENEXR_DELEGATE, test "$have_openexr" = 'yes')
2468 AC_SUBST(OPENEXR_CFLAGS)
2469 AC_SUBST(OPENEXR_LIBS)
2470
2471 dnl ===========================================================================
2472
2473 #
2474 # Check for PANGO delegate library.
2475 #
2476 AC_ARG_WITH([pango],
2477     [AC_HELP_STRING([--without-pango],
2478                     [disable PANGO support])],
2479     [with_pango=$withval],
2480     [with_pango='yes'])
2481
2482 if test "$with_pango" != 'yes'; then
2483     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-pango=$with_pango "
2484 fi
2485
2486 have_pango='no'
2487 have_pangocairo='no'
2488 PANGO_CFLAGS=""
2489 PANGO_LIBS=""
2490 PANGO_PKG=""
2491 if test "x$with_pango" = "xyes"; then
2492     AC_MSG_RESULT([-------------------------------------------------------------])
2493     PKG_CHECK_MODULES(PANGO, [pangocairo >= 1.28.1], have_pangocairo=yes, have_pangocairo=no)
2494     AC_MSG_RESULT([])
2495     PKG_CHECK_MODULES(PANGO, [pango >= 1.28.1], have_pango=yes, have_pango=no)
2496     AC_MSG_RESULT([])
2497 fi
2498
2499 if test "$have_pango" = 'yes'; then
2500     AC_DEFINE(PANGO_DELEGATE,1,Define if you have PANGO library)
2501     if test "$build_modules" = 'no'; then
2502         CPPFLAGS="$PANGO_CFLAGS $CPPFLAGS"
2503     fi
2504 fi
2505
2506 if test "$have_pangocairo" = 'yes'; then
2507     AC_DEFINE(PANGOCAIRO_DELEGATE,1,Define if you have PANGOCAIRO library)
2508     if test "$build_modules" = 'no'; then
2509         CPPFLAGS="$PANGOCAIRO_CFLAGS $CPPFLAGS"
2510     fi
2511 fi
2512
2513 AM_CONDITIONAL(PANGO_DELEGATE, test "$have_pango" = 'yes')
2514 AM_CONDITIONAL(PANGOCAIRO_DELEGATE, test "$have_pangocairo" = 'yes')
2515 AC_SUBST(PANGO_CFLAGS)
2516 AC_SUBST(PANGO_LIBS)
2517
2518 dnl ===========================================================================
2519
2520 #
2521 # Check for PNG delegate library.
2522 #
2523 AC_ARG_WITH(png,
2524     [AC_HELP_STRING([--without-png],
2525                     [disable PNG support])],
2526     [with_png=$withval],
2527     [with_png='yes'])
2528
2529 if test "$with_png" != 'yes'; then
2530     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-png=$with_png "
2531 fi
2532
2533 have_png='no'
2534 PNG_LIBS=''
2535
2536 if test "$with_png" != 'no' -a  "$have_zlib" != 'no' ; then
2537   AC_MSG_RESULT([-------------------------------------------------------------])
2538   AC_MSG_CHECKING(for PNG support )
2539   AC_MSG_RESULT()
2540   failed=0
2541   passed=0
2542   AC_CHECK_HEADER(png.h,passed=`expr $passed + 1`,
2543      failed=`expr $failed + 1`,)
2544
2545   if test $passed -gt 0; then
2546     for var in 7 6 5 4 2 '' ; do
2547       if test "$have_png" = 'no' ; then
2548         if test "x${var}" = 'x' ; then
2549           pnglib='png'
2550         else
2551           pnglib="png1${var}"
2552         fi
2553
2554 #       Test for compatible LIBPNG library
2555         failed=0
2556         passed=0
2557         if test "$with_png" = 'yes' -o "$with_png" = "libpng1${var}" ; then
2558           if test "${pnglib}" != 'png' ; then
2559             AC_MSG_CHECKING(for LIBPNG1${var} support )
2560             AC_TRY_COMPILE(
2561 #include <stdio.h>
2562 #include <stdlib.h>
2563 #include <png.h>
2564 ,
2565 changequote(<<, >>)dnl
2566 <<
2567 #if PNG_LIBPNG_VER_MINOR != ${var}
2568 #error LIBPNG library must be version 1${var}!
2569 Kaboom, Kaboom
2570 #endif
2571 return 0;
2572 >>,
2573             changequote([, ])dnl
2574             ac_cv_libpng_ok='yes',
2575             ac_cv_libpng_ok='no')
2576             if test "$ac_cv_libpng_ok" = 'yes' ; then
2577               passed=`expr $passed + 1`
2578               AC_MSG_RESULT(yes)
2579             else
2580               failed=`expr $failed + 1`
2581               AC_MSG_RESULT(no)
2582             fi
2583           else
2584             passed=`expr $passed + 1`
2585             AC_MSG_RESULT(yes)
2586           fi
2587         fi
2588
2589         if test $passed -gt 0 -a $failed -le 0; then
2590           if test "1${var}" = '17' ; then
2591             AC_CHECK_LIB(png17,png_get_io_ptr,passed=`expr $passed + 1`,
2592                failed=`expr $failed + 1`,)
2593             AC_CHECK_LIB(png17,png_longjmp,passed=`expr $passed + 1`,
2594                failed=`expr $failed + 1`,)
2595           fi
2596           if test "1${var}" = '16' ; then
2597             AC_CHECK_LIB(png16,png_get_io_ptr,passed=`expr $passed + 1`,
2598                failed=`expr $failed + 1`,)
2599             AC_CHECK_LIB(png16,png_longjmp,passed=`expr $passed + 1`,
2600                failed=`expr $failed + 1`,)
2601           fi
2602           if test "1${var}" = '15' ; then
2603             AC_CHECK_LIB(png15,png_get_io_ptr,passed=`expr $passed + 1`,
2604                failed=`expr $failed + 1`,)
2605             AC_CHECK_LIB(png15,png_longjmp,passed=`expr $passed + 1`,
2606                failed=`expr $failed + 1`,)
2607           fi
2608           if test "1${var}" = '14' ; then
2609             AC_CHECK_LIB(png14,png_get_io_ptr,passed=`expr $passed + 1`,
2610                failed=`expr $failed + 1`,)
2611             AC_CHECK_LIB(png14,png_get_io_state,passed=`expr $passed + 1`,
2612                failed=`expr $failed + 1`,)
2613           fi
2614           if test "1${var}" = '12' ; then
2615             AC_CHECK_LIB(png12,png_get_io_ptr,passed=`expr $passed + 1`,
2616                failed=`expr $failed + 1`,)
2617           fi
2618           if test "1${var}" = '1' ; then
2619               AC_CHECK_LIB(png,png_get_io_ptr,passed=`expr $passed + 1`,
2620                  failed=`expr $failed + 1`,)
2621           fi
2622           if test $passed -gt 0 -a $failed -le 0 ; then
2623             AC_MSG_CHECKING(if ${pnglib} package is complete)
2624             if test $passed -gt 0 ; then
2625               if test $failed -gt 0 ; then
2626                   AC_MSG_RESULT(no -- some components failed test)
2627                   have_png='no (failed tests)'
2628               else
2629                   PNG_LIBS="-l${pnglib}"
2630                   LIBS="$PNG_LIBS $LIBS"
2631                   AC_DEFINE(PNG_DELEGATE,1,Define if you have PNG library)
2632                   AC_MSG_RESULT(yes)
2633                   have_png='yes'
2634               fi
2635             fi
2636           fi
2637         fi
2638       fi
2639     done
2640   fi
2641 fi
2642
2643 AM_CONDITIONAL(PNG_DELEGATE,test "$have_png" = 'yes')
2644 AC_SUBST(PNG_LIBS)
2645
2646
2647 dnl ===========================================================================
2648
2649 #
2650 # Check for RSVG delegate library.
2651 #
2652 AC_ARG_WITH([rsvg],
2653     [AC_HELP_STRING([--without-rsvg],
2654                     [enable RSVG support])],
2655     [with_rsvg=$withval],
2656     [with_rsvg='no'])
2657
2658 if test "$with_rsvg" != 'yes'; then
2659     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-rsvg=$with_rsvg "
2660 fi
2661
2662 have_rsvg='no'
2663 have_cairo='no'
2664 RSVG_CFLAGS=""
2665 RSVG_LIBS=""
2666 RSVG_PKG=""
2667 if test "x$with_rsvg" = "xyes"; then
2668     AC_MSG_RESULT([-------------------------------------------------------------])
2669     PKG_CHECK_MODULES(RSVG,[librsvg-2.0 >= 2.9.0], have_rsvg=yes, have_rsvg=no)
2670     AC_MSG_RESULT([])
2671     PKG_CHECK_MODULES(CAIRO_SVG, cairo-svg, have_cairo=yes, have_cairo=no)
2672     AC_MSG_RESULT([])
2673 fi
2674
2675 if test "$have_rsvg" = 'yes'; then
2676     AC_DEFINE(RSVG_DELEGATE,1,Define if you have RSVG library)
2677     if test "$build_modules" = 'no'; then
2678         CPPFLAGS="$RSVG_CFLAGS $CPPFLAGS"
2679     fi
2680 fi
2681
2682 if test "$have_cairo" = 'yes'; then
2683     AC_DEFINE(CAIRO_DELEGATE,1,Define if you have CAIRO library)
2684     if test "$build_modules" = 'no'; then
2685         CPPFLAGS="$CAIRO_SVG_CFLAGS $CPPFLAGS"
2686     fi
2687 fi
2688
2689 AM_CONDITIONAL(RSVG_DELEGATE, test "$have_rsvg" = 'yes')
2690 AM_CONDITIONAL(CAIRO_DELEGATE, test "$have_cairo" = 'yes')
2691 AC_SUBST(RSVG_CFLAGS)
2692 AC_SUBST(RSVG_LIBS)
2693
2694 dnl ===========================================================================
2695
2696 #
2697 # Check for TIFF delegate library.
2698 #
2699 AC_ARG_WITH([tiff],
2700     [AC_HELP_STRING([--without-tiff],
2701                     [disable TIFF support])],
2702     [with_tiff=$withval],
2703     [with_tiff='yes'])
2704
2705 if test "$with_tiff" != 'yes'; then
2706     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-tiff=$with_tiff "
2707 fi
2708
2709 have_tiff='no'
2710 TIFF_LIBS=''
2711 if test "$with_tiff" != 'no'; then
2712     AC_MSG_RESULT([-------------------------------------------------------------])
2713     AC_MSG_CHECKING([for TIFF])
2714     AC_MSG_RESULT([])
2715     failed=0
2716     passed=0
2717     AC_CHECK_HEADER(tiff.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2718     AC_CHECK_HEADER(tiffio.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2719     AC_CHECK_LIB(tiff,TIFFOpen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2720     AC_CHECK_LIB(tiff,TIFFClientOpen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2721     AC_CHECK_LIB(tiff,TIFFIsByteSwapped,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2722     AC_CHECK_LIB(tiff,TIFFReadRGBATile,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2723     AC_CHECK_LIB(tiff,TIFFReadRGBAStrip,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2724     AC_MSG_CHECKING([if TIFF package is complete])
2725     if test $passed -gt 0; then
2726         if test $failed -gt 0; then
2727             AC_MSG_RESULT([no -- some components failed test])
2728             have_tiff='no (failed tests)'
2729         else
2730             TIFF_LIBS='-ltiff'
2731             LIBS="$TIFF_LIBS $LIBS"
2732             AC_DEFINE(TIFF_DELEGATE,1,Define if you have TIFF library)
2733             AC_MSG_RESULT([yes])
2734             have_tiff='yes'
2735             AC_CHECK_HEADERS(tiffconf.h)
2736             AC_CHECK_FUNCS([TIFFIsCODECConfigured TIFFMergeFieldInfo \
2737               TIFFIsBigEndian TIFFReadEXIFDirectory TIFFSetErrorHandlerExt \
2738               TIFFSetTagExtender TIFFSetWarningHandlerExt \
2739               TIFFSwabArrayOfTriples])
2740         fi
2741     else
2742         AC_MSG_RESULT([no])
2743     fi
2744 fi
2745 AM_CONDITIONAL(TIFF_DELEGATE, test "$have_tiff" = 'yes')
2746 AC_SUBST(TIFF_LIBS)
2747
2748 dnl ===========================================================================
2749
2750 #
2751 # Check for WEBP delegate library.
2752 #
2753 AC_ARG_WITH(webp,
2754     [AC_HELP_STRING([--without-webp],
2755                     [disable WEBP support])],
2756     [with_webp=$withval],
2757     [with_webp='yes'])
2758
2759 if test "$with_webp" != 'yes'; then
2760     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-webp=$with_webp "
2761 fi
2762
2763 have_webp='no'
2764 WEBP_LIBS=''
2765 if test "$with_webp" != 'no'; then
2766     AC_MSG_RESULT([-------------------------------------------------------------])
2767     AC_MSG_CHECKING([for WEBP])
2768     AC_MSG_RESULT([])
2769     failed=0
2770     passed=0
2771     AC_CHECK_HEADER(webp/decode.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2772     AC_CHECK_LIB(webp,WebPDecodeRGB,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2773     AC_MSG_CHECKING([if WEBP package is complete])
2774     if test $passed -gt 0; then
2775         if test $failed -gt 0; then
2776             AC_MSG_RESULT([no -- some components failed test])
2777             have_webp='no (failed tests)'
2778         else
2779             WEBP_LIBS='-lwebp'
2780             LIBS="$WEBP_LIBS $LIBS"
2781             AC_DEFINE(WEBP_DELEGATE,1,Define if you have WEBP library)
2782             AC_MSG_RESULT([yes])
2783             have_webp='yes'
2784         fi
2785     else
2786         AC_MSG_RESULT([no])
2787     fi
2788 fi
2789 AM_CONDITIONAL(WEBP_DELEGATE,test "$have_webp" = 'yes')
2790 AC_SUBST(WEBP_LIBS)
2791
2792 dnl ===========================================================================
2793
2794 #
2795 # Set Windows font directory.
2796 #
2797 AC_ARG_WITH([windows-font-dir],
2798     [AC_HELP_STRING([--with-windows-font-dir=DIR],
2799                     [directory containing MS-Windows fonts])],
2800                     [with_windows_font_dir=$withval],
2801                     [with_windows_font_dir=''])
2802 if test "$with_windows_font_dir" != '' ; then
2803     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-windows-font-dir=$with_windows_font_dir "
2804 fi
2805
2806 dnl ===========================================================================
2807
2808 #
2809 # Check for WMF delegate library.
2810 #
2811 AC_ARG_WITH([wmf],
2812     [AC_HELP_STRING([--with-wmf],
2813                     [enable WMF support])],
2814     [with_wmf=$withval],
2815     [with_wmf='no'])
2816
2817 if test "$with_wmf" != 'yes'; then
2818     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-wmf=$with_wmf "
2819 fi
2820
2821 have_wmf='no'
2822 WMF_LIBS=''
2823 WMF_LIBS_DEPS=''
2824 OLIBS="$LIBS"
2825 if test "$with_wmf" != 'no'; then
2826     AC_MSG_RESULT([-------------------------------------------------------------])
2827     AC_MSG_CHECKING([for WMF])
2828     AC_MSG_RESULT([])
2829     have_libwmf='no'
2830     have_libwmflite='no'
2831     have_libwmf_ipa_h='no'
2832
2833     AC_CHECK_HEADER([libwmf/ipa.h],[have_libwmf_ipa_h='yes'],,[$FT2BUILD_H])
2834     if test "$have_libwmf_ipa_h" = 'yes'; then
2835         AC_CHECK_LIB(wmflite,wmf_lite_create,have_libwmflite='yes',,)
2836         if test "$have_libwmflite" = 'yes'; then
2837             AC_DEFINE(WMFLITE_DELEGATE,1,Define if you have wmflite library)
2838             WMF_LIBS='-lwmflite'
2839             LIBS="$WMF_LIBS $LIBS"
2840             have_wmf='yes'
2841         else
2842             WMF_LIBS_DEPS=''
2843             WMF_CONFIG_LIBS=`libwmf-config --libs`
2844             for lib in xml2 expat freetype jpeg png z; do
2845                 testlib="-l${lib}"
2846                 echo "$WMF_CONFIG_LIBS" | grep -- "$testlib" > /dev/null && WMF_LIBS_DEPS="$WMF_LIBS_DEPS $testlib"
2847             done
2848             AC_CHECK_LIB(wmf,wmf_api_create,have_libwmf='yes',,$WMF_LIBS_DEPS)
2849             if test "$have_libwmf" = 'yes'; then
2850                 AC_DEFINE(WMF_DELEGATE,1,Define if you have wmf library)
2851                 WMF_LIBS='-lwmf'
2852                 LIBS="$WMF_LIBS $LIBS"
2853                 have_wmf='yes'
2854             else
2855                 AC_MSG_RESULT([no -- some components failed test])
2856                 have_wmf='no (failed tests)'
2857                 have_wmflite='no (failed tests)'
2858                 LIBS="$OLIBS"
2859                 WMF_LIBS=''
2860             fi
2861         fi
2862     fi
2863     AC_MSG_CHECKING([if WMF package is complete])
2864     if test "$have_wmf" = 'yes'; then
2865         AC_MSG_RESULT([yes])
2866     else
2867         AC_MSG_RESULT([no])
2868     fi
2869 fi
2870 AM_CONDITIONAL(WMF_DELEGATE, test "$have_wmf" = 'yes')
2871 AC_SUBST(WMF_LIBS)
2872 AC_SUBST(WMF_LIBS_DEPS)
2873
2874
2875 dnl ===========================================================================
2876
2877 #
2878 # Check for XML delegate library.
2879 #
2880 AC_ARG_WITH([xml],
2881     [AC_HELP_STRING([--without-xml],
2882                     [disable XML support])],
2883     [with_xml=$withval],
2884     [with_xml='yes'])
2885
2886 if test "$with_xml" != 'yes' ; then
2887     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-xml=$with_xml "
2888 fi
2889
2890 have_xml='no'
2891 XML_LIBS=''
2892 if test "$with_xml" != 'no'; then
2893     AC_MSG_RESULT([-------------------------------------------------------------])
2894     AC_MSG_CHECKING([for XML])
2895     AC_MSG_RESULT([])
2896     PERSIST_LDFLAGS=$LDFLAGS
2897     PERSIST_CPPFLAGS=$CPPFLAGS
2898     xml2_config=''
2899     AC_PATH_PROG(xml2_config,xml2-config,)dnl
2900     if test -n "$xml2_config"; then
2901         # Debian installs libxml headers under /usr/include/libxml2/libxml with
2902         # the shared library installed under /usr/lib, whereas the package
2903         # installs itself under $prefix/libxml and $prefix/lib.
2904         xml2_prefix=`xml2-config --prefix`
2905         if test -d "${xml2_prefix}/include/libxml2"; then
2906             CPPFLAGS="$CPPFLAGS -I${xml2_prefix}/include/libxml2"
2907         fi
2908         if test "${xml2_prefix}" != '/usr'; then
2909             LDFLAGS="$LDFLAGS -L${xml2_prefix}/lib"
2910         fi
2911     fi
2912     failed=0
2913     passed=0
2914     AC_CHECK_HEADER(libxml/parser.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2915     AC_CHECK_LIB(xml2,xmlSAXVersion,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2916     AC_CHECK_LIB(xml2,xmlParseChunk,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2917     AC_CHECK_LIB(xml2,xmlCreatePushParserCtxt,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2918     AC_MSG_CHECKING([if XML package is complete])
2919     if test $passed -gt 0; then
2920         if test $failed -gt 0; then
2921             AC_MSG_RESULT([no -- some components failed test])
2922             have_xml='no (failed tests)'
2923             LDFLAGS="$PERSIST_LDFLAGS"
2924             CPPFLAGS="$PERSIST_CPPFLAGS"
2925         else
2926             XML_LIBS='-lxml2'
2927             LIBS="$XML_LIBS $LIBS"
2928             AC_DEFINE(XML_DELEGATE,1,Define if you have XML library)
2929             AC_MSG_RESULT([yes])
2930             have_xml='yes'
2931         fi
2932     else
2933         AC_MSG_RESULT([no])
2934     fi
2935 fi
2936 AM_CONDITIONAL(XML_DELEGATE,test "$have_xml" = 'yes')
2937 AC_SUBST(XML_LIBS)
2938
2939 dnl ===========================================================================
2940
2941 # Substitute compiler name to build/link PerlMagick
2942 #
2943 AC_SUBST(PERLMAINCC)
2944
2945 #
2946 # Configure install Paths
2947 #
2948
2949 # Path to ImageMagick header files
2950 INCLUDE_RELATIVE_PATH="ImageMagick"
2951 INCLUDE_PATH="${INCLUDE_DIR}/${INCLUDE_RELATIVE_PATH}"
2952 DEFINE_INCLUDE_PATH="${INCLUDE_DIR}/${INCLUDE_RELATIVE_PATH}/"
2953 case "${build_os}" in
2954   mingw* )
2955     DEFINE_INCLUDE_PATH=`$WinPathScript "$DEFINE_INCLUDE_PATH" 1`
2956     ;;
2957 esac
2958 AC_DEFINE_UNQUOTED(INCLUDE_PATH,"$DEFINE_INCLUDE_PATH",[Directory where ImageMagick headers live.])
2959 AC_SUBST(INCLUDE_PATH)
2960
2961 # Path to ImageMagick header files (arch part)
2962 INCLUDEARCH_PATH="${INCLUDEARCH_DIR}/${INCLUDE_RELATIVE_PATH}"
2963 DEFINE_INCLUDEARCH_PATH="${INCLUDEARCH_DIR}/${INCLUDE_RELATIVE_PATH}/"
2964 case "${build_os}" in
2965   mingw* )
2966     DEFINE_INCLUDEARCH_PATH=`$WinPathScript "$DEFINE_INCLUDEARCH_PATH" 1`
2967     ;;
2968 esac
2969 AC_DEFINE_UNQUOTED(INCLUDEARCH_PATH,"$DEFINE_INCLUDE_PATH",[Directory where ImageMagick architecture headers live.])
2970 AC_SUBST(INCLUDEARCH_PATH)
2971
2972 # Subdirectory under lib to place ImageMagick lib files
2973 LIBRARY_RELATIVE_PATH="${PACKAGE_NAME}-${PACKAGE_VERSION}"
2974 AC_DEFINE_UNQUOTED(LIBRARY_RELATIVE_PATH,"$LIBRARY_RELATIVE_PATH",[Subdirectory of lib where ImageMagick architecture dependent files are installed.])
2975
2976 # Path to ImageMagick bin directory
2977 EXECUTABLE_PATH="${BIN_DIR}"
2978 DEFINE_EXECUTABLE_PATH="${BIN_DIR}/"
2979 case "${build_os}" in
2980   mingw* )
2981     DEFINE_EXECUTABLE_PATH=`$WinPathScript "$DEFINE_EXECUTABLE_PATH" 1`
2982     ;;
2983 esac
2984 AC_DEFINE_UNQUOTED(EXECUTABLE_PATH,"$DEFINE_EXECUTABLE_PATH",[Directory where executables are installed.])
2985 AC_SUBST(EXECUTABLE_PATH)
2986
2987 # Path to ImageMagick lib
2988 LIBRARY_PATH="${LIB_DIR}/${LIBRARY_RELATIVE_PATH}"
2989 DEFINE_LIBRARY_PATH="${LIB_DIR}/${LIBRARY_RELATIVE_PATH}/"
2990 case "${build_os}" in
2991   mingw* )
2992     DEFINE_LIBRARY_PATH=`$WinPathScript "$DEFINE_LIBRARY_PATH" 1`
2993     ;;
2994 esac
2995 AC_DEFINE_UNQUOTED(LIBRARY_PATH,"$DEFINE_LIBRARY_PATH",[Directory where architecture-dependent files live.])
2996 AC_SUBST(LIBRARY_PATH)
2997
2998 #
2999 # path to modules lib
3000 if test "x$MODULES_BASEDIRNAME" = "x"; then
3001    MODULES_BASEDIRNAME="modules"
3002 fi
3003 AC_DEFINE_UNQUOTED(MODULES_BASEDIRNAME,"$MODULES_BASEDIRNAME",[Module directory name without ABI part.])
3004 AC_SUBST(MODULES_BASEDIRNAME)
3005
3006 if test "x$MODULES_DIRNAME" = "x"; then
3007   MODULES_DIRNAME=${MODULES_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
3008 else
3009   AC_DEFINE_UNQUOTED(MODULES_DIRNAME,"$MODULES_DIRNAME",[Module directory dirname])
3010 fi
3011 AC_SUBST(MODULES_DIRNAME)
3012
3013 MODULES_RELATIVE_PATH="${MODULES_DIRNAME}"
3014 AC_SUBST(MODULES_RELATIVE_PATH)
3015 MODULES_PATH="${LIBRARY_PATH}/${MODULES_RELATIVE_PATH}"
3016 AC_SUBST(MODULES_PATH)
3017
3018 #
3019 # path to coders lib
3020 if test "x$CODER_DIRNAME" = "x"; then
3021    CODER_DIRNAME="coders"
3022 fi
3023 AC_DEFINE_UNQUOTED(CODER_DIRNAME,"$CODER_DIRNAME",[coders subdirectory.])
3024 AC_SUBST(CODER_DIRNAME)
3025
3026 CODER_RELATIVE_PATH="${CODER_DIRNAME}"
3027 CODER_PATH="${MODULES_PATH}/${CODER_DIRNAME}"
3028 AC_SUBST(CODER_PATH)
3029
3030 #
3031 # Subdirectory under lib to place ImageMagick filter module files
3032 #
3033 # path to coders lib
3034 if test "x$FILTER_DIRNAME" = "x"; then
3035    FILTER_DIRNAME="filters"
3036 fi
3037 AC_DEFINE_UNQUOTED(FILTER_DIRNAME,"$FILTER_DIRNAME",[filter subdirectory.])
3038 AC_SUBST(FILTER_DIRNAME)
3039
3040 FILTER_RELATIVE_PATH="${FILTER_DIRNAME}"
3041 FILTER_PATH="${MODULES_PATH}/${FILTER_DIRNAME}"
3042 AC_SUBST(FILTER_PATH)
3043
3044 #
3045 # Path to ImageMagick documentation files
3046 DOCUMENTATION_RELATIVE_PATH="${PACKAGE_NAME}-${PACKAGE_VERSION}"
3047 DOCUMENTATION_PATH="${DOC_DIR}/${DOCUMENTATION_RELATIVE_PATH}"
3048 DEFINE_DOCUMENTATION_PATH="${DOC_DIR}/${DOCUMENTATION_RELATIVE_PATH}/"
3049 case "${build_os}" in
3050   mingw* )
3051     DEFINE_DOCUMENTATION_PATH=`$WinPathScript "$DEFINE_DOCUMENTATION_PATH" 1`
3052     ;;
3053 esac
3054 AC_DEFINE_UNQUOTED(DOCUMENTATION_PATH,"$DEFINE_DOCUMENTATION_PATH",[Directory where ImageMagick documents live.])
3055 AC_SUBST(DOCUMENTATION_PATH)
3056
3057 # Subdirectory to place architecture-dependent configuration files
3058 CONFIGURE_RELATIVE_PATH="${PACKAGE_NAME}"
3059 AC_DEFINE_UNQUOTED(CONFIGURE_RELATIVE_PATH,"$CONFIGURE_RELATIVE_PATH",[Subdirectory of lib where architecture-dependent configuration files live.])
3060 CONFIGURE_PATH="${SYSCONF_DIR}/${CONFIGURE_RELATIVE_PATH}/"
3061 DEFINE_CONFIGURE_PATH="${SYSCONF_DIR}/${CONFIGURE_RELATIVE_PATH}/"
3062 case "${build_os}" in
3063   mingw* )
3064     DEFINE_CONFIGURE_PATH=`$WinPathScript "$DEFINE_CONFIGURE_PATH" 1`
3065     ;;
3066 esac
3067 AC_DEFINE_UNQUOTED(CONFIGURE_PATH,"$DEFINE_CONFIGURE_PATH",[Directory where architecture-dependent configuration files live.])
3068 AC_SUBST(CONFIGURE_PATH)
3069
3070 # Subdirectory to place architecture-independent configuration files
3071 SHARE_RELATIVE_PATH="${LIBRARY_RELATIVE_PATH}"
3072 AC_DEFINE_UNQUOTED(SHARE_RELATIVE_PATH,"$SHARE_RELATIVE_PATH",[Subdirectory of lib where architecture-independent configuration files live.])
3073 SHARE_PATH="${DATA_DIR}/${SHARE_RELATIVE_PATH}"
3074 DEFINE_SHARE_PATH="${DATA_DIR}/${SHARE_RELATIVE_PATH}/"
3075 case "${build_os}" in
3076   mingw* )
3077     DEFINE_SHARE_PATH=`$WinPathScript "$DEFINE_SHARE_PATH" 1`
3078     ;;
3079 esac
3080 AC_DEFINE_UNQUOTED(SHARE_PATH,"$DEFINE_SHARE_PATH",[Directory where architecture-independent configuration files live.])
3081 AC_SUBST(SHARE_PATH)
3082
3083 #
3084 # Subdirectory to place architecture-dependent configuration files.
3085 if test "x$SHAREARCH_BASEDIRNAME" = "x"; then
3086    SHAREARCH_BASEDIRNAME="config"
3087 fi
3088 AC_DEFINE_UNQUOTED(SHAREARCH_BASEDIRNAME,"$SHAREARCH_BASEDIRNAME",[Sharearch directory name without ABI part.])
3089 AC_SUBST(SHAREARCH_BASEDIRNAME)
3090
3091 if test "x$SHAREARCH_DIRNAME" = "x"; then
3092   SHAREARCH_DIRNAME=${SHAREARCH_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
3093 else
3094   AC_DEFINE_UNQUOTED(SHAREARCH_DIRNAME,"$SHAREARCH_DIRNAME",[Sharearch directory dirname])
3095 fi
3096 AC_SUBST(SHAREARCH_DIRNAME)
3097
3098 SHAREARCH_RELATIVE_PATH="${SHAREARCH_DIRNAME}"
3099 AC_SUBST(SHAREARCH_RELATIVE_PATH)
3100 SHAREARCH_PATH="${LIBRARY_PATH}/${SHAREARCH_RELATIVE_PATH}"
3101 AC_SUBST(SHAREARCH_PATH)
3102
3103 #
3104 # program_transform_name is formed for use in a Makefile, so create a
3105 # modified version for use in a shell script.
3106 configure_transform_name=`echo ${program_transform_name} | sed 's,\\$\\$,$,'`
3107
3108 # Default delegate definitions
3109 AC_MSG_RESULT([-------------------------------------------------------------])
3110 AC_MSG_CHECKING([for ImageMagick delegate programs])
3111 AC_MSG_RESULT([])
3112 AutotraceDecodeDelegateDefault='autotrace'
3113 BlenderDecodeDelegateDefault='blender'
3114 BZIPDelegateDefault='bzip2'
3115 BrowseDelegateDefault='xdg-open'
3116 CGMDecodeDelegateDefault='ralcgm'
3117 CatDelegateDefault='cat'
3118 DNGDecodeDelegateDefault='ufraw-batch'
3119 GVCDecodeDelegateDefault='dot'
3120 DVIDecodeDelegateDefault='dvips'
3121 EchoDelegateDefault='echo'
3122 EditorDelegateDefault='xterm'
3123 FIGDecodeDelegateDefault='fig2dev'
3124 ConvertDelegateDefault=`echo convert | sed ${configure_transform_name}`
3125 DisplayDelegateDefault=`echo display | sed ${configure_transform_name}`
3126 MogrifyDelegateDefault=`echo mogrify | sed ${configure_transform_name}`
3127 GnuplotDecodeDelegateDefault='gnuplot'
3128 HPGLDecodeDelegateDefault='hp2xx'
3129 HTMLDecodeDelegateDefault='html2ps'
3130 ILBMDecodeDelegateDefault='ilbmtoppm'
3131 ILBMEncodeDelegateDefault='ppmtoilbm'
3132 LPDelegateDefault='lp'
3133 LPRDelegateDefault='lpr'
3134 LaunchDelegateDefault='gimp'
3135 MANDelegateDefault='groff'
3136 MPEGDecodeDelegateDefault='ffmpeg'
3137 MPEGEncodeDelegateDefault='ffmpeg'
3138 MrSIDDecodeDelegateDefault='mrsidgeodecode'
3139 MVDelegateDefault='mv'
3140 PCLDelegateDefault='pcl6'
3141 PGPDecodeDelegateDefault='pgpv'
3142 POVDelegateDefault='povray'
3143 if test "$native_win32_build" = 'yes'; then
3144     PSDelegateDefault='gswin32c'
3145 elif test "$gslib_framework" = 'yes'; then
3146     PSDelegateDefault='gsc'
3147 else
3148     PSDelegateDefault='gs'
3149 fi
3150 RLEEncodeDelegateDefault='rawtorle'
3151 RMDelegateDefault='rm'
3152 RSVGDecodeDelegateDefault='rsvg-convert'
3153 SCANDecodeDelegateDefault='scanimage'
3154 SVGDecodeDelegateDefault='inkscape'
3155 TXTDelegateDefault='enscript'
3156 UniconvertorDelegateDefault='uniconvertor'
3157 WMFDecodeDelegateDefault='wmf2eps'
3158 WWWDecodeDelegateDefault='curl'
3159 XPSDelegateDefault='gxps'
3160 ZipDelegateDefault='gzip'
3161
3162 # Search for delegates
3163 AC_PATH_PROG(AutotraceDecodeDelegate, "$AutotraceDecodeDelegateDefault", "$AutotraceDecodeDelegateDefault")
3164 AC_PATH_PROG(BlenderDecodeDelegate, "$BlenderDecodeDelegateDefault", "$BlenderDecodeDelegateDefault")
3165 AC_PATH_PROG(BZIPDelegate, "$BZIPDelegateDefault", "$BZIPDelegateDefault")
3166 AC_PATH_PROGS(BrowseDelegate, "$BrowseDelegateDefault" google-chrome firefox konqueror mozilla lynx, "$BrowseDelegateDefault")
3167 AC_PATH_PROG(CGMDecodeDelegate, "$CGMDecodeDelegateDefault", "$CGMDecodeDelegateDefault")
3168 AC_PATH_PROG(CatDelegate, "$CatDelegateDefault", "$CatDelegateDefault")
3169 AC_PATH_PROG(DNGDecodeDelegate, "$DNGDecodeDelegateDefault", "$DNGDecodeDelegateDefault")
3170 AC_PATH_PROG(GVCDecodeDelegate, "$GVCDecodeDelegateDefault", "$GVCDecodeDelegateDefault")
3171 AC_PATH_PROG(DVIDecodeDelegate, "$DVIDecodeDelegateDefault", "$DVIDecodeDelegateDefault")
3172 AC_PATH_PROG(EchoDelegate, "$EchoDelegateDefault", "$EchoDelegateDefault")
3173 AC_PATH_PROG(EditorDelegate, "$EditorDelegateDefault", "$EditorDelegateDefault")
3174 AC_PATH_PROG(FIGDecodeDelegate, "$FIGDecodeDelegateDefault", "$FIGDecodeDelegateDefault")
3175 AC_PATH_PROG(ConvertDelegate, "$ConvertDelegateDefault", "$ConvertDelegateDefault")
3176 AC_PATH_PROG(DisplayDelegate, "$DisplayDelegateDefault", "$DisplayDelegateDefault")
3177 AC_PATH_PROG(MogrifyDelegate, "$MogrifyDelegateDefault", "$MogrifyDelegateDefault")
3178 AC_PATH_PROG(GnuplotDecodeDelegate, "$GnuplotDecodeDelegateDefault", "$GnuplotDecodeDelegateDefault")
3179 AC_PATH_PROG(HPGLDecodeDelegate, "$HPGLDecodeDelegateDefault", "$HPGLDecodeDelegateDefault")
3180 AC_PATH_PROG(HTMLDecodeDelegate, "$HTMLDecodeDelegateDefault", "$HTMLDecodeDelegateDefault")
3181 AC_PATH_PROG(ILBMDecodeDelegate, "$ILBMDecodeDelegateDefault", "$ILBMDecodeDelegateDefault")
3182 AC_PATH_PROG(ILBMEncodeDelegate, "$ILBMEncodeDelegateDefault", "$ILBMEncodeDelegateDefault")
3183 AC_PATH_PROG(LPDelegate, "$LPDelegateDefault", no)
3184 AC_PATH_PROG(LPRDelegate, "$LPRDelegateDefault", "$LPRDelegateDefault")
3185 AC_PATH_PROG(LaunchDelegate, "$LaunchDelegateDefault", "$LaunchDelegateDefault")
3186 AC_PATH_PROG(MANDelegate, "$MANDelegateDefault", "$MANDelegateDefault")
3187 AC_PATH_PROG(MPEGDecodeDelegate, "$MPEGDecodeDelegateDefault", "$MPEGDecodeDelegateDefault")
3188 AC_PATH_PROG(MPEGEncodeDelegate, "$MPEGEncodeDelegateDefault", "$MPEGEncodeDelegateDefault")
3189 AC_PATH_PROG(MrSIDDecodeDelegate, "$MrSIDDecodeDelegateDefault", "$MrSIDDecodeDelegateDefault")
3190 AC_PATH_PROG(MVDelegate, "$MVDelegateDefault", "$MVDelegateDefault")
3191 AC_PATH_PROG(PCLDelegate, "$PCLDelegateDefault", "$PCLDelegateDefault")
3192 AC_PATH_PROG(PGPDecodeDelegate, "$PGPDecodeDelegateDefault", "$PGPDecodeDelegateDefault")
3193 AC_PATH_PROG(POVDelegate, "$POVDelegateDefault", "$POVDelegateDefault")
3194 AC_PATH_PROGS(PSDelegate, gsx gsc "$PSDelegateDefault", "$PSDelegateDefault")
3195 AC_PATH_PROG(RLEEncodeDelegate, "$RLEEncodeDelegateDefault", "$RLEEncodeDelegateDefault")
3196 AC_PATH_PROG(RMDelegate, "$RMDelegateDefault", "$RMDelegateDefault")
3197 AC_PATH_PROG(RSVGDecodeDelegate, "$RSVGDecodeDelegateDefault", "$RSVGDecodeDelegateDefault")
3198 AC_PATH_PROG(SCANDecodeDelegate, "$SCANDecodeDelegateDefault", "$SCANDecodeDelegateDefault")
3199 AC_PATH_PROG(SVGDecodeDelegate, "$SVGDecodeDelegateDefault", "$SVGDecodeDelegateDefault")
3200 AC_PATH_PROG(TXTDelegate, "$TXTDelegateDefault", "$TXTDelegateDefault")
3201 AC_PATH_PROG(UniconvertorDelegate, "$UniconvertorDelegateDefault", "$UniconvertorDelegateDefault")
3202 AC_PATH_PROG(WMFDecodeDelegate, "$WMFDecodeDelegateDefault", "$WMFDecodeDelegateDefault")
3203 AC_PATH_PROG(WWWDecodeDelegate, "$WWWDecodeDelegateDefault", "$WWWDecodeDelegateDefault")
3204 AC_PATH_PROG(XPSDelegate, "$XPSDelegateDefault", "$XPSDelegateDefault")
3205 AC_PATH_PROG(ZipDelegate, "$ZipDelegateDefault", "$ZipDelegateDefault")
3206
3207 # Prefer lpr to lp; lp needs options tacked on.
3208 if test "$LPRDelegate" != no; then
3209     PrintDelegate="$LPRDelegate"
3210 else
3211     PrintDelegate="$LPDelegate -c -s"
3212 fi
3213 AC_SUBST(PrintDelegate)
3214
3215 # Installed ImageMagick utiltity paths
3216 ConvertDelegate="${BIN_DIR}/${ConvertDelegateDefault}"
3217 DisplayDelegate="${BIN_DIR}/${DisplayDelegateDefault}"
3218 MogrifyDelegate="${BIN_DIR}/${MogrifyDelegateDefault}"
3219
3220 # Set delegate booleans
3221 have_ffmpeg='no'; if test "$MPEGDecodeDelegate" != "$MPEGDecodeDelegateDefault" ; then have_ffmpeg='yes'; fi
3222 have_fig2dev='no'    ; if test "$FIGDecodeDelegate" != "$FIGDecodeDelegateDefault" ; then have_fig2dev='yes'; fi
3223 have_gs='no'         ; if test "$PSDelegate" != "$PSDelegateDefault"; then have_gs='yes'; fi
3224 have_hp2xx='no'      ; if test "$HPGLDecodeDelegate" !=  "$HPGLDecodeDelegateDefault" ; then have_hp2xx='yes'; fi
3225 have_ilbmtoppm='no'  ; if test "$ILBMDecodeDelegate" != "$ILBMDecodeDelegateDefault" ; then have_ilbmtoppm='yes'; fi
3226 have_mrsid='no'; if test "$MrSIDDecodeDelegate" != "$MrSIDDecodeDelegateDefault" ; then have_mrsid='yes'; fi
3227 have_pcl='no'        ; if test "$PCLDelegate" != "$PCLDelegateDefault"; then have_pcl='yes'; fi
3228 have_ppmtoilbm='no'  ; if test "$ILBMEncodeDelegate" != "$ILBMEncodeDelegateDefault" ; then have_ppmtoilbm='yes'; fi
3229 have_ralcgm='no'     ; if test "$CGMDecodeDelegate" != "$CGMDecodeDelegateDefault" ; then have_ralcgm='yes'; fi
3230 have_xps='no'        ; if test "$XPSDelegate" != "$XPSDelegateDefault"; then have_xps='yes'; fi
3231
3232 #
3233 # Test for font directories
3234 #
3235 type_include_files=''
3236
3237 # Dejavu fonts.
3238 AC_MSG_CHECKING(for Dejavu fonts directory)
3239 dejavu_font_dir=''
3240 if test "${with_dejavu_font_dir}" != 'default'; then
3241   dejavu_font_dir="${with_dejavu_font_dir}/"
3242 else
3243   for font_dir in "${prefix}/share/dejavu/fonts/" '/usr/share/fonts/dejavu/'; do
3244     if test -f "${font_dir}DejaVuSerif.ttf"; then
3245       dejavu_font_dir="${font_dir}"
3246       break 1
3247     fi
3248   done
3249 fi
3250 if test "${dejavu_font_dir}x" != 'x'; then
3251   type_include_files="${type_include_files} "'<include file="type-dejavu.xml" />'
3252   AC_MSG_RESULT([$dejavu_font_dir])
3253 else
3254   AC_MSG_RESULT([not found!]);
3255 fi
3256 AC_SUBST(dejavu_font_dir)
3257
3258 # Windows
3259 windows_font_dir=''
3260 if test "$with_windows_font_dir" != "no" && test -n "$with_windows_font_dir"; then
3261    windows_font_dir="${with_windows_font_dir}/"
3262 fi
3263 if test "${windows_font_dir}x" != 'x'; then
3264     if test -f '/usr/X11R6/lib/X11/fonts/truetype/arial.ttf'; then
3265       windows_font_dir='/usr/X11R6/lib/X11/fonts/truetype/'
3266     fi
3267     if test -f '/usr/X11R7/lib/X11/fonts/truetype/arial.ttf'; then
3268       windows_font_dir='/usr/X11R7/lib/X11/fonts/truetype/'
3269     fi
3270     if test -f '/usr/share/fonts/msttcore/arial.ttf'; then
3271       windows_font_dir='/usr/share/fonts/msttcore/truetype/'
3272     fi
3273 fi
3274 if test "${windows_font_dir}x" != 'x'; then
3275   type_include_files="$type_include_files "'<include file="type-windows.xml" />'
3276 fi
3277 AC_SUBST(windows_font_dir)
3278
3279 # Ghostscript
3280 AC_MSG_CHECKING(for Ghostscript fonts directory)
3281 ghostscript_font_dir=''
3282 if test "${with_gs_font_dir}" != 'default'; then
3283   ghostscript_font_dir="${with_gs_font_dir}/"
3284 else
3285   if test "${native_win32_build}" = 'yes'; then
3286     # Native Windows Build
3287     for font_dir in "c:\\Program Files\\gs\\fonts\\" "c:\\Program Files \(x86\)\\gs\\fonts\\" "c:\\gs\\fonts\\"; do
3288       if test -f "${font_dir}a010013l.pfb"; then
3289         ghostscript_font_dir="$font_dir"
3290         break 1
3291       fi
3292     done
3293     if test "${PSDelegate}" != 'gswin32c'; then
3294       ghostscript_font_dir=`echo "${PSDelegate}" | sed -e 's:/gs/.*:/gs:;s:^/::;s/./&:/;s:/:\\\\:g'`"\\fonts\\"
3295     fi
3296   else
3297     # Linux / Mac OS X / Unix Build
3298     for font_dir in "${prefix}/share/ghostscript/fonts/" '/usr/share/fonts/default/Type1/' '/usr/share/ghostscript/fonts/' '/usr/share/fonts/ghostscript/' '/usr/share/fonts/type1/gsfonts/' '/opt/local/share/ghostscript/fonts/' '/sw/share/ghostscript/fonts/' '/System/Library/Frameworks/Ghostscript.framework/Resources/fonts/'; do
3299       if test -f "${font_dir}a010013l.pfb"; then
3300         ghostscript_font_dir="${font_dir}"
3301         break 1
3302       fi
3303     done
3304     if test "${ghostscript_font_dir}x" = 'x'; then
3305       if test "$PSDelegate" != 'gs'; then
3306         ghostscript_font_dir=`echo "$PSDelegate" | sed -e 's:/bin/gs:/share/ghostscript/fonts:'`"/"
3307       fi
3308     fi
3309   fi
3310 fi
3311 if test "${ghostscript_font_dir}x" != 'x'; then
3312   type_include_files="${type_include_files} "'<include file="type-ghostscript.xml" />'
3313   AC_MSG_RESULT([$ghostscript_font_dir])
3314 else
3315   AC_MSG_RESULT([not found!]);
3316 fi
3317 AC_SUBST(ghostscript_font_dir)
3318 case "${build_os}" in
3319   mingw* )
3320     PSDelegate=`$WinPathScript "$PSDelegate" 1`
3321     ;;
3322 esac
3323
3324 AC_SUBST(type_include_files)
3325
3326 #
3327 # Handle case where user doesn't want frozen paths
3328 #
3329 if test "$with_frozenpaths" != 'yes'; then
3330   # Re-set delegate definitions to default (no paths)
3331   AutotraceDecodeDelegate="$AutotraceDecodeDelegateDefault"
3332   BlenderDecodeDelegate="$BlenderDecodeDelegateDefault"
3333   BZIPDelegate="$BZIPDelegateDefault"
3334   BrowseDelegate="$BrowseDelegateDefault"
3335   CGMDecodeDelegate="$CGMDecodeDelegateDefault"
3336   CatDelegate="$CatDelegateDefault"
3337   ConvertDelegate="$ConvertDelegateDefault"
3338   GVCDecodeDelegate="$GVCDecodeDelegateDefault"
3339   DVIDecodeDelegate="$DVIDecodeDelegateDefault"
3340   EchoDelegate="$EchoDelegateDefault"
3341   EditorDelegate="$EditorDelegateDefault"
3342   FIGDecodeDelegate="$FIGDecodeDelegateDefault"
3343   GnuplotDecodeDelegate="$GnuplotDecodeDelegateDefault"
3344   HPGLDecodeDelegate="$HPGLDecodeDelegateDefault"
3345   HTMLDecodeDelegate="$HTMLDecodeDelegateDefault"
3346   ILBMDecodeDelegate="$ILBMDecodeDelegateDefault"
3347   ILBMEncodeDelegate="$ILBMEncodeDelegateDefault"
3348   LPDelegate="$LPDelegateDefault"
3349   LaunchDelegate="$LaunchDelegateDefault"
3350   MANDelegate="$MANDelegateDefault"
3351   MPEGDecodeDelegate="$MPEGDecodeDelegateDefault"
3352   MPEGEncodeDelegate="$MPEGEncodeDelegateDefault"
3353   MogrifyDelegate="$MogrifyDelegateDefault"
3354   MrSIDDecodeDelegate="$MrSIDDecodeDelegateDefault"
3355   MVDelegate="$MVDelegateDefault"
3356   PCLDelegate="$PCLDelegateDefault"
3357   PGPDecodeDelegate="$PGPDecodeDelegateDefault"
3358   POVDelegate="$POVDelegateDefault"
3359   PSDelegate="$PSDelegateDefault"
3360   RLEEncodeDelegate="$RLEEncodeDelegateDefault"
3361   RMDelegate="$RMDelegateDefault"
3362   RSVGDecodeDelegate="$RSVGDecodeDelegateDefault"
3363   SCANDecodeDelegate="$SCANDecodeDelegateDefault"
3364   SVGDecodeDelegate="$SVGDecodeDelegateDefault"
3365   ShowImageDelegate="$ShowImageDelegateDefault"
3366   TXTDelegate="$TXTDelegateDefault"
3367   UniconvertorDelegate="$UniconvertorDelegateDefault"
3368   WMFDecodeDelegate="$WMFDecodeDelegateDefault"
3369   WWWDecodeDelegate="$WWWDecodeDelegateDefault"
3370   XPSDelegate="$XPSDelegateDefault"
3371   ZipDelegate="$ZipDelegateDefault"
3372 fi
3373
3374 # Delegate substitutions
3375 AC_SUBST(AutotraceDecodeDelegate)
3376 AC_SUBST(BlenderDecodeDelegate)
3377 AC_SUBST(BZIPDelegate)
3378 AC_SUBST(BrowseDelegate)
3379 AC_SUBST(CGMDecodeDelegate)
3380 AC_SUBST(CatDelegate)
3381 AC_SUBST(ConvertDelegate)
3382 AC_SUBST(GVCDecodeDelegate)
3383 AC_SUBST(DVIDecodeDelegate)
3384 AC_SUBST(EchoDelegate)
3385 AC_SUBST(EditorDelegate)
3386 AC_SUBST(FIGDecodeDelegate)
3387 AC_SUBST(GnuplotDecodeDelegate)
3388 AC_SUBST(HPGLDecodeDelegate)
3389 AC_SUBST(HTMLDecodeDelegate)
3390 AC_SUBST(ILBMDecodeDelegate)
3391 AC_SUBST(ILBMEncodeDelegate)
3392 AC_SUBST(LPDelegate)
3393 AC_SUBST(LaunchDelegate)
3394 AC_SUBST(MANDelegate)
3395 AC_SUBST(MPEGDecodeDelegate)
3396 AC_SUBST(MPEGEncodeDelegate)
3397 AC_SUBST(MogrifyDelegate)
3398 AC_SUBST(MrSIDDecodeDelegate)
3399 AC_SUBST(MVDelegate)
3400 AC_SUBST(PCLDelegate)
3401 AC_SUBST(PGPDecodeDelegate)
3402 AC_SUBST(POVDelegate)
3403 AC_SUBST(PSDelegate)
3404 AC_SUBST(RLEEncodeDelegate)
3405 AC_SUBST(RMDelegate)
3406 AC_SUBST(SCANDecodeDelegate)
3407 AC_SUBST(ShowImageDelegate)
3408 AC_SUBST(TXTDelegate)
3409 AC_SUBST(UniconvertorDelegate)
3410 AC_SUBST(WMFDecodeDelegate)
3411 AC_SUBST(WWWDecodeDelegate)
3412 AC_SUBST(XPSDelegate)
3413 AC_SUBST(ZipDelegate)
3414
3415 #
3416 # RPM support.
3417 #
3418 RPM=''
3419 AC_CHECK_PROGS(TAR,gnutar gtar tar)
3420 AC_CHECK_PROGS(PERL,perl)
3421 AC_CHECK_PROGS(RPM,rpmbuild rpm)
3422 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
3423 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
3424 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
3425 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
3426 AC_SUBST(RPM)
3427 AM_CONDITIONAL(RPM_DELEGATE, test "x$RPM" != "x" )
3428
3429 #
3430 # 7ZIP support (http://p7zip.sourceforge.net/)
3431 #
3432 P7ZIP=''
3433 AC_CHECK_PROGS(P7ZIP,[7za])
3434 AC_SUBST(P7ZIP)
3435 AM_CONDITIONAL(P7ZIP_DELEGATE, test "x$P7ZIP" != "x" )
3436
3437 #
3438 # ZIP support (http://www.info-zip.org/Zip.html)
3439 #
3440 ZIP=''
3441 AC_CHECK_PROGS(ZIP,[zip])
3442 AC_SUBST(ZIP)
3443 AM_CONDITIONAL(ZIP_DELEGATE, test "x$ZIP" != "x" )
3444
3445 #
3446 # GhostPCL related configuration.
3447 #
3448 PCLColorDevice=ppmraw
3449 PCLCMYKDevice=pamcmyk32
3450 PCLMonoDevice=pbmraw
3451 if test -z "$PCLVersion"; then
3452     PCLVersion='unknown'
3453 fi
3454 if test $have_pcl = 'yes'; then
3455     AC_MSG_RESULT([-------------------------------------------------------------])
3456     AC_MSG_CHECKING([for PCL])
3457     AC_MSG_RESULT([])
3458     # PCLColorDevice
3459     AC_MSG_CHECKING([for pcl color device])
3460     if $PCLDelegate -dBATCH -sDEVICE=$PCLColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3461         :
3462     else
3463         PCLColorDevice=ppmraw
3464     fi
3465     AC_MSG_RESULT([$PCLColorDevice])
3466
3467     # PCLCMYKDevice
3468     AC_MSG_CHECKING([for pcl CMYK device])
3469     if $PCLDelegate -dBATCH -sDEVICE=$PCLColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3470         :
3471     else
3472         PCLCMYKDevice=$PCLColorDevice
3473     fi
3474     AC_MSG_RESULT([$PCLCMYKDevice])
3475
3476     # PCLMonoDevice
3477     AC_MSG_CHECKING([for pcl mono device])
3478     if $PCLDelegate -dBATCH -sDEVICE=$PCLMonoDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3479         :
3480     else
3481         PCLMonoDevice=$PCLColorDevice
3482     fi
3483     AC_MSG_RESULT([$PCLMonoDevice])
3484 fi
3485
3486 AC_SUBST(PCLMonoDevice)
3487 AC_SUBST(PCLColorDevice)
3488 AC_SUBST(PCLCMYKDevice)
3489 AC_SUBST(PCLVersion)
3490
3491 #
3492 # GhostXPS related configuration.
3493 #
3494 XPSColorDevice=ppmraw
3495 XPSCMYKDevice=bmpsep8
3496 XPSMonoDevice=pbmraw
3497 if test -z "$XPSVersion"; then
3498     XPSVersion='unknown'
3499 fi
3500 if test $have_xps = 'yes'; then
3501     AC_MSG_RESULT([-------------------------------------------------------------])
3502     AC_MSG_CHECKING([for XPS])
3503     AC_MSG_RESULT([])
3504     # XPSColorDevice
3505     AC_MSG_CHECKING([for xps color device])
3506     if $XPSDelegate -dBATCH -sDEVICE=$XPSColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3507         :
3508     else
3509         XPSColorDevice=ppmraw
3510     fi
3511     AC_MSG_RESULT([$XPSColorDevice])
3512
3513     # XPSCMYKDevice
3514     AC_MSG_CHECKING([for xps CMYK device])
3515     if $XPSDelegate -dBATCH -sDEVICE=$XPSColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3516         :
3517     else
3518         XPSCMYKDevice=$XPSColorDevice
3519     fi
3520     AC_MSG_RESULT([$XPSCMYKDevice])
3521
3522     # XPSMonoDevice
3523     AC_MSG_CHECKING([for xps mono device])
3524     if $XPSDelegate -dBATCH -sDEVICE=$XPSMonoDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3525         :
3526     else
3527         XPSMonoDevice=$XPSColorDevice
3528     fi
3529     AC_MSG_RESULT([$XPSMonoDevice])
3530 fi
3531
3532 AC_SUBST(XPSMonoDevice)
3533 AC_SUBST(XPSColorDevice)
3534 AC_SUBST(XPSCMYKDevice)
3535 AC_SUBST(XPSVersion)
3536
3537 #
3538 # Ghostscript related configuration.
3539 #
3540 GSAlphaDevice=pngalpha
3541 GSColorDevice=pnmraw
3542 GSCMYKDevice=pam
3543 GSMonoDevice=pbmraw
3544 GSPDFDevice=pdfwrite
3545 GSPSDevice=pswrite
3546 GSEPSDevice=epswrite
3547 GSVersion='unknown'
3548 if test $have_gs = 'yes'; then
3549     AC_MSG_RESULT([-------------------------------------------------------------])
3550     AC_MSG_CHECKING([for Ghostscript])
3551     AC_MSG_RESULT([])
3552     AC_MSG_CHECKING([for Ghostscript version])
3553     if GSVersion=`$PSDelegate --version`; then
3554         :
3555     else
3556         GSVersion=`$PSDelegate --help | sed -e '1q' | awk '{ print $3 }'`
3557     fi
3558     AC_MSG_RESULT([$GSVersion])
3559
3560     # GSAlphaDevice
3561     AC_MSG_CHECKING([for gs alpha device])
3562     if $PSDelegate -q -dBATCH -sDEVICE=$GSAlphaDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3563         :
3564     else
3565         GSAlphaDevice=pnmraw
3566     fi
3567     AC_MSG_RESULT([$GSAlphaDevice])
3568
3569     # GSColorDevice
3570     AC_MSG_CHECKING([for gs color device])
3571     if $PSDelegate -q -dBATCH -sDEVICE=$GSColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3572         :
3573     else
3574         GSColorDevice=pnmraw
3575     fi
3576     AC_MSG_RESULT([$GSColorDevice])
3577
3578     # GSCMYKDevice
3579     AC_MSG_CHECKING([for gs CMYK device])
3580     if $PSDelegate -q -dBATCH -sDEVICE=$GSCMYKDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3581         :
3582     else
3583         GSCMYKDevice=bmpsep8
3584     fi
3585     AC_MSG_RESULT([$GSCMYKDevice])
3586
3587     # GSMonoDevice
3588     AC_MSG_CHECKING([for gs mono device])
3589     if $PSDelegate -q -dBATCH -sDEVICE=$GSMonoDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3590         :
3591     else
3592         GSMonoDevice=$GSColorDevice
3593     fi
3594     AC_MSG_RESULT([$GSMonoDevice])
3595
3596     # GSPDFDevice
3597     AC_MSG_CHECKING([for gs PDF writing device])
3598     if $PSDelegate -q -dBATCH -sDEVICE=$GSPDFDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3599         :
3600     else
3601         GSPDFDevice=nodevice
3602     fi
3603         AC_MSG_RESULT([$GSPDFDevice])
3604
3605     # GSPSDevice
3606     AC_MSG_CHECKING([for gs PS writing device])
3607     if $PSDelegate -q -dBATCH -sDEVICE=$GSPSDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3608         :
3609     else
3610         GSPSDevice=nodevice
3611     fi
3612     AC_MSG_RESULT([$GSPSDevice])
3613
3614     # GSEPSDevice
3615     AC_MSG_CHECKING([for gs EPS writing device])
3616     if $PSDelegate -q -dBATCH -sDEVICE=$GSEPSDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3617         :
3618     else
3619         GSEPSDevice=nodevice
3620     fi
3621     AC_MSG_RESULT([$GSEPSDevice])
3622 fi
3623
3624 AC_SUBST(GSAlphaDevice)
3625 AC_SUBST(GSCMYKDevice)
3626 AC_SUBST(GSColorDevice)
3627 AC_SUBST(GSEPSDevice)
3628 AC_SUBST(GSMonoDevice)
3629 AC_SUBST(GSPDFDevice)
3630 AC_SUBST(GSPSDevice)
3631 AC_SUBST(GSVersion)
3632
3633 #
3634 # PerlMagick-related configuration
3635 #
3636
3637 # Look for PERL if PerlMagick requested
3638 # If name/path of desired PERL interpreter is specified, look for that one first
3639 have_perl='no'
3640 if test "$with_perl" != 'no'; then
3641     AC_MSG_RESULT([-------------------------------------------------------------])
3642     AC_MSG_CHECKING([for Perl])
3643     AC_MSG_RESULT([])
3644     if test "$with_perl" != 'yes'; then
3645         AC_CACHE_CHECK(for perl,ac_cv_path_PERL,ac_cv_path_PERL="$with_perl");
3646         PERL=$ac_cv_path_PERL
3647         AC_SUBST(PERL)dnl
3648         have_perl="$ac_cv_path_PERL"
3649     else
3650         AC_PATH_PROGS(PERL,perl perl5,)dnl
3651         if test "$ac_cv_path_PERL"; then
3652             have_perl="$ac_cv_path_PERL"
3653         fi
3654     fi
3655 fi
3656
3657 if test "$with_perl" != 'yes' ; then
3658     DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-perl=$with_perl "
3659 fi
3660
3661 PERL_SUPPORTS_DESTDIR='no'
3662
3663 with_perl_static='no'
3664 with_perl_dynamic='no'
3665 if test "$have_perl" != 'no'; then
3666     if test "$with_perl" != 'no' && test "$libtool_build_shared_libs" = 'no'; then
3667         with_perl_static='yes'
3668     fi
3669     if test "$with_perl" != 'no' && test "$libtool_build_shared_libs" = 'yes'; then
3670         with_perl_dynamic='yes'
3671     fi
3672     # Is PERL's MakeMaker new enough to support DESTDIR?
3673     AX_PROG_PERL_VERSION(5.8.1,[PERL_SUPPORTS_DESTDIR='yes'],[PERL_SUPPORTS_DESTDIR='no'])
3674 fi
3675 AM_CONDITIONAL(WITH_PERL, test "$have_perl" != 'no')
3676 AM_CONDITIONAL(WITH_PERL_STATIC, test $with_perl_static = 'yes')
3677 AM_CONDITIONAL(WITH_PERL_DYNAMIC, test $with_perl_dynamic = 'yes')
3678 AC_SUBST(PERL_SUPPORTS_DESTDIR)
3679
3680 # Determine path to pick up MagickCore library from for use with building PerlMagick
3681 MAGICKCORE_PATH="${LIB_DIR}"
3682 if test $with_perl_static = 'yes'; then
3683     # Find out where libtool hides its uninstalled libraries (as libtool_objdir)
3684     libtool_objdir=$objdir
3685
3686     # Linker search path to library, followed by -lMagickCore
3687     MAGICKCORE_PATH="${builddir}/MagickCore/${libtool_objdir}"
3688 fi
3689 AC_SUBST(MAGICKCORE_PATH)
3690
3691 # Create a simple string containing format names for all delegate libraries.
3692 MAGICK_DELEGATES=''
3693 if test "$have_autotrace"  = 'yes' ; then
3694    MAGICK_DELEGATES="$MAGICK_DELEGATES autotrace"
3695 fi
3696 if test "$have_bzlib"  = 'yes' ; then
3697    MAGICK_DELEGATES="$MAGICK_DELEGATES bzlib"
3698 fi
3699 if test "$have_dps"    = 'yes' ; then
3700    MAGICK_DELEGATES="$MAGICK_DELEGATES dps"
3701 fi
3702 if test "$have_djvu"    = 'yes' ; then
3703    MAGICK_DELEGATES="$MAGICK_DELEGATES djvu"
3704 fi
3705 if test "$have_ffmpeg"   = 'yes' ; then
3706    MAGICK_DELEGATES="$MAGICK_DELEGATES mpeg"
3707 fi
3708 if test "$have_fftw"    = 'yes' ; then
3709    MAGICK_DELEGATES="$MAGICK_DELEGATES fftw"
3710 fi
3711 if test "$have_fig2dev" = 'yes' && test "$have_ps" = 'yes'  ; then
3712    MAGICK_DELEGATES="$MAGICK_DELEGATES xfig"
3713 fi
3714 if test "$have_fpx"    = 'yes' ; then
3715    MAGICK_DELEGATES="$MAGICK_DELEGATES fpx"
3716 fi
3717 if test "$have_fontconfig"    = 'yes' ; then
3718    MAGICK_DELEGATES="$MAGICK_DELEGATES fontconfig"
3719 fi
3720 if test "$have_freetype"    = 'yes' ; then
3721    MAGICK_DELEGATES="$MAGICK_DELEGATES freetype"
3722 fi
3723 if test "$have_gslib"    = 'yes' ; then
3724    MAGICK_DELEGATES="$MAGICK_DELEGATES gslib"
3725 fi
3726 if test "$have_jbig"    = 'yes' ; then
3727    MAGICK_DELEGATES="$MAGICK_DELEGATES jbig"
3728 fi
3729 if test "$have_png$have_jpeg" = 'yesyes' ; then
3730    MAGICK_DELEGATES="$MAGICK_DELEGATES jng"
3731 fi
3732 if test "$have_jp2"   = 'yes' ; then
3733    MAGICK_DELEGATES="$MAGICK_DELEGATES jp2"
3734 fi
3735 if test "$have_jpeg"   = 'yes' ; then
3736    MAGICK_DELEGATES="$MAGICK_DELEGATES jpeg"
3737 fi
3738 if test "$have_lcms" = 'yes' || test "$have_lcms2" = 'yes' ; then
3739    MAGICK_DELEGATES="$MAGICK_DELEGATES lcms"
3740 fi
3741 if test "$have_lqr"    = 'yes' ; then
3742    MAGICK_DELEGATES="$MAGICK_DELEGATES lqr"
3743 fi
3744 if test "$have_lzma"    = 'yes' ; then
3745    MAGICK_DELEGATES="$MAGICK_DELEGATES lzma"
3746 fi
3747 if test "$have_openexr"    = 'yes' ; then
3748    MAGICK_DELEGATES="$MAGICK_DELEGATES openexr"
3749 fi
3750 if test "$have_pango"    = 'yes' ; then
3751    MAGICK_DELEGATES="$MAGICK_DELEGATES pango"
3752 fi
3753 if test "$have_png"    = 'yes' ; then
3754    MAGICK_DELEGATES="$MAGICK_DELEGATES png"
3755 fi
3756 have_ps='no'
3757 if test "$have_dps"    = 'yes' || \
3758    test "$have_gs" = 'yes' || \
3759    test "${native_win32_build}" = 'yes' ; then
3760    have_ps='yes'
3761 fi
3762 if test "$have_ps"     = 'yes' ; then
3763    MAGICK_DELEGATES="$MAGICK_DELEGATES ps"
3764 fi
3765 if test "$have_ralcgm" = 'yes' ; then
3766    MAGICK_DELEGATES="$MAGICK_DELEGATES cgm"
3767 fi
3768 if test "$have_ra_ppm" = 'yes' ; then
3769    MAGICK_DELEGATES="$MAGICK_DELEGATES rad"
3770 fi
3771 if test "$have_rsvg"   = 'yes' ; then
3772    MAGICK_DELEGATES="$MAGICK_DELEGATES rsvg"
3773 fi
3774 if test "$have_tiff"   = 'yes' ; then
3775    MAGICK_DELEGATES="$MAGICK_DELEGATES tiff"
3776 fi
3777 if test "$have_ttf"    = 'yes' ; then
3778    MAGICK_DELEGATES="$MAGICK_DELEGATES ttf"
3779 fi
3780 if test "$have_wmf"    = 'yes' ; then
3781    MAGICK_DELEGATES="$MAGICK_DELEGATES wmf"
3782 fi
3783 if test "$have_x"      = 'yes' ; then
3784    MAGICK_DELEGATES="$MAGICK_DELEGATES x"
3785 fi
3786 if test "$have_xml"      = 'yes' ; then
3787    MAGICK_DELEGATES="$MAGICK_DELEGATES xml"
3788 fi
3789 if test "$have_zlib"   = 'yes' ; then
3790    MAGICK_DELEGATES="$MAGICK_DELEGATES zlib"
3791 fi
3792 # Remove extraneous spaces from output variables (asthetic)
3793 MAGICK_DELEGATES=`echo $MAGICK_DELEGATES | sed -e 's/  */ /g'`
3794 MAGICK_FEATURES=`echo $MAGICK_FEATURES | sed -e 's/  */ /g'`
3795 AC_SUBST(MAGICK_DELEGATES)
3796 AC_SUBST(MAGICK_FEATURES)
3797
3798 #
3799 # Handle special compiler flags
3800 #
3801
3802 # Add '-p' if prof source profiling support enabled
3803 if test "$enable_prof" = 'yes'; then
3804     CFLAGS="-p $CFLAGS"
3805     CXXFLAGS="-p $CXXFLAGS"
3806     LDFLAGS="-p $LDFLAGS"
3807 fi
3808
3809 # Add '-pg' if gprof source profiling support enabled
3810 if test "$enable_gprof" = 'yes'; then
3811     CFLAGS="-pg $CFLAGS"
3812     CXXFLAGS="-pg $CXXFLAGS"
3813     LDFLAGS="-pg $LDFLAGS"
3814 fi
3815
3816 # Add '-ftest-coverage -fprofile-arcs' if gcov source profiling support enabled
3817 # This is a gcc-specific feature
3818 if test "$enable_gcov" = 'yes'; then
3819     AC_CHECK_LIB(gcov,_gcov_init)
3820     AC_CHECK_LIB(gcov,__gcov_init)
3821     case "$target_os" in
3822         darwin*)
3823             OSX_GCOV_LDFLAG="-Wl,-single_module"
3824         ;;
3825         *)
3826             OSX_GCOV_LDFLAG=""
3827         ;;
3828     esac
3829     AC_SUBST(OSX_GCOV_LDFLAG)
3830     CFLAGS="-ftest-coverage -fprofile-arcs  $CFLAGS"
3831     CXXFLAGS="-ftest-coverage -fprofile-arcs  $CXXFLAGS"
3832     LDFLAGS="-ftest-coverage -fprofile-arcs $LDFLAGS"
3833 fi
3834
3835 #
3836 # Build library dependency list for libMagickCore
3837 #
3838
3839 if test "$build_modules" != 'no'; then
3840     MAGICK_DEP_LIBS="$LCMS_LIBS $FREETYPE_LIBS $LQR_LIBS $FFTW_LIBS $FONTCONFIG_LIBS $XEXT_LIBS $IPC_LIBS $X11_LIBS $XT_LIBS $LZMA_LIBS $BZLIB_LIBS $ZLIB_LIBS $LTDL_LIBS $GDI32_LIBS $MATH_LIBS $GOMP_LIBS $CL_LIBS $UMEM_LIBS $THREAD_LIBS"
3841 else
3842     MAGICK_DEP_LIBS="$JBIG_LIBS $LCMS_LIBS $TIFF_LIBS $FREETYPE_LIBS $JP2_LIBS $JPEG_LIBS $GS_LIBS $LQR_LIBS $PNG_LIBS $AUTOTRACE_LIBS $DJVU_LIBS $FFTW_LIBS $FPX_LIBS $FONTCONFIG_LIBS $WEBP_LIBS $WMF_LIBS $DPS_LIBS $XEXT_LIBS $XT_LIBS $IPC_LIBS $X11_LIBS $LZMA_LIBS $BZLIB_LIBS $OPENEXR_LIBS $PANGO_LIBS $RSVG_LIBS $XML_LIBS $GVC_LIBS $ZLIB_LIBS $GDI32_LIBS $MATH_LIBS $GOMP_LIBS $CL_LIBS $UMEM_LIBS $THREAD_LIBS"
3843 fi
3844 AC_SUBST(MAGICK_DEP_LIBS)
3845
3846 #
3847 # Remove extraneous spaces from output variables (asthetic)
3848 #
3849 X_CFLAGS=`echo $X_CFLAGS | sed -e 's/  */ /g'`
3850 X_PRE_LIBS=`echo $X_PRE_LIBS | sed -e 's/  */ /g'`
3851 X_LIBS=`echo $X_LIBS | sed -e 's/  */ /g'`
3852 X_EXTRA_LIBS=`echo $X_EXTRA_LIBS | sed -e 's/  */ /g'`
3853
3854 CC=`echo $CC | sed -e 's/  */ /g'`
3855 CFLAGS=`echo $CFLAGS | sed -e 's/  */ /g'`
3856 CPPFLAGS=`echo $CPPFLAGS | sed -e 's/  */ /g'`
3857 CXXFLAGS=`echo $CXXFLAGS | sed -e 's/  */ /g'`
3858 DISTCHECK_CONFIG_FLAGS=`echo $DISTCHECK_CONFIG_FLAGS | sed -e 's/  */ /g'`
3859 LDFLAGS=`echo $LDFLAGS | sed -e 's/  */ /g'`
3860 TESTED_LIBS=`echo $LIBS | sed -e 's/  */ /g'`
3861 MAGICK_DEP_LIBS=`echo $MAGICK_DEP_LIBS | sed -e 's/  */ /g'`
3862 #LIBS=`echo $LIBS | sed -e 's/  */ /g'`
3863
3864 # Pass only user-provided LIBS as "global" libraries
3865 LIBS=$USER_LIBS
3866
3867 #AC_SUBST(CPPFLAGS)
3868 AC_SUBST(X_CFLAGS)
3869 #AC_SUBST(LDFLAGS)
3870 #AC_SUBST(X_PRE_LIBS)
3871 #AC_SUBST(X_LIBS)
3872 #AC_SUBST(X_EXTRA_LIBS)
3873
3874 MAGICK_CFLAGS=$CFLAGS
3875 MAGICK_CXXFLAGS="$CXXFLAGS"
3876 MAGICK_CPPFLAGS=`echo $MAGICK_CPPFLAGS | sed -e 's/  */ /g'`
3877 MAGICK_PCFLAGS=`echo $MAGICK_PCFLAGS | sed -e 's/  */ /g'`
3878 MAGICK_LDFLAGS="-L$LIB_DIR $LDFLAGS"
3879 MAGICK_LIBS="-lMagickCore $MAGICK_DEP_LIBS"
3880
3881 AC_SUBST(MAGICK_CFLAGS)
3882 AC_SUBST(MAGICK_CXXFLAGS)
3883 AC_SUBST(MAGICK_CPPFLAGS)
3884 AC_SUBST(MAGICK_PCFLAGS)
3885 AC_SUBST(MAGICK_LDFLAGS)
3886 AC_SUBST(MAGICK_LIBS)
3887
3888 # Set configured scripts to executable.
3889 AC_CONFIG_COMMANDS([default],[],[])
3890 AC_CONFIG_COMMANDS([magick.sh.in],[chmod +x magick.sh])
3891 AC_CONFIG_COMMANDS([MagickCore-config.in],[chmod +x MagickCore/MagickCore-config])
3892 AC_CONFIG_COMMANDS([MagickWand-config.in],[chmod +x MagickWand/MagickWand-config])
3893 AC_CONFIG_COMMANDS([Magick++-config.in],[chmod +x Magick++/bin/Magick++-config])
3894 AC_CONFIG_COMMANDS([PerlMagick/check.sh.in],[chmod +x PerlMagick/check.sh])
3895
3896 AC_MSG_RESULT([-------------------------------------------------------------])
3897 AC_MSG_RESULT([Update ImageMagick configuration])
3898 AC_OUTPUT
3899
3900 rm -f magick-version
3901
3902 result_dejavu_font_dir='none'
3903 if test "${dejavu_font_dir}x" != 'x'; then
3904     result_dejavu_font_dir=$dejavu_font_dir
3905 fi
3906
3907 result_ghostscript_font_dir='none'
3908 if test "${ghostscript_font_dir}x" != 'x'; then
3909     result_ghostscript_font_dir=$ghostscript_font_dir
3910 fi
3911
3912 result_windows_font_dir='none'
3913 if test "${windows_font_dir}x" != 'x'; then
3914     result_windows_font_dir=${windows_font_dir}
3915 fi
3916
3917 AC_MSG_RESULT([
3918 ImageMagick is configured as follows. Please verify that this configuration
3919 matches your expectations.
3920
3921 Host system type: $host
3922 Build system type: $build
3923
3924                   Option                        Value
3925 -------------------------------------------------------------------------------
3926 Shared libraries  --enable-shared=$enable_shared                $libtool_build_shared_libs
3927 Static libraries  --enable-static=$enable_static                $libtool_build_static_libs
3928 Module support    --with-modules=$build_modules         $build_modules
3929 GNU ld            --with-gnu-ld=$with_gnu_ld            $lt_cv_prog_gnu_ld
3930 Quantum depth     --with-quantum-depth=$with_quantum_depth      $with_quantum_depth
3931 High Dynamic Range Imagery
3932                   --enable-hdri=$enable_hdri            $enable_hdri
3933
3934 Delegate Configuration:
3935 BZLIB             --with-bzlib=$with_bzlib              $have_bzlib
3936 Autotrace         --with-autotrace=$with_autotrace              $have_autotrace
3937 Dejavu fonts      --with-dejavu-font-dir=$with_dejavu_font_dir  $result_dejavu_font_dir
3938 DJVU              --with-djvu=$with_djvu                $have_djvu
3939 DPS               --with-dps=$with_dps          $have_dps
3940 FFTW              --with-fftw=$with_fftw                $have_fftw
3941 FlashPIX          --with-fpx=$with_fpx          $have_fpx
3942 FontConfig        --with-fontconfig=$with_fontconfig            $have_fontconfig
3943 FreeType          --with-freetype=$with_freetype                $have_freetype
3944 GhostPCL          None                          $PCLDelegate ($PCLVersion)
3945 GhostXPS          None                          $XPSDelegate ($XPSVersion)
3946 Ghostscript       None                          $PSDelegate ($GSVersion)
3947 Ghostscript fonts --with-gs-font-dir=$with_gs_font_dir  $result_ghostscript_font_dir
3948 Ghostscript lib   --with-gslib=$with_gslib              $have_gslib
3949 Graphviz          --with-gvc=$with_gvc          $have_gvc
3950 JBIG              --with-jbig=$with_jbig                $have_jbig
3951 JPEG v1           --with-jpeg=$with_jpeg                $have_jpeg
3952 JPEG-2000         --with-jp2=$with_jp2          $have_jp2
3953 LCMS v1           --with-lcms=$with_lcms                $have_lcms
3954 LCMS v2           --with-lcms2=$with_lcms2              $have_lcms2
3955 LQR               --with-lqr=$with_lqr          $have_lqr
3956 LTDL              --with-ltdl=$with_ltdl                $have_ltdl
3957 LZMA              --with-lzma=$with_lzma                $have_lzma
3958 Magick++          --with-magick-plus-plus=$with_magick_plus_plus        $have_magick_plus_plus
3959 OpenEXR           --with-openexr=$with_openexr          $have_openexr
3960 PANGO             --with-pango=$with_pango              $have_pango
3961 PERL              --with-perl=$with_perl                $have_perl
3962 PNG               --with-png=$with_png          $have_png
3963 RSVG              --with-rsvg=$with_rsvg                $have_rsvg
3964 TIFF              --with-tiff=$with_tiff                $have_tiff
3965 WEBP              --with-webp=$with_webp                $have_webp
3966 Windows fonts     --with-windows-font-dir=$with_windows_font_dir        $result_windows_font_dir
3967 WMF               --with-wmf=$with_wmf          $have_wmf
3968 X11               --with-x=$with_x                      $have_x
3969 XML               --with-xml=$with_xml          $have_xml
3970 ZLIB              --with-zlib=$with_zlib                $have_zlib
3971
3972 X11 Configuration:
3973       X_CFLAGS        = $X_CFLAGS
3974       X_PRE_LIBS      = $X_PRE_LIBS
3975       X_LIBS          = $X_LIBS
3976       X_EXTRA_LIBS    = $X_EXTRA_LIBS
3977
3978 Options used to compile and link:
3979   PREFIX          = $PREFIX_DIR
3980   EXEC-PREFIX     = $EXEC_PREFIX_DIR
3981   VERSION         = $PACKAGE_VERSION
3982   CC              = $CC
3983   CFLAGS          = $CFLAGS
3984   CPPFLAGS        = $MAGICK_CPPFLAGS
3985   PCFLAGS         = $MAGICK_PCFLAGS
3986   DEFS            = $DEFS
3987   LDFLAGS         = $LDFLAGS
3988   MAGICK_LDFLAGS  = $MAGICK_LDFLAGS
3989   LIBS            = $MAGICK_LIBS
3990   CXX             = $CXX
3991   CXXFLAGS        = $CXXFLAGS
3992   FEATURES        = $MAGICK_FEATURES
3993   DELEGATES       = $MAGICK_DELEGATES
3994 ])