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