root/ImageMagick/branches/ImageMagick-6.5.5/configure.ac

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