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