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