blob: a502dabbda0fc772ec39d1f3038dc84cb3f48756 [file] [log] [blame]
cristyfe676ee2013-11-18 13:03:38 +00001# Copyright 1999-2014 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
cristy568c2d42012-07-27 01:41:20 +000016#
17# Copying and distribution of this file, with or without modification,
18# are permitted in any medium without royalty provided the copyright
19# notice and this notice are preserved.
cristy3ed852e2009-09-05 21:47:34 +000020
cristyc8051dc2012-08-20 23:50:31 +000021AC_PREREQ(2.69)
cristyfddf7752011-02-26 19:25:10 +000022
cristy4c08aed2011-07-01 19:47:50 +000023m4_define([magick_major_version], [7])
24m4_define([magick_minor_version], [0])
25m4_define([magick_micro_version], [0])
cristy7ebf5092013-08-29 00:08:15 +000026m4_define([magick_patchlevel_version], [0])
cristyfddf7752011-02-26 19:25:10 +000027m4_define([magick_version],
cristy29eb34e2011-10-16 00:46:08 +000028 [magick_major_version.magick_minor_version.magick_micro_version-magick_patchlevel_version])
cristy5b93af12012-08-02 18:02:48 +000029m4_define([magick_svn_revision], esyscmd([sh -c "(svnversion .) | awk '{ print \$1 }' | tr -d '\n'"]))
cristyfddf7752011-02-26 19:25:10 +000030
cristy09b53e12011-10-14 12:47:22 +000031AC_INIT([ImageMagick],[magick_version],[http://www.imagemagick.org],[ImageMagick])
cristy4c08aed2011-07-01 19:47:50 +000032AC_CONFIG_SRCDIR([MagickCore/MagickCore.h])
cristy3ed852e2009-09-05 21:47:34 +000033AC_CONFIG_AUX_DIR([config])
cristybc556452012-08-17 19:44:03 +000034AC_REQUIRE_AUX_FILE([tap-driver.sh])
cristy3ed852e2009-09-05 21:47:34 +000035AC_CONFIG_MACRO_DIR([m4])
cristy3ed852e2009-09-05 21:47:34 +000036AC_CONFIG_HEADERS([config/config.h])
cristy01ff9f32012-12-01 18:15:29 +000037AX_PREFIX_CONFIG_H([MagickCore/magick-baseconfig.h],[MagickCore])
cristy3ed852e2009-09-05 21:47:34 +000038AC_CONFIG_FILES([\
cristy305c5dd2012-09-13 00:30:13 +000039 common.shi \
cristy3ed852e2009-09-05 21:47:34 +000040 config/configure.xml \
41 config/delegates.xml \
42 config/ImageMagick.rdf \
43 config/MagickCore.dox \
44 config/MagickWand.dox \
cristy2df32802012-09-17 01:15:28 +000045 config/Magick++.dox \
cristy430a7312010-01-21 20:44:04 +000046 config/type-dejavu.xml \
cristy3ed852e2009-09-05 21:47:34 +000047 config/type-ghostscript.xml \
48 config/type-windows.xml \
49 config/type.xml \
50 ImageMagick.spec \
51 Magick++/bin/Magick++-config \
cristy4c08aed2011-07-01 19:47:50 +000052 MagickCore/ImageMagick.pc \
cristy3ed852e2009-09-05 21:47:34 +000053 Magick++/lib/Magick++.pc \
cristy4c08aed2011-07-01 19:47:50 +000054 MagickCore/MagickCore-config \
55 MagickCore/MagickCore.pc \
56 MagickCore/version.h \
cristy3ed852e2009-09-05 21:47:34 +000057 Makefile \
58 magick.sh \
cristy3ed852e2009-09-05 21:47:34 +000059 PerlMagick/check.sh \
cristy8d0ff762013-03-10 20:33:28 +000060 PerlMagick/default/Magick.pm \
cristy3e049f82013-02-13 13:26:53 +000061 PerlMagick/Makefile.PL \
cristy8d0ff762013-03-10 20:33:28 +000062 PerlMagick/default/Makefile.PL \
cristycf0cbcc2013-02-13 23:32:58 +000063 PerlMagick/quantum/Makefile.PL \
64 PerlMagick/quantum/quantum.pm \
65 PerlMagick/quantum/quantum.xs \
66 PerlMagick/quantum/typemap \
cristy3ed852e2009-09-05 21:47:34 +000067 utilities/animate.1 \
68 utilities/compare.1 \
69 utilities/composite.1 \
70 utilities/conjure.1 \
71 utilities/convert.1 \
72 utilities/display.1 \
73 utilities/identify.1 \
74 utilities/ImageMagick.1 \
75 utilities/import.1 \
76 utilities/mogrify.1 \
77 utilities/montage.1 \
78 utilities/stream.1 \
cristy4c08aed2011-07-01 19:47:50 +000079 MagickWand/MagickWand-config \
80 MagickWand/MagickWand.pc ])
cristy3ed852e2009-09-05 21:47:34 +000081
82#
83# Save initial user-tunable values
84#
85USER_LIBS=$LIBS
86for var in CC CFLAGS CPPFLAGS CXX CXXCPP LDFLAGS LIBS ; do
87 eval isset=\${$var+set}
88 if test "$isset" = 'set'; then
89 eval val=$`echo $var`
90 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS}'${var}=${val}' "
91 fi
92done
93AC_SUBST(DISTCHECK_CONFIG_FLAGS)
94
95CONFIGURE_ARGS="$0 ${ac_configure_args}"
96AC_SUBST(CONFIGURE_ARGS)
97
98# Source file containing package/library versioning information.
99. ${srcdir}/version.sh
100
cristy15a88782010-01-31 23:24:49 +0000101echo "configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}${PACKAGE_VERSION_ADDENDUM}"
cristy837d6dc2010-02-27 01:16:57 +0000102AC_CANONICAL_SYSTEM
cristy95646052009-11-28 23:05:30 +0000103AC_CANONICAL_BUILD
104AC_CANONICAL_HOST
cristy8be34142012-06-17 14:07:18 +0000105AC_CANONICAL_TARGET
cristy3ed852e2009-09-05 21:47:34 +0000106
cristy19615b82011-04-13 20:02:01 +0000107MAGICK_TARGET_CPU=$host_cpu
cristy3225a072010-04-17 01:47:28 +0000108AC_SUBST(MAGICK_TARGET_CPU)
cristy27d53d62012-07-29 23:30:07 +0000109AC_DEFINE_UNQUOTED(MAGICK_TARGET_CPU,$MAGICK_TARGET_CPU,[Target Host CPU])
cristy3225a072010-04-17 01:47:28 +0000110
cristy19615b82011-04-13 20:02:01 +0000111MAGICK_TARGET_VENDOR=$host_vendor
cristy3225a072010-04-17 01:47:28 +0000112AC_SUBST(MAGICK_TARGET_VENDOR)
cristy27d53d62012-07-29 23:30:07 +0000113AC_DEFINE_UNQUOTED(MAGICK_TARGET_VENDOR,$MAGICK_TARGET_VENDOR,[Target Host Vendor])
cristy3225a072010-04-17 01:47:28 +0000114
cristy19615b82011-04-13 20:02:01 +0000115MAGICK_TARGET_OS=$host_os
cristy3225a072010-04-17 01:47:28 +0000116AC_SUBST(MAGICK_TARGET_OS)
cristy27d53d62012-07-29 23:30:07 +0000117AC_DEFINE_UNQUOTED(MAGICK_TARGET_OS,$MAGICK_TARGET_OS,[Target Host OS])
cristy3225a072010-04-17 01:47:28 +0000118
cristy37442762013-02-10 21:07:23 +0000119
120# Substitute versioning
121AC_SUBST([MAGICK_MAJOR_VERSION],[magick_major_version])
122AC_SUBST([MAGICK_MINOR_VERSION],[magick_minor_version])
123AC_SUBST([MAGICK_MICRO_VERSION],[magick_micro_version])
124AC_SUBST([MAGICK_PATCHLEVEL_VERSION],[magick_patchlevel_version])
125AC_SUBST([MAGICK_VERSION],[magick_version])
126AC_SUBST([MAGICK_SVN_REVISION],[magick_svn_revision])
127
cristy3ed852e2009-09-05 21:47:34 +0000128# Substitute library versioning
129AC_SUBST(MAGICK_LIBRARY_CURRENT)dnl
130AC_SUBST(MAGICK_LIBRARY_REVISION)dnl
131AC_SUBST(MAGICK_LIBRARY_AGE)dnl
cristybab87c32010-02-09 20:54:22 +0000132AC_SUBST([MAGICK_LIBRARY_CURRENT_MIN],
133 [`expr $MAGICK_LIBRARY_CURRENT - $MAGICK_LIBRARY_AGE`])
134AC_SUBST([MAGICK_LIBRARY_VERSION_INFO],
135 [$MAGICK_LIBRARY_CURRENT:$MAGICK_LIBRARY_REVISION:$MAGICK_LIBRARY_AGE])
cristy37442762013-02-10 21:07:23 +0000136
cristy5ed9c6e2013-07-14 21:20:31 +0000137AC_SUBST(MAGICKPP_LIBRARY_CURRENT)dnl
138AC_SUBST(MAGICKPP_LIBRARY_REVISION)dnl
139AC_SUBST(MAGICKPP_LIBRARY_AGE)dnl
140AC_SUBST([MAGICKPP_LIBRARY_CURRENT_MIN],
141 [`expr $MAGICKPP_LIBRARY_CURRENT - $MAGICKPP_LIBRARY_AGE`])
142AC_SUBST([MAGICKPP_LIBRARY_VERSION_INFO],
143 [$MAGICKPP_LIBRARY_CURRENT:$MAGICKPP_LIBRARY_REVISION:$MAGICKPP_LIBRARY_AGE])
144
cristy3ed852e2009-09-05 21:47:34 +0000145AC_SUBST(PACKAGE_NAME)dnl
146AC_SUBST(PACKAGE_VERSION)dnl
cristy878c2f12011-08-19 00:25:19 +0000147AC_SUBST(PACKAGE_PERL_VERSION)dnl
cristy3ed852e2009-09-05 21:47:34 +0000148AC_SUBST(PACKAGE_RELEASE)dnl
149AC_SUBST(PACKAGE_CHANGE_DATE)dnl
150AC_SUBST(PACKAGE_LIB_VERSION)dnl
151AC_SUBST(PACKAGE_LIB_VERSION_NUMBER)dnl
152AC_SUBST(PACKAGE_RELEASE_DATE)dnl
cristy15a88782010-01-31 23:24:49 +0000153AC_SUBST(PACKAGE_VERSION_ADDENDUM)dnl
cristy3ed852e2009-09-05 21:47:34 +0000154
155# Ensure that make can run correctly
156AM_SANITY_CHECK
157
cristy30841e62014-05-19 00:45:15 +0000158AM_INIT_AUTOMAKE([1.12 nostdinc color-tests foreign parallel-tests silent-rules subdir-objects dist-bzip2 dist-lzip dist-xz dist-zip])
cristy3ed852e2009-09-05 21:47:34 +0000159
160# Enable support for silent build rules
cristyfddf7752011-02-26 19:25:10 +0000161m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
cristy3ed852e2009-09-05 21:47:34 +0000162
cristy5ed9c6e2013-07-14 21:20:31 +0000163# versionning of library
cristy3ed852e2009-09-05 21:47:34 +0000164MAGICK_LIB_VERSION="0x"
165if test ${MAGICK_LIBRARY_CURRENT} -lt 10 ; then
166 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
167fi
168MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_CURRENT}
169if test ${MAGICK_LIBRARY_AGE} -lt 10 ; then
170 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
171fi
172MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_AGE}
173if test ${MAGICK_LIBRARY_REVISION} -lt 10 ; then
174 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
175fi
176MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_REVISION}
177AC_SUBST(MAGICK_LIB_VERSION)
178
179# Definition used to define MagickLibVersionText in version.h
180MAGICK_LIB_VERSION_TEXT="${PACKAGE_VERSION}"
181AC_SUBST(MAGICK_LIB_VERSION_TEXT)
182
183# Definition used to define MagickLibVersionNumber in version.h
184MAGICK_LIB_VERSION_NUMBER="${MAGICK_LIBRARY_CURRENT},${MAGICK_LIBRARY_AGE},${MAGICK_LIBRARY_REVISION}"
185AC_SUBST(MAGICK_LIB_VERSION_NUMBER)
186
cristy5ed9c6e2013-07-14 21:20:31 +0000187MAGICKPP_LIB_VERSION="0x"
188if test ${MAGICKPP_LIBRARY_CURRENT} -lt 10 ; then
189 MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}0
190fi
191MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}${MAGICKPP_LIBRARY_CURRENT}
192if test ${MAGICKPP_LIBRARY_AGE} -lt 10 ; then
193 MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}0
194fi
195MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}${MAGICKPP_LIBRARY_AGE}
196if test ${MAGICKPP_LIBRARY_REVISION} -lt 10 ; then
197 MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}0
198fi
199MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}${MAGICKPP_LIBRARY_REVISION}
200AC_SUBST(MAGICKPP_LIB_VERSION)
201
202# Definition used to define MagickLibVersionText in version.h
203MAGICKPP_LIB_VERSION_TEXT="${PACKAGE_VERSION}"
204AC_SUBST(MAGICKPP_LIB_VERSION_TEXT)
205
206# Definition used to define MagickLibVersionNumber in version.h
207MAGICK_LIB_VERSION_NUMBER="${MAGICK_LIBRARY_CURRENT},${MAGICK_LIBRARY_AGE},${MAGICK_LIBRARY_REVISION}"
208AC_SUBST(MAGICK_LIB_VERSION_NUMBER)
209
210
211
cristy3ed852e2009-09-05 21:47:34 +0000212# Regenerate config.status if ChangeLog or version.sh is updated.
213AC_SUBST([CONFIG_STATUS_DEPENDENCIES],['$(top_srcdir)/version.sh'])
214
215PERLMAINCC=$CC
216
217MAGICK_CFLAGS=''
218MAGICK_CPPFLAGS=$CPPFLAGS_USER
219MAGICK_PCFLAGS=$CPPFLAGS_USER
220MAGICK_LDFLAGS=''
221MAGICK_LIBS=''
cristyfd9dcd42010-08-08 18:07:02 +0000222MAGICK_FEATURES=''
cristy3ed852e2009-09-05 21:47:34 +0000223
224#
225# Evaluate shell variable equivalents to Makefile directory variables
226#
227if test "x$prefix" = xNONE; then
228 prefix=$ac_default_prefix
229fi
230# Let make expand exec_prefix.
231if test "x$exec_prefix" = xNONE; then
232 exec_prefix='${prefix}'
233fi
234
235#
236eval "eval PREFIX_DIR=${prefix}"
237AC_SUBST(PREFIX_DIR)
238eval "eval EXEC_PREFIX_DIR=${exec_prefix}"
239AC_SUBST(EXEC_PREFIX_DIR)
240eval "eval BIN_DIR=$bindir"
241AC_SUBST(BIN_DIR)
242eval "eval SBIN_DIR=$sbindir"
243AC_SUBST(SBIN_DIR)
244eval "eval LIBEXEC_DIR=$libexecdir"
245AC_SUBST(LIBEXEC_DIR)
246eval "eval DATA_DIR=$datadir"
247AC_SUBST(DATA_DIR)
cristy4e65ec22012-04-08 01:33:27 +0000248eval "eval DOC_DIR=$datadir/doc"
cristyd55889c2011-03-27 00:50:24 +0000249AC_SUBST(DOC_DIR)
cristy3ed852e2009-09-05 21:47:34 +0000250eval "eval SYSCONF_DIR=$sysconfdir"
251AC_SUBST(SYSCONF_DIR)
252eval "eval SHAREDSTATE_DIR=$sharedstatedir"
253AC_SUBST(SHAREDSTATE_DIR)
254eval "eval LOCALSTATE_DIR=$localstatedir"
255AC_SUBST(LOCALSTATE_DIR)
256eval "eval LIB_DIR=$libdir"
257AC_SUBST(LIB_DIR)
258eval "eval INCLUDE_DIR=$includedir"
259AC_SUBST(INCLUDE_DIR)
260eval "eval PERSISTINCLUDE_DIR=$oldincludedir"
261AC_SUBST(PERSISTINCLUDE_DIR)
262eval "eval INFO_DIR=$infodir"
263AC_SUBST(INFO_DIR)
264eval "eval MAN_DIR=$mandir"
265AC_SUBST(MAN_DIR)
266
267# Get full paths to source and build directories
268srcdirfull="`cd $srcdir && pwd`"
269builddir="`pwd`"
270
271#
272# Compute variables useful for running uninstalled software.
273#
274MAGICK_CODER_MODULE_PATH="${builddir}/coders"
275MAGICK_CONFIGURE_SRC_PATH="${srcdirfull}/config"
276MAGICK_CONFIGURE_BUILD_PATH="${builddir}/config"
277MAGICK_FILTER_MODULE_PATH="${builddir}/filters"
278DIRSEP=':'
279case "${build_os}" in
280 mingw* )
281 MAGICK_CODER_MODULE_PATH=`$WinPathScript "${MAGICK_CODER_MODULE_PATH}" 0`
282 MAGICK_CONFIGURE_SRC_PATH=`$WinPathScript "${MAGICK_CONFIGURE_SRC_PATH}" 0`
283 MAGICK_CONFIGURE_BUILD_PATH=`$WinPathScript "${MAGICK_CONFIGURE_BUILD_PATH}" 0`
284 MAGICK_FILTER_MODULE_PATH=`$WinPathScript "${MAGICK_FILTER_MODULE_PATH}" 0`
285 DIRSEP=';'
286 ;;
287esac
288case "${host_os}" in
289 mingw* )
290 DIRSEP=';'
291 ;;
292esac
293AC_SUBST(MAGICK_CODER_MODULE_PATH)
294AC_SUBST(MAGICK_CONFIGURE_SRC_PATH)
295AC_SUBST(MAGICK_CONFIGURE_BUILD_PATH)
296AC_SUBST(MAGICK_FILTER_MODULE_PATH)
297AC_SUBST(DIRSEP)
298
cristya0b81c32010-01-22 02:54:33 +0000299
300#
301# Enable OS features.
302#
303AC_USE_SYSTEM_EXTENSIONS
304
cristy3ed852e2009-09-05 21:47:34 +0000305# Check for programs
306AC_PROG_CC
cristy95646052009-11-28 23:05:30 +0000307AC_PROG_CXX
cristy3ed852e2009-09-05 21:47:34 +0000308AC_PROG_CC_STDC
309AC_PROG_CPP
310AC_PROG_LD
cristy3ed852e2009-09-05 21:47:34 +0000311AC_SUBST(LD)
cristy837d6dc2010-02-27 01:16:57 +0000312AC_PROG_CC_C99
cristy3ed852e2009-09-05 21:47:34 +0000313AM_PROG_CC_C_O
cristy92703d82010-04-26 00:18:18 +0000314AX_CFLAGS_WARN_ALL
cristy3ed852e2009-09-05 21:47:34 +0000315AC_PROG_INSTALL
316AC_PROG_MAKE_SET
cristy3ed852e2009-09-05 21:47:34 +0000317AC_PROG_LN_S
cristy8d0ff762013-03-10 20:33:28 +0000318AC_PROG_SED
cristybc556452012-08-17 19:44:03 +0000319AC_PROG_AWK
cristy3ed852e2009-09-05 21:47:34 +0000320AM_WITH_DMALLOC
cristy92703d82010-04-26 00:18:18 +0000321AX_C___ATTRIBUTE__
cristya0459972013-11-03 18:09:35 +0000322AX_GCC_ARCHFLAG([no])
cristy0d3a6382010-04-26 00:45:55 +0000323PKG_PROG_PKG_CONFIG
cristy3ed852e2009-09-05 21:47:34 +0000324
cristyd95b7a52013-10-23 13:12:53 +0000325# Test for 64-bit build.
326AC_CHECK_SIZEOF([size_t])
327
328AX_COMPILER_VENDOR
cristyd95b7a52013-10-23 13:12:53 +0000329# The AX_CFLAGS_WARN_ALL macro doesn't currently work for sunpro
330# compiler.
331if test "$ax_cv_c_compiler_vendor" != "sun"; then
332 AX_CFLAGS_WARN_ALL
333fi
334
335if test "x$GCC" = "xyes"; then
336 CFLAGS="$CFLAGS -fexceptions"
337 touch local.exp
338else
339 cat > local.exp <<EOF
340set CC_FOR_TARGET "$CC"
341EOF
342fi
343
cristy496c0902013-02-26 12:57:44 +0000344# Check for linker script support
cristy9b86f202012-11-28 21:55:35 +0000345gl_LD_VERSION_SCRIPT
346
cristy3ed852e2009-09-05 21:47:34 +0000347#
cristy3ed852e2009-09-05 21:47:34 +0000348# Enable run-time checking.
349#
350AC_ARG_ENABLE([bounds-checking],
cristya3824692012-03-30 17:22:07 +0000351 [AC_HELP_STRING([--enable-bounds-checking],
cristy3ed852e2009-09-05 21:47:34 +0000352 [enable run-time bounds-checking])],
353 [enable_bounds_checking=$enableval],
354 [enable_bounds_checking='no'])
355
356if test "$enable_bounds_checking" = yes; then
357 AC_DEFINE([_FORTIFY_SOURCE], [2],
358 [enable run-time bounds-checking])
359fi
360
361#
362# Tests for Windows
363#
364AC_EXEEXT
365AC_OBJEXT
366
367GDI32_LIBS=''
cristy3ed852e2009-09-05 21:47:34 +0000368native_win32_build='no'
369cygwin_build='no'
370case "${host_os}" in
371 cygwin* )
cristy3ed852e2009-09-05 21:47:34 +0000372 cygwin_build='yes'
373 GDI32_LIBS='-lgdi32'
374 ;;
375 mingw* )
cristy3ed852e2009-09-05 21:47:34 +0000376 native_win32_build='yes'
377 GDI32_LIBS='-lgdi32'
378 ;;
379esac
380if test "${GDI32_LIBS}x" != 'x'; then
381 AC_DEFINE(WINGDI32_DELEGATE,1,Define to use the Windows GDI32 library)
382fi
383AC_SUBST(GDI32_LIBS)
384AM_CONDITIONAL(WINGDI32_DELEGATE, test "${GDI32_LIBS}x" != 'x' )
385AM_CONDITIONAL(WIN32_NATIVE_BUILD, test "${native_win32_build}" = 'yes' )
386AM_CONDITIONAL(CYGWIN_BUILD, test "${cygwin_build}" = 'yes' )
387AM_CONDITIONAL(USING_CL, test "x${CC}" = 'xcl.exe' )
388
389WinPathScript="${srcdirfull}/winpath.sh"
390AC_SUBST(WinPathScript)
391
392#
393# Compiler flags tweaks
394#
395if test "${GCC}" != "yes"; then
396 case "${host}" in
397 *-*-hpux* )
398 # aCC: HP ANSI C++ B3910B A.03.34
399 CFLAGS="${CFLAGS} -Wp,-H30000"
400 if test -n "${CXXFLAGS}"; then
401 CXXFLAGS='-AA'
402 else
403 CXXFLAGS="${CXXFLAGS} -AA"
404 fi
405 ;;
406 *-dec-osf5.* )
407 # Compaq alphaev68-dec-osf5.1 compiler
408 if test -n "${CXXFLAGS}"; then
409 CXXFLAGS='-std strict_ansi -noimplicit_include'
410 else
411 CXXFLAGS="${CXXFLAGS} -std strict_ansi -noimplicit_include"
412 fi
413 esac
414fi
415
416# Check for lazy-loading.
417AC_CACHE_CHECK([for linker lazyload option],[im_cv_ld_lazyload],
418[
419im_cv_ld_lazyload='none'
420case "${host}" in
421 *-*-solaris2.8 | *-*-solaris2.9 | *-*-solaris2.1? )
422 if test "$lt_cv_prog_gnu_ld" != 'yes' ; then
423 im_cv_ld_lazyload='-Wl,-zlazyload'
424 fi
425 ;;
426esac
427])
428if test "${im_cv_ld_lazyload}" != 'none' ; then
429 if test -z "${LDFLAGS}" ; then
430 LDFLAGS="${im_cv_ld_lazyload}"
431 else
432 LDFLAGS="${im_cv_ld_lazyload} ${LDFLAGS}"
433 fi
434fi
435
436dnl Platform-specific stuff
437case "$host" in
cristyc37574e2013-02-16 01:04:55 +0000438 *darwin* | *-macos10*)
439 dnl Disable FORTIFY_SOURCE to fix a bug in LVVM / OpenMP support
cristyb3b90d32013-02-16 15:44:08 +0000440 CFLAGS="${CFLAGS} -D_FORTIFY_SOURCE=0"
cristyc37574e2013-02-16 01:04:55 +0000441 dnl OS X universal binary support, requires --disable-dependency-tracking
442 AC_ARG_ENABLE([osx-universal-binary],
cristy3ed852e2009-09-05 21:47:34 +0000443 AC_HELP_STRING([--enable-osx-universal-binary],
444 [build universal binary on OS X [[default=no]]]),
445 [build_osxuniversal="${enableval}"], [build_osxuniversal=no])
446
cristyc37574e2013-02-16 01:04:55 +0000447 if test "${build_osxuniversal}" != no ; then
448 if test "$enable_dependency_tracking" != no ; then
449 AC_MSG_ERROR([--enable-osx-universal-binary requires --disable-dependency-tracking.
cristy3ed852e2009-09-05 21:47:34 +0000450Please re-run configure with these options:
451 --disable-dependency-tracking --enable-osx-universal-binary
452 ])
cristyc37574e2013-02-16 01:04:55 +0000453 fi
454 CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
455 CXXFLAGS="$CXXFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
456 LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
cristy3ed852e2009-09-05 21:47:34 +0000457 fi
458 ;;
459esac
460
cristy0151ae12011-10-28 16:32:29 +0000461#
462# ARCH specific include directory
463#
cristy670aa3c2011-11-03 00:54:00 +0000464AC_ARG_WITH([includearch-dir],
465 [AC_HELP_STRING([--includearch-dir=DIR],
cristy0151ae12011-10-28 16:32:29 +0000466 [ARCH specific include directory])],
cristy670aa3c2011-11-03 00:54:00 +0000467 [includearch_dir=$withval],
468 [includearch_dir=$INCLUDE_DIR])
cristy0151ae12011-10-28 16:32:29 +0000469
cristyd286fd72013-02-24 19:25:33 +0000470eval "eval INCLUDEARCH_DIR=$includearch_dir"
cristy670aa3c2011-11-03 00:54:00 +0000471AC_SUBST(INCLUDEARCH_DIR)
cristy0151ae12011-10-28 16:32:29 +0000472
473#
474# ARCH specific configuration directory
475#
cristy670aa3c2011-11-03 00:54:00 +0000476AC_ARG_WITH([sharearch-dir],
477 [AC_HELP_STRING([--sharearch-dir=DIR],
cristy0151ae12011-10-28 16:32:29 +0000478 [ARCH specific config directory])],
cristy670aa3c2011-11-03 00:54:00 +0000479 [sharearch_dir=$withval],
cristy408ebcd2011-11-14 01:36:57 +0000480 [sharearch_dir="${LIB_DIR}"])
cristy0151ae12011-10-28 16:32:29 +0000481
cristy670aa3c2011-11-03 00:54:00 +0000482eval "eval SHAREARCH_DIR=$sharearch_dir"
cristy670aa3c2011-11-03 00:54:00 +0000483AC_SUBST(SHAREARCH_DIR)
cristy0151ae12011-10-28 16:32:29 +0000484
cristy496c0902013-02-26 12:57:44 +0000485# Path to the pkgconfig folder
cristy2ec87cc2013-02-18 17:46:50 +0000486AC_ARG_WITH([pkgconfigdir], AS_HELP_STRING([--with-pkgconfigdir=DIR],
487 [Path to the pkgconfig directory @<:@LIBDIR/pkgconfig@:>@]),
488 [pkgconfigdir="$withval"], [pkgconfigdir='${libdir}/pkgconfig'])
489AC_SUBST([pkgconfigdir])
490
cristy0151ae12011-10-28 16:32:29 +0000491#
cristy3ed852e2009-09-05 21:47:34 +0000492# Enable support for threads
cristy1ae5c992013-07-30 14:55:07 +0000493#
494# Find Posix threads library
495#
cristy3ed852e2009-09-05 21:47:34 +0000496AC_ARG_WITH([threads],
cristy55bf91c2010-09-24 00:29:41 +0000497 [AC_HELP_STRING([--without-threads], [disable threads support])],
cristy3ed852e2009-09-05 21:47:34 +0000498 [with_threads=$withval],
499 [with_threads='yes'])
500
cristy1ae5c992013-07-30 14:55:07 +0000501THREAD_LIBS=''
cristy3ed852e2009-09-05 21:47:34 +0000502have_threads=no
503if test "$with_threads" != 'no'; then
cristyf6fcb5d2010-09-24 01:19:13 +0000504 AX_PTHREAD()
cristy7acf8fb2010-09-23 19:58:53 +0000505 if test "$ax_pthread_ok" = yes; then
cristy3ed852e2009-09-05 21:47:34 +0000506 have_threads=yes
507 DEF_THREAD="$PTHREAD_CFLAGS"
508 CFLAGS="$CFLAGS $DEF_THREAD"
509 CXXFLAGS="$CXXFLAGS $DEF_THREAD"
cristy1ae5c992013-07-30 14:55:07 +0000510 THREAD_LIBS="$PTHREAD_LIBS"
cristy3ed852e2009-09-05 21:47:34 +0000511 if test "$CC" != "$PTHREAD_CC"; then
512 AC_MSG_WARN([Replacing compiler $CC with compiler $PTHREAD_CC to support pthreads.])
513 CC="$PTHREAD_CC"
514 fi
cristy55bf91c2010-09-24 00:29:41 +0000515 AC_DEFINE(THREAD_SUPPORT,1,[Define if you have POSIX threads libraries and header files.])
cristy3ed852e2009-09-05 21:47:34 +0000516 fi
517fi
cristy1ae5c992013-07-30 14:55:07 +0000518LIBS="$LIBS $THREAD_LIBS"
519AC_SUBST(THREAD_LIBS)
cristy3ed852e2009-09-05 21:47:34 +0000520
521# Enable support for OpenMP
522if test "$have_threads" != 'yes'; then
523 ac_cv_prog_c_openmp=unsupported
524fi
525AC_OPENMP([C])
526CFLAGS="$OPENMP_CFLAGS $CFLAGS"
527MAGICK_PCFLAGS="$MAGICK_PCFLAGS $OPENMP_CFLAGS"
528AC_SUBST(OPENMP_CFLAGS)
cristy391f1ce2010-09-09 17:23:28 +0000529if test "$enable_openmp" != no; then
530 if test "$ac_cv_prog_c_openmp" != 'unsupported'; then
531 MAGICK_FEATURES="OpenMP $MAGICK_FEATURES"
532 fi
533fi
cristy3ed852e2009-09-05 21:47:34 +0000534
cristy736173a2009-09-20 21:18:22 +0000535# Enable support for OpenCL
cristy7141bca2010-01-21 16:51:24 +0000536AX_OPENCL([C])
cristyc7083c12009-10-14 03:16:55 +0000537CFLAGS="$CL_CFLAGS $CFLAGS"
cristyfdc7d122013-08-17 20:46:45 +0000538CPPFLAGS="$CL_CFLAGS $CPPFLAGS"
cristyc7083c12009-10-14 03:16:55 +0000539LIBS="$CL_LIBS $LIBS"
cristy18d9cfe2009-12-31 03:55:21 +0000540AC_SUBST(CL_CFLAGS)
cristy391f1ce2010-09-09 17:23:28 +0000541if test "$enable_opencl" != no; then
cristyf864d422011-09-12 17:57:53 +0000542 if test "X$ax_cv_check_cl_libcl" != Xno; then :
cristy391f1ce2010-09-09 17:23:28 +0000543 MAGICK_FEATURES="OpenCL $MAGICK_FEATURES"
544 fi
cristyfd9dcd42010-08-08 18:07:02 +0000545fi
cristy736173a2009-09-20 21:18:22 +0000546
cristy3ed852e2009-09-05 21:47:34 +0000547########
548#
549# Check for large file support
550#
551########
552AC_SYS_LARGEFILE
553AC_FUNC_FSEEKO
554LFS_CPPFLAGS=''
555if test "$enable_largefile" != no; then
cristyc1e0cc12011-09-21 16:41:16 +0000556 case $ac_cv_sys_file_offset_bits in
557 no)
558 # nothing to do here as the host supports LFS fine
559 ;;
560 unknown)
cristy3ed852e2009-09-05 21:47:34 +0000561 AC_MSG_CHECKING([for native large file support])
cristyda16f162011-02-19 23:52:17 +0000562 AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <unistd.h>
cristy3ed852e2009-09-05 21:47:34 +0000563 main () {
564 exit(!(sizeof(off_t) == 8));
cristyda16f162011-02-19 23:52:17 +0000565 }])],
cristy3ed852e2009-09-05 21:47:34 +0000566 [ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64)
cristyad38abe2012-12-23 23:03:21 +0000567 AC_MSG_RESULT([yes])],
568 [AC_MSG_RESULT([no])])
cristyc1e0cc12011-09-21 16:41:16 +0000569 ;;
570 *)
571 LFS_CPPFLAGS="$LFS_CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
572 ;;
573 esac
cristy3ed852e2009-09-05 21:47:34 +0000574 if test "$ac_cv_sys_large_files" != 'no'; then
575 LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGE_FILES=1"
576 fi
577 if test "$ac_cv_sys_largefile_source" != 'no'; then
578 LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGEFILE_SOURCE=1"
579 fi
580fi
581AC_SUBST(LFS_CPPFLAGS)
582
cristy3ed852e2009-09-05 21:47:34 +0000583# Configure libtool
584AC_LIBTOOL_DLOPEN
585LT_INIT([win32-dll])
586LT_LANG([C++])
587AC_SUBST(LIBTOOL_DEPS)
588
cristy3ed852e2009-09-05 21:47:34 +0000589# Check to see if building shared libraries
590libtool_build_shared_libs='no'
591if test "$enable_shared" = 'yes'; then
592 libtool_build_shared_libs='yes'
593fi
594
595# Check to see if building static libraries
596libtool_build_static_libs='no'
597if test "$enable_static" = 'yes'; then
598 libtool_build_static_libs='yes'
599fi
600
cristyfa112112010-01-04 17:48:07 +0000601AM_CONDITIONAL(WITH_SHARED_LIBS, test "${libtool_build_shared_libs}" = 'yes')
cristy3ed852e2009-09-05 21:47:34 +0000602#
603# Enable support for building loadable modules
604#
cristyaf4cbf32012-10-16 23:47:41 +0000605build_modules='no'
cristy3ed852e2009-09-05 21:47:34 +0000606AC_ARG_WITH([modules],
607 [AC_HELP_STRING([--with-modules],
608 [enable building dynamically loadable modules])],
609 [with_modules=$withval],
cristy5a1cefd2010-01-06 20:42:35 +0000610 [with_modules='no'])
cristy3ed852e2009-09-05 21:47:34 +0000611
612# Only allow building loadable modules if we are building shared libraries
613if test "$with_modules" != 'no' ; then
614 if test "$libtool_build_shared_libs" = 'no'; then
615 AC_MSG_WARN([Modules may only be built if building shared libraries is enabled.])
cristyc6722092012-10-14 00:19:31 +0000616 build_modules='no'
617 else
618 build_modules='yes'
619 fi
cristy3ed852e2009-09-05 21:47:34 +0000620fi
cristyc6722092012-10-14 00:19:31 +0000621if test "$build_modules" != 'no' ; then
cristy3ed852e2009-09-05 21:47:34 +0000622 AC_DEFINE(BUILD_MODULES,1,Define if coders and filters are to be built as modules.)
cristye78d2532012-12-17 20:41:10 +0000623 MAGICK_FEATURES="$MAGICK_FEATURES Modules"
cristy3ed852e2009-09-05 21:47:34 +0000624fi
cristyc6722092012-10-14 00:19:31 +0000625AM_CONDITIONAL(WITH_MODULES, test "$build_modules" != 'no')
cristy3ed852e2009-09-05 21:47:34 +0000626
cristy3ed852e2009-09-05 21:47:34 +0000627# Enable build using delegate libraries built in subdirectories rather than installed
cristyfbb0ef02010-12-19 02:32:11 +0000628# delegate libraries (bzlib fftw fpx gslib jp2 jbig jpeg lcms lzma png tiff ttf wmf xml zlib)
cristy3ed852e2009-09-05 21:47:34 +0000629AC_ARG_ENABLE([delegate-build],
630 [AC_HELP_STRING([--enable-delegate-build],
631 [look for delegate libraries in build directory])],
632 [enable_delegate_build=$enableval],
633 [enable_delegate_build='no'])
634
635AC_ARG_ENABLE([deprecated],
636 [AC_HELP_STRING([--disable-deprecated],
cristy3a75f062012-09-08 23:29:40 +0000637 [exclude deprecated methods in MagickCore and MagickWand APIs])],
cristy3ed852e2009-09-05 21:47:34 +0000638 [enable_deprecated=$enableval],
639 [enable_deprecated='no'])
640
641if test "$enable_deprecated" = 'yes'; then
642 AC_DEFINE(EXCLUDE_DEPRECATED,1,[exclude deprecated methods in MagickCore API])
643else
644 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --disable-deprecated "
645fi
646
647# Build a version of ImageMagick which operates uninstalled.
648# Used to build distributions located via MAGICK_HOME / executable path
649AC_ARG_ENABLE([installed],
650 [AC_HELP_STRING([--disable-installed],
651 [Formally install ImageMagick under PREFIX])],
652 [enable_installed=$enableval],
653 [enable_installed='yes'])
654
655if test "$enable_installed" = 'yes'; then
656 AC_DEFINE(INSTALLED_SUPPORT,1,[ImageMagick is formally installed under prefix])
657else
658 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --disable-installed "
659fi
660
661# Permit enciphering and deciphering image pixels.
662AC_ARG_ENABLE([cipher],
663 [AC_HELP_STRING([--disable-cipher],
664 [disable enciphering and deciphering image pixels])],
665 [enable_cipher=$enableval],
666 [enable_cipher='yes'])
667
668if test "$enable_cipher" = 'yes'; then
669 AC_DEFINE(CIPHER_SUPPORT,1,[permit enciphering and deciphering image pixels])
670fi
671
cristy6e3607c2011-09-13 13:59:17 +0000672# Build a zero-configuration version of ImageMagick.
673AC_ARG_ENABLE([zero-configuration],
674 [AC_HELP_STRING([--enable-zero-configuration],
cristy3ed852e2009-09-05 21:47:34 +0000675 [enable self-contained, embeddable, zero-configuration ImageMagick])],
cristy6e3607c2011-09-13 13:59:17 +0000676 [enable_zero_configuration=$enableval],
677 [enable_zero_configuration='no'])
cristy3ed852e2009-09-05 21:47:34 +0000678
cristy6e3607c2011-09-13 13:59:17 +0000679if test "$enable_zero_configuration" = 'yes'; then
680 AC_DEFINE(ZERO_CONFIGURATION_SUPPORT,1,[Build self-contained, embeddable, zero-configuration ImageMagick])
cristy81af5702011-09-13 14:20:58 +0000681 MAGICK_FEATURES="Zero-Configuration $MAGICK_FEATURES"
cristy3ed852e2009-09-05 21:47:34 +0000682fi
683
684# Build a high dynamic range version of ImageMagick.
685AC_ARG_ENABLE([hdri],
cristyf314dbd2012-11-15 13:35:28 +0000686 [AC_HELP_STRING([--enable-hdri],
cristy3ed852e2009-09-05 21:47:34 +0000687 [accurately represent the wide range of intensity levels found in real scenes])],
688 [enable_hdri=$enableval],
cristy191c0b72012-08-12 16:29:52 +0000689 [enable_hdri='yes'])
cristy3ed852e2009-09-05 21:47:34 +0000690
691MAGICK_HDRI=""
692if test "$enable_hdri" = 'yes'; then
693 MAGICK_HDRI="HDRI"
cristye52f12f2012-12-31 15:32:36 +0000694 magick_hdri_enable='1';
cristyfd9dcd42010-08-08 18:07:02 +0000695 MAGICK_FEATURES="HDRI $MAGICK_FEATURES"
cristye52f12f2012-12-31 15:32:36 +0000696else
697 magick_hdri_enable='0'
cristy3ed852e2009-09-05 21:47:34 +0000698fi
cristye52f12f2012-12-31 15:32:36 +0000699AC_DEFINE_UNQUOTED(HDRI_ENABLE_OBSOLETE_IN_H,$magick_hdri_enable,[Whether hdri is enabled or not])
cristy3ed852e2009-09-05 21:47:34 +0000700AC_SUBST(MAGICK_HDRI)dnl
cristye52f12f2012-12-31 15:32:36 +0000701MAGICK_PCFLAGS="$MAGICK_PCFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
702CFLAGS="$CFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
cristy72062382012-12-31 16:49:52 +0000703CPPFLAGS="$CPPFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
cristy3ed852e2009-09-05 21:47:34 +0000704
cristy3ed852e2009-09-05 21:47:34 +0000705# Build a version of ImageMagick with assert statements.
706AC_ARG_ENABLE([assert],
707 [AC_HELP_STRING([--disable-assert],
708 [disable assert() statements in build])],
709 [enable_assert=$enableval],
710 [enable_assert='yes'])
711
712if test "$enable_assert" = 'no'; then
713 AC_DEFINE(NDEBUG,1,[Turn off assert statements])
714fi
715
cristya448bd22011-10-14 12:38:13 +0000716# Don't emit "rebuild rules" for configure, Makefile.ins, etc.
cristy3ed852e2009-09-05 21:47:34 +0000717AM_MAINTAINER_MODE
718
cristy944e51f2013-04-16 18:45:02 +0000719# Enable hugepages support
720AC_ARG_ENABLE([hugepages],
721 [AC_HELP_STRING([--enable-hugepages],
722 [enable 'huge pages' support])],
723 [enable_hugepages=$enableval],
724 [enable_hugepages='no'])
725
cristy3ed852e2009-09-05 21:47:34 +0000726# Enable ccmalloc memory debugging support
727AC_ARG_ENABLE([ccmalloc],
728 [AC_HELP_STRING([--enable-ccmalloc],
729 [enable 'ccmalloc' memory debug support])],
730 [enable_ccmalloc=$enableval],
731 [enable_ccmalloc='no'])
732
733# Enable Electric Fence memory debugging support
734AC_ARG_ENABLE([efence],
735 [AC_HELP_STRING([--enable-efence],
736 [enable 'efence' memory debug support])],
737 [enable_efence=$enableval],
738 [enable_efence='no'])
739
740# Enable prof-based profiling support
741AC_ARG_ENABLE([prof],
742 [AC_HELP_STRING([--enable-prof],
743 [enable 'prof' profiling support])],
744 [enable_prof=$enableval],
745 [enable_prof='no'])
746
747# Enable gprof-based profiling support
748AC_ARG_ENABLE([gprof],
749 [AC_HELP_STRING([--enable-gprof],
750 [enable 'gprof' profiling support])],
751 [enable_gprof=$enableval],
752 [enable_gprof='no'])
753
754# Enable gcov-based profiling support
755AC_ARG_ENABLE([gcov],
756 [AC_HELP_STRING([--enable-gcov],
757 [enable 'gcov' profiling support])],
758 [enable_gcov=$enableval],
759 [enable_gcov='no'])
760
761enable_profiling='no'
762if test "$enable_prof" = 'yes' || test "$enable_gprof" = 'yes' || test "$enable_gcov" = 'yes'; then
763 enable_profiling='yes'
764 if test "$libtool_build_shared_libs" = 'yes'; then
765 echo "Warning: Can not profile code using shared libraries"
766 fi
767fi
768
769# Magick API method prefix
770AC_ARG_WITH([method-prefix],
771 [AC_HELP_STRING([--with-method-prefix=PREFIX],
772 [prefix MagickCore API methods])],
cristyfc3d0222012-02-07 15:05:57 +0000773 [with_method_prefix=$withval],
774 [with_method_prefix='no'])
cristy3ed852e2009-09-05 21:47:34 +0000775
cristyfc3d0222012-02-07 15:05:57 +0000776if test "$with_method_prefix" != 'no'; then
cristy3ed852e2009-09-05 21:47:34 +0000777 AC_DEFINE_UNQUOTED(NAMESPACE_PREFIX,$with_method_prefix,[Magick API method prefix])
cristyfc3d0222012-02-07 15:05:57 +0000778 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-method-prefix "
cristy3ed852e2009-09-05 21:47:34 +0000779fi
780
cristy71d8c202012-03-20 17:05:01 +0000781# Enable legacy support (default no)
782AC_ARG_ENABLE(legacy-support,
783 [ --enable-legacy-support install legacy command-line utilities (default disabled)],
784 [with_legacy_support=$enableval],
785 [with_legacy_support='no'])
786AM_CONDITIONAL(LEGACY_SUPPORT, test "$with_legacy_support" != 'no')
787
cristy3ed852e2009-09-05 21:47:34 +0000788# Number of bits in a Quantum
789AC_ARG_WITH([quantum-depth],
790 [AC_HELP_STRING([--with-quantum-depth=DEPTH],
791 [number of bits in a pixel quantum (default 16)])],
792 [with_quantum_depth=$withval],
793 [with_quantum_depth=16])
794
795if test "$with_quantum_depth" != '8'; then
796 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-quantum-depth=$with_quantum_depth "
797fi
798
799case "${with_quantum_depth}" in
800 8 ) ;;
801 16 ) ;;
802 32 ) ;;
803 64 ) ;;
cristycdae12a2010-09-19 02:24:31 +0000804 * ) AC_MSG_ERROR("Pixel quantum depth must have value of 8, 16, 32, or 64") ;;
cristy3ed852e2009-09-05 21:47:34 +0000805esac
806QUANTUM_DEPTH="$with_quantum_depth"
cristye52f12f2012-12-31 15:32:36 +0000807AC_DEFINE_UNQUOTED(QUANTUM_DEPTH_OBSOLETE_IN_H,$QUANTUM_DEPTH,[Number of bits in a pixel Quantum (8/16/32/64)])
cristy3ed852e2009-09-05 21:47:34 +0000808AC_SUBST(QUANTUM_DEPTH)dnl
cristy0a9565b2013-01-30 19:57:08 +0000809MAGICK_PCFLAGS="$MAGICK_PCFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
cristye52f12f2012-12-31 15:32:36 +0000810CFLAGS="$CFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
cristy72062382012-12-31 16:49:52 +0000811CPPFLAGS="$CPPFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
cristy3ed852e2009-09-05 21:47:34 +0000812
cristy01ff9f32012-12-01 18:15:29 +0000813# define a lib suffix for abi purpose
cristy7a26abd2012-12-03 00:18:59 +0000814MAGICK_ABI_SUFFIX="Q${QUANTUM_DEPTH}"
cristye386d192012-12-01 21:05:20 +0000815if test "$enable_hdri" = 'yes'; then
cristy7a26abd2012-12-03 00:18:59 +0000816 MAGICK_ABI_SUFFIX="Q${QUANTUM_DEPTH}${MAGICK_HDRI}"
cristye386d192012-12-01 21:05:20 +0000817fi
cristy7a26abd2012-12-03 00:18:59 +0000818AC_SUBST(MAGICK_ABI_SUFFIX)
cristy01ff9f32012-12-01 18:15:29 +0000819
cristy3ed852e2009-09-05 21:47:34 +0000820# Set pixel cache threshold
821AC_ARG_WITH([cache],
822 [AC_HELP_STRING([--with-cache=THRESHOLD],
823 [set pixel cache threshhold in MB (default available memory)])],
824 [with_cache=$withval],
825 [with_cache=''])
826
827if test "$with_cache" != ''; then
828 AC_DEFINE_UNQUOTED(PixelCacheThreshold,$with_cache,[Pixel cache threshold in MB (defaults to available memory)])
829 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-cache=$with_cache "
830fi
831
832# Disable/Enable support for full delegate paths
833AC_ARG_WITH([frozenpaths],
834 [AC_HELP_STRING([--with-frozenpaths],
835 [freeze delegate paths])],
836 [with_frozenpaths=$withval],
837 [with_frozenpaths='no'])
838
839# Enable build/install of Magick++
840AC_ARG_WITH([magick-plus-plus],
841 [AC_HELP_STRING([--without-magick-plus-plus],
842 [disable build/install of Magick++])],
843 [with_magick_plus_plus=$withval],
844 [with_magick_plus_plus='yes'])
845
cristy3a75f062012-09-08 23:29:40 +0000846# Encode the this name into the shared library.
847AC_ARG_WITH([package-release-name],
848 [AC_HELP_STRING([--with-package-release-name=NAME],
849 [encode this name into the shared library])],
850[MAGICK_LT_RELEASE_OPTS="-release $withval"])
851AC_SUBST(MAGICK_LT_RELEASE_OPTS)
852
cristy3ed852e2009-09-05 21:47:34 +0000853# Disable build/install of PerlMagick.
854AC_ARG_WITH([perl],
855 [AC_HELP_STRING([--with-perl],
856 [enable build/install of PerlMagick])],
857 [with_perl=$withval],
cristyb5f4e2f2010-04-25 00:49:11 +0000858 [with_perl='no'])
cristy3ed852e2009-09-05 21:47:34 +0000859
860# Options to pass when configuring PerlMagick
861AC_ARG_WITH([perl-options],
862 [AC_HELP_STRING([--with-perl-options=OPTIONS],
cristyfc3d0222012-02-07 15:05:57 +0000863 [options to pass on command-line when generating PerlMagick build file])],
cristy949301e2010-01-06 01:38:40 +0000864PERL_MAKE_OPTIONS=$withval)
cristy3ed852e2009-09-05 21:47:34 +0000865AC_SUBST(PERL_MAKE_OPTIONS)
866
cristy3ed852e2009-09-05 21:47:34 +0000867# Enable umem, object-caching memory allocation library.
868AC_ARG_WITH(umem,
869 [ --with-umem enable umem memory allocation library support],
870 [with_umem=$withval],
871 [with_umem='no'])
872if test "$with_umem" != 'yes' ; then
873 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-umem=$with_umem "
874fi
875
876#
877# Specify path to shared libstdc++ if not in normal location
878#
879AC_ARG_WITH([libstdc],
880 [AC_HELP_STRING([--with-libstdc=DIR],
881 [ use libstdc++ in DIR (for GNU C++)])],
882 [with_libstdc=$withval],
883 [with_libstdc=''])
884
885if test "$with_libstdc" != ''; then
886 if test -d "$with_libstdc"; then
887 LIBSTDCLDFLAGS="-L$with_libstdc"
888 fi
889fi
890AC_SUBST(LIBSTDCLDFLAGS)
891
892# Does gcc required -traditional?
893AC_PROG_GCC_TRADITIONAL
894
895########
896#
897# Set defines required to build DLLs and modules using MinGW
898#
899########
900# These options are set for multi-thread DLL module build
901# libMagickCore: _DLL _MAGICKMOD_ _MAGICKLIB_
902# module: _DLL
903# executable/Magick++: _DLL _MAGICKMOD_
904MODULE_EXTRA_CPPFLAGS=''
905LIBRARY_EXTRA_CPPFLAGS=''
906if test "${native_win32_build}" = 'yes'; then
907 if test "${libtool_build_shared_libs}" = 'yes'; then
908 CPPFLAGS="$CPPFLAGS -D_DLL"
909 MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_DLL"
910 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_DLL"
911 LIBRARY_EXTRA_CPPFLAGS="$LIBRARY_EXTRA_CPPFLAGS -D_MAGICKLIB_"
cristyc6722092012-10-14 00:19:31 +0000912 if test "$build_modules" = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +0000913 LIBRARY_EXTRA_CPPFLAGS="$LIBRARY_EXTRA_CPPFLAGS -D_MAGICKMOD_"
914 else
915 MODULE_EXTRA_CPPFLAGS="$MODULE_EXTRA_CPPFLAGS -D_MAGICKLIB_"
916 fi
917 else
918 CPPFLAGS="$CPPFLAGS -D_LIB"
919 MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_LIB"
920 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_LIB"
921 fi
922 if test "$with_threads" = 'yes'; then
923 CPPFLAGS="$CPPFLAGS -D_MT"
924 MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_MT"
925 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_MT"
926 fi
927fi
928AC_SUBST(MODULE_EXTRA_CPPFLAGS)
929AC_SUBST(LIBRARY_EXTRA_CPPFLAGS)
930
931# Check standard headers
932AC_HEADER_STDC
933if ! test x"$ac_cv_header_stdc" = x"yes"; then
934 AC_MSG_WARN([configure has detected that you do not have the ANSI standard C
935 header files. Compilation cannot proceed. Please install the ANSI C
936 headers and rerun this script.]);
937fi
cristya0b81c32010-01-22 02:54:33 +0000938AC_HEADER_ASSERT
cristy3ed852e2009-09-05 21:47:34 +0000939AC_HEADER_DIRENT
940
941# Check additional headers
cristyb7516c02013-01-14 13:58:17 +0000942AC_CHECK_HEADERS(arm/limits.h arpa/inet.h complex.h errno.h fcntl.h limits.h linux/unistd.h locale.h machine/param.h mach-o/dyld.h netinet/in.h OS.h process.h sun_prefetch.h stdarg.h sys/ipc.h sys/mman.h sys/resource.h sys/socket.h sys/syslimits.h sys/time.h sys/timeb.h sys/times.h sys/wait.h wchar.h xlocale.h)
cristy3ed852e2009-09-05 21:47:34 +0000943
944########
945#
946# Checks for typedefs, structures, and compiler characteristics.
947#
948########
949
950AC_HEADER_STDBOOL
951AC_C_VOLATILE
952AC_C_STRINGIZE
953AC_HEADER_STAT
954AC_HEADER_TIME
955AC_STRUCT_TM
cristy92703d82010-04-26 00:18:18 +0000956AC_STRUCT_TIMEZONE
cristy3ed852e2009-09-05 21:47:34 +0000957AC_SYS_INTERPRETER
958
cristya9ee2842013-01-08 15:56:39 +0000959#
960# Checks for language qualifiers and semantics.
961#
962AC_C_CHAR_UNSIGNED
963AC_C_CONST
cristy3ed852e2009-09-05 21:47:34 +0000964AC_C_INLINE
cristy3ed852e2009-09-05 21:47:34 +0000965AC_C_RESTRICT
cristya9ee2842013-01-08 15:56:39 +0000966AC_C_VOLATILE
cristy3ed852e2009-09-05 21:47:34 +0000967
968# If words are stored with the most significant byte first (like
969# Motorola and SPARC CPUs), define `WORDS_BIGENDIAN'.
970AC_C_BIGENDIAN
971
cristy501c8042011-05-26 17:46:28 +0000972# Define to a suitable type, if standard headers do not define it.
973AC_TYPE_INT8_T
974AC_TYPE_INT16_T
975AC_TYPE_INT32_T
976AC_TYPE_INT64_T
977AC_TYPE_INTMAX_T
978AC_TYPE_INTPTR_T
979AC_TYPE_LONG_DOUBLE
cristy3ed852e2009-09-05 21:47:34 +0000980AC_TYPE_LONG_DOUBLE_WIDER
cristy501c8042011-05-26 17:46:28 +0000981AC_TYPE_LONG_LONG_INT
982AC_TYPE_MBSTATE_T
983AC_TYPE_MODE_T
984AC_TYPE_OFF_T
985AC_TYPE_PID_T
986AC_TYPE_SIZE_T
987AC_TYPE_SSIZE_T
988AC_TYPE_UID_T
989AC_TYPE_UINT8_T
990AC_TYPE_UINT16_T
991AC_TYPE_UINT32_T
992AC_TYPE_UINT64_T
993AC_TYPE_UINTMAX_T
994AC_TYPE_UINTPTR_T
995AC_TYPE_UNSIGNED_LONG_LONG_INT
cristy3ed852e2009-09-05 21:47:34 +0000996
cristyfec31822013-05-23 12:32:12 +0000997# Float_t and double_t are intended to be the the most efficient type.
998AC_CHECK_TYPES([float_t], [], [], [[#include <math.h>]])
999AC_CHECK_TYPES([double_t], [], [], [[#include <math.h>]])
1000AC_CHECK_SIZEOF([float_t], [], [[#include <math.h>]])
1001AC_CHECK_SIZEOF([double_t], [], [[#include <math.h>]])
1002
cristy9b86f202012-11-28 21:55:35 +00001003# Get size of float, double and long double for comparaison.
1004AC_CHECK_SIZEOF([float])
1005AC_CHECK_SIZEOF([double])
cristy9e2b6242014-03-25 11:49:41 +00001006AC_CHECK_SIZEOF([long double])
cristyf0cf9a22012-10-24 12:05:01 +00001007
cristy3ed852e2009-09-05 21:47:34 +00001008# Obtain size of an 'signed short' and define as SIZEOF_SIGNED_SHORT
1009AC_CHECK_SIZEOF(signed short)
1010
1011# Obtain size of an 'unsigned short' and define as SIZEOF_UNSIGNED_SHORT
1012AC_CHECK_SIZEOF(unsigned short)
1013
1014# Obtain size of an 'signed int' and define as SIZEOF_SIGNED_INT
1015AC_CHECK_SIZEOF(signed int)
1016
1017# Obtain size of an 'unsigned int' and define as SIZEOF_UNSIGNED_INT
1018AC_CHECK_SIZEOF(unsigned int)
1019
1020# Obtain size of a 'signed long' and define as SIZEOF_SIGNED_LONG
1021AC_CHECK_SIZEOF(signed long)
1022
1023# Obtain size of a 'unsigned long' and define as SIZEOF_UNSIGNED_LONG
1024AC_CHECK_SIZEOF(unsigned long)
1025
1026# Obtain size of a 'long long' and define as SIZEOF_SIGNED_LONG_LONG. If
1027# 'signed long long' is not supported then the value defined is zero.
1028AC_CHECK_SIZEOF(signed long long)
1029
1030# Obtain size of a 'unsigned long long' and define as
1031# SIZEOF_UNSIGNED_LONG_LONG. If 'unsigned long long' is not
1032# supported then the value defined is zero.
1033AC_CHECK_SIZEOF(unsigned long long)
1034
cristyfec31822013-05-23 12:32:12 +00001035# Obtain size of off_t and define as SIZEOF_OFF_T
1036AC_CHECK_SIZEOF(off_t)
1037
1038# Obtain size of size_t and define as SIZEOF_SIZE_T
1039AC_CHECK_SIZEOF(size_t)
1040
1041# Obtain size of ssize_t and define as SIZEOF_SSIZE_T
1042AC_CHECK_SIZEOF(ssize_t)
1043
cristy3ed852e2009-09-05 21:47:34 +00001044# Obtain size of an unsigned int pointer and define as SIZEOF_UNSIGNED_INTP
1045AC_CHECK_SIZEOF(unsigned int*)
1046
1047#
1048# Compute sized types for current CPU and compiler options.
1049#
1050
1051AC_MSG_CHECKING(for signed 8-bit type)
1052INT8_T='signed char'
cristyad38abe2012-12-23 23:03:21 +00001053AC_MSG_RESULT($INT8_T)
cristy3ed852e2009-09-05 21:47:34 +00001054AC_SUBST(INT8_T)
1055
1056AC_MSG_CHECKING(for unsigned 8-bit type)
1057UINT8_T='unsigned char'
cristyad38abe2012-12-23 23:03:21 +00001058AC_MSG_RESULT($UINT8_T)
cristy3ed852e2009-09-05 21:47:34 +00001059AC_SUBST(UINT8_T)
1060
1061AC_MSG_CHECKING(for signed 16-bit type)
1062INT16_T='signed short'
cristyad38abe2012-12-23 23:03:21 +00001063AC_MSG_RESULT($INT16_T)
cristy3ed852e2009-09-05 21:47:34 +00001064AC_SUBST(INT16_T)
1065
1066AC_MSG_CHECKING(for unsigned 16-bit type)
1067UINT16_T='unsigned short'
cristyad38abe2012-12-23 23:03:21 +00001068AC_MSG_RESULT($UINT16_T)
cristy3ed852e2009-09-05 21:47:34 +00001069AC_SUBST(UINT16_T)
1070
1071AC_MSG_CHECKING(for signed 32-bit type)
1072INT32_T='none'
cristy6d5e20f2011-04-25 13:48:54 +00001073INT32_F='none'
cristy3ed852e2009-09-05 21:47:34 +00001074if test $ac_cv_sizeof_signed_int -eq 4; then
1075 INT32_T='signed int'
cristy6d5e20f2011-04-25 13:48:54 +00001076 INT32_F='""'
cristy3ed852e2009-09-05 21:47:34 +00001077elif test $ac_cv_sizeof_signed_long -eq 4; then
1078 INT32_T='signed long'
cristy6d5e20f2011-04-25 13:48:54 +00001079 INT32_F='"l"'
cristy3ed852e2009-09-05 21:47:34 +00001080fi
cristyad38abe2012-12-23 23:03:21 +00001081AC_MSG_RESULT($INT32_T)
cristy3ed852e2009-09-05 21:47:34 +00001082AC_SUBST(INT32_T)
cristy6d5e20f2011-04-25 13:48:54 +00001083AC_SUBST(INT32_F)
cristy3ed852e2009-09-05 21:47:34 +00001084
1085AC_MSG_CHECKING(for unsigned 32-bit type)
1086UINT32_T='none'
cristy6d5e20f2011-04-25 13:48:54 +00001087UINT32_F='none'
cristy3ed852e2009-09-05 21:47:34 +00001088if test $ac_cv_sizeof_unsigned_int -eq 4; then
1089 UINT32_T='unsigned int'
cristy6d5e20f2011-04-25 13:48:54 +00001090 UINT32_F='""'
cristy3ed852e2009-09-05 21:47:34 +00001091elif test $ac_cv_sizeof_unsigned_long -eq 4; then
1092 UINT32_T='unsigned long'
cristy6d5e20f2011-04-25 13:48:54 +00001093 UINT32_F='"l"'
cristy3ed852e2009-09-05 21:47:34 +00001094fi
cristyad38abe2012-12-23 23:03:21 +00001095AC_MSG_RESULT($UINT32_T)
cristy3ed852e2009-09-05 21:47:34 +00001096AC_SUBST(UINT32_T)
cristy6d5e20f2011-04-25 13:48:54 +00001097AC_SUBST(UINT32_F)
cristy3ed852e2009-09-05 21:47:34 +00001098
1099AC_MSG_CHECKING(for signed 64-bit type)
1100INT64_T='none'
cristy6d5e20f2011-04-25 13:48:54 +00001101INT64_F='none'
cristy3ed852e2009-09-05 21:47:34 +00001102if test $ac_cv_sizeof_signed_long -eq 8; then
1103 INT64_T='signed long'
cristy6d5e20f2011-04-25 13:48:54 +00001104 INT64_F='"l"'
cristy3ed852e2009-09-05 21:47:34 +00001105elif test $ac_cv_sizeof_signed_long_long -eq 8; then
1106 INT64_T='signed long long'
cristy6d5e20f2011-04-25 13:48:54 +00001107 INT64_F='"ll"'
cristy3ed852e2009-09-05 21:47:34 +00001108fi
cristy3a99dcf2011-12-17 01:29:40 +00001109case "${host_os}" in
cristy6d5e20f2011-04-25 13:48:54 +00001110 mingw* )
1111 INT64_F='"I64"'
1112 ;;
1113esac
cristyad38abe2012-12-23 23:03:21 +00001114AC_MSG_RESULT($INT64_T)
cristy3ed852e2009-09-05 21:47:34 +00001115AC_SUBST(INT64_T)
cristy6d5e20f2011-04-25 13:48:54 +00001116AC_SUBST(INT64_F)
cristy3ed852e2009-09-05 21:47:34 +00001117
1118AC_MSG_CHECKING(for unsigned 64-bit type)
1119UINT64_T='none'
cristy6d5e20f2011-04-25 13:48:54 +00001120UINT64_F='none'
cristy3ed852e2009-09-05 21:47:34 +00001121if test $ac_cv_sizeof_unsigned_long -eq 8; then
1122 UINT64_T='unsigned long'
cristy6d5e20f2011-04-25 13:48:54 +00001123 UINT64_F='"l"'
cristy3ed852e2009-09-05 21:47:34 +00001124elif test $ac_cv_sizeof_unsigned_long_long -eq 8; then
1125 UINT64_T='unsigned long long'
cristy6d5e20f2011-04-25 13:48:54 +00001126 UINT64_F='"ll"'
cristy3ed852e2009-09-05 21:47:34 +00001127fi
cristy3a99dcf2011-12-17 01:29:40 +00001128case "${host_os}" in
cristy6d5e20f2011-04-25 13:48:54 +00001129 mingw* )
1130 UINT64_F='"I64"'
1131 ;;
1132esac
cristyad38abe2012-12-23 23:03:21 +00001133AC_MSG_RESULT($UINT64_T)
cristy3ed852e2009-09-05 21:47:34 +00001134AC_SUBST(UINT64_T)
cristy6d5e20f2011-04-25 13:48:54 +00001135AC_SUBST(UINT64_F)
cristy3ed852e2009-09-05 21:47:34 +00001136
1137AC_MSG_CHECKING(for unsigned maximum type)
1138UINTMAX_T='none'
cristy6d5e20f2011-04-25 13:48:54 +00001139UINTMAX_F='none'
cristy3ed852e2009-09-05 21:47:34 +00001140if test "$UINT64_T" != 'none'; then
1141 UINTMAX_T=$UINT64_T
cristy6d5e20f2011-04-25 13:48:54 +00001142 UINTMAX_F=$UINT64_F
cristy3ed852e2009-09-05 21:47:34 +00001143elif test "$UINT32_T" != 'none'; then
1144 UINTMAX_T=$UINT32_T
cristy6d5e20f2011-04-25 13:48:54 +00001145 UINTMAX_F=$UINT32_F
cristy3ed852e2009-09-05 21:47:34 +00001146fi
cristyad38abe2012-12-23 23:03:21 +00001147AC_MSG_RESULT($UINTMAX_T)
cristy3ed852e2009-09-05 21:47:34 +00001148AC_SUBST(UINTMAX_T)
cristy6d5e20f2011-04-25 13:48:54 +00001149AC_SUBST(UINTMAX_F)
cristy3ed852e2009-09-05 21:47:34 +00001150
1151AC_MSG_CHECKING(for pointer difference type)
1152UINTPTR_T='none'
cristy6d5e20f2011-04-25 13:48:54 +00001153UINTPTR_F='none'
cristy3ed852e2009-09-05 21:47:34 +00001154if test $ac_cv_sizeof_unsigned_long -eq $ac_cv_sizeof_unsigned_intp; then
1155 UINTPTR_T='unsigned long'
cristy6d5e20f2011-04-25 13:48:54 +00001156 UINTPTR_F='"l"'
cristy3ed852e2009-09-05 21:47:34 +00001157elif test $ac_cv_sizeof_unsigned_long_long -eq $ac_cv_sizeof_unsigned_intp; then
1158 UINTPTR_T='unsigned long long'
cristy6d5e20f2011-04-25 13:48:54 +00001159 UINTPTR_F='"ll"'
cristy3ed852e2009-09-05 21:47:34 +00001160fi
cristyad38abe2012-12-23 23:03:21 +00001161AC_MSG_RESULT($UINTPTR_T)
cristy3ed852e2009-09-05 21:47:34 +00001162AC_SUBST(UINTPTR_T)
cristy6d5e20f2011-04-25 13:48:54 +00001163AC_SUBST(UINTPTR_F)
cristy3ed852e2009-09-05 21:47:34 +00001164
1165AC_MSG_CHECKING([whether our compiler supports __func__])
1166AC_TRY_COMPILE([],
1167 [{ const char *func = __func__; return(func != 0 ? 0 : 1); }],
cristyad38abe2012-12-23 23:03:21 +00001168 AC_MSG_RESULT([yes]),
1169 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001170 AC_MSG_CHECKING([whether our compiler supports __FUNCTION__])
1171 AC_TRY_COMPILE([],
1172 [{ const char *func = __FUNCTION__; return(func != 0 ? 0 : 1); }],
cristyad38abe2012-12-23 23:03:21 +00001173 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001174 AC_DEFINE(__func__, __FUNCTION__,
1175 [Define to appropriate substitue if compiler does not have __func__]),
cristyad38abe2012-12-23 23:03:21 +00001176 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001177 AC_DEFINE(__func__, __FILE__,
1178 [Define to appropriate substitue if compiler does not have __func__])))
1179
1180########
1181#
1182# Check for functions
1183#
1184########
cristy3ed852e2009-09-05 21:47:34 +00001185AC_FUNC_CLOSEDIR_VOID
1186AC_FUNC_MMAP
1187AC_FUNC_FORK
1188AC_FUNC_MEMCMP
1189AC_FUNC_SELECT_ARGTYPES
1190AC_FUNC_SETVBUF_REVERSED
1191AC_TYPE_SIGNAL
1192AC_FUNC_STRTOD
cristy7d4a1d62011-10-13 15:54:12 +00001193AC_FUNC_STRERROR_R
cristy3ed852e2009-09-05 21:47:34 +00001194AC_FUNC_VPRINTF
1195
cristy161b9262010-03-20 19:34:32 +00001196#
1197# Find math library
1198#
1199MATH_LIBS=''
1200AC_CHECK_LIB(m,sqrt,MATH_LIBS="-lm",,)
1201LIBS="$MATH_LIBS $LIBS"
1202AC_SUBST(MATH_LIBS)
1203
cristy85572162013-01-04 19:19:32 +00001204#
1205# Find socket library
1206#
cristy85572162013-01-04 19:19:32 +00001207AC_SEARCH_LIBS(gethostbyname, resolv nsl)
cristy8a5d7f42013-01-06 15:24:33 +00001208AC_SEARCH_LIBS(socket, socket,
1209[
1210 AC_DEFINE([HAVE_SOCKET],[1],[Define to 1 if you have socket support.])
cristyfac03342013-01-12 02:03:32 +00001211 MAGICK_FEATURES="DPC $MAGICK_FEATURES"
cristy8a5d7f42013-01-06 15:24:33 +00001212])
cristy85572162013-01-04 19:19:32 +00001213
1214AC_CHECK_FUNCS([acosh _aligned_malloc asinh atanh atoll atexit cabs carg cimag creal clock ctime_r directio _exit execvp fchmod floor fork ftime ftruncate getc_unlocked getcwd getpid getexecname getdtablesize getpagesize getrlimit getrusage gettimeofday gmtime_r isnan j0 j1 lltostr localtime_r lstat memmove memset mkstemp munmap nanosleep newlocale _NSGetExecutablePath pclose _pclose poll popen _popen posix_fadvise posix_fallocate posix_madvise posix_memalign posix_spawnp pow pread pwrite qsort_r raise rand_r readlink readdir_r realpath select seekdir setlocale socket sqrt setvbuf stat strchr strrchr strcspn strdup strpbrk strspn strstr strtod strtod_l strtol strtoul symlink sysconf sigemptyset sigaction spawnvp strerror strlcat strlcpy strcasecmp strncasecmp telldir tempnam times ulltostr uselocale usleep utime vfprintf vfprintf_l vsprintf vsnprintf vsnprintf_l waitpid _wfopen _wstat])
cristye43a45e2009-09-28 14:49:00 +00001215
1216#
1217# Check for clock_gettime().
1218#
1219AC_SEARCH_LIBS(clock_gettime, rt,
1220[
1221 AC_DEFINE([HAVE_CLOCK_GETTIME],[1],[Define to 1 if you have clock_gettime.])
1222 AC_MSG_CHECKING([whether clock_gettime supports CLOCK_REALTIME])
cristyda16f162011-02-19 23:52:17 +00001223 AC_COMPILE_IFELSE([
cristye43a45e2009-09-28 14:49:00 +00001224 AC_LANG_PROGRAM(
1225 [[#include <time.h>]],
cristyda16f162011-02-19 23:52:17 +00001226 [[clockid_t clockType = CLOCK_REALTIME;]])],
cristye43a45e2009-09-28 14:49:00 +00001227 [
cristyad38abe2012-12-23 23:03:21 +00001228 AC_MSG_RESULT(yes)
glennrp3fc1c212013-01-10 01:52:32 +00001229 AC_DEFINE([HAVE_CLOCK_REALTIME],[1],
cristye43a45e2009-09-28 14:49:00 +00001230 [Define to 1 if clock_gettime supports CLOCK_REALTIME.])
1231 ],
cristyad38abe2012-12-23 23:03:21 +00001232 AC_MSG_RESULT(no)
cristye43a45e2009-09-28 14:49:00 +00001233 )
1234 ],
1235 [
1236 AC_CHECK_FUNCS([gettimeofday ftime], [break])
1237 ]
1238)
cristy3ed852e2009-09-05 21:47:34 +00001239
1240########
1241#
1242# Check for function prototypes
1243#
1244########
1245
1246AC_CHECK_DECLS([pread, pwrite],[],[],[
1247#include <unistd.h>])
1248
1249AC_CHECK_DECLS([strlcpy],[],[],[
1250#include <strings.h>])
1251
1252AC_CHECK_DECLS([vsnprintf],[],[],[
1253#include <stdio.h>
1254#include <stdarg.h>])
1255
1256########
1257#
1258# C++ Support Tests (For Magick++)
1259#
1260########
1261have_magick_plus_plus='no'
1262if test "$with_magick_plus_plus" = 'yes'; then
1263 OLIBS="$LIBS"
1264 LIBS=''
1265 AC_LANG_PUSH(C++)
1266
1267 # Full set of headers used...
1268 # algorithm cctype cerrno cmath cstdio cstdlib cstring ctime exception
1269 # functional iomanip iosfwd iostream iterator list string strstream utility
1270 AC_LANG([C++])
1271 AC_PROG_CXX
cristy964cb7f2010-04-25 23:18:00 +00001272 AX_CXX_BOOL
1273 AX_CXX_NAMESPACES
1274 AX_CXX_NAMESPACE_STD
cristy3ed852e2009-09-05 21:47:34 +00001275 AC_CXX_HAVE_STD_LIBS
cristy3ed852e2009-09-05 21:47:34 +00001276 AC_OPENMP([C++])
1277 AC_LANG_POP
1278
1279 AC_MSG_CHECKING([whether C++ compiler is sufficient for Magick++])
1280 if \
cristy964cb7f2010-04-25 23:18:00 +00001281 test $ax_cv_cxx_bool = 'yes' && \
cristy964cb7f2010-04-25 23:18:00 +00001282 test $ax_cv_cxx_namespaces = 'yes' && \
cristy3ed852e2009-09-05 21:47:34 +00001283 test $ac_cv_cxx_have_std_libs = 'yes' && \
cristy964cb7f2010-04-25 23:18:00 +00001284 test $ax_cv_cxx_have_std_namespace = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +00001285 have_magick_plus_plus='yes'
1286 else
1287 have_magick_plus_plus='no (failed tests)'
1288 fi
cristyad38abe2012-12-23 23:03:21 +00001289 AC_MSG_RESULT([$have_magick_plus_plus])
cristy3ed852e2009-09-05 21:47:34 +00001290 LIBS="$OLIBS"
1291fi
1292AM_CONDITIONAL(WITH_MAGICK_PLUS_PLUS, test "$have_magick_plus_plus" = 'yes')
1293
1294# Only check for delegate libraries in subdirectories if requested.
1295if test "$enable_delegate_build" != 'no'; then
1296 # Check for delegate sub-directories and add -I & -L options as required.
1297 # This presumes that delegates are installed as detailed in the ImageMagick
1298 # README. If delegates are installed in a standard location where the
1299 # compiler will automatically find them then these options should not be
1300 # required.
1301
1302 #
1303 # Most delegates have includes in the same directory as the library, but not all...
1304 #
1305 # Includes
cristy31269aa2014-04-06 13:07:35 +00001306 for dir in bzlib fftw fpx gslib/src jp2 jp2/src/libjasper/include jbig/libjbig jpeg lcms/include lzma magick openjp2/include png tiff/libtiff ttf/include wand webp/src wmf/include xml/include zlib; do
cristy3ed852e2009-09-05 21:47:34 +00001307 if test -d "$builddir/$dir"; then
1308 CPPFLAGS="$CPPFLAGS -I$builddir/$dir"
1309 else
1310 if test -d "$srcdirfull/$dir"; then
1311 CPPFLAGS="$CPPFLAGS -I$srcdirfull/$dir"
1312 fi
1313 fi
1314 done
1315
1316 # Libraries
cristy31269aa2014-04-06 13:07:35 +00001317 for dir in bzlib fftw fpx gslib/src jp2 jp2/src/libjasper jbig/libjbig jpeg lcms/src lzma magick openjp2 png tiff/libtiff ttf/objs wand webp wmf/src xml zlib; do
cristy3ed852e2009-09-05 21:47:34 +00001318 if test -d "$builddir/$dir/.libs"; then
1319 LDFLAGS="$LDFLAGS -L$builddir/$dir/.libs"
1320 else
1321 if test -d "$srcdirfull/$dir/.libs"; then
1322 LDFLAGS="$LDFLAGS -L$srcdirfull/$dir/.libs"
1323 fi
1324 fi
1325 if test -d "$builddir/$dir"; then
1326 LDFLAGS="$LDFLAGS -L$builddir/$dir"
1327 else
1328 if test -d "$srcdirfull/$dir"; then
1329 LDFLAGS="$LDFLAGS -L$srcdirfull/$dir"
1330 fi
1331 fi
1332 done
1333fi
1334
1335# Assume that delegate headers reside under same directory as ImageMagick
1336# installation prefix.
cristybdabdd62013-03-04 17:43:36 +00001337MAGICK_CPPFLAGS="-I$INCLUDE_DIR/${PACKAGE_NAME}-$MAGICK_MAJOR_VERSION $MAGICK_CPPFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00001338
1339#
1340# Find the X11 RGB database
1341#
1342AC_CACHE_CHECK(for X11 configure files,im_cv_x_configure,
1343[# Look for the header file in a standard set of common directories.
1344# Check X11 before X11Rn because it is often a symlink to the current release.
1345 for ac_dir in \
1346 /lib/usr/lib/X11 \
1347 /usr/X11/lib \
1348 /usr/X11R4/lib \
1349 /usr/X11R5/lib \
1350 /usr/X11R6/lib \
1351 /usr/X11R7/lib \
1352 /usr/X386/lib \
1353 /usr/XFree86/lib/X11 \
1354 /usr/athena/lib \
1355 /usr/lib \
1356 /usr/lib/X11 \
1357 /usr/lib/X11R4 \
1358 /usr/lib/X11R5 \
1359 /usr/lib/X11R6 \
1360 /usr/lib/X11R7 \
1361 /usr/local/X11/lib \
1362 /usr/local/X11R4/lib \
1363 /usr/local/X11R5/lib \
1364 /usr/local/X11R6/lib \
1365 /usr/local/lib \
1366 /usr/local/lib/X11 \
1367 /usr/local/lib/X11R4 \
1368 /usr/local/lib/X11R5 \
1369 /usr/local/lib/X11R6 \
1370 /usr/local/lib/X11R7 \
1371 /usr/local/x11r5/lib \
1372 /usr/lpp/Xamples/lib \
1373 /usr/openwin/lib \
1374 /usr/openwin/share/lib \
1375 /usr/unsupported/lib \
1376 /usr/x386/lib \
1377 ; do
1378 if test -f "$ac_dir/X11/rgb.txt"; then
1379 im_cv_x_configure="$ac_dir/X11/"
1380 break
1381 elif test -f "$ac_dir/rgb.txt"; then
1382 im_cv_x_configure="$ac_dir/"
1383 break
1384 fi
1385
1386 done])
1387X11_CONFIGURE_PATH="$im_cv_x_configure"
1388case "${build_os}" in
1389 mingw* )
1390 X11ConfigurePath=`$WinPathScript "$X11ConfigurePath=" 1`
1391 ;;
1392esac
cristy9c151dc2012-12-02 22:30:16 +00001393AC_DEFINE_UNQUOTED(X11_CONFIGURE_PATH,"$X11ConfigurePath",[Location of X11 configure files])
cristy3ed852e2009-09-05 21:47:34 +00001394
1395#
1396# Find OpenMP library
1397#
1398GOMP_LIBS=''
1399if test "$enable_openmp" != 'no'; then
1400 if test "${GCC}" = "yes"; then
cristy18307f12011-12-30 01:20:16 +00001401 # Open64 (passes for GCC but uses different OpenMP implementation)
1402 if test "x$GOMP_LIBS" = x ; then
1403 if $CC --version 2>&1 | grep Open64 > /dev/null ; then
1404 AC_CHECK_LIB(openmp,omp_get_num_procs,GOMP_LIBS="-lopenmp",,)
1405 fi
1406 fi
1407 # GCC
1408 if test "x$GOMP_LIBS" = x ; then
1409 AC_CHECK_LIB(gomp,GOMP_parallel_start,GOMP_LIBS="-lgomp",,)
1410 fi
cristy3ed852e2009-09-05 21:47:34 +00001411 else
cristy18307f12011-12-30 01:20:16 +00001412 # Sun CC
1413 if test "x$GOMP_LIBS" = x ; then
1414 AC_CHECK_LIB(mtsk,sunw_mp_register_warn,GOMP_LIBS="-lmtsk",,)
1415 fi
1416 # AIX xlc
1417 if test "x$GOMP_LIBS" = x ; then
1418 AC_CHECK_LIB(xlsmp,_xlsmpFlush,GOMP_LIBS="-lxlsmp",,)
1419 fi
1420 # SGI IRIX 6.5 MIPSpro C/C++
1421 if test "x$GOMP_LIBS" = x ; then
1422 AC_CHECK_LIB(mp,mp_destroy,GOMP_LIBS="-lmp",,)
1423 fi
cristy3ed852e2009-09-05 21:47:34 +00001424 fi
1425 LIBS="$GOMP_LIBS $LIBS"
1426fi
1427AC_SUBST(GOMP_LIBS)
1428
cristy3ed852e2009-09-05 21:47:34 +00001429
cristy3ed852e2009-09-05 21:47:34 +00001430
1431#
1432# Check for umem.
1433#
1434have_umem='no'
1435UMEM_LIBS=''
1436if test "$with_umem" != 'no'; then
1437 AC_MSG_CHECKING(for UMEM support )
cristyad38abe2012-12-23 23:03:21 +00001438 AC_MSG_RESULT()
cristy3ed852e2009-09-05 21:47:34 +00001439 failed=0
1440 passed=0
1441 AC_CHECK_HEADER(umem.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1442 AC_CHECK_LIB(umem,umem_alloc,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1443 AC_CHECK_LIB(umem,umem_free,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1444 AC_MSG_CHECKING(if umem memory allocation library is complete)
1445 if test $passed -gt 0; then
1446 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001447 AC_MSG_RESULT(no -- some components failed test)
cristy3ed852e2009-09-05 21:47:34 +00001448 have_umem='no (failed tests)'
1449 else
1450 UMEM_LIBS='-lumem'
1451 LIBS="$UMEM_LIBS $LIBS"
1452 AC_DEFINE(HasUMEM,1,Define if you have umem memory allocation library)
cristyad38abe2012-12-23 23:03:21 +00001453 AC_MSG_RESULT(yes)
cristy3ed852e2009-09-05 21:47:34 +00001454 have_umem='yes'
1455 fi
1456 else
cristyad38abe2012-12-23 23:03:21 +00001457 AC_MSG_RESULT(no)
cristy3ed852e2009-09-05 21:47:34 +00001458 fi
1459fi
1460AM_CONDITIONAL(HasUMEM, test "$have_umem" = 'yes')
1461AC_SUBST(UMEM_LIBS)
1462
1463#
1464# Add support for ccmalloc memory debugging library if requested
1465#
1466have_ccmalloc='no'
1467CCMALLOC_LIBS=''
1468if test "$enable_ccmalloc" = 'yes'; then
1469 AC_PATH_PROG(CCMALLOCDelegate,ccmalloc,)
1470 if test -n "$CCMALLOCDelegate"; then
1471 eval `grep PREFIX= $CCMALLOCDelegate | sed -e 's/PREFIX/CCMALLOC_PREFIX/'`
1472 OLIBS="$LIBS"
1473 # Assume that gcc is used with ccmalloc.
1474 LIBS="$LIBS $CCMALLOC_PREFIX/lib/ccmalloc-gcc.o"
1475 AC_CHECK_LIB(ccmalloc,ccmalloc_malloc,CCMALLOC_LIBS="$CCMALLOC_PREFIX/lib/ccmalloc-gcc.o -lccmalloc -ldl",,-ldl)
1476 if test -n "$CCMALLOC_LIBS"; then
1477 LIBS="$OLIBS"
1478 LIBS="$LIBS $CCMALLOC_LIBS"
1479 have_ccmalloc='yes'
1480 else
1481 LIBS="$OLIBS"
1482 fi
1483 fi
1484fi
1485
1486#
cristy944e51f2013-04-16 18:45:02 +00001487# Add support for 'huge pages' if requested
1488#
1489AS_IF([test "x$enable_hugepages" != "xno"],[
1490 AC_DEFINE(HAVE_HUGEPAGES, 1, [Compile with hugepage support])
1491])
1492
1493#
cristy3ed852e2009-09-05 21:47:34 +00001494# Add support for efence memory debugging library if requested
1495#
1496if test "$enable_efence" = 'yes'; then
1497 EFENCE_LIBS='-lefence'
1498 LIBS="$EFENCE_LIBS $LIBS"
1499fi
1500
cristy3ed852e2009-09-05 21:47:34 +00001501dnl ===========================================================================
1502
1503#
1504# Check for BZLIB
1505#
1506
1507AC_ARG_WITH([bzlib],
1508 [AC_HELP_STRING([--without-bzlib],
1509 [disable BZLIB support])],
1510 [with_bzlib=$withval],
1511 [with_bzlib='yes'])
1512
1513if test "$with_bzlib" != 'yes'; then
1514 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-bzlib=$with_bzlib "
1515fi
1516
1517have_bzlib='no'
1518if test "$with_bzlib" != 'no'; then
1519 BZLIB_LIBS=''
cristyad38abe2012-12-23 23:03:21 +00001520 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001521 AC_MSG_CHECKING([for BZLIB])
cristyad38abe2012-12-23 23:03:21 +00001522 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001523 failed=0
1524 passed=0
1525 found_libbz=0
1526 AC_CHECK_HEADER(bzlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1527 AC_CHECK_LIB(bz2,BZ2_bzDecompress,found_libbz=`expr $found_libbz + 1`,,)
1528 if test "$native_win32_build" = 'yes'; then
1529 AC_CHECK_LIB(bz2,_imp__BZ2_decompress,found_libbz=`expr $found_libbz + 1`,,)
1530 fi
1531 if test $found_libbz -gt 0; then
1532 passed=`expr $passed + 1`
1533 else
1534 failed=`expr $failed + 1`
1535 fi
1536 AC_MSG_CHECKING(if BZLIB package is complete)
1537 if test $passed -gt 0; then
1538 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001539 AC_MSG_RESULT(no -- some components failed test)
cristy3ed852e2009-09-05 21:47:34 +00001540 have_bzlib='no (failed tests)'
1541 else
1542 BZLIB_LIBS='-lbz2'
1543 LIBS="$BZLIB_LIBS $LIBS"
1544 AC_DEFINE(BZLIB_DELEGATE,1,Define if you have the bzip2 library)
cristyad38abe2012-12-23 23:03:21 +00001545 AC_MSG_RESULT(yes)
cristy3ed852e2009-09-05 21:47:34 +00001546 have_bzlib='yes'
1547 fi
1548 else
cristyad38abe2012-12-23 23:03:21 +00001549 AC_MSG_RESULT(no)
cristy3ed852e2009-09-05 21:47:34 +00001550 fi
1551fi
1552AM_CONDITIONAL(BZLIB_DELEGATE, test "$have_bzlib" = 'yes')
1553AC_SUBST(BZLIB_LIBS)
1554
1555#
1556# Find the X11 include and library directories.
1557#
1558IPC_LIBS=''
1559X11_LIBS=''
1560XEXT_LIBS=''
1561XT_LIBS=''
1562AC_PATH_XTRA
1563if test "$no_x" != 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00001564 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001565 AC_MSG_CHECKING([for X11])
cristyad38abe2012-12-23 23:03:21 +00001566 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001567 LDFLAGS="$LDFLAGS $X_LIBS"
1568 X11_LIBS="$X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
1569 LIBS="$X11_LIBS $LIBS"
1570 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1571
1572 AC_DEFINE(X11_DELEGATE,1,Define if you have X11 library)dnl
1573
1574 #
1575 # Check for X11 shared memory extension
1576 #
1577 # shmctl is required to support the shared memory extension
1578 AC_CHECK_FUNC([shmctl],[have_shmctl='yes'],[])
1579 if test "$have_shmctl" != 'yes'; then
1580 PERSIST_LIBS=$LIBS
1581 LIBS="$LIBS -lcygipc"
1582 AC_TRY_LINK_FUNC([shmctl],[have_shmctl='yes'; IPC_LIBS='-lcygipc'],[])
1583 LIBS=$PERSIST_LIBS
1584 fi
1585
1586 if test "$have_shmctl" = 'yes'; then
1587 AC_CHECK_LIB([Xext],[XShmAttach],[XEXT_LIBS='-lXext' ; AC_DEFINE(HAVE_SHARED_MEMORY,1,X11 server supports shared memory extension)],[],[])
1588 fi
1589
1590 #
1591 # Check for X11 shape extension
1592 #
1593 AC_CHECK_LIB([Xext],[XShapeCombineMask],[XEXT_LIBS='-lXext' ; AC_DEFINE(HAVE_SHAPE,1,X11 server supports shape extension)],[],[])
1594 AC_CHECK_LIB(Xt,XtSetEventDispatcher,XT_LIBS='-lXt',,)
1595 LIBS="$XEXT_LIBS $XT_LIBS $LIBS"
1596fi
1597if test "$no_x" != 'yes'; then
1598 have_x='yes'
1599else
1600 have_x='no'
1601fi
1602AM_CONDITIONAL(X11_DELEGATE, test "$have_x" = 'yes')
1603AC_SUBST(X11_LIBS)
1604AC_SUBST(XEXT_LIBS)
1605
1606dnl ===========================================================================
1607
1608#
1609# Check for ZLIB
1610#
1611AC_ARG_WITH([zlib],
1612 [AC_HELP_STRING([--without-zlib],
1613 [disable ZLIB support])],
1614 [with_zlib=$withval],
1615 [with_zlib='yes'])
1616
1617if test "$with_zlib" != 'yes'; then
1618 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-zlib=$with_zlib "
1619fi
1620
1621have_zlib='no'
1622ZLIB_LIBS=''
1623dnl PNG requires zlib so enable zlib check if PNG is requested
1624if test "$with_zlib" != 'no' || test "$with_png" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001625 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001626 AC_MSG_CHECKING([for ZLIB])
cristyad38abe2012-12-23 23:03:21 +00001627 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001628 ZLIB_LIBS=''
1629 failed=0
1630 passed=0
1631 AC_CHECK_HEADER(zconf.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1632 AC_CHECK_HEADER(zlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1633 AC_CHECK_LIB(z,compress,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1634 AC_CHECK_LIB(z,uncompress,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1635 AC_CHECK_LIB(z,deflate,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1636 AC_CHECK_LIB(z,inflate,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1637 AC_CHECK_LIB(z,gzseek,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1638 AC_CHECK_LIB(z,gztell,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1639 AC_MSG_CHECKING([if ZLIB package is complete])
1640 if test $passed -gt 0; then
1641 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001642 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00001643 have_zlib='no (failed tests)'
1644 else
1645 ZLIB_LIBS='-lz'
1646 LIBS="$ZLIB_LIBS $LIBS"
1647 AC_DEFINE(ZLIB_DELEGATE,1,Define if you have zlib compression library)
cristyad38abe2012-12-23 23:03:21 +00001648 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001649 have_zlib='yes'
1650 fi
1651 else
cristyad38abe2012-12-23 23:03:21 +00001652 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001653 fi
1654fi
1655AM_CONDITIONAL(ZLIB_DELEGATE, test "$have_zlib" = 'yes')
1656AC_SUBST(ZLIB_LIBS)
1657
cristy5eef09f2012-10-16 12:08:28 +00001658# whether modules are built or not.
1659with_ltdl='yes'
1660have_ltdl='no'
1661LTDL_LIBS=''
1662if test "$build_modules" != 'no' ; then
cristyad38abe2012-12-23 23:03:21 +00001663 AC_MSG_RESULT([-------------------------------------------------------------])
cristy5eef09f2012-10-16 12:08:28 +00001664 AC_MSG_CHECKING([for libltdl])
cristyad38abe2012-12-23 23:03:21 +00001665 AC_MSG_RESULT([])
cristy5eef09f2012-10-16 12:08:28 +00001666 failed=0
1667 passed=0
cristyaf4cbf32012-10-16 23:47:41 +00001668 AC_CHECK_HEADER([ltdl.h],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`])
1669 AC_CHECK_LIB([ltdl],[lt_dlinit],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`],)
1670 AC_MSG_CHECKING([if libltdl package is complete])
cristy5eef09f2012-10-16 12:08:28 +00001671 if test $passed -gt 0 ; then
1672 if test $failed -gt 0 ; then
cristyaf4cbf32012-10-16 23:47:41 +00001673 AC_MSG_RESULT([no -- some components failed test])
cristy5eef09f2012-10-16 12:08:28 +00001674 have_ltdl='no (failed tests)'
1675 else
1676 LTDL_LIBS='-lltdl'
1677 LIBS="$LTDL_LIBS $LIBS"
cristyaf4cbf32012-10-16 23:47:41 +00001678 AC_DEFINE(LTDL_DELEGATE,1,[Define if using libltdl to support dynamically loadable modules])
1679 AC_MSG_RESULT([yes])
cristy5eef09f2012-10-16 12:08:28 +00001680 have_ltdl='yes'
1681 fi
1682 else
cristyaf4cbf32012-10-16 23:47:41 +00001683 AC_MSG_RESULT([no])
1684 fi
1685 if test "$have_ltdl" != 'yes' ; then
1686 AC_MSG_FAILURE([libltdl is required for modules build],[1])
cristy5eef09f2012-10-16 12:08:28 +00001687 fi
1688fi
1689AM_CONDITIONAL(WITH_LTDL, test "$have_ltdl" != 'no')
1690
cristy3ed852e2009-09-05 21:47:34 +00001691#
1692# If profiling, then check for -ldl and dlopen (required for Solaris & gcc)
1693#
1694LIB_DL=''
1695if test "$enable_profiling" = 'yes'; then
1696 AC_CHECK_LIB(dl,dlopen,LIB_DL='-ldl',,)
1697 LIBS="$LIB_DL $LIBS"
1698fi
1699AC_SUBST(LIB_DL)
1700
1701dnl ===========================================================================
1702
1703#
1704# Check for Autotrace delegate library.
1705#
1706AC_ARG_WITH([autotrace],
1707 [AC_HELP_STRING([--with-autotrace],
1708 [enable autotrace support])],
1709 [with_autotrace=$withval],
1710 [with_autotrace='no'])
1711
1712if test "$with_autotrace" != 'yes'; then
1713 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-autotrace=$with_autotrace "
1714fi
1715
1716have_autotrace='no'
1717AUTOTRACE_CFLAGS=""
1718AUTOTRACE_LIBS=""
1719AUTOTRACE_PKG=""
1720if test "x$with_autotrace" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00001721 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001722 PKG_CHECK_MODULES(AUTOTRACE,[autotrace >= 0.31.1], have_autotrace=yes, have_autotrace=no)
cristyad38abe2012-12-23 23:03:21 +00001723 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001724fi
1725
1726if test "$have_autotrace" = 'yes'; then
1727 failed=0
1728 AC_DEFINE(AUTOTRACE_DELEGATE,1,Define if you have AUTOTRACE library)
cristyc6722092012-10-14 00:19:31 +00001729 if test "$build_modules" = 'no'; then
cristye78d2532012-12-17 20:41:10 +00001730 CPPFLAGS="$AUTOTRACE_CFLAGS $CPPFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00001731 fi
1732fi
1733
1734AM_CONDITIONAL(AUTOTRACE_DELEGATE,test "$have_autotrace" = 'yes')
1735AC_SUBST(AUTOTRACE_CFLAGS)
1736AC_SUBST(AUTOTRACE_LIBS)
1737
1738dnl ===========================================================================
1739
1740#
1741# Check for Display Postscript delegate library.
1742#
1743AC_ARG_WITH([dps],
1744 [AC_HELP_STRING([--without-dps],
1745 [disable Display Postscript support])],
1746 [with_dps=$withval],
1747 [with_dps='yes'])
1748
1749if test "$with_dps" != 'yes'; then
1750 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-dps=$with_dps "
1751fi
1752
1753have_dps='no'
1754DPS_LIBS=''
1755if test "$with_dps" != 'no' && test "$with_x" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001756 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001757 AC_MSG_CHECKING([for DPS])
cristyad38abe2012-12-23 23:03:21 +00001758 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001759 failed=0
1760 passed=0
1761 PERSIST_CPPFLAGS="$CPPFLAGS"
1762 CPPFLAGS="$CPPFLAGS -I${ac_x_includes}/X11"
1763 AC_CHECK_HEADER(DPS/dpsXclient.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1764 # DPS issues:
1765 # XFree86-4.x needs -lXt to provide XtMalloc for -ldps.
1766 # Cygwin doesn't deliver -lXt as a DLL, which prevents a DLL build.
1767 # Adobe DPS (as delivered on Solaris) doesn't require -lXt.
1768 # ImageMagick itself doesn't use -lXt.
1769 have_libdps='no'
1770 LIBDPS_XT=''
1771 AC_CHECK_LIB(dps,DPSInitialize,have_libdps='yes',have_libdps='no',)
1772 if test "$have_libdps" != 'yes'; then
1773 # Unset cache variable so we can try again.
1774 unset ac_cv_lib_dps_DPSInitialize
1775 AC_CHECK_LIB(dps,DPSInitialize,have_libdps='yes',have_libdps='no',-lXt)
1776 if test "$have_libdps" = 'yes'; then
1777 LIBDPS_XT='-lXt'
1778 fi
1779 fi
1780 if test "$have_libdps" = 'yes'; then
1781 passed=`expr $passed + 1`
1782 else
1783 failed=`expr $failed + 1`
1784 fi
1785 AC_CHECK_LIB(dpstk,XDPSPixelsPerPoint,passed=`expr $passed + 1`,failed=`expr $failed + 1`,-ldps $LIBDPS_XT)
1786 AC_MSG_CHECKING([if DPS package is complete])
1787 if test $passed -gt 0; then
1788 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001789 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00001790 have_dps='no (failed tests)'
1791 CPPFLAGS="$PERSIST_CPPFLAGS"
1792 else
1793 DPS_LIBS="-ldpstk -ldps ${LIBDPS_XT}"
1794 LIBS="$DPS_LIBS $LIBS"
1795 AC_DEFINE(DPS_DELEGATE,1,Define if you have Display Postscript)
cristyad38abe2012-12-23 23:03:21 +00001796 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001797 have_dps='yes'
1798 fi
1799 else
cristyad38abe2012-12-23 23:03:21 +00001800 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001801 CPPFLAGS=$PERSIST_CPPFLAGS
1802 fi
1803fi
1804AM_CONDITIONAL(DPS_DELEGATE, test "$have_dps" = 'yes')
1805AC_SUBST(DPS_LIBS)
1806
1807dnl ===========================================================================
1808
1809#
1810# Check for DJVU delegate library.
1811#
1812AC_ARG_WITH([djvu],
1813 [AC_HELP_STRING([--without-djvu],
1814 [disable DjVu support])],
1815 [with_djvu=$withval],
1816 [with_djvu='yes'])
1817
1818if test "$with_djvu" != 'yes'; then
1819 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-djvu=$with_djvu "
1820fi
1821
1822have_djvu='no'
1823DJVU_LIBS=''
1824if test "$with_djvu" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001825 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001826 AC_MSG_CHECKING([for DJVU])
cristyad38abe2012-12-23 23:03:21 +00001827 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001828 failed=0
1829 passed=0
1830 AC_CHECK_HEADER(libdjvu/ddjvuapi.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1831 AC_CHECK_LIB(djvulibre,ddjvu_context_create,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1832 AC_MSG_CHECKING([if DJVU package is complete])
1833 if test $passed -gt 0; then
1834 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001835 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00001836 have_djvu='no (failed tests)'
1837 else
1838 DJVU_LIBS='-ldjvulibre'
1839 LIBS="$DJVU_LIBS $LIBS"
1840 AC_DEFINE(DJVU_DELEGATE,1,Define if you have DJVU library)
cristyad38abe2012-12-23 23:03:21 +00001841 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001842 have_djvu='yes'
1843 fi
1844 else
cristyad38abe2012-12-23 23:03:21 +00001845 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001846 fi
1847fi
1848AM_CONDITIONAL(DJVU_DELEGATE, test "$have_djvu" = 'yes')
1849AC_SUBST(DJVU_LIBS)
1850
1851dnl ===========================================================================
1852
1853#
cristy430a7312010-01-21 20:44:04 +00001854# Set DejaVu font directory.
1855#
1856AC_ARG_WITH([dejavu-font-dir],
1857 [AC_HELP_STRING([--with-dejavu-font-dir=DIR],
1858 [DejaVu font directory])],
1859 [with_dejavu_font_dir=$withval],
1860 [with_dejavu_font_dir='default'])
1861
1862if test "$with_dejavu_font_dir" != 'default'; then
1863 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-dejavu-font-dir=$with_dejavu_font_dir "
1864fi
1865
1866dnl ===========================================================================
1867
1868#
cristy3ed852e2009-09-05 21:47:34 +00001869# Check for FFTW delegate library.
1870#
cristy81beccd2011-10-03 18:17:24 +00001871AC_ARG_WITH([fftw],
cristy3ed852e2009-09-05 21:47:34 +00001872 [AC_HELP_STRING([--without-fftw],
1873 [disable FFTW support])],
1874 [with_fftw=$withval],
1875 [with_fftw='yes'])
1876
1877if test "$with_fftw" != 'yes'; then
1878 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fftw=$with_fftw "
1879fi
1880
cristy81beccd2011-10-03 18:17:24 +00001881have_fftw='no'
1882FFTW_LIBS=''
1883if test "$with_fftw" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001884 AC_MSG_RESULT([-------------------------------------------------------------])
cristy81beccd2011-10-03 18:17:24 +00001885 AC_MSG_CHECKING([for FFTW])
cristyad38abe2012-12-23 23:03:21 +00001886 AC_MSG_RESULT([])
cristy81beccd2011-10-03 18:17:24 +00001887 failed=0
1888 passed=0
1889 AC_CHECK_HEADER(fftw3.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1890 AC_CHECK_LIB(fftw3,fftw_execute,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1891 AC_MSG_CHECKING([if FFTW package is complete])
1892 if test $passed -gt 0; then
1893 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001894 AC_MSG_RESULT([no -- some components failed test])
cristy81beccd2011-10-03 18:17:24 +00001895 have_fftw='no (failed tests)'
1896 else
1897 FFTW_LIBS='-lfftw3'
1898 LIBS="$FFTW_LIBS $LIBS"
1899 AC_DEFINE(FFTW_DELEGATE,1,Define if you have FFTW library)
cristyad38abe2012-12-23 23:03:21 +00001900 AC_MSG_RESULT([yes])
cristy81beccd2011-10-03 18:17:24 +00001901 have_fftw='yes'
1902 fi
1903 else
cristyad38abe2012-12-23 23:03:21 +00001904 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001905 fi
1906fi
1907AM_CONDITIONAL(FFTW_DELEGATE, test "$have_fftw" = 'yes')
1908AC_SUBST(FFTW_LIBS)
1909
1910dnl ===========================================================================
1911
1912#
1913# Check for FlashPIX delegate library.
1914#
1915AC_ARG_WITH([fpx],
1916 [AC_HELP_STRING([--without-fpx],
1917 [disable FlashPIX support])],
1918 [with_fpx=$withval],
1919 [with_fpx='yes'])
1920
1921if test "$with_fpx" != 'yes'; then
1922 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fpx=$with_fpx "
1923fi
1924
1925have_fpx='no'
1926FPX_LIBS=''
cristyd7f73ad2014-03-05 00:25:29 +00001927SAVED_LIBS=${LIBS}
1928LIBS=${LIBS/-ldjvulibre/}
cristy3ed852e2009-09-05 21:47:34 +00001929if test "$with_fpx" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001930 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001931 AC_MSG_CHECKING([for FlashPIX])
cristyad38abe2012-12-23 23:03:21 +00001932 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001933 failed=0
1934 passed=0
1935 AC_LANG_PUSH(C++)
1936 AC_CHECK_HEADER(fpxlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1937 AC_CHECK_LIB(fpx,FPX_OpenImageByFilename,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1938 AC_LANG_POP
1939 AC_MSG_CHECKING([if FlashPIX package is complete])
1940 if test $passed -gt 0; then
1941 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001942 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00001943 have_fpx='no (failed tests)'
1944 else
1945 FPX_LIBS='-lfpx'
1946 AC_DEFINE(FPX_DELEGATE,1,Define if you have FlashPIX library)
cristyad38abe2012-12-23 23:03:21 +00001947 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001948 have_fpx='yes'
1949 PERLMAINCC="$CXX"
1950 fi
1951 else
cristyad38abe2012-12-23 23:03:21 +00001952 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001953 fi
1954fi
1955AM_CONDITIONAL(FPX_DELEGATE, test "$have_fpx" = 'yes')
1956AC_SUBST(FPX_LIBS)
cristyd7f73ad2014-03-05 00:25:29 +00001957LIBS=${SAVED_LIBS}
cristy3ed852e2009-09-05 21:47:34 +00001958
1959dnl ===========================================================================
1960
1961#
1962# Check for fontconfig delegate library.
1963#
1964AC_ARG_WITH([fontconfig],
1965 [AC_HELP_STRING([--without-fontconfig],
1966 [disable fontconfig support])],
1967 [with_fontconfig=$withval],
cristyfc3d0222012-02-07 15:05:57 +00001968 [with_fontconfig='yes'])
cristy3ed852e2009-09-05 21:47:34 +00001969
1970if test "$with_fontconfig" != 'yes'; then
1971 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fontconfig=$with_fontconfig "
1972fi
1973
1974have_fontconfig='no'
1975FONTCONFIG_CFLAGS=""
1976FONTCONFIG_LIBS=""
1977FONTCONFIG_PKG=""
1978if test "x$with_fontconfig" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00001979 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001980 PKG_CHECK_MODULES(FONTCONFIG,[fontconfig >= 2.1.0], have_fontconfig=yes, have_fontconfig=no)
cristyad38abe2012-12-23 23:03:21 +00001981 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001982fi
1983
1984if test "$have_fontconfig" = 'yes'; then
cristyd09bcf92010-03-25 03:04:45 +00001985 AC_DEFINE(FONTCONFIG_DELEGATE,1,Define if you have FONTCONFIG library)
cristyc6722092012-10-14 00:19:31 +00001986 if test "$build_modules" = 'no'; then
cristy3ed852e2009-09-05 21:47:34 +00001987 CPPFLAGS="$FONTCONFIG_CFLAGS $CPPFLAGS"
cristyd09bcf92010-03-25 03:04:45 +00001988 fi
cristy3ed852e2009-09-05 21:47:34 +00001989fi
1990
1991AM_CONDITIONAL(FONTCONFIG_DELEGATE,test "$have_fontconfig" = 'yes')
1992AC_SUBST(FONTCONFIG_CFLAGS)
1993AC_SUBST(FONTCONFIG_LIBS)
1994
1995dnl ===========================================================================
1996
1997#
cristy03f187e2013-01-24 00:22:19 +00001998# Check for the Freetype delegate library.
cristy3ed852e2009-09-05 21:47:34 +00001999#
cristy81beccd2011-10-03 18:17:24 +00002000AC_ARG_WITH([freetype],
cristy3ed852e2009-09-05 21:47:34 +00002001 [AC_HELP_STRING([--without-freetype],
cristy81beccd2011-10-03 18:17:24 +00002002 [disable Freetype support])],
cristy3ed852e2009-09-05 21:47:34 +00002003 [with_freetype=$withval],
2004 [with_freetype='yes'])
2005
cristy3ed852e2009-09-05 21:47:34 +00002006if test "$with_freetype" != 'yes'; then
2007 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-freetype=$with_freetype "
2008fi
2009
cristy81beccd2011-10-03 18:17:24 +00002010have_freetype='no'
cristy03f187e2013-01-24 00:22:19 +00002011FREETYPE_CFLAGS=""
2012FREETYPE_LIBS=""
2013FREETYPE_PKG=""
2014if test "x$with_freetype" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002015 AC_MSG_RESULT([-------------------------------------------------------------])
cristy03f187e2013-01-24 00:22:19 +00002016 PKG_CHECK_MODULES(FREETYPE,[freetype2], have_freetype=yes, have_freetype=no)
2017 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002018fi
cristy03f187e2013-01-24 00:22:19 +00002019
2020if test "$have_freetype" = 'yes'; then
2021 AC_DEFINE(FREETYPE_DELEGATE,1,Define if you have FREETYPE library)
2022 CFLAGS="$FREETYPE_CFLAGS $CFLAGS"
2023fi
2024
cristy98ca0f52011-10-08 23:19:10 +00002025AM_CONDITIONAL(FREETYPE_DELEGATE, test "$have_freetype" = 'yes')
cristy03f187e2013-01-24 00:22:19 +00002026AC_SUBST(FREETYPE_CFLAGS)
cristy3ed852e2009-09-05 21:47:34 +00002027AC_SUBST(FREETYPE_LIBS)
2028
2029dnl ===========================================================================
2030
cristy3ed852e2009-09-05 21:47:34 +00002031#
2032# Check for Ghostscript library or framework.
2033#
2034# Test for iapi.h & test for gsapi_new_instance in -lgs
2035# or -framework Ghostscript
2036
2037AC_ARG_WITH([gslib],
cristy8d733f42013-03-04 11:27:54 +00002038 [AC_HELP_STRING([--with-gslib],
cristy3ed852e2009-09-05 21:47:34 +00002039 [enable Ghostscript library support])],
2040 [with_gslib=$withval],
2041 [with_gslib='no'])
2042
cristyb7931f12009-09-25 10:22:21 +00002043gslib_framework='no'
cristy3ed852e2009-09-05 21:47:34 +00002044if test "$with_gslib" != 'yes'; then
2045 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gslib=$with_gslib "
2046fi
2047
2048have_gslib='no'
2049GS_LIBS=''
2050if test "$with_gslib" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002051 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002052 AC_MSG_CHECKING([for Ghostscript])
cristyad38abe2012-12-23 23:03:21 +00002053 AC_MSG_RESULT([])
cristyb7931f12009-09-25 10:22:21 +00002054 framework=0
cristy3ed852e2009-09-05 21:47:34 +00002055 failed=0
2056 passed=0
2057 AC_CHECK_HEADER(ghostscript/iapi.h,passed=`expr $passed + 1`,
2058 failed=`expr $failed + 1`,)
2059 AC_CHECK_HEADER(ghostscript/ierrors.h,passed=`expr $passed + 1`,
2060 failed=`expr $failed + 1`,)
2061 AC_CHECK_FRAMEWORK(Ghostscript,gsapi_new_instance,framework=`expr $framework + 1`,
2062 AC_CHECK_LIB(gs,gsapi_new_instance,passed=`expr $passed + 1`,failed=`expr $failed + 1`,),)
2063 AC_MSG_CHECKING([if Ghostscript package is complete])
2064 if test $passed -gt 0; then
2065 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002066 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002067 have_gslib='no (failed tests)'
2068 else
2069 if test $framework -gt 0; then
2070 GS_LIBS='-framework Ghostscript'
cristyb7931f12009-09-25 10:22:21 +00002071 gslib_framework='yes'
cristyad38abe2012-12-23 23:03:21 +00002072 AC_MSG_RESULT([yes, using framework.])
cristy3ed852e2009-09-05 21:47:34 +00002073 else
cristyad38abe2012-12-23 23:03:21 +00002074 AC_MSG_RESULT([yes, using library.])
cristy3ed852e2009-09-05 21:47:34 +00002075 GS_LIBS='-lgs'
2076 fi
2077 LIBS="$GS_LIBS $LIBS"
2078 AC_DEFINE(GS_DELEGATE,1,Define if you have Ghostscript library or framework)
2079 have_gslib='yes'
2080 fi
2081 else
cristyad38abe2012-12-23 23:03:21 +00002082 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002083 fi
2084fi
2085AM_CONDITIONAL(GS_DELEGATE, test "$have_gslib" = 'yes')
2086AC_SUBST(GS_LIBS)
2087
2088# Set default font search path
2089AC_ARG_WITH([fontpath],
2090 [AC_HELP_STRING([--with-fontpath=DIR],
2091 [prepend to default font search path])],
2092 [with_fontpath=$withval],
2093 [with_fontpath=''])
2094
2095if test "$with_fontpath" != "yes" && test -z "$with_fontpath"; then
2096 with_fontpath=''
2097else
cristy9c151dc2012-12-02 22:30:16 +00002098 AC_DEFINE_UNQUOTED(MAGICK_FONT_PATH,"$with_fontpath",[Define to prepend to default font search path.])
cristy3ed852e2009-09-05 21:47:34 +00002099fi
2100if test "$with_fontpath=" != ''; then
2101 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fontpath=$with_fontpath "
2102fi
2103
2104# Set Ghostscript font directory
2105AC_ARG_WITH([gs-font-dir],
2106 [AC_HELP_STRING([--with-gs-font-dir=DIR],
2107 [Ghostscript font directory])],
2108 [with_gs_font_dir=$withval],
2109 [with_gs_font_dir='default'])
2110
2111if test "$with_gs_font_dir" != 'default'; then
2112 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gs-font-dir=$with_gs_font_dir "
2113fi
2114
2115dnl ===========================================================================
2116
2117#
2118# Check for GVC delegate library.
2119#
2120AC_ARG_WITH(gvc,
cristy24aeba92012-06-26 12:22:26 +00002121 [AC_HELP_STRING([--with-gvc],
cristy8d733f42013-03-04 11:27:54 +00002122 [enable GVC support])],
cristy3ed852e2009-09-05 21:47:34 +00002123 [with_gvc=$withval],
cristy24aeba92012-06-26 12:22:26 +00002124 [with_gvc='no'])
cristy3ed852e2009-09-05 21:47:34 +00002125
2126if test "$with_gvc" != 'yes'; then
2127 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gvc=$with_gvc "
2128fi
2129
2130GVC_PKG=""
2131if test "x$with_gvc" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002132 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002133 PKG_CHECK_MODULES(GVC,[libgvc >= 2.9.0], have_gvc=yes, have_gvc=no)
cristyad38abe2012-12-23 23:03:21 +00002134 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002135fi
2136
2137if test "$have_gvc" = 'yes'; then
2138 AC_DEFINE(GVC_DELEGATE,1,Define if you have GVC library)
cristyc6722092012-10-14 00:19:31 +00002139 if test "$build_modules" = 'no'; then
cristy3ed852e2009-09-05 21:47:34 +00002140 CPPFLAGS="$GVC_CFLAGS $CPPFLAGS"
2141 fi
2142fi
2143
2144AM_CONDITIONAL(GVC_DELEGATE, test "$have_gvc" = 'yes')
2145AC_SUBST(GVC_CFLAGS)
2146AC_SUBST(GVC_LIBS)
2147
2148dnl ===========================================================================
2149
2150#
2151# Check for JBIG delegate library.
2152#
2153
2154AC_ARG_WITH([jbig],
2155 [AC_HELP_STRING([--without-jbig],
2156 [disable JBIG support])],
2157 [with_jbig=$withval],
2158 [with_jbig='yes'])
2159
2160have_jbig='no'
2161JBIG_LIBS=''
2162if test "$with_jbig" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002163 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002164 AC_MSG_CHECKING([for JBIG])
cristyad38abe2012-12-23 23:03:21 +00002165 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002166 failed=0
2167 passed=0
2168 AC_CHECK_HEADER(jbig.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2169 AC_CHECK_LIB(jbig,jbg_dec_init,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2170 AC_MSG_CHECKING([if JBIG package is complete])
2171 if test $passed -gt 0; then
2172 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002173 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002174 have_jbig='no (failed tests)'
2175 else
2176 JBIG_LIBS='-ljbig'
2177 LIBS="$JBIG_LIBS $LIBS"
2178 AC_DEFINE(JBIG_DELEGATE,1,Define if you have JBIG library)
cristyad38abe2012-12-23 23:03:21 +00002179 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002180 have_jbig='yes'
2181 fi
2182 else
cristyad38abe2012-12-23 23:03:21 +00002183 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002184 fi
2185fi
2186AM_CONDITIONAL(JBIG_DELEGATE, test "$have_jbig" = 'yes')
2187AC_SUBST(JBIG_LIBS)
2188
2189dnl ===========================================================================
2190
2191#
2192# Check for JPEG delegate library.
2193#
2194AC_ARG_WITH([jpeg],
2195 [AC_HELP_STRING([--without-jpeg],
2196 [disable JPEG support])],
2197 [with_jpeg=$withval],
2198 [with_jpeg='yes'])
2199
2200if test "$with_jpeg" != 'yes'; then
2201 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-jpeg=$with_jpeg "
2202fi
2203
2204have_jpeg='no'
2205JPEG_LIBS=''
2206if test "$with_jpeg" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002207 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002208 AC_MSG_CHECKING([for JPEG])
cristyad38abe2012-12-23 23:03:21 +00002209 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002210 failed=0
2211 passed=0
2212 AC_CHECK_HEADER(jconfig.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2213 AC_CHECK_HEADER(jerror.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2214 AC_CHECK_HEADER(jmorecfg.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2215 AC_CHECK_HEADER(jpeglib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2216 AC_CHECK_LIB(jpeg,jpeg_read_header,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2217
2218# Test for compatible JPEG library
2219if test "$ac_cv_jpeg_version_ok" != 'yes'; then
2220AC_CACHE_CHECK(for JPEG library is version 6b or later, ac_cv_jpeg_version_ok,
2221[AC_TRY_COMPILE(
2222#include <stdio.h>
2223#include <stdlib.h>
2224#include <jpeglib.h>
2225,
2226changequote(<<, >>)dnl
2227<<
2228#if JPEG_LIB_VERSION < 62
2229#error IJG JPEG library must be version 6b or newer!
2230#endif
2231return 0;
2232>>,
2233changequote([, ])dnl
2234ac_cv_jpeg_version_ok='yes'; passed=`expr $passed + 1`,
2235ac_cv_jpeg_version_ok='no'; failed=`expr $failed + 1`)])
2236fi
2237 AC_MSG_CHECKING([if JPEG package is complete])
2238 if test $passed -gt 0; then
2239 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002240 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002241 have_jpeg='no (failed tests)'
2242 else
2243 JPEG_LIBS='-ljpeg'
2244 LIBS="$JPEG_LIBS $LIBS"
2245 AC_DEFINE(JPEG_DELEGATE,1,Define if you have JPEG library)
cristyad38abe2012-12-23 23:03:21 +00002246 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002247 have_jpeg='yes'
2248 fi
2249 else
cristyad38abe2012-12-23 23:03:21 +00002250 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002251 fi
2252fi
2253AM_CONDITIONAL(JPEG_DELEGATE, test "$have_jpeg" = 'yes')
2254AC_SUBST(JPEG_LIBS)
2255
2256dnl ===========================================================================
2257
2258#
cristy3ed852e2009-09-05 21:47:34 +00002259# Check for LCMS delegate library.
2260#
cristy71203402010-06-18 13:12:03 +00002261# Disable LCMS.
cristy3ed852e2009-09-05 21:47:34 +00002262AC_ARG_WITH(lcms,
cristy71203402010-06-18 13:12:03 +00002263 [ --without-lcms disable lcms (v1.1X) support],
2264 [with_lcms=$withval],
2265 [with_lcms='yes'])
2266if test "$with_lcms" != 'yes' ; then
cristy3ed852e2009-09-05 21:47:34 +00002267 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lcms=$with_lcms "
2268fi
2269
cristy71203402010-06-18 13:12:03 +00002270# Disable LCMS2.
2271AC_ARG_WITH(lcms2,
2272 [ --without-lcms2 disable lcms (v2.X) support],
2273 [with_lcms2=$withval],
2274 [with_lcms2='yes'])
2275if test "$with_lcms2" != 'yes' ; then
2276 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lcms2=$with_lcms2 "
2277fi
2278
2279have_lcms2='no'
cristy3ed852e2009-09-05 21:47:34 +00002280LCMS_LIBS=''
cristy71203402010-06-18 13:12:03 +00002281if test "$with_lcms2" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002282 AC_MSG_RESULT([-------------------------------------------------------------])
cristy71203402010-06-18 13:12:03 +00002283 AC_MSG_CHECKING([for LCMS v2])
cristyad38abe2012-12-23 23:03:21 +00002284 AC_MSG_RESULT()
cristy3ed852e2009-09-05 21:47:34 +00002285 failed=0
2286 passed=0
2287 have_lcms_header='no'
cristy71203402010-06-18 13:12:03 +00002288
2289 # Check for <lcms2.h>
cristyd09bcf92010-03-25 03:04:45 +00002290 AC_CHECK_HEADER(lcms2.h,have_lcms_header='yes',,)
2291 if test "$have_lcms_header" = 'yes'; then
cristy71203402010-06-18 13:12:03 +00002292 AC_DEFINE(HAVE_LCMS2_H,1,Define if you have the <lcms2.h> header file.)
2293 passed=`expr $passed + 1`
cristyd09bcf92010-03-25 03:04:45 +00002294 fi
cristy71203402010-06-18 13:12:03 +00002295
2296 # Check for <lcms2/lcms2.h)
2297 if test "$have_lcms_header" != 'yes'; then
2298 AC_CHECK_HEADER(lcms2/lcms2.h,have_lcms_header='yes',,)
2299 if test "$have_lcms_header" = 'yes'; then
2300 passed=`expr $passed + 1`
2301 AC_DEFINE(HAVE_LCMS2_LCMS2_H,1,Define if you have the <lcms2/lcms2.h> header file.)
2302 fi
2303 fi
2304
2305 # Failed to find lcms header?
2306 if test "$have_lcms_header" != 'yes'; then
2307 failed=`expr $failed + 1`
2308 fi
2309
2310 AC_CHECK_LIB(lcms2,cmsSetLogErrorHandler,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2311 AC_MSG_CHECKING(if LCMS v2 package is complete)
cristyd09bcf92010-03-25 03:04:45 +00002312 if test $passed -gt 0; then
cristy71203402010-06-18 13:12:03 +00002313 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002314 AC_MSG_RESULT(no -- some components failed test)
cristy71203402010-06-18 13:12:03 +00002315 have_lcms2='no (failed tests)'
2316 else
2317 LCMS_LIBS='-llcms2'
2318 LIBS="$LCMS_LIBS $LIBS"
cristyad38abe2012-12-23 23:03:21 +00002319 AC_MSG_RESULT(yes)
cristy71203402010-06-18 13:12:03 +00002320 have_lcms2='yes'
2321 fi
cristyd09bcf92010-03-25 03:04:45 +00002322 else
cristyad38abe2012-12-23 23:03:21 +00002323 AC_MSG_RESULT(no)
cristyd09bcf92010-03-25 03:04:45 +00002324 fi
2325fi
2326
cristy71203402010-06-18 13:12:03 +00002327#
2328# Check for LCMS v1 (1.11 or later)
2329#
2330if test $have_lcms2 = 'yes'; then
2331 with_lcms='no'
2332fi
2333
2334have_lcms='no'
cristyd09bcf92010-03-25 03:04:45 +00002335if test "$with_lcms" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002336 AC_MSG_RESULT([-------------------------------------------------------------])
cristy71203402010-06-18 13:12:03 +00002337 AC_MSG_CHECKING([for LCMS v1.1X])
cristyad38abe2012-12-23 23:03:21 +00002338 AC_MSG_RESULT()
cristyd09bcf92010-03-25 03:04:45 +00002339 failed=0
2340 passed=0
2341 have_lcms_header='no'
cristy71203402010-06-18 13:12:03 +00002342
2343 # Check for <lcms.h>
2344 if test "$have_lcms_header" != 'yes'; then
2345 AC_CHECK_HEADER(lcms.h,have_lcms_header='yes',,)
2346 if test "$have_lcms_header" = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +00002347 passed=`expr $passed + 1`
2348 AC_DEFINE(HAVE_LCMS_H,1,Define if you have the <lcms.h> header file.)
cristy71203402010-06-18 13:12:03 +00002349 fi
cristy3ed852e2009-09-05 21:47:34 +00002350 fi
cristy71203402010-06-18 13:12:03 +00002351
2352 # Check for <lcms/lcms.h>
2353 if test "$have_lcms_header" != 'yes'; then
2354 AC_CHECK_HEADER(lcms/lcms.h,have_lcms_header='yes',,)
2355 if test "$have_lcms_header" = 'yes'; then
2356 passed=`expr $passed + 1`
2357 AC_DEFINE(HAVE_LCMS_LCMS_H,1,Define if you have the <lcms/lcms.h> header file.)
2358 fi
2359 fi
2360
2361 # Failed to find lcms header?
2362 if test "$have_lcms_header" != 'yes'; then
2363 failed=`expr $failed + 1`
2364 fi
2365
2366 AC_CHECK_LIB(lcms,cmsSetErrorHandler,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2367 AC_MSG_CHECKING(if LCMS package is complete)
cristy3ed852e2009-09-05 21:47:34 +00002368 if test $passed -gt 0; then
cristy71203402010-06-18 13:12:03 +00002369 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002370 AC_MSG_RESULT(no -- some components failed test)
cristy71203402010-06-18 13:12:03 +00002371 have_lcms='no (failed tests)'
2372 else
2373 LCMS_LIBS='-llcms'
2374 LIBS="$LCMS_LIBS $LIBS"
cristyad38abe2012-12-23 23:03:21 +00002375 AC_MSG_RESULT(yes)
cristy71203402010-06-18 13:12:03 +00002376 have_lcms='yes'
2377 fi
cristy3ed852e2009-09-05 21:47:34 +00002378 else
cristyad38abe2012-12-23 23:03:21 +00002379 AC_MSG_RESULT(no)
cristy3ed852e2009-09-05 21:47:34 +00002380 fi
2381fi
cristy71203402010-06-18 13:12:03 +00002382
2383AM_CONDITIONAL(LCMS_DELEGATE, test "$have_lcms2" = 'yes' -o "$have_lcms" = 'yes')
2384if test "$have_lcms2" = 'yes' -o "$have_lcms" = 'yes'; then
2385 AC_DEFINE(LCMS_DELEGATE,1,[Define if you have LCMS (v1.11 or later) library])
cristyd09bcf92010-03-25 03:04:45 +00002386fi
cristy3ed852e2009-09-05 21:47:34 +00002387AC_SUBST(LCMS_LIBS)
2388
cristy71203402010-06-18 13:12:03 +00002389
cristy3ed852e2009-09-05 21:47:34 +00002390dnl ===========================================================================
2391
2392#
cristy99db3872014-01-01 15:11:34 +00002393# Check for the OpenJP2 delegate library.
2394#
2395AC_ARG_WITH([openjp2],
2396 [AC_HELP_STRING([--without-openjp2],
2397 [disable OpenJP2 support])],
2398 [with_openjp2=$withval],
2399 [with_openjp2='yes'])
2400
2401if test "$with_openjp2" != 'yes'; then
2402 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-openjp2=$with_openjp2 "
2403fi
2404
2405have_openjp2='no'
2406LIBOPENJP2_CFLAGS=""
2407LIBOPENJP2_LIBS=""
2408LIBOPENJP2_PKG=""
2409if test "x$with_openjp2" = "xyes"; then
2410 AC_MSG_RESULT([-------------------------------------------------------------])
cristybc964932014-05-08 21:45:03 +00002411 PKG_CHECK_MODULES(LIBOPENJP2,[libopenjp2 >= 2.1.0], have_openjp2=yes, have_openjp2=no)
cristy99db3872014-01-01 15:11:34 +00002412 AC_MSG_RESULT([])
2413fi
2414
2415if test "$have_openjp2" = 'yes'; then
2416 AC_DEFINE(LIBOPENJP2_DELEGATE,1,Define if you have OPENJP2 library)
2417 if test "$build_modules" = 'no'; then
2418 CFLAGS="$LIBOPENJP2_CFLAGS $CFLAGS"
2419 fi
2420fi
2421
2422AM_CONDITIONAL(LIBOPENJP2_DELEGATE, test "$have_openjp2" = 'yes')
2423AC_SUBST(LIBOPENJP2_CFLAGS)
2424AC_SUBST(LIBOPENJP2_LIBS)
2425
2426
2427dnl ===========================================================================
2428
2429#
cristy3ed852e2009-09-05 21:47:34 +00002430# Check for the LQR (Liquid Rescale) delegate library.
2431#
2432AC_ARG_WITH([lqr],
2433 [AC_HELP_STRING([--without-lqr],
cristyec501352010-03-13 18:43:34 +00002434 [disable Liquid Rescale support])],
cristy3ed852e2009-09-05 21:47:34 +00002435 [with_lqr=$withval],
2436 [with_lqr='yes'])
2437
2438if test "$with_lqr" != 'yes'; then
2439 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lqr=$with_lqr "
2440fi
2441
2442have_lqr='no'
2443LQR_CFLAGS=""
2444LQR_LIBS=""
2445LQR_PKG=""
2446if test "x$with_lqr" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002447 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002448 PKG_CHECK_MODULES(LQR,[lqr-1 >= 0.1.0], have_lqr=yes, have_lqr=no)
cristyad38abe2012-12-23 23:03:21 +00002449 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002450fi
2451
2452if test "$have_lqr" = 'yes'; then
2453 AC_DEFINE(LQR_DELEGATE,1,Define if you have LQR library)
2454 CFLAGS="$LQR_CFLAGS $CFLAGS"
2455fi
2456
2457AM_CONDITIONAL(LQR_DELEGATE, test "$have_lqr" = 'yes')
2458AC_SUBST(LQR_CFLAGS)
2459AC_SUBST(LQR_LIBS)
2460
2461dnl ===========================================================================
2462
cristy81beccd2011-10-03 18:17:24 +00002463# Disable LZMA (lzma library)
cristyfbb0ef02010-12-19 02:32:11 +00002464AC_ARG_WITH(lzma,
glennrp3fc1c212013-01-10 01:52:32 +00002465 [ --without-lzma disable LZMA support],
2466 [with_lzma=$withval],
2467 [with_lzma='yes'])
cristy81beccd2011-10-03 18:17:24 +00002468if test "$with_lzma" != 'yes' ; then
cristyfbb0ef02010-12-19 02:32:11 +00002469 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lzma=$with_lzma "
2470fi
2471
cristy56bbc922011-11-14 13:18:39 +00002472LZMA_PKG=""
2473if test "x$with_lzma" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002474 AC_MSG_RESULT([-------------------------------------------------------------])
cristy56bbc922011-11-14 13:18:39 +00002475 PKG_CHECK_MODULES(LZMA,[liblzma >= 2.9.0], have_lzma=yes, have_lzma=no)
cristyad38abe2012-12-23 23:03:21 +00002476 AC_MSG_RESULT([])
cristyf805afb2011-10-03 17:17:37 +00002477fi
cristy56bbc922011-11-14 13:18:39 +00002478
2479if test "$have_lzma" = 'yes'; then
2480 AC_DEFINE(LZMA_DELEGATE,1,Define if you have LZMA library)
cristyc6722092012-10-14 00:19:31 +00002481 if test "$build_modules" = 'no'; then
cristy56bbc922011-11-14 13:18:39 +00002482 CPPFLAGS="$LZMA_CFLAGS $CPPFLAGS"
2483 fi
2484fi
2485
cristyfbb0ef02010-12-19 02:32:11 +00002486AM_CONDITIONAL(LZMA_DELEGATE, test "$have_lzma" = 'yes')
cristy56bbc922011-11-14 13:18:39 +00002487AC_SUBST(LZMA_CFLAGS)
cristyfbb0ef02010-12-19 02:32:11 +00002488AC_SUBST(LZMA_LIBS)
2489
2490dnl ===========================================================================
2491
cristy3ed852e2009-09-05 21:47:34 +00002492#
2493# Check for the OpenEXR delegate library.
2494#
2495AC_ARG_WITH([openexr],
2496 [AC_HELP_STRING([--without-openexr],
2497 [disable OpenEXR support])],
2498 [with_openexr=$withval],
2499 [with_openexr='yes'])
2500
2501if test "$with_openexr" != 'yes'; then
2502 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-openexr=$with_openexr "
2503fi
2504
2505have_openexr='no'
2506OPENEXR_CFLAGS=""
2507OPENEXR_LIBS=""
2508OPENEXR_PKG=""
2509if test "x$with_openexr" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002510 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002511 PKG_CHECK_MODULES(OPENEXR,[OpenEXR >= 1.0.6], have_openexr=yes, have_openexr=no)
cristyad38abe2012-12-23 23:03:21 +00002512 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002513fi
2514
2515if test "$have_openexr" = 'yes'; then
2516 AC_DEFINE(OPENEXR_DELEGATE,1,Define if you have OPENEXR library)
cristyc6722092012-10-14 00:19:31 +00002517 if test "$build_modules" = 'no'; then
cristy3ed852e2009-09-05 21:47:34 +00002518 CFLAGS="$OPENEXR_CFLAGS $CFLAGS"
2519 fi
2520fi
2521
2522AM_CONDITIONAL(OPENEXR_DELEGATE, test "$have_openexr" = 'yes')
2523AC_SUBST(OPENEXR_CFLAGS)
2524AC_SUBST(OPENEXR_LIBS)
2525
2526dnl ===========================================================================
2527
2528#
cristy41cbe8a2011-10-27 01:35:18 +00002529# Check for PANGO delegate library.
2530#
2531AC_ARG_WITH([pango],
2532 [AC_HELP_STRING([--without-pango],
2533 [disable PANGO support])],
2534 [with_pango=$withval],
cristyfc3d0222012-02-07 15:05:57 +00002535 [with_pango='yes'])
cristy41cbe8a2011-10-27 01:35:18 +00002536
2537if test "$with_pango" != 'yes'; then
2538 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-pango=$with_pango "
2539fi
2540
2541have_pango='no'
cristya054b762012-03-26 23:16:00 +00002542have_pangocairo='no'
cristy41cbe8a2011-10-27 01:35:18 +00002543PANGO_CFLAGS=""
2544PANGO_LIBS=""
2545PANGO_PKG=""
2546if test "x$with_pango" = "xyes"; then
2547 AC_MSG_RESULT([-------------------------------------------------------------])
cristya054b762012-03-26 23:16:00 +00002548 PKG_CHECK_MODULES(PANGO, [pangocairo >= 1.28.1], have_pangocairo=yes, have_pangocairo=no)
cristy41cbe8a2011-10-27 01:35:18 +00002549 AC_MSG_RESULT([])
cristyd325d042011-12-06 17:36:51 +00002550 PKG_CHECK_MODULES(PANGO, [pango >= 1.28.1], have_pango=yes, have_pango=no)
cristy7dc48ed2011-10-28 14:11:43 +00002551 AC_MSG_RESULT([])
cristy41cbe8a2011-10-27 01:35:18 +00002552fi
2553
2554if test "$have_pango" = 'yes'; then
2555 AC_DEFINE(PANGO_DELEGATE,1,Define if you have PANGO library)
cristyc6722092012-10-14 00:19:31 +00002556 if test "$build_modules" = 'no'; then
cristy41cbe8a2011-10-27 01:35:18 +00002557 CPPFLAGS="$PANGO_CFLAGS $CPPFLAGS"
2558 fi
2559fi
2560
cristya054b762012-03-26 23:16:00 +00002561if test "$have_pangocairo" = 'yes'; then
2562 AC_DEFINE(PANGOCAIRO_DELEGATE,1,Define if you have PANGOCAIRO library)
cristyc6722092012-10-14 00:19:31 +00002563 if test "$build_modules" = 'no'; then
cristya054b762012-03-26 23:16:00 +00002564 CPPFLAGS="$PANGOCAIRO_CFLAGS $CPPFLAGS"
cristy41cbe8a2011-10-27 01:35:18 +00002565 fi
2566fi
2567
2568AM_CONDITIONAL(PANGO_DELEGATE, test "$have_pango" = 'yes')
cristya054b762012-03-26 23:16:00 +00002569AM_CONDITIONAL(PANGOCAIRO_DELEGATE, test "$have_pangocairo" = 'yes')
cristy41cbe8a2011-10-27 01:35:18 +00002570AC_SUBST(PANGO_CFLAGS)
2571AC_SUBST(PANGO_LIBS)
2572
2573dnl ===========================================================================
2574
2575#
cristy3ed852e2009-09-05 21:47:34 +00002576# Check for PNG delegate library.
2577#
2578AC_ARG_WITH(png,
2579 [AC_HELP_STRING([--without-png],
2580 [disable PNG support])],
2581 [with_png=$withval],
2582 [with_png='yes'])
2583
2584if test "$with_png" != 'yes'; then
2585 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-png=$with_png "
2586fi
2587
cristy81beccd2011-10-03 18:17:24 +00002588have_png='no'
2589PNG_LIBS=''
2590
2591if test "$with_png" != 'no' -a "$have_zlib" != 'no' ; then
cristyad38abe2012-12-23 23:03:21 +00002592 AC_MSG_RESULT([-------------------------------------------------------------])
cristy81beccd2011-10-03 18:17:24 +00002593 AC_MSG_CHECKING(for PNG support )
cristyad38abe2012-12-23 23:03:21 +00002594 AC_MSG_RESULT()
cristy81beccd2011-10-03 18:17:24 +00002595 failed=0
2596 passed=0
2597 AC_CHECK_HEADER(png.h,passed=`expr $passed + 1`,
2598 failed=`expr $failed + 1`,)
2599
2600 if test $passed -gt 0; then
glennrp3fc1c212013-01-10 01:52:32 +00002601 for var in 7 6 5 4 2 '' ; do
cristy0615f0e2011-10-12 11:36:46 +00002602 if test "$have_png" = 'no' ; then
2603 if test "x${var}" = 'x' ; then
cristy81beccd2011-10-03 18:17:24 +00002604 pnglib='png'
2605 else
2606 pnglib="png1${var}"
2607 fi
2608
2609# Test for compatible LIBPNG library
2610 failed=0
2611 passed=0
cristy0615f0e2011-10-12 11:36:46 +00002612 if test "$with_png" = 'yes' -o "$with_png" = "libpng1${var}" ; then
cristy81beccd2011-10-03 18:17:24 +00002613 if test "${pnglib}" != 'png' ; then
2614 AC_MSG_CHECKING(for LIBPNG1${var} support )
2615 AC_TRY_COMPILE(
2616#include <stdio.h>
2617#include <stdlib.h>
2618#include <png.h>
2619,
2620changequote(<<, >>)dnl
2621<<
2622#if PNG_LIBPNG_VER_MINOR != ${var}
2623#error LIBPNG library must be version 1${var}!
2624Kaboom, Kaboom
2625#endif
2626return 0;
2627>>,
2628 changequote([, ])dnl
2629 ac_cv_libpng_ok='yes',
2630 ac_cv_libpng_ok='no')
2631 if test "$ac_cv_libpng_ok" = 'yes' ; then
2632 passed=`expr $passed + 1`
cristyad38abe2012-12-23 23:03:21 +00002633 AC_MSG_RESULT(yes)
cristy81beccd2011-10-03 18:17:24 +00002634 else
2635 failed=`expr $failed + 1`
cristyad38abe2012-12-23 23:03:21 +00002636 AC_MSG_RESULT(no)
cristy81beccd2011-10-03 18:17:24 +00002637 fi
2638 else
2639 passed=`expr $passed + 1`
cristyad38abe2012-12-23 23:03:21 +00002640 AC_MSG_RESULT(yes)
cristy81beccd2011-10-03 18:17:24 +00002641 fi
2642 fi
2643
2644 if test $passed -gt 0 -a $failed -le 0; then
glennrp01969c42013-01-10 02:06:14 +00002645 if test "1${var}" = '17' ; then
2646 AC_CHECK_LIB(png17,png_get_io_ptr,passed=`expr $passed + 1`,
2647 failed=`expr $failed + 1`,)
2648 AC_CHECK_LIB(png17,png_longjmp,passed=`expr $passed + 1`,
2649 failed=`expr $failed + 1`,)
2650 fi
2651 if test "1${var}" = '16' ; then
2652 AC_CHECK_LIB(png16,png_get_io_ptr,passed=`expr $passed + 1`,
2653 failed=`expr $failed + 1`,)
2654 AC_CHECK_LIB(png16,png_longjmp,passed=`expr $passed + 1`,
2655 failed=`expr $failed + 1`,)
2656 fi
cristy81beccd2011-10-03 18:17:24 +00002657 if test "1${var}" = '15' ; then
2658 AC_CHECK_LIB(png15,png_get_io_ptr,passed=`expr $passed + 1`,
2659 failed=`expr $failed + 1`,)
2660 AC_CHECK_LIB(png15,png_longjmp,passed=`expr $passed + 1`,
2661 failed=`expr $failed + 1`,)
2662 fi
2663 if test "1${var}" = '14' ; then
2664 AC_CHECK_LIB(png14,png_get_io_ptr,passed=`expr $passed + 1`,
2665 failed=`expr $failed + 1`,)
2666 AC_CHECK_LIB(png14,png_get_io_state,passed=`expr $passed + 1`,
2667 failed=`expr $failed + 1`,)
2668 fi
2669 if test "1${var}" = '12' ; then
2670 AC_CHECK_LIB(png12,png_get_io_ptr,passed=`expr $passed + 1`,
2671 failed=`expr $failed + 1`,)
2672 fi
2673 if test "1${var}" = '1' ; then
2674 AC_CHECK_LIB(png,png_get_io_ptr,passed=`expr $passed + 1`,
2675 failed=`expr $failed + 1`,)
2676 fi
2677 if test $passed -gt 0 -a $failed -le 0 ; then
2678 AC_MSG_CHECKING(if ${pnglib} package is complete)
2679 if test $passed -gt 0 ; then
2680 if test $failed -gt 0 ; then
cristyad38abe2012-12-23 23:03:21 +00002681 AC_MSG_RESULT(no -- some components failed test)
cristy81beccd2011-10-03 18:17:24 +00002682 have_png='no (failed tests)'
2683 else
2684 PNG_LIBS="-l${pnglib}"
2685 LIBS="$PNG_LIBS $LIBS"
2686 AC_DEFINE(PNG_DELEGATE,1,Define if you have PNG library)
cristyad38abe2012-12-23 23:03:21 +00002687 AC_MSG_RESULT(yes)
cristy81beccd2011-10-03 18:17:24 +00002688 have_png='yes'
2689 fi
2690 fi
2691 fi
2692 fi
2693 fi
2694 done
2695 fi
cristy3ed852e2009-09-05 21:47:34 +00002696fi
cristy64877302011-08-23 19:10:31 +00002697
cristy81beccd2011-10-03 18:17:24 +00002698AM_CONDITIONAL(PNG_DELEGATE,test "$have_png" = 'yes')
cristyf805afb2011-10-03 17:17:37 +00002699AC_SUBST(PNG_LIBS)
cristy3ed852e2009-09-05 21:47:34 +00002700
cristy81beccd2011-10-03 18:17:24 +00002701
cristy3ed852e2009-09-05 21:47:34 +00002702dnl ===========================================================================
2703
2704#
2705# Check for RSVG delegate library.
2706#
2707AC_ARG_WITH([rsvg],
cristy51633f52013-04-23 14:03:19 +00002708 [AC_HELP_STRING([--with-rsvg],
cristy1164d5f2012-08-15 00:58:25 +00002709 [enable RSVG support])],
cristy3ed852e2009-09-05 21:47:34 +00002710 [with_rsvg=$withval],
cristy1164d5f2012-08-15 00:58:25 +00002711 [with_rsvg='no'])
cristy3ed852e2009-09-05 21:47:34 +00002712
2713if test "$with_rsvg" != 'yes'; then
2714 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-rsvg=$with_rsvg "
2715fi
2716
2717have_rsvg='no'
2718have_cairo='no'
2719RSVG_CFLAGS=""
2720RSVG_LIBS=""
2721RSVG_PKG=""
2722if test "x$with_rsvg" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002723 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002724 PKG_CHECK_MODULES(RSVG,[librsvg-2.0 >= 2.9.0], have_rsvg=yes, have_rsvg=no)
cristyad38abe2012-12-23 23:03:21 +00002725 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002726 PKG_CHECK_MODULES(CAIRO_SVG, cairo-svg, have_cairo=yes, have_cairo=no)
cristyad38abe2012-12-23 23:03:21 +00002727 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002728fi
2729
2730if test "$have_rsvg" = 'yes'; then
2731 AC_DEFINE(RSVG_DELEGATE,1,Define if you have RSVG library)
cristyc6722092012-10-14 00:19:31 +00002732 if test "$build_modules" = 'no'; then
cristy3ed852e2009-09-05 21:47:34 +00002733 CPPFLAGS="$RSVG_CFLAGS $CPPFLAGS"
2734 fi
2735fi
2736
2737if test "$have_cairo" = 'yes'; then
2738 AC_DEFINE(CAIRO_DELEGATE,1,Define if you have CAIRO library)
cristyc6722092012-10-14 00:19:31 +00002739 if test "$build_modules" = 'no'; then
cristy3ed852e2009-09-05 21:47:34 +00002740 CPPFLAGS="$CAIRO_SVG_CFLAGS $CPPFLAGS"
2741 fi
2742fi
2743
2744AM_CONDITIONAL(RSVG_DELEGATE, test "$have_rsvg" = 'yes')
2745AM_CONDITIONAL(CAIRO_DELEGATE, test "$have_cairo" = 'yes')
2746AC_SUBST(RSVG_CFLAGS)
2747AC_SUBST(RSVG_LIBS)
2748
2749dnl ===========================================================================
2750
2751#
2752# Check for TIFF delegate library.
2753#
2754AC_ARG_WITH([tiff],
2755 [AC_HELP_STRING([--without-tiff],
2756 [disable TIFF support])],
2757 [with_tiff=$withval],
2758 [with_tiff='yes'])
2759
2760if test "$with_tiff" != 'yes'; then
2761 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-tiff=$with_tiff "
2762fi
2763
2764have_tiff='no'
2765TIFF_LIBS=''
2766if test "$with_tiff" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002767 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002768 AC_MSG_CHECKING([for TIFF])
cristyad38abe2012-12-23 23:03:21 +00002769 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002770 failed=0
2771 passed=0
2772 AC_CHECK_HEADER(tiff.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2773 AC_CHECK_HEADER(tiffio.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2774 AC_CHECK_LIB(tiff,TIFFOpen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2775 AC_CHECK_LIB(tiff,TIFFClientOpen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2776 AC_CHECK_LIB(tiff,TIFFIsByteSwapped,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2777 AC_CHECK_LIB(tiff,TIFFReadRGBATile,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2778 AC_CHECK_LIB(tiff,TIFFReadRGBAStrip,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2779 AC_MSG_CHECKING([if TIFF package is complete])
2780 if test $passed -gt 0; then
2781 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002782 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002783 have_tiff='no (failed tests)'
2784 else
2785 TIFF_LIBS='-ltiff'
2786 LIBS="$TIFF_LIBS $LIBS"
2787 AC_DEFINE(TIFF_DELEGATE,1,Define if you have TIFF library)
cristyad38abe2012-12-23 23:03:21 +00002788 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002789 have_tiff='yes'
2790 AC_CHECK_HEADERS(tiffconf.h)
2791 AC_CHECK_FUNCS([TIFFIsCODECConfigured TIFFMergeFieldInfo \
cristy3f590e52011-11-14 14:29:44 +00002792 TIFFIsBigEndian TIFFReadEXIFDirectory TIFFSetErrorHandlerExt \
2793 TIFFSetTagExtender TIFFSetWarningHandlerExt \
2794 TIFFSwabArrayOfTriples])
cristy3ed852e2009-09-05 21:47:34 +00002795 fi
2796 else
cristyad38abe2012-12-23 23:03:21 +00002797 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002798 fi
2799fi
2800AM_CONDITIONAL(TIFF_DELEGATE, test "$have_tiff" = 'yes')
2801AC_SUBST(TIFF_LIBS)
2802
2803dnl ===========================================================================
2804
2805#
cristyb1860752011-03-14 00:27:46 +00002806# Check for WEBP delegate library.
2807#
2808AC_ARG_WITH(webp,
2809 [AC_HELP_STRING([--without-webp],
2810 [disable WEBP support])],
2811 [with_webp=$withval],
2812 [with_webp='yes'])
2813
2814if test "$with_webp" != 'yes'; then
2815 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-webp=$with_webp "
2816fi
2817
2818have_webp='no'
2819WEBP_LIBS=''
2820if test "$with_webp" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002821 AC_MSG_RESULT([-------------------------------------------------------------])
cristyb1860752011-03-14 00:27:46 +00002822 AC_MSG_CHECKING([for WEBP])
cristyad38abe2012-12-23 23:03:21 +00002823 AC_MSG_RESULT([])
cristyb1860752011-03-14 00:27:46 +00002824 failed=0
2825 passed=0
2826 AC_CHECK_HEADER(webp/decode.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
cristy6d670312013-03-22 23:23:01 +00002827 AC_CHECK_LIB(webp,WebPPictureInitInternal,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
cristyb1860752011-03-14 00:27:46 +00002828 AC_MSG_CHECKING([if WEBP package is complete])
2829 if test $passed -gt 0; then
2830 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002831 AC_MSG_RESULT([no -- some components failed test])
cristyb1860752011-03-14 00:27:46 +00002832 have_webp='no (failed tests)'
2833 else
2834 WEBP_LIBS='-lwebp'
2835 LIBS="$WEBP_LIBS $LIBS"
2836 AC_DEFINE(WEBP_DELEGATE,1,Define if you have WEBP library)
cristyad38abe2012-12-23 23:03:21 +00002837 AC_MSG_RESULT([yes])
cristyb1860752011-03-14 00:27:46 +00002838 have_webp='yes'
2839 fi
2840 else
cristyad38abe2012-12-23 23:03:21 +00002841 AC_MSG_RESULT([no])
cristyb1860752011-03-14 00:27:46 +00002842 fi
2843fi
2844AM_CONDITIONAL(WEBP_DELEGATE,test "$have_webp" = 'yes')
2845AC_SUBST(WEBP_LIBS)
2846
2847dnl ===========================================================================
2848
2849#
cristy3ed852e2009-09-05 21:47:34 +00002850# Set Windows font directory.
2851#
cristy74554ef2011-10-27 12:56:11 +00002852AC_ARG_WITH([windows-font-dir],
cristy3ed852e2009-09-05 21:47:34 +00002853 [AC_HELP_STRING([--with-windows-font-dir=DIR],
2854 [directory containing MS-Windows fonts])],
2855 [with_windows_font_dir=$withval],
2856 [with_windows_font_dir=''])
2857if test "$with_windows_font_dir" != '' ; then
2858 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-windows-font-dir=$with_windows_font_dir "
2859fi
2860
2861dnl ===========================================================================
2862
2863#
2864# Check for WMF delegate library.
2865#
2866AC_ARG_WITH([wmf],
cristyd0a9a682012-02-11 00:21:53 +00002867 [AC_HELP_STRING([--with-wmf],
2868 [enable WMF support])],
cristy3ed852e2009-09-05 21:47:34 +00002869 [with_wmf=$withval],
cristyfc3d0222012-02-07 15:05:57 +00002870 [with_wmf='no'])
cristy3ed852e2009-09-05 21:47:34 +00002871
2872if test "$with_wmf" != 'yes'; then
2873 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-wmf=$with_wmf "
2874fi
2875
2876have_wmf='no'
2877WMF_LIBS=''
cristy03f7cf92011-12-15 01:40:41 +00002878WMF_LIBS_DEPS=''
2879OLIBS="$LIBS"
cristy3ed852e2009-09-05 21:47:34 +00002880if test "$with_wmf" != 'no'; then
cristy03f7cf92011-12-15 01:40:41 +00002881 AC_MSG_RESULT([-------------------------------------------------------------])
glennrp84cc1bd2011-08-24 14:01:52 +00002882 AC_MSG_CHECKING([for WMF])
cristy03f7cf92011-12-15 01:40:41 +00002883 AC_MSG_RESULT([])
2884 have_libwmf='no'
2885 have_libwmflite='no'
2886 have_libwmf_ipa_h='no'
2887
2888 AC_CHECK_HEADER([libwmf/ipa.h],[have_libwmf_ipa_h='yes'],,[$FT2BUILD_H])
2889 if test "$have_libwmf_ipa_h" = 'yes'; then
2890 AC_CHECK_LIB(wmflite,wmf_lite_create,have_libwmflite='yes',,)
2891 if test "$have_libwmflite" = 'yes'; then
2892 AC_DEFINE(WMFLITE_DELEGATE,1,Define if you have wmflite library)
2893 WMF_LIBS='-lwmflite'
glennrp84cc1bd2011-08-24 14:01:52 +00002894 LIBS="$WMF_LIBS $LIBS"
glennrp84cc1bd2011-08-24 14:01:52 +00002895 have_wmf='yes'
cristy03f7cf92011-12-15 01:40:41 +00002896 else
2897 WMF_LIBS_DEPS=''
2898 WMF_CONFIG_LIBS=`libwmf-config --libs`
2899 for lib in xml2 expat freetype jpeg png z; do
2900 testlib="-l${lib}"
2901 echo "$WMF_CONFIG_LIBS" | grep -- "$testlib" > /dev/null && WMF_LIBS_DEPS="$WMF_LIBS_DEPS $testlib"
2902 done
2903 AC_CHECK_LIB(wmf,wmf_api_create,have_libwmf='yes',,$WMF_LIBS_DEPS)
2904 if test "$have_libwmf" = 'yes'; then
2905 AC_DEFINE(WMF_DELEGATE,1,Define if you have wmf library)
2906 WMF_LIBS='-lwmf'
2907 LIBS="$WMF_LIBS $LIBS"
2908 have_wmf='yes'
2909 else
2910 AC_MSG_RESULT([no -- some components failed test])
2911 have_wmf='no (failed tests)'
2912 have_wmflite='no (failed tests)'
2913 LIBS="$OLIBS"
2914 WMF_LIBS=''
2915 fi
glennrp84cc1bd2011-08-24 14:01:52 +00002916 fi
cristy03f7cf92011-12-15 01:40:41 +00002917 fi
2918 AC_MSG_CHECKING([if WMF package is complete])
2919 if test "$have_wmf" = 'yes'; then
2920 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002921 else
cristy03f7cf92011-12-15 01:40:41 +00002922 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002923 fi
2924fi
cristy03f7cf92011-12-15 01:40:41 +00002925AM_CONDITIONAL(WMF_DELEGATE, test "$have_wmf" = 'yes')
cristy3ed852e2009-09-05 21:47:34 +00002926AC_SUBST(WMF_LIBS)
cristy03f7cf92011-12-15 01:40:41 +00002927AC_SUBST(WMF_LIBS_DEPS)
cristy735e8942010-04-02 20:32:57 +00002928
cristy81beccd2011-10-03 18:17:24 +00002929
2930dnl ===========================================================================
2931
cristy3ed852e2009-09-05 21:47:34 +00002932#
2933# Check for XML delegate library.
2934#
cristy81beccd2011-10-03 18:17:24 +00002935AC_ARG_WITH([xml],
cristy3ed852e2009-09-05 21:47:34 +00002936 [AC_HELP_STRING([--without-xml],
2937 [disable XML support])],
2938 [with_xml=$withval],
cristyfc3d0222012-02-07 15:05:57 +00002939 [with_xml='yes'])
cristy3ed852e2009-09-05 21:47:34 +00002940
cristy81beccd2011-10-03 18:17:24 +00002941if test "$with_xml" != 'yes' ; then
cristy3ed852e2009-09-05 21:47:34 +00002942 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-xml=$with_xml "
2943fi
2944
cristy81beccd2011-10-03 18:17:24 +00002945have_xml='no'
2946XML_LIBS=''
2947if test "$with_xml" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002948 AC_MSG_RESULT([-------------------------------------------------------------])
cristy81beccd2011-10-03 18:17:24 +00002949 AC_MSG_CHECKING([for XML])
cristyad38abe2012-12-23 23:03:21 +00002950 AC_MSG_RESULT([])
cristy81beccd2011-10-03 18:17:24 +00002951 PERSIST_LDFLAGS=$LDFLAGS
2952 PERSIST_CPPFLAGS=$CPPFLAGS
2953 xml2_config=''
2954 AC_PATH_PROG(xml2_config,xml2-config,)dnl
2955 if test -n "$xml2_config"; then
2956 # Debian installs libxml headers under /usr/include/libxml2/libxml with
2957 # the shared library installed under /usr/lib, whereas the package
2958 # installs itself under $prefix/libxml and $prefix/lib.
2959 xml2_prefix=`xml2-config --prefix`
2960 if test -d "${xml2_prefix}/include/libxml2"; then
2961 CPPFLAGS="$CPPFLAGS -I${xml2_prefix}/include/libxml2"
2962 fi
2963 if test "${xml2_prefix}" != '/usr'; then
2964 LDFLAGS="$LDFLAGS -L${xml2_prefix}/lib"
2965 fi
2966 fi
2967 failed=0
2968 passed=0
2969 AC_CHECK_HEADER(libxml/parser.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2970 AC_CHECK_LIB(xml2,xmlSAXVersion,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2971 AC_CHECK_LIB(xml2,xmlParseChunk,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2972 AC_CHECK_LIB(xml2,xmlCreatePushParserCtxt,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2973 AC_MSG_CHECKING([if XML package is complete])
2974 if test $passed -gt 0; then
2975 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002976 AC_MSG_RESULT([no -- some components failed test])
cristy81beccd2011-10-03 18:17:24 +00002977 have_xml='no (failed tests)'
2978 LDFLAGS="$PERSIST_LDFLAGS"
2979 CPPFLAGS="$PERSIST_CPPFLAGS"
2980 else
2981 XML_LIBS='-lxml2'
2982 LIBS="$XML_LIBS $LIBS"
2983 AC_DEFINE(XML_DELEGATE,1,Define if you have XML library)
cristyad38abe2012-12-23 23:03:21 +00002984 AC_MSG_RESULT([yes])
cristy81beccd2011-10-03 18:17:24 +00002985 have_xml='yes'
2986 fi
2987 else
cristyad38abe2012-12-23 23:03:21 +00002988 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002989 fi
2990fi
cristy81beccd2011-10-03 18:17:24 +00002991AM_CONDITIONAL(XML_DELEGATE,test "$have_xml" = 'yes')
cristy3ed852e2009-09-05 21:47:34 +00002992AC_SUBST(XML_LIBS)
2993
2994dnl ===========================================================================
2995
2996# Substitute compiler name to build/link PerlMagick
2997#
2998AC_SUBST(PERLMAINCC)
2999
3000#
3001# Configure install Paths
3002#
cristy7def36a2011-10-28 19:04:41 +00003003
cristy2a11bef2011-10-28 18:33:11 +00003004# Path to ImageMagick header files
cristybdabdd62013-03-04 17:43:36 +00003005INCLUDE_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristye52f12f2012-12-31 15:32:36 +00003006INCLUDE_PATH="${INCLUDE_DIR}/${INCLUDE_RELATIVE_PATH}"
3007DEFINE_INCLUDE_PATH="${INCLUDE_DIR}/${INCLUDE_RELATIVE_PATH}/"
cristy2a11bef2011-10-28 18:33:11 +00003008case "${build_os}" in
3009 mingw* )
3010 DEFINE_INCLUDE_PATH=`$WinPathScript "$DEFINE_INCLUDE_PATH" 1`
3011 ;;
3012esac
cristy9c151dc2012-12-02 22:30:16 +00003013AC_DEFINE_UNQUOTED(INCLUDE_PATH,"$DEFINE_INCLUDE_PATH",[Directory where ImageMagick headers live.])
cristy2a11bef2011-10-28 18:33:11 +00003014AC_SUBST(INCLUDE_PATH)
cristy3ed852e2009-09-05 21:47:34 +00003015
cristye52f12f2012-12-31 15:32:36 +00003016# Path to ImageMagick header files (arch part)
3017INCLUDEARCH_PATH="${INCLUDEARCH_DIR}/${INCLUDE_RELATIVE_PATH}"
3018DEFINE_INCLUDEARCH_PATH="${INCLUDEARCH_DIR}/${INCLUDE_RELATIVE_PATH}/"
3019case "${build_os}" in
3020 mingw* )
3021 DEFINE_INCLUDEARCH_PATH=`$WinPathScript "$DEFINE_INCLUDEARCH_PATH" 1`
3022 ;;
3023esac
3024AC_DEFINE_UNQUOTED(INCLUDEARCH_PATH,"$DEFINE_INCLUDE_PATH",[Directory where ImageMagick architecture headers live.])
3025AC_SUBST(INCLUDEARCH_PATH)
3026
cristy3ed852e2009-09-05 21:47:34 +00003027# Subdirectory under lib to place ImageMagick lib files
3028LIBRARY_RELATIVE_PATH="${PACKAGE_NAME}-${PACKAGE_VERSION}"
cristy9c151dc2012-12-02 22:30:16 +00003029AC_DEFINE_UNQUOTED(LIBRARY_RELATIVE_PATH,"$LIBRARY_RELATIVE_PATH",[Subdirectory of lib where ImageMagick architecture dependent files are installed.])
cristy3ed852e2009-09-05 21:47:34 +00003030
3031# Path to ImageMagick bin directory
3032EXECUTABLE_PATH="${BIN_DIR}"
3033DEFINE_EXECUTABLE_PATH="${BIN_DIR}/"
3034case "${build_os}" in
3035 mingw* )
3036 DEFINE_EXECUTABLE_PATH=`$WinPathScript "$DEFINE_EXECUTABLE_PATH" 1`
3037 ;;
3038esac
cristy9c151dc2012-12-02 22:30:16 +00003039AC_DEFINE_UNQUOTED(EXECUTABLE_PATH,"$DEFINE_EXECUTABLE_PATH",[Directory where executables are installed.])
cristy3ed852e2009-09-05 21:47:34 +00003040AC_SUBST(EXECUTABLE_PATH)
3041
3042# Path to ImageMagick lib
3043LIBRARY_PATH="${LIB_DIR}/${LIBRARY_RELATIVE_PATH}"
3044DEFINE_LIBRARY_PATH="${LIB_DIR}/${LIBRARY_RELATIVE_PATH}/"
3045case "${build_os}" in
3046 mingw* )
3047 DEFINE_LIBRARY_PATH=`$WinPathScript "$DEFINE_LIBRARY_PATH" 1`
3048 ;;
3049esac
cristy9c151dc2012-12-02 22:30:16 +00003050AC_DEFINE_UNQUOTED(LIBRARY_PATH,"$DEFINE_LIBRARY_PATH",[Directory where architecture-dependent files live.])
cristy3ed852e2009-09-05 21:47:34 +00003051AC_SUBST(LIBRARY_PATH)
3052
cristy3ed852e2009-09-05 21:47:34 +00003053#
cristy8d0ff762013-03-10 20:33:28 +00003054# path to local binaries
3055if test "x$LIB_BIN_BASEDIRNAME" = "x"; then
3056 LIB_BIN_BASEDIRNAME="bin"
3057fi
3058AC_DEFINE_UNQUOTED(LIB_BIN_BASEDIRNAME,"$LIB_BIN_BASEDIRNAME",[Binaries in libraries path base name (will be during install linked to bin)])
3059AC_SUBST(LIB_BIN_BASEDIRNAME)
3060
3061if test "x$LIB_BIN_DIR" = "x"; then
3062 LIB_BIN_DIR=${LIB_BIN_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
3063fi
3064AC_SUBST(LIB_BIN_DIR)
3065
3066LIB_BIN_DIR_RELATIVE_PATH=$LIB_BIN_DIR
3067AC_SUBST(LIB_BIN_DIR_RELATIVE_PATH)
3068LIB_BIN_DIR_PATH="${LIBRARY_PATH}/${LIB_BIN_DIR_RELATIVE_PATH}"
3069AC_SUBST(LIB_BIN_DIR_PATH)
3070
3071#
cristy01ff9f32012-12-01 18:15:29 +00003072# path to modules lib
3073if test "x$MODULES_BASEDIRNAME" = "x"; then
3074 MODULES_BASEDIRNAME="modules"
3075fi
cristy9c151dc2012-12-02 22:30:16 +00003076AC_DEFINE_UNQUOTED(MODULES_BASEDIRNAME,"$MODULES_BASEDIRNAME",[Module directory name without ABI part.])
cristy01ff9f32012-12-01 18:15:29 +00003077AC_SUBST(MODULES_BASEDIRNAME)
3078
3079if test "x$MODULES_DIRNAME" = "x"; then
cristy7a26abd2012-12-03 00:18:59 +00003080 MODULES_DIRNAME=${MODULES_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
cristy4bdbd342012-12-03 18:41:18 +00003081else
3082 AC_DEFINE_UNQUOTED(MODULES_DIRNAME,"$MODULES_DIRNAME",[Module directory dirname])
cristy01ff9f32012-12-01 18:15:29 +00003083fi
3084AC_SUBST(MODULES_DIRNAME)
3085
cristy371d4812012-12-01 19:48:10 +00003086MODULES_RELATIVE_PATH="${MODULES_DIRNAME}"
cristy01ff9f32012-12-01 18:15:29 +00003087AC_SUBST(MODULES_RELATIVE_PATH)
3088MODULES_PATH="${LIBRARY_PATH}/${MODULES_RELATIVE_PATH}"
3089AC_SUBST(MODULES_PATH)
3090
3091#
3092# path to coders lib
3093if test "x$CODER_DIRNAME" = "x"; then
3094 CODER_DIRNAME="coders"
3095fi
cristy9c151dc2012-12-02 22:30:16 +00003096AC_DEFINE_UNQUOTED(CODER_DIRNAME,"$CODER_DIRNAME",[coders subdirectory.])
cristy01ff9f32012-12-01 18:15:29 +00003097AC_SUBST(CODER_DIRNAME)
3098
cristy371d4812012-12-01 19:48:10 +00003099CODER_RELATIVE_PATH="${CODER_DIRNAME}"
cristy01ff9f32012-12-01 18:15:29 +00003100CODER_PATH="${MODULES_PATH}/${CODER_DIRNAME}"
cristy3ed852e2009-09-05 21:47:34 +00003101AC_SUBST(CODER_PATH)
3102
3103#
3104# Subdirectory under lib to place ImageMagick filter module files
cristy01ff9f32012-12-01 18:15:29 +00003105#
3106# path to coders lib
3107if test "x$FILTER_DIRNAME" = "x"; then
3108 FILTER_DIRNAME="filters"
3109fi
cristy9c151dc2012-12-02 22:30:16 +00003110AC_DEFINE_UNQUOTED(FILTER_DIRNAME,"$FILTER_DIRNAME",[filter subdirectory.])
cristy01ff9f32012-12-01 18:15:29 +00003111AC_SUBST(FILTER_DIRNAME)
3112
cristy371d4812012-12-01 19:48:10 +00003113FILTER_RELATIVE_PATH="${FILTER_DIRNAME}"
cristy01ff9f32012-12-01 18:15:29 +00003114FILTER_PATH="${MODULES_PATH}/${FILTER_DIRNAME}"
cristy3ed852e2009-09-05 21:47:34 +00003115AC_SUBST(FILTER_PATH)
3116
3117#
3118# Path to ImageMagick documentation files
cristybdabdd62013-03-04 17:43:36 +00003119DOCUMENTATION_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristyd55889c2011-03-27 00:50:24 +00003120DOCUMENTATION_PATH="${DOC_DIR}/${DOCUMENTATION_RELATIVE_PATH}"
3121DEFINE_DOCUMENTATION_PATH="${DOC_DIR}/${DOCUMENTATION_RELATIVE_PATH}/"
cristy3ed852e2009-09-05 21:47:34 +00003122case "${build_os}" in
3123 mingw* )
3124 DEFINE_DOCUMENTATION_PATH=`$WinPathScript "$DEFINE_DOCUMENTATION_PATH" 1`
3125 ;;
3126esac
cristy9c151dc2012-12-02 22:30:16 +00003127AC_DEFINE_UNQUOTED(DOCUMENTATION_PATH,"$DEFINE_DOCUMENTATION_PATH",[Directory where ImageMagick documents live.])
cristy3ed852e2009-09-05 21:47:34 +00003128AC_SUBST(DOCUMENTATION_PATH)
3129
cristydd17feb2014-03-05 02:06:32 +00003130#
3131# Enable/Disable documentation
3132AC_ARG_ENABLE([docs],
3133 [AS_HELP_STRING([--disable-docs],
3134 [disable building of documentation])],
cristy02272312014-03-07 00:55:25 +00003135 wantdocs=$enableval, wantdocs=yes)
3136AM_CONDITIONAL([INSTALL_DOC], [test "$wantdocs" = "yes"])
cristydd17feb2014-03-05 02:06:32 +00003137
cristy2a11bef2011-10-28 18:33:11 +00003138# Subdirectory to place architecture-dependent configuration files
cristybdabdd62013-03-04 17:43:36 +00003139CONFIGURE_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristy9c151dc2012-12-02 22:30:16 +00003140AC_DEFINE_UNQUOTED(CONFIGURE_RELATIVE_PATH,"$CONFIGURE_RELATIVE_PATH",[Subdirectory of lib where architecture-dependent configuration files live.])
cristy7def36a2011-10-28 19:04:41 +00003141CONFIGURE_PATH="${SYSCONF_DIR}/${CONFIGURE_RELATIVE_PATH}/"
cristy29b1f6f2011-03-27 14:02:38 +00003142DEFINE_CONFIGURE_PATH="${SYSCONF_DIR}/${CONFIGURE_RELATIVE_PATH}/"
3143case "${build_os}" in
3144 mingw* )
3145 DEFINE_CONFIGURE_PATH=`$WinPathScript "$DEFINE_CONFIGURE_PATH" 1`
3146 ;;
3147esac
cristy9c151dc2012-12-02 22:30:16 +00003148AC_DEFINE_UNQUOTED(CONFIGURE_PATH,"$DEFINE_CONFIGURE_PATH",[Directory where architecture-dependent configuration files live.])
cristy29b1f6f2011-03-27 14:02:38 +00003149AC_SUBST(CONFIGURE_PATH)
3150
cristy2a11bef2011-10-28 18:33:11 +00003151# Subdirectory to place architecture-independent configuration files
cristybdabdd62013-03-04 17:43:36 +00003152SHARE_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristy9c151dc2012-12-02 22:30:16 +00003153AC_DEFINE_UNQUOTED(SHARE_RELATIVE_PATH,"$SHARE_RELATIVE_PATH",[Subdirectory of lib where architecture-independent configuration files live.])
cristy670aa3c2011-11-03 00:54:00 +00003154SHARE_PATH="${DATA_DIR}/${SHARE_RELATIVE_PATH}"
cristy4f820712011-04-01 12:35:43 +00003155DEFINE_SHARE_PATH="${DATA_DIR}/${SHARE_RELATIVE_PATH}/"
cristy3ed852e2009-09-05 21:47:34 +00003156case "${build_os}" in
3157 mingw* )
cristy4f820712011-04-01 12:35:43 +00003158 DEFINE_SHARE_PATH=`$WinPathScript "$DEFINE_SHARE_PATH" 1`
cristy3ed852e2009-09-05 21:47:34 +00003159 ;;
3160esac
cristy9c151dc2012-12-02 22:30:16 +00003161AC_DEFINE_UNQUOTED(SHARE_PATH,"$DEFINE_SHARE_PATH",[Directory where architecture-independent configuration files live.])
cristy4f820712011-04-01 12:35:43 +00003162AC_SUBST(SHARE_PATH)
cristy3ed852e2009-09-05 21:47:34 +00003163
cristy23c7e9a2012-12-04 15:47:57 +00003164#
3165# Subdirectory to place architecture-dependent configuration files.
3166if test "x$SHAREARCH_BASEDIRNAME" = "x"; then
3167 SHAREARCH_BASEDIRNAME="config"
3168fi
cristyad38abe2012-12-23 23:03:21 +00003169AC_DEFINE_UNQUOTED(SHAREARCH_BASEDIRNAME,"$SHAREARCH_BASEDIRNAME",[Sharearch directory name without ABI part.])
cristy23c7e9a2012-12-04 15:47:57 +00003170AC_SUBST(SHAREARCH_BASEDIRNAME)
3171
3172if test "x$SHAREARCH_DIRNAME" = "x"; then
3173 SHAREARCH_DIRNAME=${SHAREARCH_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
3174else
cristyad38abe2012-12-23 23:03:21 +00003175 AC_DEFINE_UNQUOTED(SHAREARCH_DIRNAME,"$SHAREARCH_DIRNAME",[Sharearch directory dirname])
cristy23c7e9a2012-12-04 15:47:57 +00003176fi
3177AC_SUBST(SHAREARCH_DIRNAME)
3178
3179SHAREARCH_RELATIVE_PATH="${SHAREARCH_DIRNAME}"
3180AC_SUBST(SHAREARCH_RELATIVE_PATH)
3181SHAREARCH_PATH="${LIBRARY_PATH}/${SHAREARCH_RELATIVE_PATH}"
cristy670aa3c2011-11-03 00:54:00 +00003182AC_SUBST(SHAREARCH_PATH)
3183
cristy3ed852e2009-09-05 21:47:34 +00003184#
3185# program_transform_name is formed for use in a Makefile, so create a
3186# modified version for use in a shell script.
3187configure_transform_name=`echo ${program_transform_name} | sed 's,\\$\\$,$,'`
3188
3189# Default delegate definitions
cristyad38abe2012-12-23 23:03:21 +00003190AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003191AC_MSG_CHECKING([for ImageMagick delegate programs])
cristyad38abe2012-12-23 23:03:21 +00003192AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003193AutotraceDecodeDelegateDefault='autotrace'
cristy3d7f8062009-09-24 20:45:35 +00003194BlenderDecodeDelegateDefault='blender'
cristy3ed852e2009-09-05 21:47:34 +00003195BZIPDelegateDefault='bzip2'
3196BrowseDelegateDefault='xdg-open'
cristy3ed852e2009-09-05 21:47:34 +00003197CatDelegateDefault='cat'
3198DNGDecodeDelegateDefault='ufraw-batch'
cristy66f238e2014-05-16 12:21:48 +00003199DOCDecodeDelegateDefault='soffice'
cristy3ed852e2009-09-05 21:47:34 +00003200GVCDecodeDelegateDefault='dot'
3201DVIDecodeDelegateDefault='dvips'
3202EchoDelegateDefault='echo'
3203EditorDelegateDefault='xterm'
cristy3ed852e2009-09-05 21:47:34 +00003204ConvertDelegateDefault=`echo convert | sed ${configure_transform_name}`
3205DisplayDelegateDefault=`echo display | sed ${configure_transform_name}`
3206MogrifyDelegateDefault=`echo mogrify | sed ${configure_transform_name}`
3207GnuplotDecodeDelegateDefault='gnuplot'
cristy3ed852e2009-09-05 21:47:34 +00003208HPGLDecodeDelegateDefault='hp2xx'
3209HTMLDecodeDelegateDefault='html2ps'
3210ILBMDecodeDelegateDefault='ilbmtoppm'
3211ILBMEncodeDelegateDefault='ppmtoilbm'
cristy71f53d52013-04-27 13:33:59 +00003212JXRDecodeDelegateDefault='JxrDecApp'
3213JXREncodeDelegateDefault='JxrEncApp'
cristy3ed852e2009-09-05 21:47:34 +00003214LPDelegateDefault='lp'
3215LPRDelegateDefault='lpr'
cristy3ed852e2009-09-05 21:47:34 +00003216LaunchDelegateDefault='gimp'
3217MANDelegateDefault='groff'
cristy81ab5af2013-10-06 18:28:39 +00003218MPEGDecodeDelegateDefault='avconv'
3219MPEGEncodeDelegateDefault='avconv'
cristy935c86e2010-06-05 23:50:07 +00003220MrSIDDecodeDelegateDefault='mrsidgeodecode'
cristy3ed852e2009-09-05 21:47:34 +00003221MVDelegateDefault='mv'
3222PCLDelegateDefault='pcl6'
3223PGPDecodeDelegateDefault='pgpv'
3224POVDelegateDefault='povray'
3225if test "$native_win32_build" = 'yes'; then
3226 PSDelegateDefault='gswin32c'
cristyb7931f12009-09-25 10:22:21 +00003227elif test "$gslib_framework" = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +00003228 PSDelegateDefault='gsc'
3229else
3230 PSDelegateDefault='gs'
3231fi
3232RLEEncodeDelegateDefault='rawtorle'
3233RMDelegateDefault='rm'
cristy5281e322012-02-09 21:12:45 +00003234RSVGDecodeDelegateDefault='rsvg-convert'
cristy3ed852e2009-09-05 21:47:34 +00003235SCANDecodeDelegateDefault='scanimage'
cristyec6934f2012-08-14 18:38:40 +00003236SVGDecodeDelegateDefault='inkscape'
cristy3ed852e2009-09-05 21:47:34 +00003237TXTDelegateDefault='enscript'
cristy16db5ed2010-07-29 13:32:02 +00003238UniconvertorDelegateDefault='uniconvertor'
cristy86e86092013-08-04 17:43:57 +00003239WebPDecodeDelegateDefault='dwebp'
3240WebPEncodeDelegateDefault='cwebp'
cristy3ed852e2009-09-05 21:47:34 +00003241WMFDecodeDelegateDefault='wmf2eps'
3242WWWDecodeDelegateDefault='curl'
3243XPSDelegateDefault='gxps'
3244ZipDelegateDefault='gzip'
3245
3246# Search for delegates
3247AC_PATH_PROG(AutotraceDecodeDelegate, "$AutotraceDecodeDelegateDefault", "$AutotraceDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003248AC_PATH_PROG(BlenderDecodeDelegate, "$BlenderDecodeDelegateDefault", "$BlenderDecodeDelegateDefault")
3249AC_PATH_PROG(BZIPDelegate, "$BZIPDelegateDefault", "$BZIPDelegateDefault")
cristyc59f0e72012-08-27 12:59:33 +00003250AC_PATH_PROGS(BrowseDelegate, "$BrowseDelegateDefault" google-chrome firefox konqueror mozilla lynx, "$BrowseDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003251AC_PATH_PROG(CatDelegate, "$CatDelegateDefault", "$CatDelegateDefault")
3252AC_PATH_PROG(DNGDecodeDelegate, "$DNGDecodeDelegateDefault", "$DNGDecodeDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003253AC_PATH_PROG(DOCDecodeDelegate, "$DOCDecodeDelegateDefault", "$DOCDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003254AC_PATH_PROG(DVIDecodeDelegate, "$DVIDecodeDelegateDefault", "$DVIDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003255AC_PATH_PROG(ConvertDelegate, "$ConvertDelegateDefault", "$ConvertDelegateDefault")
3256AC_PATH_PROG(DisplayDelegate, "$DisplayDelegateDefault", "$DisplayDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003257AC_PATH_PROG(EchoDelegate, "$EchoDelegateDefault", "$EchoDelegateDefault")
3258AC_PATH_PROG(EditorDelegate, "$EditorDelegateDefault", "$EditorDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003259AC_PATH_PROG(GnuplotDecodeDelegate, "$GnuplotDecodeDelegateDefault", "$GnuplotDecodeDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003260AC_PATH_PROG(GVCDecodeDelegate, "$GVCDecodeDelegateDefault", "$GVCDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003261AC_PATH_PROG(HPGLDecodeDelegate, "$HPGLDecodeDelegateDefault", "$HPGLDecodeDelegateDefault")
3262AC_PATH_PROG(HTMLDecodeDelegate, "$HTMLDecodeDelegateDefault", "$HTMLDecodeDelegateDefault")
3263AC_PATH_PROG(ILBMDecodeDelegate, "$ILBMDecodeDelegateDefault", "$ILBMDecodeDelegateDefault")
3264AC_PATH_PROG(ILBMEncodeDelegate, "$ILBMEncodeDelegateDefault", "$ILBMEncodeDelegateDefault")
cristy71f53d52013-04-27 13:33:59 +00003265AC_PATH_PROG(JXRDecodeDelegate, "$JXRDecodeDelegateDefault", "$JXRDecodeDelegateDefault")
3266AC_PATH_PROG(JXREncodeDelegate, "$JXREncodeDelegateDefault", "$JXREncodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003267AC_PATH_PROG(LPDelegate, "$LPDelegateDefault", no)
3268AC_PATH_PROG(LPRDelegate, "$LPRDelegateDefault", "$LPRDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003269AC_PATH_PROG(LaunchDelegate, "$LaunchDelegateDefault", "$LaunchDelegateDefault")
3270AC_PATH_PROG(MANDelegate, "$MANDelegateDefault", "$MANDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003271AC_PATH_PROG(MogrifyDelegate, "$MogrifyDelegateDefault", "$MogrifyDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003272AC_PATH_PROG(MPEGDecodeDelegate, "$MPEGDecodeDelegateDefault", "$MPEGDecodeDelegateDefault")
cristy81ab5af2013-10-06 18:28:39 +00003273if test "$MPEGDecodeDelegate" == "$MPEGDecodeDelegateDefault" ; then
3274 MPEGDecodeDelegateDefault='ffmpeg'
3275 AC_PATH_PROG(MPEGDecodeDelegate, "$MPEGDecodeDelegateDefault", "$MPEGDecodeDelegateDefault")
3276fi;
cristy3ed852e2009-09-05 21:47:34 +00003277AC_PATH_PROG(MPEGEncodeDelegate, "$MPEGEncodeDelegateDefault", "$MPEGEncodeDelegateDefault")
cristy81ab5af2013-10-06 18:28:39 +00003278if test "$MPEGEncodeDelegate" == "$MPEGEncodeDelegateDefault" ; then
3279 MPEGEncodeDelegateDefault='ffmpeg'
3280 AC_PATH_PROG(MPEGEncodeDelegate, "$MPEGEncodeDelegateDefault", "$MPEGEncodeDelegateDefault")
3281fi;
cristy935c86e2010-06-05 23:50:07 +00003282AC_PATH_PROG(MrSIDDecodeDelegate, "$MrSIDDecodeDelegateDefault", "$MrSIDDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003283AC_PATH_PROG(MVDelegate, "$MVDelegateDefault", "$MVDelegateDefault")
3284AC_PATH_PROG(PCLDelegate, "$PCLDelegateDefault", "$PCLDelegateDefault")
3285AC_PATH_PROG(PGPDecodeDelegate, "$PGPDecodeDelegateDefault", "$PGPDecodeDelegateDefault")
3286AC_PATH_PROG(POVDelegate, "$POVDelegateDefault", "$POVDelegateDefault")
3287AC_PATH_PROGS(PSDelegate, gsx gsc "$PSDelegateDefault", "$PSDelegateDefault")
3288AC_PATH_PROG(RLEEncodeDelegate, "$RLEEncodeDelegateDefault", "$RLEEncodeDelegateDefault")
3289AC_PATH_PROG(RMDelegate, "$RMDelegateDefault", "$RMDelegateDefault")
cristy4689cf02010-02-17 21:15:45 +00003290AC_PATH_PROG(RSVGDecodeDelegate, "$RSVGDecodeDelegateDefault", "$RSVGDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003291AC_PATH_PROG(SCANDecodeDelegate, "$SCANDecodeDelegateDefault", "$SCANDecodeDelegateDefault")
cristyec6934f2012-08-14 18:38:40 +00003292AC_PATH_PROG(SVGDecodeDelegate, "$SVGDecodeDelegateDefault", "$SVGDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003293AC_PATH_PROG(TXTDelegate, "$TXTDelegateDefault", "$TXTDelegateDefault")
cristy5ac9ac82010-07-29 13:24:24 +00003294AC_PATH_PROG(UniconvertorDelegate, "$UniconvertorDelegateDefault", "$UniconvertorDelegateDefault")
cristy86e86092013-08-04 17:43:57 +00003295AC_PATH_PROG(WebPDecodeDelegate, "$WebPDecodeDelegateDefault", "$WebPDecodeDelegateDefault")
3296AC_PATH_PROG(WebPEncodeDelegate, "$WebPEncodeDelegateDefault", "$WebPEncodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003297AC_PATH_PROG(WMFDecodeDelegate, "$WMFDecodeDelegateDefault", "$WMFDecodeDelegateDefault")
3298AC_PATH_PROG(WWWDecodeDelegate, "$WWWDecodeDelegateDefault", "$WWWDecodeDelegateDefault")
3299AC_PATH_PROG(XPSDelegate, "$XPSDelegateDefault", "$XPSDelegateDefault")
3300AC_PATH_PROG(ZipDelegate, "$ZipDelegateDefault", "$ZipDelegateDefault")
3301
3302# Prefer lpr to lp; lp needs options tacked on.
3303if test "$LPRDelegate" != no; then
3304 PrintDelegate="$LPRDelegate"
3305else
3306 PrintDelegate="$LPDelegate -c -s"
3307fi
3308AC_SUBST(PrintDelegate)
3309
3310# Installed ImageMagick utiltity paths
3311ConvertDelegate="${BIN_DIR}/${ConvertDelegateDefault}"
3312DisplayDelegate="${BIN_DIR}/${DisplayDelegateDefault}"
3313MogrifyDelegate="${BIN_DIR}/${MogrifyDelegateDefault}"
3314
3315# Set delegate booleans
cristy81ab5af2013-10-06 18:28:39 +00003316have_avconv='no'; if test "$MPEGDecodeDelegate" != "$MPEGDecodeDelegateDefault" ; then have_avconv='yes'; fi
cristy3ed852e2009-09-05 21:47:34 +00003317have_gs='no' ; if test "$PSDelegate" != "$PSDelegateDefault"; then have_gs='yes'; fi
3318have_hp2xx='no' ; if test "$HPGLDecodeDelegate" != "$HPGLDecodeDelegateDefault" ; then have_hp2xx='yes'; fi
3319have_ilbmtoppm='no' ; if test "$ILBMDecodeDelegate" != "$ILBMDecodeDelegateDefault" ; then have_ilbmtoppm='yes'; fi
cristy935c86e2010-06-05 23:50:07 +00003320have_mrsid='no'; if test "$MrSIDDecodeDelegate" != "$MrSIDDecodeDelegateDefault" ; then have_mrsid='yes'; fi
cristy3ed852e2009-09-05 21:47:34 +00003321have_pcl='no' ; if test "$PCLDelegate" != "$PCLDelegateDefault"; then have_pcl='yes'; fi
3322have_ppmtoilbm='no' ; if test "$ILBMEncodeDelegate" != "$ILBMEncodeDelegateDefault" ; then have_ppmtoilbm='yes'; fi
cristy3ed852e2009-09-05 21:47:34 +00003323have_xps='no' ; if test "$XPSDelegate" != "$XPSDelegateDefault"; then have_xps='yes'; fi
3324
3325#
3326# Test for font directories
3327#
3328type_include_files=''
3329
cristy430a7312010-01-21 20:44:04 +00003330# Dejavu fonts.
3331AC_MSG_CHECKING(for Dejavu fonts directory)
3332dejavu_font_dir=''
3333if test "${with_dejavu_font_dir}" != 'default'; then
3334 dejavu_font_dir="${with_dejavu_font_dir}/"
3335else
3336 for font_dir in "${prefix}/share/dejavu/fonts/" '/usr/share/fonts/dejavu/'; do
3337 if test -f "${font_dir}DejaVuSerif.ttf"; then
3338 dejavu_font_dir="${font_dir}"
3339 break 1
3340 fi
3341 done
3342fi
3343if test "${dejavu_font_dir}x" != 'x'; then
3344 type_include_files="${type_include_files} "'<include file="type-dejavu.xml" />'
cristyad38abe2012-12-23 23:03:21 +00003345 AC_MSG_RESULT([$dejavu_font_dir])
cristy430a7312010-01-21 20:44:04 +00003346else
cristyad38abe2012-12-23 23:03:21 +00003347 AC_MSG_RESULT([not found!]);
cristy430a7312010-01-21 20:44:04 +00003348fi
3349AC_SUBST(dejavu_font_dir)
3350
cristy3ed852e2009-09-05 21:47:34 +00003351# Windows
3352windows_font_dir=''
3353if test "$with_windows_font_dir" != "no" && test -n "$with_windows_font_dir"; then
3354 windows_font_dir="${with_windows_font_dir}/"
3355fi
cristy430a7312010-01-21 20:44:04 +00003356if test "${windows_font_dir}x" != 'x'; then
cristy3ed852e2009-09-05 21:47:34 +00003357 if test -f '/usr/X11R6/lib/X11/fonts/truetype/arial.ttf'; then
3358 windows_font_dir='/usr/X11R6/lib/X11/fonts/truetype/'
3359 fi
3360 if test -f '/usr/X11R7/lib/X11/fonts/truetype/arial.ttf'; then
3361 windows_font_dir='/usr/X11R7/lib/X11/fonts/truetype/'
3362 fi
3363 if test -f '/usr/share/fonts/msttcore/arial.ttf'; then
3364 windows_font_dir='/usr/share/fonts/msttcore/truetype/'
3365 fi
3366fi
cristy430a7312010-01-21 20:44:04 +00003367if test "${windows_font_dir}x" != 'x'; then
cristy3ed852e2009-09-05 21:47:34 +00003368 type_include_files="$type_include_files "'<include file="type-windows.xml" />'
3369fi
3370AC_SUBST(windows_font_dir)
3371
3372# Ghostscript
3373AC_MSG_CHECKING(for Ghostscript fonts directory)
3374ghostscript_font_dir=''
3375if test "${with_gs_font_dir}" != 'default'; then
3376 ghostscript_font_dir="${with_gs_font_dir}/"
3377else
3378 if test "${native_win32_build}" = 'yes'; then
3379 # Native Windows Build
3380 for font_dir in "c:\\Program Files\\gs\\fonts\\" "c:\\Program Files \(x86\)\\gs\\fonts\\" "c:\\gs\\fonts\\"; do
3381 if test -f "${font_dir}a010013l.pfb"; then
3382 ghostscript_font_dir="$font_dir"
3383 break 1
3384 fi
3385 done
3386 if test "${PSDelegate}" != 'gswin32c'; then
3387 ghostscript_font_dir=`echo "${PSDelegate}" | sed -e 's:/gs/.*:/gs:;s:^/::;s/./&:/;s:/:\\\\:g'`"\\fonts\\"
3388 fi
3389 else
3390 # Linux / Mac OS X / Unix Build
3391 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
3392 if test -f "${font_dir}a010013l.pfb"; then
3393 ghostscript_font_dir="${font_dir}"
3394 break 1
3395 fi
3396 done
3397 if test "${ghostscript_font_dir}x" = 'x'; then
3398 if test "$PSDelegate" != 'gs'; then
3399 ghostscript_font_dir=`echo "$PSDelegate" | sed -e 's:/bin/gs:/share/ghostscript/fonts:'`"/"
3400 fi
3401 fi
3402 fi
3403fi
3404if test "${ghostscript_font_dir}x" != 'x'; then
3405 type_include_files="${type_include_files} "'<include file="type-ghostscript.xml" />'
cristyad38abe2012-12-23 23:03:21 +00003406 AC_MSG_RESULT([$ghostscript_font_dir])
cristy3ed852e2009-09-05 21:47:34 +00003407else
cristyad38abe2012-12-23 23:03:21 +00003408 AC_MSG_RESULT([not found!]);
cristy3ed852e2009-09-05 21:47:34 +00003409fi
3410AC_SUBST(ghostscript_font_dir)
3411case "${build_os}" in
3412 mingw* )
3413 PSDelegate=`$WinPathScript "$PSDelegate" 1`
3414 ;;
3415esac
3416
3417AC_SUBST(type_include_files)
3418
3419#
3420# Handle case where user doesn't want frozen paths
3421#
3422if test "$with_frozenpaths" != 'yes'; then
3423 # Re-set delegate definitions to default (no paths)
3424 AutotraceDecodeDelegate="$AutotraceDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003425 BlenderDecodeDelegate="$BlenderDecodeDelegateDefault"
3426 BZIPDelegate="$BZIPDelegateDefault"
3427 BrowseDelegate="$BrowseDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003428 CatDelegate="$CatDelegateDefault"
3429 ConvertDelegate="$ConvertDelegateDefault"
cristy71f53d52013-04-27 13:33:59 +00003430 DisplayDelegate="$DisplayDelegateDefault"
3431 DNGDecodeDelegate="$DNGDecodeDelegateDefault"
cristy66f238e2014-05-16 12:21:48 +00003432 DOCDecodeDelegate="$DOCDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003433 DVIDecodeDelegate="$DVIDecodeDelegateDefault"
3434 EchoDelegate="$EchoDelegateDefault"
3435 EditorDelegate="$EditorDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003436 GnuplotDecodeDelegate="$GnuplotDecodeDelegateDefault"
cristy71f53d52013-04-27 13:33:59 +00003437 GVCDecodeDelegate="$GVCDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003438 HPGLDecodeDelegate="$HPGLDecodeDelegateDefault"
3439 HTMLDecodeDelegate="$HTMLDecodeDelegateDefault"
3440 ILBMDecodeDelegate="$ILBMDecodeDelegateDefault"
3441 ILBMEncodeDelegate="$ILBMEncodeDelegateDefault"
cristy71f53d52013-04-27 13:33:59 +00003442 JXRDecodeDelegate="$JXRDecodeDelegateDefault"
3443 JXREncodeDelegate="$JXREncodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003444 LPDelegate="$LPDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003445 LaunchDelegate="$LaunchDelegateDefault"
3446 MANDelegate="$MANDelegateDefault"
3447 MPEGDecodeDelegate="$MPEGDecodeDelegateDefault"
3448 MPEGEncodeDelegate="$MPEGEncodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003449 MogrifyDelegate="$MogrifyDelegateDefault"
cristy935c86e2010-06-05 23:50:07 +00003450 MrSIDDecodeDelegate="$MrSIDDecodeDelegateDefault"
3451 MVDelegate="$MVDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003452 PCLDelegate="$PCLDelegateDefault"
3453 PGPDecodeDelegate="$PGPDecodeDelegateDefault"
3454 POVDelegate="$POVDelegateDefault"
3455 PSDelegate="$PSDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003456 RLEEncodeDelegate="$RLEEncodeDelegateDefault"
3457 RMDelegate="$RMDelegateDefault"
cristy4689cf02010-02-17 21:15:45 +00003458 RSVGDecodeDelegate="$RSVGDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003459 SCANDecodeDelegate="$SCANDecodeDelegateDefault"
cristyec6934f2012-08-14 18:38:40 +00003460 SVGDecodeDelegate="$SVGDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003461 ShowImageDelegate="$ShowImageDelegateDefault"
3462 TXTDelegate="$TXTDelegateDefault"
cristy5ac9ac82010-07-29 13:24:24 +00003463 UniconvertorDelegate="$UniconvertorDelegateDefault"
cristy86e86092013-08-04 17:43:57 +00003464 WebPDecodeDelegate="$WebPDecodeDelegateDefault"
3465 WebPEncodeDelegate="$WebPEncodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003466 WMFDecodeDelegate="$WMFDecodeDelegateDefault"
3467 WWWDecodeDelegate="$WWWDecodeDelegateDefault"
3468 XPSDelegate="$XPSDelegateDefault"
3469 ZipDelegate="$ZipDelegateDefault"
3470fi
3471
3472# Delegate substitutions
3473AC_SUBST(AutotraceDecodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003474AC_SUBST(BlenderDecodeDelegate)
3475AC_SUBST(BZIPDelegate)
3476AC_SUBST(BrowseDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003477AC_SUBST(CatDelegate)
3478AC_SUBST(ConvertDelegate)
3479AC_SUBST(GVCDecodeDelegate)
3480AC_SUBST(DVIDecodeDelegate)
3481AC_SUBST(EchoDelegate)
3482AC_SUBST(EditorDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003483AC_SUBST(GnuplotDecodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003484AC_SUBST(HPGLDecodeDelegate)
3485AC_SUBST(HTMLDecodeDelegate)
3486AC_SUBST(ILBMDecodeDelegate)
3487AC_SUBST(ILBMEncodeDelegate)
cristy71f53d52013-04-27 13:33:59 +00003488AC_SUBST(JXRDecodeDelegate)
3489AC_SUBST(JXREncodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003490AC_SUBST(LPDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003491AC_SUBST(LaunchDelegate)
3492AC_SUBST(MANDelegate)
3493AC_SUBST(MPEGDecodeDelegate)
3494AC_SUBST(MPEGEncodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003495AC_SUBST(MogrifyDelegate)
cristy935c86e2010-06-05 23:50:07 +00003496AC_SUBST(MrSIDDecodeDelegate)
3497AC_SUBST(MVDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003498AC_SUBST(PCLDelegate)
3499AC_SUBST(PGPDecodeDelegate)
3500AC_SUBST(POVDelegate)
3501AC_SUBST(PSDelegate)
3502AC_SUBST(RLEEncodeDelegate)
3503AC_SUBST(RMDelegate)
3504AC_SUBST(SCANDecodeDelegate)
3505AC_SUBST(ShowImageDelegate)
3506AC_SUBST(TXTDelegate)
cristy5ac9ac82010-07-29 13:24:24 +00003507AC_SUBST(UniconvertorDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003508AC_SUBST(WMFDecodeDelegate)
cristy86e86092013-08-04 17:43:57 +00003509AC_SUBST(WebPDecodeDelegate)
3510AC_SUBST(WebPEncodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003511AC_SUBST(WWWDecodeDelegate)
3512AC_SUBST(XPSDelegate)
3513AC_SUBST(ZipDelegate)
3514
3515#
3516# RPM support.
3517#
3518RPM=''
3519AC_CHECK_PROGS(TAR,gnutar gtar tar)
3520AC_CHECK_PROGS(PERL,perl)
3521AC_CHECK_PROGS(RPM,rpmbuild rpm)
3522AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
3523AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
3524AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
3525AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
3526AC_SUBST(RPM)
3527AM_CONDITIONAL(RPM_DELEGATE, test "x$RPM" != "x" )
3528
3529#
3530# 7ZIP support (http://p7zip.sourceforge.net/)
3531#
3532P7ZIP=''
3533AC_CHECK_PROGS(P7ZIP,[7za])
3534AC_SUBST(P7ZIP)
3535AM_CONDITIONAL(P7ZIP_DELEGATE, test "x$P7ZIP" != "x" )
3536
3537#
3538# ZIP support (http://www.info-zip.org/Zip.html)
3539#
3540ZIP=''
3541AC_CHECK_PROGS(ZIP,[zip])
3542AC_SUBST(ZIP)
3543AM_CONDITIONAL(ZIP_DELEGATE, test "x$ZIP" != "x" )
3544
3545#
3546# GhostPCL related configuration.
3547#
3548PCLColorDevice=ppmraw
cristy8bc84082011-09-07 13:57:00 +00003549PCLCMYKDevice=pamcmyk32
cristy3ed852e2009-09-05 21:47:34 +00003550PCLMonoDevice=pbmraw
3551if test -z "$PCLVersion"; then
3552 PCLVersion='unknown'
3553fi
3554if test $have_pcl = 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00003555 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003556 AC_MSG_CHECKING([for PCL])
cristyad38abe2012-12-23 23:03:21 +00003557 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003558 # PCLColorDevice
3559 AC_MSG_CHECKING([for pcl color device])
3560 if $PCLDelegate -dBATCH -sDEVICE=$PCLColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3561 :
3562 else
3563 PCLColorDevice=ppmraw
3564 fi
cristyad38abe2012-12-23 23:03:21 +00003565 AC_MSG_RESULT([$PCLColorDevice])
cristy3ed852e2009-09-05 21:47:34 +00003566
3567 # PCLCMYKDevice
3568 AC_MSG_CHECKING([for pcl CMYK device])
3569 if $PCLDelegate -dBATCH -sDEVICE=$PCLColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3570 :
3571 else
3572 PCLCMYKDevice=$PCLColorDevice
3573 fi
cristyad38abe2012-12-23 23:03:21 +00003574 AC_MSG_RESULT([$PCLCMYKDevice])
cristy3ed852e2009-09-05 21:47:34 +00003575
3576 # PCLMonoDevice
3577 AC_MSG_CHECKING([for pcl mono device])
3578 if $PCLDelegate -dBATCH -sDEVICE=$PCLMonoDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3579 :
3580 else
3581 PCLMonoDevice=$PCLColorDevice
3582 fi
cristyad38abe2012-12-23 23:03:21 +00003583 AC_MSG_RESULT([$PCLMonoDevice])
cristy3ed852e2009-09-05 21:47:34 +00003584fi
3585
3586AC_SUBST(PCLMonoDevice)
3587AC_SUBST(PCLColorDevice)
3588AC_SUBST(PCLCMYKDevice)
3589AC_SUBST(PCLVersion)
3590
3591#
3592# GhostXPS related configuration.
3593#
3594XPSColorDevice=ppmraw
3595XPSCMYKDevice=bmpsep8
3596XPSMonoDevice=pbmraw
3597if test -z "$XPSVersion"; then
3598 XPSVersion='unknown'
3599fi
3600if test $have_xps = 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00003601 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003602 AC_MSG_CHECKING([for XPS])
cristyad38abe2012-12-23 23:03:21 +00003603 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003604 # XPSColorDevice
3605 AC_MSG_CHECKING([for xps color device])
3606 if $XPSDelegate -dBATCH -sDEVICE=$XPSColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3607 :
3608 else
3609 XPSColorDevice=ppmraw
3610 fi
cristyad38abe2012-12-23 23:03:21 +00003611 AC_MSG_RESULT([$XPSColorDevice])
cristy3ed852e2009-09-05 21:47:34 +00003612
3613 # XPSCMYKDevice
3614 AC_MSG_CHECKING([for xps CMYK device])
3615 if $XPSDelegate -dBATCH -sDEVICE=$XPSColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3616 :
3617 else
3618 XPSCMYKDevice=$XPSColorDevice
3619 fi
cristyad38abe2012-12-23 23:03:21 +00003620 AC_MSG_RESULT([$XPSCMYKDevice])
cristy3ed852e2009-09-05 21:47:34 +00003621
3622 # XPSMonoDevice
3623 AC_MSG_CHECKING([for xps mono device])
3624 if $XPSDelegate -dBATCH -sDEVICE=$XPSMonoDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3625 :
3626 else
3627 XPSMonoDevice=$XPSColorDevice
3628 fi
cristyad38abe2012-12-23 23:03:21 +00003629 AC_MSG_RESULT([$XPSMonoDevice])
cristy3ed852e2009-09-05 21:47:34 +00003630fi
3631
3632AC_SUBST(XPSMonoDevice)
3633AC_SUBST(XPSColorDevice)
3634AC_SUBST(XPSCMYKDevice)
3635AC_SUBST(XPSVersion)
3636
3637#
3638# Ghostscript related configuration.
3639#
cristya97426c2011-02-04 01:41:27 +00003640GSAlphaDevice=pngalpha
cristy3ed852e2009-09-05 21:47:34 +00003641GSColorDevice=pnmraw
3642GSCMYKDevice=pam
3643GSMonoDevice=pbmraw
3644GSPDFDevice=pdfwrite
cristyb096ea52013-10-26 20:56:38 +00003645GSPSDevice=ps2write
cristy3ed852e2009-09-05 21:47:34 +00003646GSEPSDevice=epswrite
3647GSVersion='unknown'
3648if test $have_gs = 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00003649 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003650 AC_MSG_CHECKING([for Ghostscript])
cristyad38abe2012-12-23 23:03:21 +00003651 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003652 AC_MSG_CHECKING([for Ghostscript version])
3653 if GSVersion=`$PSDelegate --version`; then
3654 :
3655 else
3656 GSVersion=`$PSDelegate --help | sed -e '1q' | awk '{ print $3 }'`
3657 fi
cristyad38abe2012-12-23 23:03:21 +00003658 AC_MSG_RESULT([$GSVersion])
cristy3ed852e2009-09-05 21:47:34 +00003659
3660 # GSAlphaDevice
3661 AC_MSG_CHECKING([for gs alpha device])
3662 if $PSDelegate -q -dBATCH -sDEVICE=$GSAlphaDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3663 :
3664 else
3665 GSAlphaDevice=pnmraw
3666 fi
cristyad38abe2012-12-23 23:03:21 +00003667 AC_MSG_RESULT([$GSAlphaDevice])
cristy3ed852e2009-09-05 21:47:34 +00003668
3669 # GSColorDevice
3670 AC_MSG_CHECKING([for gs color device])
3671 if $PSDelegate -q -dBATCH -sDEVICE=$GSColorDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3672 :
3673 else
3674 GSColorDevice=pnmraw
3675 fi
cristyad38abe2012-12-23 23:03:21 +00003676 AC_MSG_RESULT([$GSColorDevice])
cristy3ed852e2009-09-05 21:47:34 +00003677
3678 # GSCMYKDevice
3679 AC_MSG_CHECKING([for gs CMYK device])
3680 if $PSDelegate -q -dBATCH -sDEVICE=$GSCMYKDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3681 :
3682 else
3683 GSCMYKDevice=bmpsep8
3684 fi
cristyad38abe2012-12-23 23:03:21 +00003685 AC_MSG_RESULT([$GSCMYKDevice])
cristy3ed852e2009-09-05 21:47:34 +00003686
3687 # GSMonoDevice
3688 AC_MSG_CHECKING([for gs mono device])
3689 if $PSDelegate -q -dBATCH -sDEVICE=$GSMonoDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3690 :
3691 else
3692 GSMonoDevice=$GSColorDevice
3693 fi
cristyad38abe2012-12-23 23:03:21 +00003694 AC_MSG_RESULT([$GSMonoDevice])
cristy3ed852e2009-09-05 21:47:34 +00003695
3696 # GSPDFDevice
3697 AC_MSG_CHECKING([for gs PDF writing device])
3698 if $PSDelegate -q -dBATCH -sDEVICE=$GSPDFDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3699 :
3700 else
3701 GSPDFDevice=nodevice
3702 fi
cristyad38abe2012-12-23 23:03:21 +00003703 AC_MSG_RESULT([$GSPDFDevice])
cristy3ed852e2009-09-05 21:47:34 +00003704
3705 # GSPSDevice
3706 AC_MSG_CHECKING([for gs PS writing device])
3707 if $PSDelegate -q -dBATCH -sDEVICE=$GSPSDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3708 :
3709 else
3710 GSPSDevice=nodevice
3711 fi
cristyad38abe2012-12-23 23:03:21 +00003712 AC_MSG_RESULT([$GSPSDevice])
cristy3ed852e2009-09-05 21:47:34 +00003713
3714 # GSEPSDevice
3715 AC_MSG_CHECKING([for gs EPS writing device])
3716 if $PSDelegate -q -dBATCH -sDEVICE=$GSEPSDevice -sOutputFile=/dev/null < /dev/null 2> /dev/null; then
3717 :
3718 else
3719 GSEPSDevice=nodevice
3720 fi
cristyad38abe2012-12-23 23:03:21 +00003721 AC_MSG_RESULT([$GSEPSDevice])
cristy3ed852e2009-09-05 21:47:34 +00003722fi
3723
3724AC_SUBST(GSAlphaDevice)
3725AC_SUBST(GSCMYKDevice)
3726AC_SUBST(GSColorDevice)
3727AC_SUBST(GSEPSDevice)
3728AC_SUBST(GSMonoDevice)
3729AC_SUBST(GSPDFDevice)
3730AC_SUBST(GSPSDevice)
3731AC_SUBST(GSVersion)
3732
3733#
3734# PerlMagick-related configuration
3735#
3736
3737# Look for PERL if PerlMagick requested
3738# If name/path of desired PERL interpreter is specified, look for that one first
3739have_perl='no'
3740if test "$with_perl" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00003741 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003742 AC_MSG_CHECKING([for Perl])
cristyad38abe2012-12-23 23:03:21 +00003743 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003744 if test "$with_perl" != 'yes'; then
3745 AC_CACHE_CHECK(for perl,ac_cv_path_PERL,ac_cv_path_PERL="$with_perl");
3746 PERL=$ac_cv_path_PERL
3747 AC_SUBST(PERL)dnl
3748 have_perl="$ac_cv_path_PERL"
3749 else
3750 AC_PATH_PROGS(PERL,perl perl5,)dnl
3751 if test "$ac_cv_path_PERL"; then
3752 have_perl="$ac_cv_path_PERL"
3753 fi
3754 fi
3755fi
3756
cristy949301e2010-01-06 01:38:40 +00003757if test "$with_perl" != 'yes' ; then
3758 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-perl=$with_perl "
3759fi
3760
3761PERL_SUPPORTS_DESTDIR='no'
3762
cristy3ed852e2009-09-05 21:47:34 +00003763with_perl_static='no'
3764with_perl_dynamic='no'
3765if test "$have_perl" != 'no'; then
3766 if test "$with_perl" != 'no' && test "$libtool_build_shared_libs" = 'no'; then
3767 with_perl_static='yes'
3768 fi
3769 if test "$with_perl" != 'no' && test "$libtool_build_shared_libs" = 'yes'; then
3770 with_perl_dynamic='yes'
3771 fi
3772 # Is PERL's MakeMaker new enough to support DESTDIR?
cristy964cb7f2010-04-25 23:18:00 +00003773 AX_PROG_PERL_VERSION(5.8.1,[PERL_SUPPORTS_DESTDIR='yes'],[PERL_SUPPORTS_DESTDIR='no'])
cristy3ed852e2009-09-05 21:47:34 +00003774fi
3775AM_CONDITIONAL(WITH_PERL, test "$have_perl" != 'no')
3776AM_CONDITIONAL(WITH_PERL_STATIC, test $with_perl_static = 'yes')
3777AM_CONDITIONAL(WITH_PERL_DYNAMIC, test $with_perl_dynamic = 'yes')
3778AC_SUBST(PERL_SUPPORTS_DESTDIR)
3779
3780# Determine path to pick up MagickCore library from for use with building PerlMagick
3781MAGICKCORE_PATH="${LIB_DIR}"
3782if test $with_perl_static = 'yes'; then
3783 # Find out where libtool hides its uninstalled libraries (as libtool_objdir)
3784 libtool_objdir=$objdir
3785
3786 # Linker search path to library, followed by -lMagickCore
cristy4c08aed2011-07-01 19:47:50 +00003787 MAGICKCORE_PATH="${builddir}/MagickCore/${libtool_objdir}"
cristy3ed852e2009-09-05 21:47:34 +00003788fi
3789AC_SUBST(MAGICKCORE_PATH)
3790
cristy2a3eb392012-12-17 13:39:20 +00003791# Create a simple string containing format names for all delegate libraries.
cristy422d5502012-12-22 22:20:57 +00003792MAGICK_DELEGATES=''
cristy2a3eb392012-12-17 13:39:20 +00003793if test "$have_autotrace" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003794 MAGICK_DELEGATES="$MAGICK_DELEGATES autotrace"
cristy3ed852e2009-09-05 21:47:34 +00003795fi
cristy2a3eb392012-12-17 13:39:20 +00003796if test "$have_bzlib" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003797 MAGICK_DELEGATES="$MAGICK_DELEGATES bzlib"
cristy2a3eb392012-12-17 13:39:20 +00003798fi
3799if test "$have_dps" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003800 MAGICK_DELEGATES="$MAGICK_DELEGATES dps"
cristy2a3eb392012-12-17 13:39:20 +00003801fi
3802if test "$have_djvu" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003803 MAGICK_DELEGATES="$MAGICK_DELEGATES djvu"
cristy2a3eb392012-12-17 13:39:20 +00003804fi
cristy81ab5af2013-10-06 18:28:39 +00003805if test "$have_avconv" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003806 MAGICK_DELEGATES="$MAGICK_DELEGATES mpeg"
cristy2a3eb392012-12-17 13:39:20 +00003807fi
3808if test "$have_fftw" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003809 MAGICK_DELEGATES="$MAGICK_DELEGATES fftw"
cristy2a3eb392012-12-17 13:39:20 +00003810fi
cristy2a3eb392012-12-17 13:39:20 +00003811if test "$have_fpx" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003812 MAGICK_DELEGATES="$MAGICK_DELEGATES fpx"
cristy2a3eb392012-12-17 13:39:20 +00003813fi
3814if test "$have_fontconfig" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003815 MAGICK_DELEGATES="$MAGICK_DELEGATES fontconfig"
cristy2a3eb392012-12-17 13:39:20 +00003816fi
3817if test "$have_freetype" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003818 MAGICK_DELEGATES="$MAGICK_DELEGATES freetype"
cristy2a3eb392012-12-17 13:39:20 +00003819fi
3820if test "$have_gslib" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003821 MAGICK_DELEGATES="$MAGICK_DELEGATES gslib"
cristy2a3eb392012-12-17 13:39:20 +00003822fi
3823if test "$have_jbig" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003824 MAGICK_DELEGATES="$MAGICK_DELEGATES jbig"
cristy2a3eb392012-12-17 13:39:20 +00003825fi
3826if test "$have_png$have_jpeg" = 'yesyes' ; then
cristy422d5502012-12-22 22:20:57 +00003827 MAGICK_DELEGATES="$MAGICK_DELEGATES jng"
cristy2a3eb392012-12-17 13:39:20 +00003828fi
3829if test "$have_jp2" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003830 MAGICK_DELEGATES="$MAGICK_DELEGATES jp2"
cristy2a3eb392012-12-17 13:39:20 +00003831fi
3832if test "$have_jpeg" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003833 MAGICK_DELEGATES="$MAGICK_DELEGATES jpeg"
cristy2a3eb392012-12-17 13:39:20 +00003834fi
3835if test "$have_lcms" = 'yes' || test "$have_lcms2" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003836 MAGICK_DELEGATES="$MAGICK_DELEGATES lcms"
cristy2a3eb392012-12-17 13:39:20 +00003837fi
3838if test "$have_lqr" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003839 MAGICK_DELEGATES="$MAGICK_DELEGATES lqr"
cristy2a3eb392012-12-17 13:39:20 +00003840fi
3841if test "$have_lzma" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003842 MAGICK_DELEGATES="$MAGICK_DELEGATES lzma"
cristy2a3eb392012-12-17 13:39:20 +00003843fi
3844if test "$have_openexr" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003845 MAGICK_DELEGATES="$MAGICK_DELEGATES openexr"
cristy2a3eb392012-12-17 13:39:20 +00003846fi
cristy99db3872014-01-01 15:11:34 +00003847if test "$have_openjp2" = 'yes' ; then
3848 MAGICK_DELEGATES="$MAGICK_DELEGATES openjp2"
cristy3fe09452014-01-01 12:29:14 +00003849fi
cristy2a3eb392012-12-17 13:39:20 +00003850if test "$have_pango" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003851 MAGICK_DELEGATES="$MAGICK_DELEGATES pango"
cristy2a3eb392012-12-17 13:39:20 +00003852fi
3853if test "$have_png" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003854 MAGICK_DELEGATES="$MAGICK_DELEGATES png"
cristy2a3eb392012-12-17 13:39:20 +00003855fi
3856have_ps='no'
3857if test "$have_dps" = 'yes' || \
3858 test "$have_gs" = 'yes' || \
3859 test "${native_win32_build}" = 'yes' ; then
3860 have_ps='yes'
3861fi
3862if test "$have_ps" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003863 MAGICK_DELEGATES="$MAGICK_DELEGATES ps"
cristy2a3eb392012-12-17 13:39:20 +00003864fi
cristy2a3eb392012-12-17 13:39:20 +00003865if test "$have_ra_ppm" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003866 MAGICK_DELEGATES="$MAGICK_DELEGATES rad"
cristy2a3eb392012-12-17 13:39:20 +00003867fi
3868if test "$have_rsvg" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003869 MAGICK_DELEGATES="$MAGICK_DELEGATES rsvg"
cristy2a3eb392012-12-17 13:39:20 +00003870fi
3871if test "$have_tiff" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003872 MAGICK_DELEGATES="$MAGICK_DELEGATES tiff"
cristy2a3eb392012-12-17 13:39:20 +00003873fi
3874if test "$have_ttf" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003875 MAGICK_DELEGATES="$MAGICK_DELEGATES ttf"
cristy2a3eb392012-12-17 13:39:20 +00003876fi
cristy3b640ed2013-07-29 00:27:59 +00003877if test "$have_webp" = 'yes' ; then
3878 MAGICK_DELEGATES="$MAGICK_DELEGATES webp"
3879fi
cristy2a3eb392012-12-17 13:39:20 +00003880if test "$have_wmf" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003881 MAGICK_DELEGATES="$MAGICK_DELEGATES wmf"
cristy2a3eb392012-12-17 13:39:20 +00003882fi
3883if test "$have_x" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003884 MAGICK_DELEGATES="$MAGICK_DELEGATES x"
cristy2a3eb392012-12-17 13:39:20 +00003885fi
3886if test "$have_xml" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003887 MAGICK_DELEGATES="$MAGICK_DELEGATES xml"
cristy2a3eb392012-12-17 13:39:20 +00003888fi
3889if test "$have_zlib" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003890 MAGICK_DELEGATES="$MAGICK_DELEGATES zlib"
cristy2a3eb392012-12-17 13:39:20 +00003891fi
cristy2a3eb392012-12-17 13:39:20 +00003892# Remove extraneous spaces from output variables (asthetic)
cristy422d5502012-12-22 22:20:57 +00003893MAGICK_DELEGATES=`echo $MAGICK_DELEGATES | sed -e 's/ */ /g'`
cristy2a3eb392012-12-17 13:39:20 +00003894MAGICK_FEATURES=`echo $MAGICK_FEATURES | sed -e 's/ */ /g'`
cristy422d5502012-12-22 22:20:57 +00003895AC_SUBST(MAGICK_DELEGATES)
cristyfa161182012-12-19 15:45:28 +00003896AC_SUBST(MAGICK_FEATURES)
cristy3ed852e2009-09-05 21:47:34 +00003897
3898#
3899# Handle special compiler flags
3900#
3901
3902# Add '-p' if prof source profiling support enabled
3903if test "$enable_prof" = 'yes'; then
3904 CFLAGS="-p $CFLAGS"
3905 CXXFLAGS="-p $CXXFLAGS"
3906 LDFLAGS="-p $LDFLAGS"
3907fi
3908
3909# Add '-pg' if gprof source profiling support enabled
3910if test "$enable_gprof" = 'yes'; then
3911 CFLAGS="-pg $CFLAGS"
3912 CXXFLAGS="-pg $CXXFLAGS"
3913 LDFLAGS="-pg $LDFLAGS"
3914fi
3915
3916# Add '-ftest-coverage -fprofile-arcs' if gcov source profiling support enabled
3917# This is a gcc-specific feature
3918if test "$enable_gcov" = 'yes'; then
3919 AC_CHECK_LIB(gcov,_gcov_init)
3920 AC_CHECK_LIB(gcov,__gcov_init)
3921 case "$target_os" in
3922 darwin*)
3923 OSX_GCOV_LDFLAG="-Wl,-single_module"
3924 ;;
3925 *)
3926 OSX_GCOV_LDFLAG=""
3927 ;;
3928 esac
3929 AC_SUBST(OSX_GCOV_LDFLAG)
3930 CFLAGS="-ftest-coverage -fprofile-arcs $CFLAGS"
3931 CXXFLAGS="-ftest-coverage -fprofile-arcs $CXXFLAGS"
3932 LDFLAGS="-ftest-coverage -fprofile-arcs $LDFLAGS"
3933fi
3934
3935#
3936# Build library dependency list for libMagickCore
3937#
3938
cristyc6722092012-10-14 00:19:31 +00003939if test "$build_modules" != 'no'; then
cristy5e2e2382014-04-20 02:06:01 +00003940 MAGICK_DEP_LIBS="$USER_LIBS $LCMS_LIBS $FREETYPE_LIBS $LQR_LIBS $FFTW_LIBS $FONTCONFIG_LIBS $XEXT_LIBS $IPC_LIBS $X11_LIBS $XT_LIBS $LZMA_LIBS $BZLIB_LIBS $ZLIB_LIBS $LTDL_LIBS $GDI32_LIBS $MATH_LIBS $GOMP_LIBS $CL_LIBS $UMEM_LIBS $THREAD_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003941else
cristy5e2e2382014-04-20 02:06:01 +00003942 MAGICK_DEP_LIBS="$USER_LIBS $JBIG_LIBS $LCMS_LIBS $TIFF_LIBS $FREETYPE_LIBS $JPEG_LIBS $GS_LIBS $LQR_LIBS $PNG_LIBS $AUTOTRACE_LIBS $DJVU_LIBS $FFTW_LIBS $FPX_LIBS $FONTCONFIG_LIBS $WEBP_LIBS $WMF_LIBS $DPS_LIBS $XEXT_LIBS $XT_LIBS $IPC_LIBS $X11_LIBS $LZMA_LIBS $BZLIB_LIBS $OPENEXR_LIBS $OPENJPEG_LIBS $PANGO_LIBS $RSVG_LIBS $XML_LIBS $GVC_LIBS $ZLIB_LIBS $GDI32_LIBS $MATH_LIBS $GOMP_LIBS $CL_LIBS $UMEM_LIBS $THREAD_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003943fi
3944AC_SUBST(MAGICK_DEP_LIBS)
3945
3946#
3947# Remove extraneous spaces from output variables (asthetic)
3948#
3949X_CFLAGS=`echo $X_CFLAGS | sed -e 's/ */ /g'`
3950X_PRE_LIBS=`echo $X_PRE_LIBS | sed -e 's/ */ /g'`
3951X_LIBS=`echo $X_LIBS | sed -e 's/ */ /g'`
3952X_EXTRA_LIBS=`echo $X_EXTRA_LIBS | sed -e 's/ */ /g'`
3953
3954CC=`echo $CC | sed -e 's/ */ /g'`
3955CFLAGS=`echo $CFLAGS | sed -e 's/ */ /g'`
3956CPPFLAGS=`echo $CPPFLAGS | sed -e 's/ */ /g'`
3957CXXFLAGS=`echo $CXXFLAGS | sed -e 's/ */ /g'`
cristy3ed852e2009-09-05 21:47:34 +00003958DISTCHECK_CONFIG_FLAGS=`echo $DISTCHECK_CONFIG_FLAGS | sed -e 's/ */ /g'`
3959LDFLAGS=`echo $LDFLAGS | sed -e 's/ */ /g'`
3960TESTED_LIBS=`echo $LIBS | sed -e 's/ */ /g'`
3961MAGICK_DEP_LIBS=`echo $MAGICK_DEP_LIBS | sed -e 's/ */ /g'`
3962#LIBS=`echo $LIBS | sed -e 's/ */ /g'`
3963
3964# Pass only user-provided LIBS as "global" libraries
3965LIBS=$USER_LIBS
3966
3967#AC_SUBST(CPPFLAGS)
3968AC_SUBST(X_CFLAGS)
3969#AC_SUBST(LDFLAGS)
3970#AC_SUBST(X_PRE_LIBS)
3971#AC_SUBST(X_LIBS)
3972#AC_SUBST(X_EXTRA_LIBS)
3973
3974MAGICK_CFLAGS=$CFLAGS
3975MAGICK_CXXFLAGS="$CXXFLAGS"
3976MAGICK_CPPFLAGS=`echo $MAGICK_CPPFLAGS | sed -e 's/ */ /g'`
3977MAGICK_PCFLAGS=`echo $MAGICK_PCFLAGS | sed -e 's/ */ /g'`
3978MAGICK_LDFLAGS="-L$LIB_DIR $LDFLAGS"
cristyd4ef6122013-10-17 15:00:03 +00003979MAGICK_LIBS="$MAGICK_DEP_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003980
3981AC_SUBST(MAGICK_CFLAGS)
3982AC_SUBST(MAGICK_CXXFLAGS)
3983AC_SUBST(MAGICK_CPPFLAGS)
3984AC_SUBST(MAGICK_PCFLAGS)
3985AC_SUBST(MAGICK_LDFLAGS)
3986AC_SUBST(MAGICK_LIBS)
cristy154f9fa2012-12-05 19:30:42 +00003987
cristy3ed852e2009-09-05 21:47:34 +00003988# Set configured scripts to executable.
3989AC_CONFIG_COMMANDS([default],[],[])
cristy2bd4b6e2012-07-22 15:29:11 +00003990AC_CONFIG_COMMANDS([magick.sh.in],[chmod +x magick.sh])
cristy4c08aed2011-07-01 19:47:50 +00003991AC_CONFIG_COMMANDS([MagickCore-config.in],[chmod +x MagickCore/MagickCore-config])
cristy4c08aed2011-07-01 19:47:50 +00003992AC_CONFIG_COMMANDS([MagickWand-config.in],[chmod +x MagickWand/MagickWand-config])
cristy3ed852e2009-09-05 21:47:34 +00003993AC_CONFIG_COMMANDS([Magick++-config.in],[chmod +x Magick++/bin/Magick++-config])
3994AC_CONFIG_COMMANDS([PerlMagick/check.sh.in],[chmod +x PerlMagick/check.sh])
3995
cristyad38abe2012-12-23 23:03:21 +00003996AC_MSG_RESULT([-------------------------------------------------------------])
3997AC_MSG_RESULT([Update ImageMagick configuration])
cristy3ed852e2009-09-05 21:47:34 +00003998AC_OUTPUT
3999
4000rm -f magick-version
4001
cristy430a7312010-01-21 20:44:04 +00004002result_dejavu_font_dir='none'
4003if test "${dejavu_font_dir}x" != 'x'; then
4004 result_dejavu_font_dir=$dejavu_font_dir
4005fi
4006
cristy3ed852e2009-09-05 21:47:34 +00004007result_ghostscript_font_dir='none'
4008if test "${ghostscript_font_dir}x" != 'x'; then
4009 result_ghostscript_font_dir=$ghostscript_font_dir
4010fi
4011
4012result_windows_font_dir='none'
4013if test "${windows_font_dir}x" != 'x'; then
4014 result_windows_font_dir=${windows_font_dir}
4015fi
4016
cristyad38abe2012-12-23 23:03:21 +00004017AC_MSG_RESULT([
cristy3ed852e2009-09-05 21:47:34 +00004018ImageMagick is configured as follows. Please verify that this configuration
4019matches your expectations.
4020
4021Host system type: $host
4022Build system type: $build
4023
4024 Option Value
4025-------------------------------------------------------------------------------
4026Shared libraries --enable-shared=$enable_shared $libtool_build_shared_libs
4027Static libraries --enable-static=$enable_static $libtool_build_static_libs
cristyc6722092012-10-14 00:19:31 +00004028Module support --with-modules=$build_modules $build_modules
cristy3ed852e2009-09-05 21:47:34 +00004029GNU ld --with-gnu-ld=$with_gnu_ld $lt_cv_prog_gnu_ld
4030Quantum depth --with-quantum-depth=$with_quantum_depth $with_quantum_depth
4031High Dynamic Range Imagery
4032 --enable-hdri=$enable_hdri $enable_hdri
4033
4034Delegate Configuration:
4035BZLIB --with-bzlib=$with_bzlib $have_bzlib
4036Autotrace --with-autotrace=$with_autotrace $have_autotrace
cristy430a7312010-01-21 20:44:04 +00004037Dejavu fonts --with-dejavu-font-dir=$with_dejavu_font_dir $result_dejavu_font_dir
cristy3ed852e2009-09-05 21:47:34 +00004038DJVU --with-djvu=$with_djvu $have_djvu
4039DPS --with-dps=$with_dps $have_dps
4040FFTW --with-fftw=$with_fftw $have_fftw
4041FlashPIX --with-fpx=$with_fpx $have_fpx
4042FontConfig --with-fontconfig=$with_fontconfig $have_fontconfig
4043FreeType --with-freetype=$with_freetype $have_freetype
4044GhostPCL None $PCLDelegate ($PCLVersion)
4045GhostXPS None $XPSDelegate ($XPSVersion)
4046Ghostscript None $PSDelegate ($GSVersion)
4047Ghostscript fonts --with-gs-font-dir=$with_gs_font_dir $result_ghostscript_font_dir
4048Ghostscript lib --with-gslib=$with_gslib $have_gslib
4049Graphviz --with-gvc=$with_gvc $have_gvc
4050JBIG --with-jbig=$with_jbig $have_jbig
4051JPEG v1 --with-jpeg=$with_jpeg $have_jpeg
4052JPEG-2000 --with-jp2=$with_jp2 $have_jp2
cristy71203402010-06-18 13:12:03 +00004053LCMS v1 --with-lcms=$with_lcms $have_lcms
4054LCMS v2 --with-lcms2=$with_lcms2 $have_lcms2
cristy99db3872014-01-01 15:11:34 +00004055LIBJPEG2 --with-openjp2=$with_openjp2 $have_openjp2
cristy3ed852e2009-09-05 21:47:34 +00004056LQR --with-lqr=$with_lqr $have_lqr
cristy5eef09f2012-10-16 12:08:28 +00004057LTDL --with-ltdl=$with_ltdl $have_ltdl
cristyfbb0ef02010-12-19 02:32:11 +00004058LZMA --with-lzma=$with_lzma $have_lzma
cristy3ed852e2009-09-05 21:47:34 +00004059Magick++ --with-magick-plus-plus=$with_magick_plus_plus $have_magick_plus_plus
4060OpenEXR --with-openexr=$with_openexr $have_openexr
cristy41cbe8a2011-10-27 01:35:18 +00004061PANGO --with-pango=$with_pango $have_pango
cristy3ed852e2009-09-05 21:47:34 +00004062PERL --with-perl=$with_perl $have_perl
4063PNG --with-png=$with_png $have_png
4064RSVG --with-rsvg=$with_rsvg $have_rsvg
4065TIFF --with-tiff=$with_tiff $have_tiff
cristyb1860752011-03-14 00:27:46 +00004066WEBP --with-webp=$with_webp $have_webp
cristy3ed852e2009-09-05 21:47:34 +00004067Windows fonts --with-windows-font-dir=$with_windows_font_dir $result_windows_font_dir
cristyea74c022012-12-01 00:53:32 +00004068WMF --with-wmf=$with_wmf $have_wmf
cristy3ed852e2009-09-05 21:47:34 +00004069X11 --with-x=$with_x $have_x
4070XML --with-xml=$with_xml $have_xml
4071ZLIB --with-zlib=$with_zlib $have_zlib
4072
4073X11 Configuration:
4074 X_CFLAGS = $X_CFLAGS
4075 X_PRE_LIBS = $X_PRE_LIBS
4076 X_LIBS = $X_LIBS
4077 X_EXTRA_LIBS = $X_EXTRA_LIBS
4078
4079Options used to compile and link:
4080 PREFIX = $PREFIX_DIR
4081 EXEC-PREFIX = $EXEC_PREFIX_DIR
4082 VERSION = $PACKAGE_VERSION
4083 CC = $CC
4084 CFLAGS = $CFLAGS
cristy03ae99f2014-04-28 16:34:55 +00004085 CPPFLAGS = $CPPFLAGS
4086 PCFLAGS = $PCFLAGS
cristy3ed852e2009-09-05 21:47:34 +00004087 DEFS = $DEFS
4088 LDFLAGS = $LDFLAGS
cristy03ae99f2014-04-28 16:34:55 +00004089 LIBS = $LIBS
cristy3ed852e2009-09-05 21:47:34 +00004090 CXX = $CXX
4091 CXXFLAGS = $CXXFLAGS
cristyfd9dcd42010-08-08 18:07:02 +00004092 FEATURES = $MAGICK_FEATURES
cristy422d5502012-12-22 22:20:57 +00004093 DELEGATES = $MAGICK_DELEGATES
cristy3ed852e2009-09-05 21:47:34 +00004094])