blob: df42a78fb32ed4b84e437d7d2419f3edd142c747 [file] [log] [blame]
Cristyf775a5c2019-11-26 14:27:47 -05001# Copyright 1999-2020 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#
Cristy1eccad32018-09-09 19:34:39 -04007# https://imagemagick.org/script/license.php
cristy3ed852e2009-09-05 21:47:34 +00008#
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
cristy9af1cbf2014-12-28 22:03:09 +000021# Process this file with autoconf to create configure script.
cristyc8051dc2012-08-20 23:50:31 +000022AC_PREREQ(2.69)
cristyfddf7752011-02-26 19:25:10 +000023
cristy9af1cbf2014-12-28 22:03:09 +000024# ==============================================================================
25# ImageMagick release.
26# ==============================================================================
cristy4c08aed2011-07-01 19:47:50 +000027m4_define([magick_major_version], [7])
28m4_define([magick_minor_version], [0])
Cristya16b0e02019-10-19 13:18:04 -040029m4_define([magick_micro_version], [9])
Cristyba4e8d62020-01-05 08:05:55 -050030m4_define([magick_patchlevel_version], [15])
cristyfddf7752011-02-26 19:25:10 +000031m4_define([magick_version],
cristy29eb34e2011-10-16 00:46:08 +000032 [magick_major_version.magick_minor_version.magick_micro_version-magick_patchlevel_version])
Cristyed7fd172019-12-07 10:52:28 -050033m4_define([magick_git_revision],
34 esyscmd([
35 c=$(git log --full-history --format=tformat:. HEAD | wc -l)
36 h=$(git rev-parse --short HEAD)
37 d=$(date +%Y%m%d)
38 printf %s "$c:$h:$d"
39 ]))
Cristyff282552015-09-19 16:49:39 -040040m4_define([magick_tar_name],[ImageMagick])
cristyfddf7752011-02-26 19:25:10 +000041
cristy9af1cbf2014-12-28 22:03:09 +000042# ==============================================================================
43# Initalize Automake
44# ==============================================================================
Cristy6720ed72016-02-09 09:27:35 -050045AC_INIT([ImageMagick],
46 [magick_version],
47 [https://github.com/ImageMagick/ImageMagick/issues],
48 [magick_tar_name],
Cristy1eccad32018-09-09 19:34:39 -040049 [https://imagemagick.org])
cristy4c08aed2011-07-01 19:47:50 +000050AC_CONFIG_SRCDIR([MagickCore/MagickCore.h])
cristy3ed852e2009-09-05 21:47:34 +000051AC_CONFIG_AUX_DIR([config])
cristybc556452012-08-17 19:44:03 +000052AC_REQUIRE_AUX_FILE([tap-driver.sh])
cristy3ed852e2009-09-05 21:47:34 +000053AC_CONFIG_MACRO_DIR([m4])
cristy3ed852e2009-09-05 21:47:34 +000054AC_CONFIG_HEADERS([config/config.h])
cristy01ff9f32012-12-01 18:15:29 +000055AX_PREFIX_CONFIG_H([MagickCore/magick-baseconfig.h],[MagickCore])
cristy9af1cbf2014-12-28 22:03:09 +000056AC_CANONICAL_SYSTEM
57AC_CANONICAL_TARGET
Cristye918c482019-06-14 22:05:47 -040058AM_INIT_AUTOMAKE([foreign color-tests -Wall -Wno-portability subdir-objects dist-bzip2 dist-lzip dist-xz dist-zip tar-ustar])
Cristy6720ed72016-02-09 09:27:35 -050059AM_SILENT_RULES([yes])
cristy3ed852e2009-09-05 21:47:34 +000060
61#
62# Save initial user-tunable values
63#
64USER_LIBS=$LIBS
Cristyed7fd172019-12-07 10:52:28 -050065for var in CC CFLAGS CPPFLAGS CXX CXXCPP LDFLAGS AR_FLAGS LIBS ; do
cristy3ed852e2009-09-05 21:47:34 +000066 eval isset=\${$var+set}
67 if test "$isset" = 'set'; then
68 eval val=$`echo $var`
69 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS}'${var}=${val}' "
70 fi
71done
72AC_SUBST(DISTCHECK_CONFIG_FLAGS)
73
74CONFIGURE_ARGS="$0 ${ac_configure_args}"
75AC_SUBST(CONFIGURE_ARGS)
76
cristy187791c2015-05-03 22:17:00 +000077AC_ARG_ENABLE([reproducible-build],
78 [AC_HELP_STRING([--enable-reproducible-build],
79 [enable reproducible build])],
80 [enable_reproducible_build=$enableval],
81 [enable_reproducible_build='no'])
82
cristy3ed852e2009-09-05 21:47:34 +000083# Source file containing package/library versioning information.
84. ${srcdir}/version.sh
85
cristy15a88782010-01-31 23:24:49 +000086echo "configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}${PACKAGE_VERSION_ADDENDUM}"
cristy3ed852e2009-09-05 21:47:34 +000087
cristy19615b82011-04-13 20:02:01 +000088MAGICK_TARGET_CPU=$host_cpu
cristy3225a072010-04-17 01:47:28 +000089AC_SUBST(MAGICK_TARGET_CPU)
cristy27d53d62012-07-29 23:30:07 +000090AC_DEFINE_UNQUOTED(MAGICK_TARGET_CPU,$MAGICK_TARGET_CPU,[Target Host CPU])
cristy3225a072010-04-17 01:47:28 +000091
cristy19615b82011-04-13 20:02:01 +000092MAGICK_TARGET_VENDOR=$host_vendor
cristy3225a072010-04-17 01:47:28 +000093AC_SUBST(MAGICK_TARGET_VENDOR)
cristy27d53d62012-07-29 23:30:07 +000094AC_DEFINE_UNQUOTED(MAGICK_TARGET_VENDOR,$MAGICK_TARGET_VENDOR,[Target Host Vendor])
cristy3225a072010-04-17 01:47:28 +000095
cristy19615b82011-04-13 20:02:01 +000096MAGICK_TARGET_OS=$host_os
cristy3225a072010-04-17 01:47:28 +000097AC_SUBST(MAGICK_TARGET_OS)
cristy27d53d62012-07-29 23:30:07 +000098AC_DEFINE_UNQUOTED(MAGICK_TARGET_OS,$MAGICK_TARGET_OS,[Target Host OS])
cristy3225a072010-04-17 01:47:28 +000099
cristy37442762013-02-10 21:07:23 +0000100
101# Substitute versioning
102AC_SUBST([MAGICK_MAJOR_VERSION],[magick_major_version])
103AC_SUBST([MAGICK_MINOR_VERSION],[magick_minor_version])
104AC_SUBST([MAGICK_MICRO_VERSION],[magick_micro_version])
105AC_SUBST([MAGICK_PATCHLEVEL_VERSION],[magick_patchlevel_version])
106AC_SUBST([MAGICK_VERSION],[magick_version])
Cristyfbb8d802015-09-02 11:41:34 -0400107AC_SUBST([MAGICK_GIT_REVISION],[magick_git_revision])
cristy37442762013-02-10 21:07:23 +0000108
cristy3ed852e2009-09-05 21:47:34 +0000109# Substitute library versioning
110AC_SUBST(MAGICK_LIBRARY_CURRENT)dnl
111AC_SUBST(MAGICK_LIBRARY_REVISION)dnl
112AC_SUBST(MAGICK_LIBRARY_AGE)dnl
cristybab87c32010-02-09 20:54:22 +0000113AC_SUBST([MAGICK_LIBRARY_CURRENT_MIN],
114 [`expr $MAGICK_LIBRARY_CURRENT - $MAGICK_LIBRARY_AGE`])
115AC_SUBST([MAGICK_LIBRARY_VERSION_INFO],
116 [$MAGICK_LIBRARY_CURRENT:$MAGICK_LIBRARY_REVISION:$MAGICK_LIBRARY_AGE])
cristy37442762013-02-10 21:07:23 +0000117
cristy5ed9c6e2013-07-14 21:20:31 +0000118AC_SUBST(MAGICKPP_LIBRARY_CURRENT)dnl
119AC_SUBST(MAGICKPP_LIBRARY_REVISION)dnl
120AC_SUBST(MAGICKPP_LIBRARY_AGE)dnl
121AC_SUBST([MAGICKPP_LIBRARY_CURRENT_MIN],
122 [`expr $MAGICKPP_LIBRARY_CURRENT - $MAGICKPP_LIBRARY_AGE`])
123AC_SUBST([MAGICKPP_LIBRARY_VERSION_INFO],
124 [$MAGICKPP_LIBRARY_CURRENT:$MAGICKPP_LIBRARY_REVISION:$MAGICKPP_LIBRARY_AGE])
125
cristy3ed852e2009-09-05 21:47:34 +0000126AC_SUBST(PACKAGE_NAME)dnl
127AC_SUBST(PACKAGE_VERSION)dnl
cristy878c2f12011-08-19 00:25:19 +0000128AC_SUBST(PACKAGE_PERL_VERSION)dnl
cristy3ed852e2009-09-05 21:47:34 +0000129AC_SUBST(PACKAGE_RELEASE)dnl
130AC_SUBST(PACKAGE_CHANGE_DATE)dnl
131AC_SUBST(PACKAGE_LIB_VERSION)dnl
132AC_SUBST(PACKAGE_LIB_VERSION_NUMBER)dnl
cristy187791c2015-05-03 22:17:00 +0000133AS_IF([test X$enable_reproducible_build = Xyes],
134 [PACKAGE_RELEASE_DATE=$PACKAGE_RELEASE_DATE_REPRODUCIBLE],
135 [PACKAGE_RELEASE_DATE=$PACKAGE_RELEASE_DATE_RAW],
136)
cristy3ed852e2009-09-05 21:47:34 +0000137AC_SUBST(PACKAGE_RELEASE_DATE)dnl
cristy187791c2015-05-03 22:17:00 +0000138
cristy15a88782010-01-31 23:24:49 +0000139AC_SUBST(PACKAGE_VERSION_ADDENDUM)dnl
cristy3ed852e2009-09-05 21:47:34 +0000140
141# Ensure that make can run correctly
142AM_SANITY_CHECK
143
cristyf279b692014-08-13 12:01:27 +0000144# versioning of library
cristy3ed852e2009-09-05 21:47:34 +0000145MAGICK_LIB_VERSION="0x"
146if test ${MAGICK_LIBRARY_CURRENT} -lt 10 ; then
147 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
148fi
149MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_CURRENT}
150if test ${MAGICK_LIBRARY_AGE} -lt 10 ; then
151 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
152fi
153MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_AGE}
154if test ${MAGICK_LIBRARY_REVISION} -lt 10 ; then
155 MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}0
156fi
157MAGICK_LIB_VERSION=${MAGICK_LIB_VERSION}${MAGICK_LIBRARY_REVISION}
158AC_SUBST(MAGICK_LIB_VERSION)
159
160# Definition used to define MagickLibVersionText in version.h
161MAGICK_LIB_VERSION_TEXT="${PACKAGE_VERSION}"
162AC_SUBST(MAGICK_LIB_VERSION_TEXT)
163
164# Definition used to define MagickLibVersionNumber in version.h
165MAGICK_LIB_VERSION_NUMBER="${MAGICK_LIBRARY_CURRENT},${MAGICK_LIBRARY_AGE},${MAGICK_LIBRARY_REVISION}"
166AC_SUBST(MAGICK_LIB_VERSION_NUMBER)
167
cristy5ed9c6e2013-07-14 21:20:31 +0000168MAGICKPP_LIB_VERSION="0x"
169if test ${MAGICKPP_LIBRARY_CURRENT} -lt 10 ; then
170 MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}0
171fi
172MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}${MAGICKPP_LIBRARY_CURRENT}
173if test ${MAGICKPP_LIBRARY_AGE} -lt 10 ; then
174 MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}0
175fi
176MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}${MAGICKPP_LIBRARY_AGE}
177if test ${MAGICKPP_LIBRARY_REVISION} -lt 10 ; then
178 MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}0
179fi
180MAGICKPP_LIB_VERSION=${MAGICKPP_LIB_VERSION}${MAGICKPP_LIBRARY_REVISION}
181AC_SUBST(MAGICKPP_LIB_VERSION)
182
183# Definition used to define MagickLibVersionText in version.h
184MAGICKPP_LIB_VERSION_TEXT="${PACKAGE_VERSION}"
185AC_SUBST(MAGICKPP_LIB_VERSION_TEXT)
186
187# Definition used to define MagickLibVersionNumber in version.h
188MAGICK_LIB_VERSION_NUMBER="${MAGICK_LIBRARY_CURRENT},${MAGICK_LIBRARY_AGE},${MAGICK_LIBRARY_REVISION}"
189AC_SUBST(MAGICK_LIB_VERSION_NUMBER)
190
191
192
cristy3ed852e2009-09-05 21:47:34 +0000193# Regenerate config.status if ChangeLog or version.sh is updated.
194AC_SUBST([CONFIG_STATUS_DEPENDENCIES],['$(top_srcdir)/version.sh'])
195
196PERLMAINCC=$CC
197
198MAGICK_CFLAGS=''
199MAGICK_CPPFLAGS=$CPPFLAGS_USER
200MAGICK_PCFLAGS=$CPPFLAGS_USER
201MAGICK_LDFLAGS=''
202MAGICK_LIBS=''
cristyfd9dcd42010-08-08 18:07:02 +0000203MAGICK_FEATURES=''
cristy3ed852e2009-09-05 21:47:34 +0000204
205#
206# Evaluate shell variable equivalents to Makefile directory variables
207#
208if test "x$prefix" = xNONE; then
209 prefix=$ac_default_prefix
210fi
211# Let make expand exec_prefix.
212if test "x$exec_prefix" = xNONE; then
213 exec_prefix='${prefix}'
214fi
215
216#
217eval "eval PREFIX_DIR=${prefix}"
218AC_SUBST(PREFIX_DIR)
219eval "eval EXEC_PREFIX_DIR=${exec_prefix}"
220AC_SUBST(EXEC_PREFIX_DIR)
221eval "eval BIN_DIR=$bindir"
222AC_SUBST(BIN_DIR)
223eval "eval SBIN_DIR=$sbindir"
224AC_SUBST(SBIN_DIR)
225eval "eval LIBEXEC_DIR=$libexecdir"
226AC_SUBST(LIBEXEC_DIR)
227eval "eval DATA_DIR=$datadir"
228AC_SUBST(DATA_DIR)
Cristye35bdc62015-09-19 18:29:00 -0400229eval "eval DOC_DIR=$datadir/doc"
cristyd55889c2011-03-27 00:50:24 +0000230AC_SUBST(DOC_DIR)
cristy3ed852e2009-09-05 21:47:34 +0000231eval "eval SYSCONF_DIR=$sysconfdir"
232AC_SUBST(SYSCONF_DIR)
233eval "eval SHAREDSTATE_DIR=$sharedstatedir"
234AC_SUBST(SHAREDSTATE_DIR)
235eval "eval LOCALSTATE_DIR=$localstatedir"
236AC_SUBST(LOCALSTATE_DIR)
237eval "eval LIB_DIR=$libdir"
238AC_SUBST(LIB_DIR)
239eval "eval INCLUDE_DIR=$includedir"
240AC_SUBST(INCLUDE_DIR)
241eval "eval PERSISTINCLUDE_DIR=$oldincludedir"
242AC_SUBST(PERSISTINCLUDE_DIR)
243eval "eval INFO_DIR=$infodir"
244AC_SUBST(INFO_DIR)
245eval "eval MAN_DIR=$mandir"
246AC_SUBST(MAN_DIR)
247
248# Get full paths to source and build directories
249srcdirfull="`cd $srcdir && pwd`"
250builddir="`pwd`"
251
252#
253# Compute variables useful for running uninstalled software.
254#
255MAGICK_CODER_MODULE_PATH="${builddir}/coders"
256MAGICK_CONFIGURE_SRC_PATH="${srcdirfull}/config"
257MAGICK_CONFIGURE_BUILD_PATH="${builddir}/config"
258MAGICK_FILTER_MODULE_PATH="${builddir}/filters"
259DIRSEP=':'
260case "${build_os}" in
261 mingw* )
262 MAGICK_CODER_MODULE_PATH=`$WinPathScript "${MAGICK_CODER_MODULE_PATH}" 0`
263 MAGICK_CONFIGURE_SRC_PATH=`$WinPathScript "${MAGICK_CONFIGURE_SRC_PATH}" 0`
264 MAGICK_CONFIGURE_BUILD_PATH=`$WinPathScript "${MAGICK_CONFIGURE_BUILD_PATH}" 0`
265 MAGICK_FILTER_MODULE_PATH=`$WinPathScript "${MAGICK_FILTER_MODULE_PATH}" 0`
266 DIRSEP=';'
267 ;;
268esac
269case "${host_os}" in
270 mingw* )
271 DIRSEP=';'
272 ;;
273esac
274AC_SUBST(MAGICK_CODER_MODULE_PATH)
275AC_SUBST(MAGICK_CONFIGURE_SRC_PATH)
276AC_SUBST(MAGICK_CONFIGURE_BUILD_PATH)
277AC_SUBST(MAGICK_FILTER_MODULE_PATH)
278AC_SUBST(DIRSEP)
279
cristya0b81c32010-01-22 02:54:33 +0000280
281#
282# Enable OS features.
283#
284AC_USE_SYSTEM_EXTENSIONS
285
cristy9af1cbf2014-12-28 22:03:09 +0000286# ==============================================================================
287# Find required base packages
288# ==============================================================================
289m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
cristy3ed852e2009-09-05 21:47:34 +0000290AC_PROG_CC
cristy95646052009-11-28 23:05:30 +0000291AC_PROG_CXX
cristy3ed852e2009-09-05 21:47:34 +0000292AC_PROG_CC_STDC
293AC_PROG_CPP
294AC_PROG_LD
cristy3ed852e2009-09-05 21:47:34 +0000295AC_SUBST(LD)
cristy837d6dc2010-02-27 01:16:57 +0000296AC_PROG_CC_C99
cristy3ed852e2009-09-05 21:47:34 +0000297AM_PROG_CC_C_O
cristy92703d82010-04-26 00:18:18 +0000298AX_CFLAGS_WARN_ALL
cristy3ed852e2009-09-05 21:47:34 +0000299AC_PROG_INSTALL
300AC_PROG_MAKE_SET
cristy3ed852e2009-09-05 21:47:34 +0000301AC_PROG_LN_S
cristy8d0ff762013-03-10 20:33:28 +0000302AC_PROG_SED
cristybc556452012-08-17 19:44:03 +0000303AC_PROG_AWK
Cristyb123ba32019-05-16 07:47:17 -0400304AC_PROG_MKDIR_P
cristy3ed852e2009-09-05 21:47:34 +0000305AM_WITH_DMALLOC
cristy92703d82010-04-26 00:18:18 +0000306AX_C___ATTRIBUTE__
Cristy01043c62019-10-05 11:39:30 -0400307AX_GCC_ARCHFLAG([yes])
Cristy6720ed72016-02-09 09:27:35 -0500308PKG_PROG_PKG_CONFIG([0.20])
cristy9af1cbf2014-12-28 22:03:09 +0000309AC_CANONICAL_BUILD
310AC_CANONICAL_HOST
cristy3ed852e2009-09-05 21:47:34 +0000311
cristyd95b7a52013-10-23 13:12:53 +0000312AX_COMPILER_VENDOR
cristyd95b7a52013-10-23 13:12:53 +0000313
314if test "x$GCC" = "xyes"; then
315 CFLAGS="$CFLAGS -fexceptions"
316 touch local.exp
317else
318 cat > local.exp <<EOF
319set CC_FOR_TARGET "$CC"
320EOF
321fi
322
cristy496c0902013-02-26 12:57:44 +0000323# Check for linker script support
cristy9b86f202012-11-28 21:55:35 +0000324gl_LD_VERSION_SCRIPT
325
cristy3ed852e2009-09-05 21:47:34 +0000326#
cristy3ed852e2009-09-05 21:47:34 +0000327# Enable run-time checking.
328#
329AC_ARG_ENABLE([bounds-checking],
cristya3824692012-03-30 17:22:07 +0000330 [AC_HELP_STRING([--enable-bounds-checking],
cristy3ed852e2009-09-05 21:47:34 +0000331 [enable run-time bounds-checking])],
332 [enable_bounds_checking=$enableval],
333 [enable_bounds_checking='no'])
334
335if test "$enable_bounds_checking" = yes; then
336 AC_DEFINE([_FORTIFY_SOURCE], [2],
337 [enable run-time bounds-checking])
338fi
339
340#
341# Tests for Windows
342#
343AC_EXEEXT
344AC_OBJEXT
345
346GDI32_LIBS=''
Cristye9eb7d42018-06-19 20:01:28 -0400347WS2_32_LIBS=''
cristy3ed852e2009-09-05 21:47:34 +0000348native_win32_build='no'
349cygwin_build='no'
350case "${host_os}" in
351 cygwin* )
cristy3ed852e2009-09-05 21:47:34 +0000352 cygwin_build='yes'
353 GDI32_LIBS='-lgdi32'
354 ;;
355 mingw* )
cristy3ed852e2009-09-05 21:47:34 +0000356 native_win32_build='yes'
357 GDI32_LIBS='-lgdi32'
Cristy4cff7472016-11-08 06:30:29 -0500358 OLE_LIBS='-loleaut32'
Cristye9eb7d42018-06-19 20:01:28 -0400359 WS2_32_LIBS="-lws2_32"
cristy3ed852e2009-09-05 21:47:34 +0000360 ;;
361esac
362if test "${GDI32_LIBS}x" != 'x'; then
363 AC_DEFINE(WINGDI32_DELEGATE,1,Define to use the Windows GDI32 library)
364fi
365AC_SUBST(GDI32_LIBS)
Cristy4cff7472016-11-08 06:30:29 -0500366AC_SUBST(OLE_LIBS)
Cristye9eb7d42018-06-19 20:01:28 -0400367AC_SUBST(WS2_32_LIBS)
cristy3ed852e2009-09-05 21:47:34 +0000368AM_CONDITIONAL(WINGDI32_DELEGATE, test "${GDI32_LIBS}x" != 'x' )
369AM_CONDITIONAL(WIN32_NATIVE_BUILD, test "${native_win32_build}" = 'yes' )
370AM_CONDITIONAL(CYGWIN_BUILD, test "${cygwin_build}" = 'yes' )
371AM_CONDITIONAL(USING_CL, test "x${CC}" = 'xcl.exe' )
372
373WinPathScript="${srcdirfull}/winpath.sh"
374AC_SUBST(WinPathScript)
375
376#
377# Compiler flags tweaks
378#
379if test "${GCC}" != "yes"; then
380 case "${host}" in
381 *-*-hpux* )
382 # aCC: HP ANSI C++ B3910B A.03.34
383 CFLAGS="${CFLAGS} -Wp,-H30000"
384 if test -n "${CXXFLAGS}"; then
385 CXXFLAGS='-AA'
386 else
387 CXXFLAGS="${CXXFLAGS} -AA"
388 fi
389 ;;
390 *-dec-osf5.* )
391 # Compaq alphaev68-dec-osf5.1 compiler
392 if test -n "${CXXFLAGS}"; then
393 CXXFLAGS='-std strict_ansi -noimplicit_include'
394 else
395 CXXFLAGS="${CXXFLAGS} -std strict_ansi -noimplicit_include"
396 fi
397 esac
398fi
399
400# Check for lazy-loading.
401AC_CACHE_CHECK([for linker lazyload option],[im_cv_ld_lazyload],
402[
403im_cv_ld_lazyload='none'
404case "${host}" in
405 *-*-solaris2.8 | *-*-solaris2.9 | *-*-solaris2.1? )
406 if test "$lt_cv_prog_gnu_ld" != 'yes' ; then
407 im_cv_ld_lazyload='-Wl,-zlazyload'
408 fi
409 ;;
410esac
411])
412if test "${im_cv_ld_lazyload}" != 'none' ; then
413 if test -z "${LDFLAGS}" ; then
414 LDFLAGS="${im_cv_ld_lazyload}"
415 else
416 LDFLAGS="${im_cv_ld_lazyload} ${LDFLAGS}"
417 fi
418fi
419
420dnl Platform-specific stuff
421case "$host" in
cristyc37574e2013-02-16 01:04:55 +0000422 *darwin* | *-macos10*)
423 dnl Disable FORTIFY_SOURCE to fix a bug in LVVM / OpenMP support
cristyb3b90d32013-02-16 15:44:08 +0000424 CFLAGS="${CFLAGS} -D_FORTIFY_SOURCE=0"
cristyc37574e2013-02-16 01:04:55 +0000425 dnl OS X universal binary support, requires --disable-dependency-tracking
426 AC_ARG_ENABLE([osx-universal-binary],
cristy3ed852e2009-09-05 21:47:34 +0000427 AC_HELP_STRING([--enable-osx-universal-binary],
428 [build universal binary on OS X [[default=no]]]),
429 [build_osxuniversal="${enableval}"], [build_osxuniversal=no])
430
cristyc37574e2013-02-16 01:04:55 +0000431 if test "${build_osxuniversal}" != no ; then
432 if test "$enable_dependency_tracking" != no ; then
433 AC_MSG_ERROR([--enable-osx-universal-binary requires --disable-dependency-tracking.
cristy3ed852e2009-09-05 21:47:34 +0000434Please re-run configure with these options:
435 --disable-dependency-tracking --enable-osx-universal-binary
436 ])
cristyc37574e2013-02-16 01:04:55 +0000437 fi
438 CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
439 CXXFLAGS="$CXXFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
440 LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
cristy3ed852e2009-09-05 21:47:34 +0000441 fi
442 ;;
443esac
444
cristy0151ae12011-10-28 16:32:29 +0000445#
446# ARCH specific include directory
447#
cristy670aa3c2011-11-03 00:54:00 +0000448AC_ARG_WITH([includearch-dir],
449 [AC_HELP_STRING([--includearch-dir=DIR],
cristy0151ae12011-10-28 16:32:29 +0000450 [ARCH specific include directory])],
cristy670aa3c2011-11-03 00:54:00 +0000451 [includearch_dir=$withval],
452 [includearch_dir=$INCLUDE_DIR])
cristy0151ae12011-10-28 16:32:29 +0000453
cristyd286fd72013-02-24 19:25:33 +0000454eval "eval INCLUDEARCH_DIR=$includearch_dir"
cristy670aa3c2011-11-03 00:54:00 +0000455AC_SUBST(INCLUDEARCH_DIR)
cristy0151ae12011-10-28 16:32:29 +0000456
457#
458# ARCH specific configuration directory
459#
cristy670aa3c2011-11-03 00:54:00 +0000460AC_ARG_WITH([sharearch-dir],
461 [AC_HELP_STRING([--sharearch-dir=DIR],
cristy0151ae12011-10-28 16:32:29 +0000462 [ARCH specific config directory])],
cristy670aa3c2011-11-03 00:54:00 +0000463 [sharearch_dir=$withval],
cristy408ebcd2011-11-14 01:36:57 +0000464 [sharearch_dir="${LIB_DIR}"])
cristy0151ae12011-10-28 16:32:29 +0000465
cristy670aa3c2011-11-03 00:54:00 +0000466eval "eval SHAREARCH_DIR=$sharearch_dir"
cristy670aa3c2011-11-03 00:54:00 +0000467AC_SUBST(SHAREARCH_DIR)
cristy0151ae12011-10-28 16:32:29 +0000468
cristy496c0902013-02-26 12:57:44 +0000469# Path to the pkgconfig folder
cristy2ec87cc2013-02-18 17:46:50 +0000470AC_ARG_WITH([pkgconfigdir], AS_HELP_STRING([--with-pkgconfigdir=DIR],
471 [Path to the pkgconfig directory @<:@LIBDIR/pkgconfig@:>@]),
472 [pkgconfigdir="$withval"], [pkgconfigdir='${libdir}/pkgconfig'])
473AC_SUBST([pkgconfigdir])
474
cristy0151ae12011-10-28 16:32:29 +0000475#
Cristyad9483d2018-11-10 18:43:37 -0500476# Enable support for POSIX thread APIs
cristy1ae5c992013-07-30 14:55:07 +0000477#
cristy3ed852e2009-09-05 21:47:34 +0000478AC_ARG_WITH([threads],
Cristyad9483d2018-11-10 18:43:37 -0500479 [AC_HELP_STRING([--without-threads], [disable POSIX threads API support])],
cristy3ed852e2009-09-05 21:47:34 +0000480 [with_threads=$withval],
481 [with_threads='yes'])
482
cristy1ae5c992013-07-30 14:55:07 +0000483THREAD_LIBS=''
cristy3ed852e2009-09-05 21:47:34 +0000484have_threads=no
485if test "$with_threads" != 'no'; then
cristyf6fcb5d2010-09-24 01:19:13 +0000486 AX_PTHREAD()
cristy7acf8fb2010-09-23 19:58:53 +0000487 if test "$ax_pthread_ok" = yes; then
cristy3ed852e2009-09-05 21:47:34 +0000488 have_threads=yes
489 DEF_THREAD="$PTHREAD_CFLAGS"
490 CFLAGS="$CFLAGS $DEF_THREAD"
491 CXXFLAGS="$CXXFLAGS $DEF_THREAD"
Cristyad9483d2018-11-10 18:43:37 -0500492 THREAD_LIBS="$PTHREAD_LIBS"
cristy3ed852e2009-09-05 21:47:34 +0000493 if test "$CC" != "$PTHREAD_CC"; then
494 AC_MSG_WARN([Replacing compiler $CC with compiler $PTHREAD_CC to support pthreads.])
495 CC="$PTHREAD_CC"
496 fi
cristy55bf91c2010-09-24 00:29:41 +0000497 AC_DEFINE(THREAD_SUPPORT,1,[Define if you have POSIX threads libraries and header files.])
cristy3ed852e2009-09-05 21:47:34 +0000498 fi
499fi
cristy1ae5c992013-07-30 14:55:07 +0000500LIBS="$LIBS $THREAD_LIBS"
501AC_SUBST(THREAD_LIBS)
cristy3ed852e2009-09-05 21:47:34 +0000502
503# Enable support for OpenMP
504if test "$have_threads" != 'yes'; then
505 ac_cv_prog_c_openmp=unsupported
506fi
507AC_OPENMP([C])
508CFLAGS="$OPENMP_CFLAGS $CFLAGS"
509MAGICK_PCFLAGS="$MAGICK_PCFLAGS $OPENMP_CFLAGS"
510AC_SUBST(OPENMP_CFLAGS)
cristy391f1ce2010-09-09 17:23:28 +0000511if test "$enable_openmp" != no; then
512 if test "$ac_cv_prog_c_openmp" != 'unsupported'; then
513 MAGICK_FEATURES="OpenMP $MAGICK_FEATURES"
514 fi
515fi
cristy3ed852e2009-09-05 21:47:34 +0000516
cristy736173a2009-09-20 21:18:22 +0000517# Enable support for OpenCL
Cristy141a3002019-10-29 17:10:27 -0400518ax_cv_check_cl_libcl=no
cristy7141bca2010-01-21 16:51:24 +0000519AX_OPENCL([C])
cristyc7083c12009-10-14 03:16:55 +0000520CFLAGS="$CL_CFLAGS $CFLAGS"
cristyfdc7d122013-08-17 20:46:45 +0000521CPPFLAGS="$CL_CFLAGS $CPPFLAGS"
cristyc7083c12009-10-14 03:16:55 +0000522LIBS="$CL_LIBS $LIBS"
cristy18d9cfe2009-12-31 03:55:21 +0000523AC_SUBST(CL_CFLAGS)
Cristy141a3002019-10-29 17:10:27 -0400524if test "X$ax_cv_check_cl_libcl" != Xno; then :
525 MAGICK_FEATURES="OpenCL $MAGICK_FEATURES"
cristyfd9dcd42010-08-08 18:07:02 +0000526fi
cristy736173a2009-09-20 21:18:22 +0000527
cristy3ed852e2009-09-05 21:47:34 +0000528########
529#
530# Check for large file support
531#
532########
533AC_SYS_LARGEFILE
534AC_FUNC_FSEEKO
535LFS_CPPFLAGS=''
536if test "$enable_largefile" != no; then
cristyc1e0cc12011-09-21 16:41:16 +0000537 case $ac_cv_sys_file_offset_bits in
538 no)
539 # nothing to do here as the host supports LFS fine
540 ;;
541 unknown)
cristy3ed852e2009-09-05 21:47:34 +0000542 AC_MSG_CHECKING([for native large file support])
cristyda16f162011-02-19 23:52:17 +0000543 AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <unistd.h>
cristy3ed852e2009-09-05 21:47:34 +0000544 main () {
545 exit(!(sizeof(off_t) == 8));
cristyda16f162011-02-19 23:52:17 +0000546 }])],
cristy3ed852e2009-09-05 21:47:34 +0000547 [ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64)
cristyad38abe2012-12-23 23:03:21 +0000548 AC_MSG_RESULT([yes])],
549 [AC_MSG_RESULT([no])])
cristyc1e0cc12011-09-21 16:41:16 +0000550 ;;
551 *)
552 LFS_CPPFLAGS="$LFS_CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
553 ;;
554 esac
cristy3ed852e2009-09-05 21:47:34 +0000555 if test "$ac_cv_sys_large_files" != 'no'; then
556 LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGE_FILES=1"
557 fi
558 if test "$ac_cv_sys_largefile_source" != 'no'; then
559 LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGEFILE_SOURCE=1"
560 fi
561fi
562AC_SUBST(LFS_CPPFLAGS)
563
cristy3ed852e2009-09-05 21:47:34 +0000564# Configure libtool
Cristyed7fd172019-12-07 10:52:28 -0500565: ${AR_FLAGS=cr}
cristy3ed852e2009-09-05 21:47:34 +0000566AC_LIBTOOL_DLOPEN
567LT_INIT([win32-dll])
568LT_LANG([C++])
569AC_SUBST(LIBTOOL_DEPS)
570
cristy3ed852e2009-09-05 21:47:34 +0000571# Check to see if building shared libraries
572libtool_build_shared_libs='no'
573if test "$enable_shared" = 'yes'; then
574 libtool_build_shared_libs='yes'
575fi
576
577# Check to see if building static libraries
578libtool_build_static_libs='no'
579if test "$enable_static" = 'yes'; then
580 libtool_build_static_libs='yes'
581fi
582
cristyfa112112010-01-04 17:48:07 +0000583AM_CONDITIONAL(WITH_SHARED_LIBS, test "${libtool_build_shared_libs}" = 'yes')
cristy3ed852e2009-09-05 21:47:34 +0000584#
585# Enable support for building loadable modules
586#
cristyaf4cbf32012-10-16 23:47:41 +0000587build_modules='no'
cristy3ed852e2009-09-05 21:47:34 +0000588AC_ARG_WITH([modules],
589 [AC_HELP_STRING([--with-modules],
590 [enable building dynamically loadable modules])],
591 [with_modules=$withval],
cristy5a1cefd2010-01-06 20:42:35 +0000592 [with_modules='no'])
cristy3ed852e2009-09-05 21:47:34 +0000593
594# Only allow building loadable modules if we are building shared libraries
595if test "$with_modules" != 'no' ; then
596 if test "$libtool_build_shared_libs" = 'no'; then
597 AC_MSG_WARN([Modules may only be built if building shared libraries is enabled.])
cristyc6722092012-10-14 00:19:31 +0000598 build_modules='no'
599 else
600 build_modules='yes'
601 fi
cristy3ed852e2009-09-05 21:47:34 +0000602fi
cristyc6722092012-10-14 00:19:31 +0000603if test "$build_modules" != 'no' ; then
cristy3ed852e2009-09-05 21:47:34 +0000604 AC_DEFINE(BUILD_MODULES,1,Define if coders and filters are to be built as modules.)
cristye78d2532012-12-17 20:41:10 +0000605 MAGICK_FEATURES="$MAGICK_FEATURES Modules"
cristy3ed852e2009-09-05 21:47:34 +0000606fi
cristyc6722092012-10-14 00:19:31 +0000607AM_CONDITIONAL(WITH_MODULES, test "$build_modules" != 'no')
cristy3ed852e2009-09-05 21:47:34 +0000608
cristy3ed852e2009-09-05 21:47:34 +0000609# Enable build using delegate libraries built in subdirectories rather than installed
cristyfbb0ef02010-12-19 02:32:11 +0000610# delegate libraries (bzlib fftw fpx gslib jp2 jbig jpeg lcms lzma png tiff ttf wmf xml zlib)
cristy3ed852e2009-09-05 21:47:34 +0000611AC_ARG_ENABLE([delegate-build],
612 [AC_HELP_STRING([--enable-delegate-build],
613 [look for delegate libraries in build directory])],
614 [enable_delegate_build=$enableval],
615 [enable_delegate_build='no'])
616
617AC_ARG_ENABLE([deprecated],
618 [AC_HELP_STRING([--disable-deprecated],
cristy3a75f062012-09-08 23:29:40 +0000619 [exclude deprecated methods in MagickCore and MagickWand APIs])],
cristy3ed852e2009-09-05 21:47:34 +0000620 [enable_deprecated=$enableval],
621 [enable_deprecated='no'])
622
623if test "$enable_deprecated" = 'yes'; then
624 AC_DEFINE(EXCLUDE_DEPRECATED,1,[exclude deprecated methods in MagickCore API])
625else
626 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --disable-deprecated "
627fi
628
629# Build a version of ImageMagick which operates uninstalled.
630# Used to build distributions located via MAGICK_HOME / executable path
631AC_ARG_ENABLE([installed],
632 [AC_HELP_STRING([--disable-installed],
633 [Formally install ImageMagick under PREFIX])],
634 [enable_installed=$enableval],
635 [enable_installed='yes'])
636
637if test "$enable_installed" = 'yes'; then
638 AC_DEFINE(INSTALLED_SUPPORT,1,[ImageMagick is formally installed under prefix])
639else
640 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --disable-installed "
641fi
642
643# Permit enciphering and deciphering image pixels.
644AC_ARG_ENABLE([cipher],
645 [AC_HELP_STRING([--disable-cipher],
646 [disable enciphering and deciphering image pixels])],
647 [enable_cipher=$enableval],
648 [enable_cipher='yes'])
649
650if test "$enable_cipher" = 'yes'; then
651 AC_DEFINE(CIPHER_SUPPORT,1,[permit enciphering and deciphering image pixels])
cristy0f6fc2d2015-05-30 00:49:11 +0000652 MAGICK_FEATURES="Cipher $MAGICK_FEATURES"
cristy3ed852e2009-09-05 21:47:34 +0000653fi
654
cristy6e3607c2011-09-13 13:59:17 +0000655# Build a zero-configuration version of ImageMagick.
656AC_ARG_ENABLE([zero-configuration],
657 [AC_HELP_STRING([--enable-zero-configuration],
cristy3ed852e2009-09-05 21:47:34 +0000658 [enable self-contained, embeddable, zero-configuration ImageMagick])],
cristy6e3607c2011-09-13 13:59:17 +0000659 [enable_zero_configuration=$enableval],
660 [enable_zero_configuration='no'])
cristy3ed852e2009-09-05 21:47:34 +0000661
cristy6e3607c2011-09-13 13:59:17 +0000662if test "$enable_zero_configuration" = 'yes'; then
663 AC_DEFINE(ZERO_CONFIGURATION_SUPPORT,1,[Build self-contained, embeddable, zero-configuration ImageMagick])
cristy0f6fc2d2015-05-30 00:49:11 +0000664 MAGICK_FEATURES="Zero-configuration $MAGICK_FEATURES"
cristy3ed852e2009-09-05 21:47:34 +0000665fi
Cristyed7fd172019-12-07 10:52:28 -0500666AM_CONDITIONAL([MAGICKCORE_ZERO_CONFIGURATION_SUPPORT], [test "$enable_zero_configuration" = yes])
cristy3ed852e2009-09-05 21:47:34 +0000667
668# Build a high dynamic range version of ImageMagick.
669AC_ARG_ENABLE([hdri],
cristyf314dbd2012-11-15 13:35:28 +0000670 [AC_HELP_STRING([--enable-hdri],
cristy3ed852e2009-09-05 21:47:34 +0000671 [accurately represent the wide range of intensity levels found in real scenes])],
672 [enable_hdri=$enableval],
cristy191c0b72012-08-12 16:29:52 +0000673 [enable_hdri='yes'])
cristy3ed852e2009-09-05 21:47:34 +0000674
675MAGICK_HDRI=""
676if test "$enable_hdri" = 'yes'; then
677 MAGICK_HDRI="HDRI"
cristye52f12f2012-12-31 15:32:36 +0000678 magick_hdri_enable='1';
cristyfd9dcd42010-08-08 18:07:02 +0000679 MAGICK_FEATURES="HDRI $MAGICK_FEATURES"
cristye52f12f2012-12-31 15:32:36 +0000680else
681 magick_hdri_enable='0'
cristy3ed852e2009-09-05 21:47:34 +0000682fi
cristye52f12f2012-12-31 15:32:36 +0000683AC_DEFINE_UNQUOTED(HDRI_ENABLE_OBSOLETE_IN_H,$magick_hdri_enable,[Whether hdri is enabled or not])
cristy3ed852e2009-09-05 21:47:34 +0000684AC_SUBST(MAGICK_HDRI)dnl
cristye52f12f2012-12-31 15:32:36 +0000685MAGICK_PCFLAGS="$MAGICK_PCFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
686CFLAGS="$CFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
cristy72062382012-12-31 16:49:52 +0000687CPPFLAGS="$CPPFLAGS -DMAGICKCORE_HDRI_ENABLE=$magick_hdri_enable"
cristy3ed852e2009-09-05 21:47:34 +0000688
Cristy697159d2016-05-31 07:21:31 -0400689# Enable pipes (|) in filenames.
690AC_ARG_ENABLE([pipes],
691 [AC_HELP_STRING([--enable-pipes],
692 [enable pipes (|) in filenames])],
693 [enable_pipes=$enableval],
694 [enable_pipes='no'])
695
696if test "$enable_pipes" = 'yes'; then
697 AC_DEFINE(PIPES_SUPPORT,1,[enable pipes (|) in filenames])
698 MAGICK_FEATURES="Pipes $MAGICK_FEATURES"
699fi
700
cristy3ed852e2009-09-05 21:47:34 +0000701# Build a version of ImageMagick with assert statements.
702AC_ARG_ENABLE([assert],
703 [AC_HELP_STRING([--disable-assert],
704 [disable assert() statements in build])],
705 [enable_assert=$enableval],
706 [enable_assert='yes'])
707
708if test "$enable_assert" = 'no'; then
709 AC_DEFINE(NDEBUG,1,[Turn off assert statements])
710fi
711
cristya448bd22011-10-14 12:38:13 +0000712# Don't emit "rebuild rules" for configure, Makefile.ins, etc.
cristy3ed852e2009-09-05 21:47:34 +0000713AM_MAINTAINER_MODE
714
cristy944e51f2013-04-16 18:45:02 +0000715# Enable hugepages support
716AC_ARG_ENABLE([hugepages],
717 [AC_HELP_STRING([--enable-hugepages],
718 [enable 'huge pages' support])],
719 [enable_hugepages=$enableval],
720 [enable_hugepages='no'])
721
cristy3ed852e2009-09-05 21:47:34 +0000722# Enable ccmalloc memory debugging support
723AC_ARG_ENABLE([ccmalloc],
724 [AC_HELP_STRING([--enable-ccmalloc],
725 [enable 'ccmalloc' memory debug support])],
726 [enable_ccmalloc=$enableval],
727 [enable_ccmalloc='no'])
728
729# Enable Electric Fence memory debugging support
730AC_ARG_ENABLE([efence],
731 [AC_HELP_STRING([--enable-efence],
732 [enable 'efence' memory debug support])],
733 [enable_efence=$enableval],
734 [enable_efence='no'])
735
736# Enable prof-based profiling support
737AC_ARG_ENABLE([prof],
738 [AC_HELP_STRING([--enable-prof],
739 [enable 'prof' profiling support])],
740 [enable_prof=$enableval],
741 [enable_prof='no'])
742
743# Enable gprof-based profiling support
744AC_ARG_ENABLE([gprof],
745 [AC_HELP_STRING([--enable-gprof],
746 [enable 'gprof' profiling support])],
747 [enable_gprof=$enableval],
748 [enable_gprof='no'])
749
750# Enable gcov-based profiling support
751AC_ARG_ENABLE([gcov],
752 [AC_HELP_STRING([--enable-gcov],
753 [enable 'gcov' profiling support])],
754 [enable_gcov=$enableval],
755 [enable_gcov='no'])
756
757enable_profiling='no'
758if test "$enable_prof" = 'yes' || test "$enable_gprof" = 'yes' || test "$enable_gcov" = 'yes'; then
759 enable_profiling='yes'
760 if test "$libtool_build_shared_libs" = 'yes'; then
761 echo "Warning: Can not profile code using shared libraries"
762 fi
763fi
764
765# Magick API method prefix
766AC_ARG_WITH([method-prefix],
767 [AC_HELP_STRING([--with-method-prefix=PREFIX],
768 [prefix MagickCore API methods])],
cristyfc3d0222012-02-07 15:05:57 +0000769 [with_method_prefix=$withval],
770 [with_method_prefix='no'])
cristy3ed852e2009-09-05 21:47:34 +0000771
cristyfc3d0222012-02-07 15:05:57 +0000772if test "$with_method_prefix" != 'no'; then
cristy3ed852e2009-09-05 21:47:34 +0000773 AC_DEFINE_UNQUOTED(NAMESPACE_PREFIX,$with_method_prefix,[Magick API method prefix])
Cristy74ee7972017-11-20 07:40:50 -0500774 AC_DEFINE_UNQUOTED(NAMESPACE_PREFIX_TAG,["$with_method_prefix"],[Magick API method prefix tag])
cristyfc3d0222012-02-07 15:05:57 +0000775 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-method-prefix "
cristy3ed852e2009-09-05 21:47:34 +0000776fi
777
cristy71d8c202012-03-20 17:05:01 +0000778# Enable legacy support (default no)
779AC_ARG_ENABLE(legacy-support,
Cristy519e0052016-10-16 15:28:40 -0400780 [ --enable-legacy-support install legacy command-line utilities (default disabled)],
cristy71d8c202012-03-20 17:05:01 +0000781 [with_legacy_support=$enableval],
782 [with_legacy_support='no'])
783AM_CONDITIONAL(LEGACY_SUPPORT, test "$with_legacy_support" != 'no')
784
Paul Kehrer6ac37232018-03-31 10:33:53 -0500785# Enable building command line utilities (default yes)
786AC_ARG_WITH(utilities,
Cristye3723ab2019-09-11 08:21:22 -0400787 [ --with-utilities enable building command-line utilities (default yes)],
Paul Kehrer6ac37232018-03-31 10:33:53 -0500788 [with_utilities=$withval], [with_utilities='yes'])
789AM_CONDITIONAL(WITH_UTILITIES, test "$with_utilities" = 'yes')
790
cristy3ed852e2009-09-05 21:47:34 +0000791# Number of bits in a Quantum
792AC_ARG_WITH([quantum-depth],
793 [AC_HELP_STRING([--with-quantum-depth=DEPTH],
794 [number of bits in a pixel quantum (default 16)])],
795 [with_quantum_depth=$withval],
796 [with_quantum_depth=16])
797
798if test "$with_quantum_depth" != '8'; then
799 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-quantum-depth=$with_quantum_depth "
800fi
801
802case "${with_quantum_depth}" in
803 8 ) ;;
804 16 ) ;;
805 32 ) ;;
806 64 ) ;;
cristycdae12a2010-09-19 02:24:31 +0000807 * ) AC_MSG_ERROR("Pixel quantum depth must have value of 8, 16, 32, or 64") ;;
cristy3ed852e2009-09-05 21:47:34 +0000808esac
809QUANTUM_DEPTH="$with_quantum_depth"
cristye52f12f2012-12-31 15:32:36 +0000810AC_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 +0000811AC_SUBST(QUANTUM_DEPTH)dnl
cristy0a9565b2013-01-30 19:57:08 +0000812MAGICK_PCFLAGS="$MAGICK_PCFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
cristye52f12f2012-12-31 15:32:36 +0000813CFLAGS="$CFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
cristy72062382012-12-31 16:49:52 +0000814CPPFLAGS="$CPPFLAGS -DMAGICKCORE_QUANTUM_DEPTH=$QUANTUM_DEPTH"
cristy3ed852e2009-09-05 21:47:34 +0000815
cristy01ff9f32012-12-01 18:15:29 +0000816# define a lib suffix for abi purpose
cristy7a26abd2012-12-03 00:18:59 +0000817MAGICK_ABI_SUFFIX="Q${QUANTUM_DEPTH}"
cristye386d192012-12-01 21:05:20 +0000818if test "$enable_hdri" = 'yes'; then
cristy7a26abd2012-12-03 00:18:59 +0000819 MAGICK_ABI_SUFFIX="Q${QUANTUM_DEPTH}${MAGICK_HDRI}"
cristye386d192012-12-01 21:05:20 +0000820fi
cristy7a26abd2012-12-03 00:18:59 +0000821AC_SUBST(MAGICK_ABI_SUFFIX)
cristy01ff9f32012-12-01 18:15:29 +0000822
cristy3ed852e2009-09-05 21:47:34 +0000823# Set pixel cache threshold
824AC_ARG_WITH([cache],
825 [AC_HELP_STRING([--with-cache=THRESHOLD],
826 [set pixel cache threshhold in MB (default available memory)])],
827 [with_cache=$withval],
828 [with_cache=''])
829
830if test "$with_cache" != ''; then
831 AC_DEFINE_UNQUOTED(PixelCacheThreshold,$with_cache,[Pixel cache threshold in MB (defaults to available memory)])
832 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-cache=$with_cache "
833fi
834
835# Disable/Enable support for full delegate paths
836AC_ARG_WITH([frozenpaths],
837 [AC_HELP_STRING([--with-frozenpaths],
838 [freeze delegate paths])],
839 [with_frozenpaths=$withval],
840 [with_frozenpaths='no'])
841
842# Enable build/install of Magick++
843AC_ARG_WITH([magick-plus-plus],
844 [AC_HELP_STRING([--without-magick-plus-plus],
845 [disable build/install of Magick++])],
846 [with_magick_plus_plus=$withval],
847 [with_magick_plus_plus='yes'])
848
cristy3a75f062012-09-08 23:29:40 +0000849# Encode the this name into the shared library.
850AC_ARG_WITH([package-release-name],
851 [AC_HELP_STRING([--with-package-release-name=NAME],
852 [encode this name into the shared library])],
853[MAGICK_LT_RELEASE_OPTS="-release $withval"])
854AC_SUBST(MAGICK_LT_RELEASE_OPTS)
855
cristy3ed852e2009-09-05 21:47:34 +0000856# Disable build/install of PerlMagick.
857AC_ARG_WITH([perl],
858 [AC_HELP_STRING([--with-perl],
859 [enable build/install of PerlMagick])],
860 [with_perl=$withval],
cristyb5f4e2f2010-04-25 00:49:11 +0000861 [with_perl='no'])
cristy3ed852e2009-09-05 21:47:34 +0000862
863# Options to pass when configuring PerlMagick
864AC_ARG_WITH([perl-options],
865 [AC_HELP_STRING([--with-perl-options=OPTIONS],
cristyfc3d0222012-02-07 15:05:57 +0000866 [options to pass on command-line when generating PerlMagick build file])],
cristy949301e2010-01-06 01:38:40 +0000867PERL_MAKE_OPTIONS=$withval)
cristy3ed852e2009-09-05 21:47:34 +0000868AC_SUBST(PERL_MAKE_OPTIONS)
869
cristy3b0097d2014-11-04 15:34:47 +0000870# Enable jemalloc, object-caching memory allocation library.
871AC_ARG_WITH(jemalloc,
872 [ --with-jemalloc enable jemalloc memory allocation library support],
873 [with_jemalloc=$withval],
874 [with_jemalloc='no'])
875if test "$with_jemalloc" != 'yes' ; then
876 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-jemalloc=$with_jemalloc "
877fi
878
Cristy001b1da2019-09-11 08:38:23 -0400879# Enable use of TCMalloc library.
880AC_ARG_WITH(tcmalloc,
881 AS_HELP_STRING([--with-tcmalloc],
882 [enable tcmalloc memory allocation library support]),
883 [with_tcmalloc=$withval],
884 [with_tcmalloc='no'])
885if test "$with_tcmalloc" != 'no' ; then
886 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-tcmalloc=$with_tcmalloc "
887fi
888
cristy3ed852e2009-09-05 21:47:34 +0000889# Enable umem, object-caching memory allocation library.
890AC_ARG_WITH(umem,
891 [ --with-umem enable umem memory allocation library support],
892 [with_umem=$withval],
893 [with_umem='no'])
894if test "$with_umem" != 'yes' ; then
895 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-umem=$with_umem "
896fi
897
898#
899# Specify path to shared libstdc++ if not in normal location
900#
901AC_ARG_WITH([libstdc],
902 [AC_HELP_STRING([--with-libstdc=DIR],
903 [ use libstdc++ in DIR (for GNU C++)])],
904 [with_libstdc=$withval],
905 [with_libstdc=''])
906
907if test "$with_libstdc" != ''; then
908 if test -d "$with_libstdc"; then
909 LIBSTDCLDFLAGS="-L$with_libstdc"
910 fi
911fi
912AC_SUBST(LIBSTDCLDFLAGS)
913
914# Does gcc required -traditional?
915AC_PROG_GCC_TRADITIONAL
916
917########
918#
919# Set defines required to build DLLs and modules using MinGW
920#
921########
922# These options are set for multi-thread DLL module build
923# libMagickCore: _DLL _MAGICKMOD_ _MAGICKLIB_
924# module: _DLL
925# executable/Magick++: _DLL _MAGICKMOD_
926MODULE_EXTRA_CPPFLAGS=''
927LIBRARY_EXTRA_CPPFLAGS=''
928if test "${native_win32_build}" = 'yes'; then
929 if test "${libtool_build_shared_libs}" = 'yes'; then
930 CPPFLAGS="$CPPFLAGS -D_DLL"
931 MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_DLL"
932 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_DLL"
933 LIBRARY_EXTRA_CPPFLAGS="$LIBRARY_EXTRA_CPPFLAGS -D_MAGICKLIB_"
cristyc6722092012-10-14 00:19:31 +0000934 if test "$build_modules" = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +0000935 LIBRARY_EXTRA_CPPFLAGS="$LIBRARY_EXTRA_CPPFLAGS -D_MAGICKMOD_"
936 else
937 MODULE_EXTRA_CPPFLAGS="$MODULE_EXTRA_CPPFLAGS -D_MAGICKLIB_"
938 fi
939 else
940 CPPFLAGS="$CPPFLAGS -D_LIB"
941 MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_LIB"
942 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_LIB"
943 fi
944 if test "$with_threads" = 'yes'; then
945 CPPFLAGS="$CPPFLAGS -D_MT"
946 MAGICK_CPPFLAGS="$MAGICK_CPPFLAGS -D_MT"
947 MAGICK_PCFLAGS="$MAGICK_PCFLAGS -D_MT"
948 fi
949fi
950AC_SUBST(MODULE_EXTRA_CPPFLAGS)
951AC_SUBST(LIBRARY_EXTRA_CPPFLAGS)
952
953# Check standard headers
954AC_HEADER_STDC
955if ! test x"$ac_cv_header_stdc" = x"yes"; then
956 AC_MSG_WARN([configure has detected that you do not have the ANSI standard C
957 header files. Compilation cannot proceed. Please install the ANSI C
958 headers and rerun this script.]);
959fi
cristya0b81c32010-01-22 02:54:33 +0000960AC_HEADER_ASSERT
cristy3ed852e2009-09-05 21:47:34 +0000961AC_HEADER_DIRENT
962
963# Check additional headers
Cristy4bb3ba92016-04-24 14:28:07 -0400964AC_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/sendfile.h sys/socket.h sys/syslimits.h sys/time.h sys/timeb.h sys/times.h sys/wait.h utime.h wchar.h xlocale.h)
cristy3ed852e2009-09-05 21:47:34 +0000965
966########
967#
968# Checks for typedefs, structures, and compiler characteristics.
969#
970########
971
972AC_HEADER_STDBOOL
973AC_C_VOLATILE
974AC_C_STRINGIZE
975AC_HEADER_STAT
976AC_HEADER_TIME
977AC_STRUCT_TM
cristy92703d82010-04-26 00:18:18 +0000978AC_STRUCT_TIMEZONE
cristy3ed852e2009-09-05 21:47:34 +0000979AC_SYS_INTERPRETER
980
cristya9ee2842013-01-08 15:56:39 +0000981#
982# Checks for language qualifiers and semantics.
983#
984AC_C_CHAR_UNSIGNED
985AC_C_CONST
cristy3ed852e2009-09-05 21:47:34 +0000986AC_C_INLINE
cristy3ed852e2009-09-05 21:47:34 +0000987AC_C_RESTRICT
cristya9ee2842013-01-08 15:56:39 +0000988AC_C_VOLATILE
cristy3ed852e2009-09-05 21:47:34 +0000989
990# If words are stored with the most significant byte first (like
991# Motorola and SPARC CPUs), define `WORDS_BIGENDIAN'.
992AC_C_BIGENDIAN
993
cristy501c8042011-05-26 17:46:28 +0000994# Define to a suitable type, if standard headers do not define it.
995AC_TYPE_INT8_T
996AC_TYPE_INT16_T
997AC_TYPE_INT32_T
998AC_TYPE_INT64_T
999AC_TYPE_INTMAX_T
1000AC_TYPE_INTPTR_T
cristy501c8042011-05-26 17:46:28 +00001001AC_TYPE_MBSTATE_T
1002AC_TYPE_MODE_T
1003AC_TYPE_OFF_T
1004AC_TYPE_PID_T
1005AC_TYPE_SIZE_T
1006AC_TYPE_SSIZE_T
1007AC_TYPE_UID_T
1008AC_TYPE_UINT8_T
1009AC_TYPE_UINT16_T
1010AC_TYPE_UINT32_T
1011AC_TYPE_UINT64_T
1012AC_TYPE_UINTMAX_T
1013AC_TYPE_UINTPTR_T
cristy98beafc2015-05-14 19:55:55 +00001014
cristyfec31822013-05-23 12:32:12 +00001015# Float_t and double_t are intended to be the the most efficient type.
cristyfec31822013-05-23 12:32:12 +00001016AC_CHECK_SIZEOF([float_t], [], [[#include <math.h>]])
1017AC_CHECK_SIZEOF([double_t], [], [[#include <math.h>]])
1018
cristy9b86f202012-11-28 21:55:35 +00001019# Get size of float, double and long double for comparaison.
1020AC_CHECK_SIZEOF([float])
1021AC_CHECK_SIZEOF([double])
cristy9e2b6242014-03-25 11:49:41 +00001022AC_CHECK_SIZEOF([long double])
cristyf0cf9a22012-10-24 12:05:01 +00001023
cristy3ed852e2009-09-05 21:47:34 +00001024# Obtain size of a 'unsigned long long' and define as
1025# SIZEOF_UNSIGNED_LONG_LONG. If 'unsigned long long' is not
1026# supported then the value defined is zero.
1027AC_CHECK_SIZEOF(unsigned long long)
1028
Cristyed7fd172019-12-07 10:52:28 -05001029AC_CHECK_SIZEOF(void *)
cristy3ed852e2009-09-05 21:47:34 +00001030
1031AC_MSG_CHECKING([whether our compiler supports __func__])
1032AC_TRY_COMPILE([],
1033 [{ const char *func = __func__; return(func != 0 ? 0 : 1); }],
cristyad38abe2012-12-23 23:03:21 +00001034 AC_MSG_RESULT([yes]),
1035 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001036 AC_MSG_CHECKING([whether our compiler supports __FUNCTION__])
1037 AC_TRY_COMPILE([],
1038 [{ const char *func = __FUNCTION__; return(func != 0 ? 0 : 1); }],
cristyad38abe2012-12-23 23:03:21 +00001039 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001040 AC_DEFINE(__func__, __FUNCTION__,
iplxp00j62abaa32019-05-30 21:28:20 +02001041 [Define to appropriate substitute if compiler does not have __func__]),
cristyad38abe2012-12-23 23:03:21 +00001042 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001043 AC_DEFINE(__func__, __FILE__,
iplxp00j62abaa32019-05-30 21:28:20 +02001044 [Define to appropriate substitute if compiler does not have __func__])))
cristy3ed852e2009-09-05 21:47:34 +00001045
1046########
1047#
1048# Check for functions
1049#
1050########
cristy3ed852e2009-09-05 21:47:34 +00001051AC_FUNC_CLOSEDIR_VOID
1052AC_FUNC_MMAP
1053AC_FUNC_FORK
1054AC_FUNC_MEMCMP
1055AC_FUNC_SELECT_ARGTYPES
1056AC_FUNC_SETVBUF_REVERSED
cristy3ed852e2009-09-05 21:47:34 +00001057AC_FUNC_STRTOD
cristy7d4a1d62011-10-13 15:54:12 +00001058AC_FUNC_STRERROR_R
cristy3ed852e2009-09-05 21:47:34 +00001059AC_FUNC_VPRINTF
1060
cristy161b9262010-03-20 19:34:32 +00001061#
1062# Find math library
1063#
1064MATH_LIBS=''
1065AC_CHECK_LIB(m,sqrt,MATH_LIBS="-lm",,)
1066LIBS="$MATH_LIBS $LIBS"
1067AC_SUBST(MATH_LIBS)
1068
cristy85572162013-01-04 19:19:32 +00001069#
1070# Find socket library
1071#
cristy85572162013-01-04 19:19:32 +00001072AC_SEARCH_LIBS(gethostbyname, resolv nsl)
cristy8a5d7f42013-01-06 15:24:33 +00001073AC_SEARCH_LIBS(socket, socket,
1074[
1075 AC_DEFINE([HAVE_SOCKET],[1],[Define to 1 if you have socket support.])
cristyfac03342013-01-12 02:03:32 +00001076 MAGICK_FEATURES="DPC $MAGICK_FEATURES"
cristy8a5d7f42013-01-06 15:24:33 +00001077])
cristy85572162013-01-04 19:19:32 +00001078
cristye43a45e2009-09-28 14:49:00 +00001079#
1080# Check for clock_gettime().
1081#
1082AC_SEARCH_LIBS(clock_gettime, rt,
1083[
1084 AC_DEFINE([HAVE_CLOCK_GETTIME],[1],[Define to 1 if you have clock_gettime.])
1085 AC_MSG_CHECKING([whether clock_gettime supports CLOCK_REALTIME])
cristyda16f162011-02-19 23:52:17 +00001086 AC_COMPILE_IFELSE([
cristye43a45e2009-09-28 14:49:00 +00001087 AC_LANG_PROGRAM(
1088 [[#include <time.h>]],
cristyda16f162011-02-19 23:52:17 +00001089 [[clockid_t clockType = CLOCK_REALTIME;]])],
cristye43a45e2009-09-28 14:49:00 +00001090 [
cristyad38abe2012-12-23 23:03:21 +00001091 AC_MSG_RESULT(yes)
glennrp3fc1c212013-01-10 01:52:32 +00001092 AC_DEFINE([HAVE_CLOCK_REALTIME],[1],
cristye43a45e2009-09-28 14:49:00 +00001093 [Define to 1 if clock_gettime supports CLOCK_REALTIME.])
1094 ],
cristyad38abe2012-12-23 23:03:21 +00001095 AC_MSG_RESULT(no)
cristye43a45e2009-09-28 14:49:00 +00001096 )
1097 ],
1098 [
1099 AC_CHECK_FUNCS([gettimeofday ftime], [break])
1100 ]
1101)
cristy3ed852e2009-09-05 21:47:34 +00001102
1103########
1104#
1105# Check for function prototypes
1106#
1107########
1108
1109AC_CHECK_DECLS([pread, pwrite],[],[],[
1110#include <unistd.h>])
1111
1112AC_CHECK_DECLS([strlcpy],[],[],[
1113#include <strings.h>])
1114
1115AC_CHECK_DECLS([vsnprintf],[],[],[
1116#include <stdio.h>
1117#include <stdarg.h>])
1118
1119########
1120#
1121# C++ Support Tests (For Magick++)
1122#
1123########
1124have_magick_plus_plus='no'
1125if test "$with_magick_plus_plus" = 'yes'; then
1126 OLIBS="$LIBS"
1127 LIBS=''
1128 AC_LANG_PUSH(C++)
1129
1130 # Full set of headers used...
1131 # algorithm cctype cerrno cmath cstdio cstdlib cstring ctime exception
1132 # functional iomanip iosfwd iostream iterator list string strstream utility
1133 AC_LANG([C++])
1134 AC_PROG_CXX
cristy964cb7f2010-04-25 23:18:00 +00001135 AX_CXX_BOOL
1136 AX_CXX_NAMESPACES
1137 AX_CXX_NAMESPACE_STD
cristy3ed852e2009-09-05 21:47:34 +00001138 AC_CXX_HAVE_STD_LIBS
cristy3ed852e2009-09-05 21:47:34 +00001139 AC_OPENMP([C++])
1140 AC_LANG_POP
1141
1142 AC_MSG_CHECKING([whether C++ compiler is sufficient for Magick++])
1143 if \
cristy964cb7f2010-04-25 23:18:00 +00001144 test $ax_cv_cxx_bool = 'yes' && \
cristy964cb7f2010-04-25 23:18:00 +00001145 test $ax_cv_cxx_namespaces = 'yes' && \
cristy3ed852e2009-09-05 21:47:34 +00001146 test $ac_cv_cxx_have_std_libs = 'yes' && \
cristy964cb7f2010-04-25 23:18:00 +00001147 test $ax_cv_cxx_have_std_namespace = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +00001148 have_magick_plus_plus='yes'
1149 else
1150 have_magick_plus_plus='no (failed tests)'
1151 fi
cristyad38abe2012-12-23 23:03:21 +00001152 AC_MSG_RESULT([$have_magick_plus_plus])
cristy3ed852e2009-09-05 21:47:34 +00001153 LIBS="$OLIBS"
1154fi
1155AM_CONDITIONAL(WITH_MAGICK_PLUS_PLUS, test "$have_magick_plus_plus" = 'yes')
1156
1157# Only check for delegate libraries in subdirectories if requested.
1158if test "$enable_delegate_build" != 'no'; then
1159 # Check for delegate sub-directories and add -I & -L options as required.
1160 # This presumes that delegates are installed as detailed in the ImageMagick
1161 # README. If delegates are installed in a standard location where the
1162 # compiler will automatically find them then these options should not be
1163 # required.
1164
1165 #
1166 # Most delegates have includes in the same directory as the library, but not all...
1167 #
1168 # Includes
cristy834307f2015-01-25 00:43:41 +00001169 for dir in bzlib fftw fpx gslib/src jp2 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 +00001170 if test -d "$builddir/$dir"; then
1171 CPPFLAGS="$CPPFLAGS -I$builddir/$dir"
1172 else
1173 if test -d "$srcdirfull/$dir"; then
1174 CPPFLAGS="$CPPFLAGS -I$srcdirfull/$dir"
1175 fi
1176 fi
1177 done
1178
1179 # Libraries
cristy834307f2015-01-25 00:43:41 +00001180 for dir in bzlib fftw fpx gslib/src 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 +00001181 if test -d "$builddir/$dir/.libs"; then
1182 LDFLAGS="$LDFLAGS -L$builddir/$dir/.libs"
1183 else
1184 if test -d "$srcdirfull/$dir/.libs"; then
1185 LDFLAGS="$LDFLAGS -L$srcdirfull/$dir/.libs"
1186 fi
1187 fi
1188 if test -d "$builddir/$dir"; then
1189 LDFLAGS="$LDFLAGS -L$builddir/$dir"
1190 else
1191 if test -d "$srcdirfull/$dir"; then
1192 LDFLAGS="$LDFLAGS -L$srcdirfull/$dir"
1193 fi
1194 fi
1195 done
1196fi
1197
1198# Assume that delegate headers reside under same directory as ImageMagick
1199# installation prefix.
cristybdabdd62013-03-04 17:43:36 +00001200MAGICK_CPPFLAGS="-I$INCLUDE_DIR/${PACKAGE_NAME}-$MAGICK_MAJOR_VERSION $MAGICK_CPPFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00001201
1202#
1203# Find the X11 RGB database
1204#
1205AC_CACHE_CHECK(for X11 configure files,im_cv_x_configure,
1206[# Look for the header file in a standard set of common directories.
1207# Check X11 before X11Rn because it is often a symlink to the current release.
1208 for ac_dir in \
1209 /lib/usr/lib/X11 \
1210 /usr/X11/lib \
1211 /usr/X11R4/lib \
1212 /usr/X11R5/lib \
1213 /usr/X11R6/lib \
1214 /usr/X11R7/lib \
1215 /usr/X386/lib \
1216 /usr/XFree86/lib/X11 \
1217 /usr/athena/lib \
1218 /usr/lib \
1219 /usr/lib/X11 \
1220 /usr/lib/X11R4 \
1221 /usr/lib/X11R5 \
1222 /usr/lib/X11R6 \
1223 /usr/lib/X11R7 \
1224 /usr/local/X11/lib \
1225 /usr/local/X11R4/lib \
1226 /usr/local/X11R5/lib \
1227 /usr/local/X11R6/lib \
1228 /usr/local/lib \
1229 /usr/local/lib/X11 \
1230 /usr/local/lib/X11R4 \
1231 /usr/local/lib/X11R5 \
1232 /usr/local/lib/X11R6 \
1233 /usr/local/lib/X11R7 \
1234 /usr/local/x11r5/lib \
1235 /usr/lpp/Xamples/lib \
1236 /usr/openwin/lib \
1237 /usr/openwin/share/lib \
1238 /usr/unsupported/lib \
1239 /usr/x386/lib \
1240 ; do
1241 if test -f "$ac_dir/X11/rgb.txt"; then
1242 im_cv_x_configure="$ac_dir/X11/"
1243 break
1244 elif test -f "$ac_dir/rgb.txt"; then
1245 im_cv_x_configure="$ac_dir/"
1246 break
1247 fi
1248
1249 done])
1250X11_CONFIGURE_PATH="$im_cv_x_configure"
1251case "${build_os}" in
1252 mingw* )
1253 X11ConfigurePath=`$WinPathScript "$X11ConfigurePath=" 1`
1254 ;;
1255esac
cristy9c151dc2012-12-02 22:30:16 +00001256AC_DEFINE_UNQUOTED(X11_CONFIGURE_PATH,"$X11ConfigurePath",[Location of X11 configure files])
cristy3ed852e2009-09-05 21:47:34 +00001257
1258#
1259# Find OpenMP library
1260#
1261GOMP_LIBS=''
1262if test "$enable_openmp" != 'no'; then
1263 if test "${GCC}" = "yes"; then
cristy18307f12011-12-30 01:20:16 +00001264 # Open64 (passes for GCC but uses different OpenMP implementation)
1265 if test "x$GOMP_LIBS" = x ; then
1266 if $CC --version 2>&1 | grep Open64 > /dev/null ; then
1267 AC_CHECK_LIB(openmp,omp_get_num_procs,GOMP_LIBS="-lopenmp",,)
1268 fi
1269 fi
Cristy530d3d72016-08-07 08:42:26 -04001270 # Clang (passes for GCC but uses different OpenMP implementation)
1271 if test "x$LIB_OMP" = x ; then
1272 if $CC --version 2>&1 | grep clang > /dev/null ; then
1273 AC_CHECK_LIB(omp,GOMP_parallel_start,LIB_OMP="-lomp",,)
1274 fi
1275 fi
cristy18307f12011-12-30 01:20:16 +00001276 # GCC
1277 if test "x$GOMP_LIBS" = x ; then
1278 AC_CHECK_LIB(gomp,GOMP_parallel_start,GOMP_LIBS="-lgomp",,)
1279 fi
cristy3ed852e2009-09-05 21:47:34 +00001280 else
cristy18307f12011-12-30 01:20:16 +00001281 # Sun CC
1282 if test "x$GOMP_LIBS" = x ; then
1283 AC_CHECK_LIB(mtsk,sunw_mp_register_warn,GOMP_LIBS="-lmtsk",,)
1284 fi
1285 # AIX xlc
1286 if test "x$GOMP_LIBS" = x ; then
1287 AC_CHECK_LIB(xlsmp,_xlsmpFlush,GOMP_LIBS="-lxlsmp",,)
1288 fi
1289 # SGI IRIX 6.5 MIPSpro C/C++
1290 if test "x$GOMP_LIBS" = x ; then
1291 AC_CHECK_LIB(mp,mp_destroy,GOMP_LIBS="-lmp",,)
1292 fi
cristy3ed852e2009-09-05 21:47:34 +00001293 fi
1294 LIBS="$GOMP_LIBS $LIBS"
1295fi
1296AC_SUBST(GOMP_LIBS)
1297
cristy12ac8192014-11-04 13:59:13 +00001298#
cristy3b0097d2014-11-04 15:34:47 +00001299# Check for jemalloc.
cristy12ac8192014-11-04 13:59:13 +00001300#
cristy3b0097d2014-11-04 15:34:47 +00001301have_jemalloc='no'
1302JEMALLOC_LIBS=''
1303if test "$with_jemalloc" != 'no'; then
1304 AC_MSG_CHECKING(for JEMALLOC support )
1305 AC_MSG_RESULT()
1306 failed=0
1307 passed=0
cristy22007ae2014-11-04 15:59:22 +00001308 AC_CHECK_HEADER([jemalloc/jemalloc.h],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`])
1309 AC_CHECK_LIB(jemalloc,[malloc_stats_print],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`],)
cristy3b0097d2014-11-04 15:34:47 +00001310 AC_MSG_CHECKING(if jemalloc memory allocation library is complete)
1311 if test $passed -gt 0; then
1312 if test $failed -gt 0; then
1313 AC_MSG_RESULT(no -- some components failed test)
1314 have_jemalloc='no (failed tests)'
1315 else
1316 JEMALLOC_LIBS='-ljemalloc'
1317 LIBS="$JEMALLOC_LIBS $LIBS"
1318 AC_DEFINE(HasJEMALLOC,1,Define if you have jemalloc memory allocation library)
1319 AC_MSG_RESULT(yes)
1320 have_jemalloc='yes'
1321 fi
1322 else
1323 AC_MSG_RESULT(no)
1324 fi
1325fi
1326AM_CONDITIONAL(HasJEMALLOC, test "$have_jemalloc" = 'yes')
1327AC_SUBST(JEMALLOC_LIBS)
cristy3ed852e2009-09-05 21:47:34 +00001328
1329#
Cristy001b1da2019-09-11 08:38:23 -04001330# Check for TCMalloc library
1331#
1332have_tcmalloc='no'
1333TCMALLOC_LIBS=''
1334OLIBS="$LIBS"
1335if test "$have_threads" = 'yes' -a "$with_tcmalloc" != 'no'; then
1336 AC_MSG_CHECKING([tcmalloc library support ])
1337 AC_MSG_RESULT([])
1338 failed=0
1339 passed=0
1340
1341 AC_CHECK_LIB([tcmalloc_minimal],[mallinfo],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`],[])
1342
1343 if test $passed -gt 0; then
1344 if test $failed -gt 0; then
1345 have_tcmalloc='no (some components failed test)'
1346 else
1347 TCMALLOC_LIBS=-ltcmalloc_minimal
1348 LIBS="$TCMALLOC_LIBS $LIBS"
1349 CFLAGS="$CFLAGS -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free"
1350 AC_DEFINE([HAVE_TCMALLOC],[1],[Define if you have the tcmalloc memory allocation library])
1351 have_tcmalloc='yes'
1352 fi
1353 fi
1354 AC_MSG_CHECKING([if tcmalloc memory allocation library is complete ])
1355 AC_MSG_RESULT([$have_tcmalloc])
1356fi
1357AM_CONDITIONAL([HAVE_TCMALLOC], [test "$have_tcmalloc" = 'yes'])
1358AC_SUBST([TCMALLOC_LIBS])
1359
1360#
cristy3ed852e2009-09-05 21:47:34 +00001361# Check for umem.
1362#
1363have_umem='no'
1364UMEM_LIBS=''
1365if test "$with_umem" != 'no'; then
1366 AC_MSG_CHECKING(for UMEM support )
cristyad38abe2012-12-23 23:03:21 +00001367 AC_MSG_RESULT()
cristy3ed852e2009-09-05 21:47:34 +00001368 failed=0
1369 passed=0
1370 AC_CHECK_HEADER(umem.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1371 AC_CHECK_LIB(umem,umem_alloc,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1372 AC_CHECK_LIB(umem,umem_free,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1373 AC_MSG_CHECKING(if umem memory allocation library is complete)
1374 if test $passed -gt 0; then
1375 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001376 AC_MSG_RESULT(no -- some components failed test)
cristy3ed852e2009-09-05 21:47:34 +00001377 have_umem='no (failed tests)'
1378 else
1379 UMEM_LIBS='-lumem'
1380 LIBS="$UMEM_LIBS $LIBS"
Cristy2acd4782019-09-11 08:08:02 -04001381 AC_DEFINE(HAVE_UMEM,1,Define if you have umem memory allocation library)
cristyad38abe2012-12-23 23:03:21 +00001382 AC_MSG_RESULT(yes)
cristy3ed852e2009-09-05 21:47:34 +00001383 have_umem='yes'
1384 fi
1385 else
cristyad38abe2012-12-23 23:03:21 +00001386 AC_MSG_RESULT(no)
cristy3ed852e2009-09-05 21:47:34 +00001387 fi
1388fi
Cristy2acd4782019-09-11 08:08:02 -04001389AM_CONDITIONAL(HAVE_UMEM, test "$have_umem" = 'yes')
cristy3ed852e2009-09-05 21:47:34 +00001390AC_SUBST(UMEM_LIBS)
1391
1392#
1393# Add support for ccmalloc memory debugging library if requested
1394#
1395have_ccmalloc='no'
1396CCMALLOC_LIBS=''
1397if test "$enable_ccmalloc" = 'yes'; then
1398 AC_PATH_PROG(CCMALLOCDelegate,ccmalloc,)
1399 if test -n "$CCMALLOCDelegate"; then
1400 eval `grep PREFIX= $CCMALLOCDelegate | sed -e 's/PREFIX/CCMALLOC_PREFIX/'`
1401 OLIBS="$LIBS"
1402 # Assume that gcc is used with ccmalloc.
1403 LIBS="$LIBS $CCMALLOC_PREFIX/lib/ccmalloc-gcc.o"
1404 AC_CHECK_LIB(ccmalloc,ccmalloc_malloc,CCMALLOC_LIBS="$CCMALLOC_PREFIX/lib/ccmalloc-gcc.o -lccmalloc -ldl",,-ldl)
1405 if test -n "$CCMALLOC_LIBS"; then
1406 LIBS="$OLIBS"
1407 LIBS="$LIBS $CCMALLOC_LIBS"
1408 have_ccmalloc='yes'
1409 else
1410 LIBS="$OLIBS"
1411 fi
1412 fi
1413fi
1414
1415#
cristy944e51f2013-04-16 18:45:02 +00001416# Add support for 'huge pages' if requested
1417#
1418AS_IF([test "x$enable_hugepages" != "xno"],[
1419 AC_DEFINE(HAVE_HUGEPAGES, 1, [Compile with hugepage support])
1420])
1421
1422#
cristy3ed852e2009-09-05 21:47:34 +00001423# Add support for efence memory debugging library if requested
1424#
1425if test "$enable_efence" = 'yes'; then
1426 EFENCE_LIBS='-lefence'
1427 LIBS="$EFENCE_LIBS $LIBS"
1428fi
1429
cristy3ed852e2009-09-05 21:47:34 +00001430dnl ===========================================================================
1431
1432#
1433# Check for BZLIB
1434#
1435
1436AC_ARG_WITH([bzlib],
1437 [AC_HELP_STRING([--without-bzlib],
1438 [disable BZLIB support])],
1439 [with_bzlib=$withval],
1440 [with_bzlib='yes'])
1441
1442if test "$with_bzlib" != 'yes'; then
1443 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-bzlib=$with_bzlib "
1444fi
1445
1446have_bzlib='no'
1447if test "$with_bzlib" != 'no'; then
1448 BZLIB_LIBS=''
cristyad38abe2012-12-23 23:03:21 +00001449 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001450 AC_MSG_CHECKING([for BZLIB])
cristyad38abe2012-12-23 23:03:21 +00001451 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001452 failed=0
1453 passed=0
1454 found_libbz=0
1455 AC_CHECK_HEADER(bzlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1456 AC_CHECK_LIB(bz2,BZ2_bzDecompress,found_libbz=`expr $found_libbz + 1`,,)
1457 if test "$native_win32_build" = 'yes'; then
1458 AC_CHECK_LIB(bz2,_imp__BZ2_decompress,found_libbz=`expr $found_libbz + 1`,,)
1459 fi
1460 if test $found_libbz -gt 0; then
1461 passed=`expr $passed + 1`
1462 else
1463 failed=`expr $failed + 1`
1464 fi
1465 AC_MSG_CHECKING(if BZLIB package is complete)
1466 if test $passed -gt 0; then
1467 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001468 AC_MSG_RESULT(no -- some components failed test)
cristy3ed852e2009-09-05 21:47:34 +00001469 have_bzlib='no (failed tests)'
1470 else
1471 BZLIB_LIBS='-lbz2'
1472 LIBS="$BZLIB_LIBS $LIBS"
1473 AC_DEFINE(BZLIB_DELEGATE,1,Define if you have the bzip2 library)
cristyad38abe2012-12-23 23:03:21 +00001474 AC_MSG_RESULT(yes)
cristy3ed852e2009-09-05 21:47:34 +00001475 have_bzlib='yes'
1476 fi
1477 else
cristyad38abe2012-12-23 23:03:21 +00001478 AC_MSG_RESULT(no)
cristy3ed852e2009-09-05 21:47:34 +00001479 fi
1480fi
1481AM_CONDITIONAL(BZLIB_DELEGATE, test "$have_bzlib" = 'yes')
1482AC_SUBST(BZLIB_LIBS)
1483
1484#
1485# Find the X11 include and library directories.
1486#
1487IPC_LIBS=''
1488X11_LIBS=''
1489XEXT_LIBS=''
1490XT_LIBS=''
1491AC_PATH_XTRA
1492if test "$no_x" != 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00001493 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001494 AC_MSG_CHECKING([for X11])
cristyad38abe2012-12-23 23:03:21 +00001495 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001496 LDFLAGS="$LDFLAGS $X_LIBS"
1497 X11_LIBS="$X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
1498 LIBS="$X11_LIBS $LIBS"
1499 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1500
1501 AC_DEFINE(X11_DELEGATE,1,Define if you have X11 library)dnl
1502
1503 #
1504 # Check for X11 shared memory extension
1505 #
1506 # shmctl is required to support the shared memory extension
1507 AC_CHECK_FUNC([shmctl],[have_shmctl='yes'],[])
1508 if test "$have_shmctl" != 'yes'; then
1509 PERSIST_LIBS=$LIBS
1510 LIBS="$LIBS -lcygipc"
1511 AC_TRY_LINK_FUNC([shmctl],[have_shmctl='yes'; IPC_LIBS='-lcygipc'],[])
1512 LIBS=$PERSIST_LIBS
1513 fi
1514
1515 if test "$have_shmctl" = 'yes'; then
1516 AC_CHECK_LIB([Xext],[XShmAttach],[XEXT_LIBS='-lXext' ; AC_DEFINE(HAVE_SHARED_MEMORY,1,X11 server supports shared memory extension)],[],[])
1517 fi
1518
1519 #
1520 # Check for X11 shape extension
1521 #
1522 AC_CHECK_LIB([Xext],[XShapeCombineMask],[XEXT_LIBS='-lXext' ; AC_DEFINE(HAVE_SHAPE,1,X11 server supports shape extension)],[],[])
1523 AC_CHECK_LIB(Xt,XtSetEventDispatcher,XT_LIBS='-lXt',,)
1524 LIBS="$XEXT_LIBS $XT_LIBS $LIBS"
1525fi
1526if test "$no_x" != 'yes'; then
1527 have_x='yes'
1528else
1529 have_x='no'
1530fi
1531AM_CONDITIONAL(X11_DELEGATE, test "$have_x" = 'yes')
1532AC_SUBST(X11_LIBS)
1533AC_SUBST(XEXT_LIBS)
1534
1535dnl ===========================================================================
1536
1537#
1538# Check for ZLIB
1539#
1540AC_ARG_WITH([zlib],
1541 [AC_HELP_STRING([--without-zlib],
1542 [disable ZLIB support])],
1543 [with_zlib=$withval],
1544 [with_zlib='yes'])
1545
1546if test "$with_zlib" != 'yes'; then
1547 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-zlib=$with_zlib "
1548fi
1549
1550have_zlib='no'
cristy32f75d42015-06-05 18:46:23 +00001551ZLIB_CFLAGS=""
1552ZLIB_LIBS=""
1553ZLIB_PKG=""
1554if test "x$with_zlib" = "xyes"; then
1555 AC_MSG_RESULT([-------------------------------------------------------------])
1556 PKG_CHECK_MODULES(ZLIB,[zlib >= 1.0.0], have_zlib=yes, have_zlib=no)
1557 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001558fi
cristy32f75d42015-06-05 18:46:23 +00001559
1560if test "$have_zlib" = 'yes'; then
1561 AC_DEFINE(ZLIB_DELEGATE,1,Define if you have ZLIB library)
1562 CFLAGS="$ZLIB_CFLAGS $CFLAGS"
Cristyb94e76e2017-06-22 19:18:20 -04001563 LIBS="$ZLIB_LIBS $LIBS"
cristy32f75d42015-06-05 18:46:23 +00001564fi
1565
cristy3ed852e2009-09-05 21:47:34 +00001566AM_CONDITIONAL(ZLIB_DELEGATE, test "$have_zlib" = 'yes')
cristy32f75d42015-06-05 18:46:23 +00001567AC_SUBST(ZLIB_CFLAGS)
cristy3ed852e2009-09-05 21:47:34 +00001568AC_SUBST(ZLIB_LIBS)
1569
cristy32f75d42015-06-05 18:46:23 +00001570dnl ===========================================================================
1571
Cristy08170e62018-10-14 10:33:46 -04001572#
1573# Check for ZSTD
1574#
1575AC_ARG_WITH([zstd],
1576 [AC_HELP_STRING([--without-zstd],
1577 [disable ZSTD support])],
1578 [with_zstd=$withval],
1579 [with_zstd='yes'])
1580
1581if test "$with_zstd" != 'yes'; then
1582 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-zstd=$with_zstd "
1583fi
1584
1585have_zstd='no'
1586ZSTD_CFLAGS=""
1587ZSTD_LIBS=""
1588ZSTD_PKG=""
1589if test "x$with_zstd" = "xyes"; then
1590 AC_MSG_RESULT([-------------------------------------------------------------])
1591 PKG_CHECK_MODULES(LIBZSTD,[libzstd >= 1.0.0], have_zstd=yes, have_zstd=no)
1592 AC_MSG_RESULT([])
1593fi
1594
1595if test "$have_zstd" = 'yes'; then
1596 AC_DEFINE(ZSTD_DELEGATE,1,Define if you have ZSTD library)
1597 CFLAGS="$ZSTD_CFLAGS $CFLAGS"
1598 LIBS="$ZSTD_LIBS $LIBS"
1599fi
1600
1601AM_CONDITIONAL(ZSTD_DELEGATE, test "$have_zstd" = 'yes')
1602AC_SUBST(ZSTD_CFLAGS)
1603AC_SUBST(ZSTD_LIBS)
1604
1605dnl ===========================================================================
1606
cristy5eef09f2012-10-16 12:08:28 +00001607# whether modules are built or not.
1608with_ltdl='yes'
1609have_ltdl='no'
1610LTDL_LIBS=''
Cristy141a3002019-10-29 17:10:27 -04001611if test "$build_modules" != 'no' || test "X$ax_cv_check_cl_libcl" != Xno; then
cristyad38abe2012-12-23 23:03:21 +00001612 AC_MSG_RESULT([-------------------------------------------------------------])
cristy5eef09f2012-10-16 12:08:28 +00001613 AC_MSG_CHECKING([for libltdl])
cristyad38abe2012-12-23 23:03:21 +00001614 AC_MSG_RESULT([])
cristy5eef09f2012-10-16 12:08:28 +00001615 failed=0
1616 passed=0
cristyaf4cbf32012-10-16 23:47:41 +00001617 AC_CHECK_HEADER([ltdl.h],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`])
1618 AC_CHECK_LIB([ltdl],[lt_dlinit],[passed=`expr $passed + 1`],[failed=`expr $failed + 1`],)
1619 AC_MSG_CHECKING([if libltdl package is complete])
cristy5eef09f2012-10-16 12:08:28 +00001620 if test $passed -gt 0 ; then
1621 if test $failed -gt 0 ; then
cristyaf4cbf32012-10-16 23:47:41 +00001622 AC_MSG_RESULT([no -- some components failed test])
cristy5eef09f2012-10-16 12:08:28 +00001623 have_ltdl='no (failed tests)'
1624 else
1625 LTDL_LIBS='-lltdl'
1626 LIBS="$LTDL_LIBS $LIBS"
Cristy89e83492017-11-12 08:09:05 -05001627 AC_DEFINE(LTDL_DELEGATE,1,[Define if using libltdl to support dynamically loadable modules and OpenCL])
David Seifert21ed292a2017-12-16 19:01:03 +01001628 AC_DEFINE_UNQUOTED([LTDL_MODULE_EXT],["${shrext_cmds}"],[Native module suffix])
cristyaf4cbf32012-10-16 23:47:41 +00001629 AC_MSG_RESULT([yes])
cristy5eef09f2012-10-16 12:08:28 +00001630 have_ltdl='yes'
1631 fi
1632 else
cristyaf4cbf32012-10-16 23:47:41 +00001633 AC_MSG_RESULT([no])
1634 fi
1635 if test "$have_ltdl" != 'yes' ; then
Cristy89e83492017-11-12 08:09:05 -05001636 AC_MSG_FAILURE([libltdl is required for modules and OpenCL builds],[1])
cristy5eef09f2012-10-16 12:08:28 +00001637 fi
1638fi
1639AM_CONDITIONAL(WITH_LTDL, test "$have_ltdl" != 'no')
1640
cristy3ed852e2009-09-05 21:47:34 +00001641#
1642# If profiling, then check for -ldl and dlopen (required for Solaris & gcc)
1643#
1644LIB_DL=''
1645if test "$enable_profiling" = 'yes'; then
1646 AC_CHECK_LIB(dl,dlopen,LIB_DL='-ldl',,)
1647 LIBS="$LIB_DL $LIBS"
1648fi
1649AC_SUBST(LIB_DL)
1650
1651dnl ===========================================================================
1652
1653#
cristy5a3dc992014-12-05 19:50:04 +00001654# Set Apple font directory.
1655#
1656AC_ARG_WITH([apple-font-dir],
1657 [AC_HELP_STRING([--with-apple-font-dir=DIR],
1658 [Apple font directory])],
1659 [with_apple_font_dir=$withval],
1660 [with_apple_font_dir='default'])
1661
1662if test "$with_apple_font_dir" != 'default'; then
1663 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-apple-font-dir=$with_apple_font_dir "
1664fi
1665
1666dnl ===========================================================================
1667
1668#
cristy3ed852e2009-09-05 21:47:34 +00001669# Check for Autotrace delegate library.
1670#
1671AC_ARG_WITH([autotrace],
1672 [AC_HELP_STRING([--with-autotrace],
1673 [enable autotrace support])],
1674 [with_autotrace=$withval],
1675 [with_autotrace='no'])
1676
1677if test "$with_autotrace" != 'yes'; then
1678 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-autotrace=$with_autotrace "
1679fi
1680
1681have_autotrace='no'
1682AUTOTRACE_CFLAGS=""
1683AUTOTRACE_LIBS=""
1684AUTOTRACE_PKG=""
1685if test "x$with_autotrace" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00001686 AC_MSG_RESULT([-------------------------------------------------------------])
1687 PKG_CHECK_MODULES(AUTOTRACE,[autotrace >= 0.31.1], have_autotrace=yes, have_autotrace=no)
1688 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001689fi
1690
1691if test "$have_autotrace" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00001692 AC_DEFINE(AUTOTRACE_DELEGATE,1,Define if you have AUTOTRACE library)
1693 CFLAGS="$AUTOTRACE_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00001694fi
1695
1696AM_CONDITIONAL(AUTOTRACE_DELEGATE,test "$have_autotrace" = 'yes')
1697AC_SUBST(AUTOTRACE_CFLAGS)
1698AC_SUBST(AUTOTRACE_LIBS)
1699
1700dnl ===========================================================================
1701
1702#
1703# Check for Display Postscript delegate library.
1704#
1705AC_ARG_WITH([dps],
1706 [AC_HELP_STRING([--without-dps],
1707 [disable Display Postscript support])],
1708 [with_dps=$withval],
1709 [with_dps='yes'])
1710
1711if test "$with_dps" != 'yes'; then
1712 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-dps=$with_dps "
1713fi
1714
1715have_dps='no'
1716DPS_LIBS=''
1717if test "$with_dps" != 'no' && test "$with_x" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001718 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001719 AC_MSG_CHECKING([for DPS])
cristyad38abe2012-12-23 23:03:21 +00001720 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001721 failed=0
1722 passed=0
1723 PERSIST_CPPFLAGS="$CPPFLAGS"
1724 CPPFLAGS="$CPPFLAGS -I${ac_x_includes}/X11"
1725 AC_CHECK_HEADER(DPS/dpsXclient.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1726 # DPS issues:
1727 # XFree86-4.x needs -lXt to provide XtMalloc for -ldps.
1728 # Cygwin doesn't deliver -lXt as a DLL, which prevents a DLL build.
1729 # Adobe DPS (as delivered on Solaris) doesn't require -lXt.
1730 # ImageMagick itself doesn't use -lXt.
1731 have_libdps='no'
1732 LIBDPS_XT=''
1733 AC_CHECK_LIB(dps,DPSInitialize,have_libdps='yes',have_libdps='no',)
1734 if test "$have_libdps" != 'yes'; then
1735 # Unset cache variable so we can try again.
1736 unset ac_cv_lib_dps_DPSInitialize
1737 AC_CHECK_LIB(dps,DPSInitialize,have_libdps='yes',have_libdps='no',-lXt)
1738 if test "$have_libdps" = 'yes'; then
1739 LIBDPS_XT='-lXt'
1740 fi
1741 fi
1742 if test "$have_libdps" = 'yes'; then
1743 passed=`expr $passed + 1`
1744 else
1745 failed=`expr $failed + 1`
1746 fi
1747 AC_CHECK_LIB(dpstk,XDPSPixelsPerPoint,passed=`expr $passed + 1`,failed=`expr $failed + 1`,-ldps $LIBDPS_XT)
1748 AC_MSG_CHECKING([if DPS package is complete])
1749 if test $passed -gt 0; then
1750 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00001751 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00001752 have_dps='no (failed tests)'
1753 CPPFLAGS="$PERSIST_CPPFLAGS"
1754 else
1755 DPS_LIBS="-ldpstk -ldps ${LIBDPS_XT}"
1756 LIBS="$DPS_LIBS $LIBS"
1757 AC_DEFINE(DPS_DELEGATE,1,Define if you have Display Postscript)
cristyad38abe2012-12-23 23:03:21 +00001758 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001759 have_dps='yes'
1760 fi
1761 else
cristyad38abe2012-12-23 23:03:21 +00001762 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00001763 CPPFLAGS=$PERSIST_CPPFLAGS
1764 fi
1765fi
1766AM_CONDITIONAL(DPS_DELEGATE, test "$have_dps" = 'yes')
1767AC_SUBST(DPS_LIBS)
1768
1769dnl ===========================================================================
1770
1771#
cristy430a7312010-01-21 20:44:04 +00001772# Set DejaVu font directory.
1773#
1774AC_ARG_WITH([dejavu-font-dir],
1775 [AC_HELP_STRING([--with-dejavu-font-dir=DIR],
1776 [DejaVu font directory])],
1777 [with_dejavu_font_dir=$withval],
1778 [with_dejavu_font_dir='default'])
1779
1780if test "$with_dejavu_font_dir" != 'default'; then
1781 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-dejavu-font-dir=$with_dejavu_font_dir "
1782fi
1783
1784dnl ===========================================================================
1785
1786#
cristy3ed852e2009-09-05 21:47:34 +00001787# Check for FFTW delegate library.
1788#
cristy81beccd2011-10-03 18:17:24 +00001789AC_ARG_WITH([fftw],
cristy3ed852e2009-09-05 21:47:34 +00001790 [AC_HELP_STRING([--without-fftw],
1791 [disable FFTW support])],
1792 [with_fftw=$withval],
1793 [with_fftw='yes'])
1794
1795if test "$with_fftw" != 'yes'; then
1796 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fftw=$with_fftw "
1797fi
1798
cristy81beccd2011-10-03 18:17:24 +00001799have_fftw='no'
cristy32f75d42015-06-05 18:46:23 +00001800FFTW_CFLAGS=""
1801FFTW_LIBS=""
1802FFTW_PKG=""
1803if test "x$with_fftw" = "xyes"; then
1804 AC_MSG_RESULT([-------------------------------------------------------------])
1805 PKG_CHECK_MODULES(fftw3,[fftw3 >= 3.0.0], have_fftw=yes, have_fftw=no)
1806 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001807fi
cristy32f75d42015-06-05 18:46:23 +00001808
1809if test "$have_fftw" = 'yes'; then
1810 AC_DEFINE(FFTW_DELEGATE,1,Define if you have FFTW library)
cristyb74ab6e2015-06-06 12:39:54 +00001811 FFTW_CFLAGS="$fftw3_CFLAGS"
1812 FFTW_LIBS="$fftw3_LIBS"
cristy32f75d42015-06-05 18:46:23 +00001813 CFLAGS="$fftw3_CFLAGS $CFLAGS"
1814fi
1815
cristy3ed852e2009-09-05 21:47:34 +00001816AM_CONDITIONAL(FFTW_DELEGATE, test "$have_fftw" = 'yes')
cristy32f75d42015-06-05 18:46:23 +00001817AC_SUBST(FFTW_CFLAGS)
cristy3ed852e2009-09-05 21:47:34 +00001818AC_SUBST(FFTW_LIBS)
1819
1820dnl ===========================================================================
1821
1822#
Cristy6d2f14b2016-04-26 01:41:09 -04001823# Check for FLIF delegate library.
1824#
1825AC_ARG_WITH(flif,
1826 [AC_HELP_STRING([--without-flif],
1827 [disable FLIF support])],
1828 [with_flif=$withval],
1829 [with_flif='yes'])
1830
1831if test "$with_flif" != 'yes'; then
1832 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-flif=$with_flif "
1833fi
1834
1835have_flif='no'
1836FLIF_LIBS=''
1837if test "$with_flif" != 'no'; then
1838 AC_MSG_RESULT([-------------------------------------------------------------])
1839 AC_MSG_CHECKING([for FLIF])
1840 AC_MSG_RESULT([])
1841 failed=0
1842 passed=0
1843 AC_CHECK_HEADER(flif.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1844 AC_CHECK_LIB(flif,flif_create_decoder,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1845 AC_MSG_CHECKING([if FLIF package is complete])
1846 if test $passed -gt 0; then
1847 if test $failed -gt 0; then
1848 AC_MSG_RESULT([no -- some components failed test])
1849 have_flif='no (failed tests)'
1850 else
1851 FLIF_LIBS='-lflif'
1852 LIBS="$FLIF_LIBS $LIBS"
1853 AC_DEFINE(FLIF_DELEGATE,1,Define if you have FLIF library)
1854 AC_MSG_RESULT([yes])
1855 have_flif='yes'
1856 fi
1857 else
1858 AC_MSG_RESULT([no])
1859 fi
1860fi
1861AM_CONDITIONAL(FLIF_DELEGATE,test "$have_flif" = 'yes')
1862AC_SUBST(FLIF_LIBS)
1863
1864dnl ===========================================================================
1865
1866#
cristy3ed852e2009-09-05 21:47:34 +00001867# Check for FlashPIX delegate library.
1868#
1869AC_ARG_WITH([fpx],
1870 [AC_HELP_STRING([--without-fpx],
1871 [disable FlashPIX support])],
1872 [with_fpx=$withval],
1873 [with_fpx='yes'])
1874
1875if test "$with_fpx" != 'yes'; then
1876 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fpx=$with_fpx "
1877fi
1878
1879have_fpx='no'
1880FPX_LIBS=''
1881if test "$with_fpx" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00001882 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00001883 AC_MSG_CHECKING([for FlashPIX])
cristyad38abe2012-12-23 23:03:21 +00001884 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001885 failed=0
1886 passed=0
1887 AC_LANG_PUSH(C++)
1888 AC_CHECK_HEADER(fpxlib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
1889 AC_CHECK_LIB(fpx,FPX_OpenImageByFilename,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
1890 AC_LANG_POP
1891 AC_MSG_CHECKING([if FlashPIX 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])
cristy3ed852e2009-09-05 21:47:34 +00001895 have_fpx='no (failed tests)'
1896 else
1897 FPX_LIBS='-lfpx'
1898 AC_DEFINE(FPX_DELEGATE,1,Define if you have FlashPIX library)
cristyad38abe2012-12-23 23:03:21 +00001899 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00001900 have_fpx='yes'
1901 PERLMAINCC="$CXX"
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(FPX_DELEGATE, test "$have_fpx" = 'yes')
1908AC_SUBST(FPX_LIBS)
cristy853d9902014-08-21 18:50:43 +00001909
1910dnl ===========================================================================
1911
1912#
1913# Check for DJVU delegate library.
1914#
1915AC_ARG_WITH([djvu],
1916 [AC_HELP_STRING([--without-djvu],
1917 [disable DjVu support])],
1918 [with_djvu=$withval],
1919 [with_djvu='yes'])
1920
1921if test "$with_djvu" != 'yes'; then
1922 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-djvu=$with_djvu "
1923fi
1924
1925have_djvu='no'
cristy32f75d42015-06-05 18:46:23 +00001926DJVU_CFLAGS=""
1927DJVU_LIBS=""
1928DJVU_PKG=""
1929if test "x$with_djvu" = "xyes"; then
1930 AC_MSG_RESULT([-------------------------------------------------------------])
1931 PKG_CHECK_MODULES(ddjvuapi,[ddjvuapi >= 3.5.0], have_djvu=yes, have_djvu=no)
1932 AC_MSG_RESULT([])
cristy853d9902014-08-21 18:50:43 +00001933fi
cristy32f75d42015-06-05 18:46:23 +00001934
1935if test "$have_djvu" = 'yes'; then
1936 AC_DEFINE(DJVU_DELEGATE,1,Define if you have DJVU library)
cristyc83c2cc2015-06-06 16:35:26 +00001937 DJVU_CFLAGS="$ddjvuapi_CFLAGS"
1938 DJVU_LIBS="$ddjvuapi_LIBS"
1939 CFLAGS="$ddjvuapi_CFLAGS $CFLAGS"
cristy32f75d42015-06-05 18:46:23 +00001940fi
1941
cristy853d9902014-08-21 18:50:43 +00001942AM_CONDITIONAL(DJVU_DELEGATE, test "$have_djvu" = 'yes')
cristy32f75d42015-06-05 18:46:23 +00001943AC_SUBST(DJVU_CFLAGS)
cristy853d9902014-08-21 18:50:43 +00001944AC_SUBST(DJVU_LIBS)
cristy3ed852e2009-09-05 21:47:34 +00001945
1946dnl ===========================================================================
1947
1948#
1949# Check for fontconfig delegate library.
1950#
1951AC_ARG_WITH([fontconfig],
1952 [AC_HELP_STRING([--without-fontconfig],
1953 [disable fontconfig support])],
1954 [with_fontconfig=$withval],
cristyfc3d0222012-02-07 15:05:57 +00001955 [with_fontconfig='yes'])
cristy3ed852e2009-09-05 21:47:34 +00001956
1957if test "$with_fontconfig" != 'yes'; then
1958 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fontconfig=$with_fontconfig "
1959fi
1960
1961have_fontconfig='no'
1962FONTCONFIG_CFLAGS=""
1963FONTCONFIG_LIBS=""
1964FONTCONFIG_PKG=""
1965if test "x$with_fontconfig" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00001966 AC_MSG_RESULT([-------------------------------------------------------------])
1967 PKG_CHECK_MODULES(FONTCONFIG,[fontconfig >= 2.1.0], have_fontconfig=yes, have_fontconfig=no)
1968 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00001969fi
1970
1971if test "$have_fontconfig" = 'yes'; then
cristyd09bcf92010-03-25 03:04:45 +00001972 AC_DEFINE(FONTCONFIG_DELEGATE,1,Define if you have FONTCONFIG library)
cristy32f75d42015-06-05 18:46:23 +00001973 CFLAGS="$FONTCONFIG_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00001974fi
1975
1976AM_CONDITIONAL(FONTCONFIG_DELEGATE,test "$have_fontconfig" = 'yes')
1977AC_SUBST(FONTCONFIG_CFLAGS)
1978AC_SUBST(FONTCONFIG_LIBS)
1979
1980dnl ===========================================================================
1981
1982#
cristy03f187e2013-01-24 00:22:19 +00001983# Check for the Freetype delegate library.
cristy3ed852e2009-09-05 21:47:34 +00001984#
cristy81beccd2011-10-03 18:17:24 +00001985AC_ARG_WITH([freetype],
cristy3ed852e2009-09-05 21:47:34 +00001986 [AC_HELP_STRING([--without-freetype],
cristy81beccd2011-10-03 18:17:24 +00001987 [disable Freetype support])],
cristy3ed852e2009-09-05 21:47:34 +00001988 [with_freetype=$withval],
1989 [with_freetype='yes'])
1990
cristy3ed852e2009-09-05 21:47:34 +00001991if test "$with_freetype" != 'yes'; then
1992 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-freetype=$with_freetype "
1993fi
1994
cristy81beccd2011-10-03 18:17:24 +00001995have_freetype='no'
cristy03f187e2013-01-24 00:22:19 +00001996FREETYPE_CFLAGS=""
1997FREETYPE_LIBS=""
1998FREETYPE_PKG=""
1999if test "x$with_freetype" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002000 AC_MSG_RESULT([-------------------------------------------------------------])
2001 PKG_CHECK_MODULES(FREETYPE,[freetype2], have_freetype=yes, have_freetype=no)
2002 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002003fi
cristy03f187e2013-01-24 00:22:19 +00002004
2005if test "$have_freetype" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002006 AC_DEFINE(FREETYPE_DELEGATE,1,Define if you have FREETYPE library)
2007 CFLAGS="$FREETYPE_CFLAGS $CFLAGS"
Cristyed7fd172019-12-07 10:52:28 -05002008 MAGICKCORE_FREETYPE_DELEGATE=1
2009else
2010 MAGICKCORE_FREETYPE_DELEGATE=0
cristy03f187e2013-01-24 00:22:19 +00002011fi
2012
cristy03f187e2013-01-24 00:22:19 +00002013AC_SUBST(FREETYPE_CFLAGS)
cristy3ed852e2009-09-05 21:47:34 +00002014AC_SUBST(FREETYPE_LIBS)
Cristyed7fd172019-12-07 10:52:28 -05002015AC_SUBST([MAGICKCORE_FREETYPE_DELEGATE])
cristy3ed852e2009-09-05 21:47:34 +00002016
2017dnl ===========================================================================
2018
cristy3ed852e2009-09-05 21:47:34 +00002019#
Cristy17f8c722016-01-31 09:42:56 -05002020# Check for the raqm delegate library.
2021#
2022AC_ARG_WITH([raqm],
2023 [AC_HELP_STRING([--without-raqm],
2024 [disable Raqm support])],
2025 [with_raqm=$withval],
2026 [with_raqm='yes'])
2027
2028if test "$with_raqm" != 'yes'; then
2029 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-raqm=$with_raqm "
2030fi
2031
2032have_raqm='no'
2033RAQM_CFLAGS=""
2034RAQM_LIBS=""
2035RAQM_PKG=""
2036if test "x$with_raqm" = "xyes"; then
2037 AC_MSG_RESULT([-------------------------------------------------------------])
2038 PKG_CHECK_MODULES(RAQM,[raqm], have_raqm=yes, have_raqm=no)
2039 AC_MSG_RESULT([])
2040fi
2041
2042if test "$have_raqm" = 'yes'; then
2043 AC_DEFINE(RAQM_DELEGATE,1,Define if you have RAQM library)
2044 CFLAGS="$RAQM_CFLAGS $CFLAGS"
2045fi
2046
2047AM_CONDITIONAL(RAQM_DELEGATE, test "$have_raqm" = 'yes')
2048AC_SUBST(RAQM_CFLAGS)
2049AC_SUBST(RAQM_LIBS)
2050
2051dnl ===========================================================================
2052
2053#
cristy3ed852e2009-09-05 21:47:34 +00002054# Check for Ghostscript library or framework.
2055#
2056# Test for iapi.h & test for gsapi_new_instance in -lgs
2057# or -framework Ghostscript
2058
2059AC_ARG_WITH([gslib],
cristy8d733f42013-03-04 11:27:54 +00002060 [AC_HELP_STRING([--with-gslib],
cristy3ed852e2009-09-05 21:47:34 +00002061 [enable Ghostscript library support])],
2062 [with_gslib=$withval],
2063 [with_gslib='no'])
2064
cristyb7931f12009-09-25 10:22:21 +00002065gslib_framework='no'
cristy3ed852e2009-09-05 21:47:34 +00002066if test "$with_gslib" != 'yes'; then
2067 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gslib=$with_gslib "
2068fi
2069
2070have_gslib='no'
2071GS_LIBS=''
2072if test "$with_gslib" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002073 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002074 AC_MSG_CHECKING([for Ghostscript])
cristyad38abe2012-12-23 23:03:21 +00002075 AC_MSG_RESULT([])
cristyb7931f12009-09-25 10:22:21 +00002076 framework=0
cristy3ed852e2009-09-05 21:47:34 +00002077 failed=0
2078 passed=0
2079 AC_CHECK_HEADER(ghostscript/iapi.h,passed=`expr $passed + 1`,
2080 failed=`expr $failed + 1`,)
2081 AC_CHECK_HEADER(ghostscript/ierrors.h,passed=`expr $passed + 1`,
2082 failed=`expr $failed + 1`,)
2083 AC_CHECK_FRAMEWORK(Ghostscript,gsapi_new_instance,framework=`expr $framework + 1`,
2084 AC_CHECK_LIB(gs,gsapi_new_instance,passed=`expr $passed + 1`,failed=`expr $failed + 1`,),)
2085 AC_MSG_CHECKING([if Ghostscript package is complete])
2086 if test $passed -gt 0; then
2087 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002088 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002089 have_gslib='no (failed tests)'
2090 else
2091 if test $framework -gt 0; then
2092 GS_LIBS='-framework Ghostscript'
cristyb7931f12009-09-25 10:22:21 +00002093 gslib_framework='yes'
cristyad38abe2012-12-23 23:03:21 +00002094 AC_MSG_RESULT([yes, using framework.])
cristy3ed852e2009-09-05 21:47:34 +00002095 else
cristyad38abe2012-12-23 23:03:21 +00002096 AC_MSG_RESULT([yes, using library.])
cristy3ed852e2009-09-05 21:47:34 +00002097 GS_LIBS='-lgs'
2098 fi
2099 LIBS="$GS_LIBS $LIBS"
2100 AC_DEFINE(GS_DELEGATE,1,Define if you have Ghostscript library or framework)
2101 have_gslib='yes'
2102 fi
2103 else
cristyad38abe2012-12-23 23:03:21 +00002104 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002105 fi
2106fi
2107AM_CONDITIONAL(GS_DELEGATE, test "$have_gslib" = 'yes')
2108AC_SUBST(GS_LIBS)
2109
2110# Set default font search path
2111AC_ARG_WITH([fontpath],
2112 [AC_HELP_STRING([--with-fontpath=DIR],
2113 [prepend to default font search path])],
2114 [with_fontpath=$withval],
2115 [with_fontpath=''])
2116
2117if test "$with_fontpath" != "yes" && test -z "$with_fontpath"; then
2118 with_fontpath=''
2119else
cristy9c151dc2012-12-02 22:30:16 +00002120 AC_DEFINE_UNQUOTED(MAGICK_FONT_PATH,"$with_fontpath",[Define to prepend to default font search path.])
cristy3ed852e2009-09-05 21:47:34 +00002121fi
2122if test "$with_fontpath=" != ''; then
2123 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-fontpath=$with_fontpath "
2124fi
2125
2126# Set Ghostscript font directory
2127AC_ARG_WITH([gs-font-dir],
2128 [AC_HELP_STRING([--with-gs-font-dir=DIR],
2129 [Ghostscript font directory])],
2130 [with_gs_font_dir=$withval],
2131 [with_gs_font_dir='default'])
2132
2133if test "$with_gs_font_dir" != 'default'; then
2134 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gs-font-dir=$with_gs_font_dir "
2135fi
2136
2137dnl ===========================================================================
2138
2139#
2140# Check for GVC delegate library.
2141#
2142AC_ARG_WITH(gvc,
cristy24aeba92012-06-26 12:22:26 +00002143 [AC_HELP_STRING([--with-gvc],
cristy8d733f42013-03-04 11:27:54 +00002144 [enable GVC support])],
cristy3ed852e2009-09-05 21:47:34 +00002145 [with_gvc=$withval],
cristy86e31f32015-06-06 15:47:32 +00002146 [with_gvc='yes'])
cristy3ed852e2009-09-05 21:47:34 +00002147
2148if test "$with_gvc" != 'yes'; then
2149 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-gvc=$with_gvc "
2150fi
2151
2152GVC_PKG=""
2153if test "x$with_gvc" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002154 AC_MSG_RESULT([-------------------------------------------------------------])
2155 PKG_CHECK_MODULES(GVC,[libgvc >= 2.9.0], have_gvc=yes, have_gvc=no)
2156 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002157fi
2158
2159if test "$have_gvc" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002160 AC_DEFINE(GVC_DELEGATE,1,Define if you have GVC library)
2161 CFLAGS="$GVC_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00002162fi
2163
2164AM_CONDITIONAL(GVC_DELEGATE, test "$have_gvc" = 'yes')
2165AC_SUBST(GVC_CFLAGS)
2166AC_SUBST(GVC_LIBS)
2167
2168dnl ===========================================================================
2169
2170#
Cristy9e7b9812017-11-19 09:35:36 -05002171# Check for the HEIC delegate library.
2172#
2173AC_ARG_WITH([heic],
2174 [AC_HELP_STRING([--without-heic],
2175 [disable HEIC support])],
2176 [with_heic=$withval],
2177 [with_heic='yes'])
2178
2179if test "$with_heic" != 'yes'; then
2180 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-heic=$with_heic "
2181fi
2182
2183have_heic='no'
farindk41794572018-04-27 10:26:21 +02002184HEIF_CFLAGS=""
2185HEIF_LIBS=""
2186HEIF_PKG=""
Cristy9e7b9812017-11-19 09:35:36 -05002187if test "x$with_heic" = "xyes"; then
2188 AC_MSG_RESULT([-------------------------------------------------------------])
farindk41794572018-04-27 10:26:21 +02002189 PKG_CHECK_MODULES(HEIF,[libheif], have_heic=yes, have_heic=no)
Cristy9e7b9812017-11-19 09:35:36 -05002190 AC_MSG_RESULT([])
2191fi
2192
2193if test "$have_heic" = 'yes'; then
farindk41794572018-04-27 10:26:21 +02002194 AC_DEFINE(HEIC_DELEGATE,1,Define if you have libheif library)
2195 CFLAGS="$HEIF_CFLAGS $CFLAGS"
Cristy9e7b9812017-11-19 09:35:36 -05002196fi
2197
2198AM_CONDITIONAL(HEIC_DELEGATE, test "$have_heic" = 'yes')
farindk41794572018-04-27 10:26:21 +02002199AC_SUBST(HEIF_CFLAGS)
2200AC_SUBST(HEIF_LIBS)
Cristy9e7b9812017-11-19 09:35:36 -05002201
2202dnl ===========================================================================
2203
2204#
cristy3ed852e2009-09-05 21:47:34 +00002205# Check for JBIG delegate library.
2206#
cristy3ed852e2009-09-05 21:47:34 +00002207AC_ARG_WITH([jbig],
2208 [AC_HELP_STRING([--without-jbig],
2209 [disable JBIG support])],
2210 [with_jbig=$withval],
2211 [with_jbig='yes'])
2212
2213have_jbig='no'
2214JBIG_LIBS=''
2215if test "$with_jbig" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002216 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002217 AC_MSG_CHECKING([for JBIG])
cristyad38abe2012-12-23 23:03:21 +00002218 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002219 failed=0
2220 passed=0
2221 AC_CHECK_HEADER(jbig.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2222 AC_CHECK_LIB(jbig,jbg_dec_init,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2223 AC_MSG_CHECKING([if JBIG package is complete])
2224 if test $passed -gt 0; then
2225 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002226 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002227 have_jbig='no (failed tests)'
2228 else
2229 JBIG_LIBS='-ljbig'
2230 LIBS="$JBIG_LIBS $LIBS"
2231 AC_DEFINE(JBIG_DELEGATE,1,Define if you have JBIG library)
cristyad38abe2012-12-23 23:03:21 +00002232 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002233 have_jbig='yes'
2234 fi
2235 else
cristyad38abe2012-12-23 23:03:21 +00002236 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002237 fi
2238fi
2239AM_CONDITIONAL(JBIG_DELEGATE, test "$have_jbig" = 'yes')
2240AC_SUBST(JBIG_LIBS)
2241
2242dnl ===========================================================================
2243
2244#
2245# Check for JPEG delegate library.
2246#
2247AC_ARG_WITH([jpeg],
2248 [AC_HELP_STRING([--without-jpeg],
2249 [disable JPEG support])],
2250 [with_jpeg=$withval],
2251 [with_jpeg='yes'])
2252
2253if test "$with_jpeg" != 'yes'; then
2254 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-jpeg=$with_jpeg "
2255fi
2256
2257have_jpeg='no'
2258JPEG_LIBS=''
2259if test "$with_jpeg" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002260 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002261 AC_MSG_CHECKING([for JPEG])
cristyad38abe2012-12-23 23:03:21 +00002262 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002263 failed=0
2264 passed=0
2265 AC_CHECK_HEADER(jconfig.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2266 AC_CHECK_HEADER(jerror.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2267 AC_CHECK_HEADER(jmorecfg.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2268 AC_CHECK_HEADER(jpeglib.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2269 AC_CHECK_LIB(jpeg,jpeg_read_header,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2270
2271# Test for compatible JPEG library
2272if test "$ac_cv_jpeg_version_ok" != 'yes'; then
2273AC_CACHE_CHECK(for JPEG library is version 6b or later, ac_cv_jpeg_version_ok,
2274[AC_TRY_COMPILE(
2275#include <stdio.h>
2276#include <stdlib.h>
2277#include <jpeglib.h>
2278,
2279changequote(<<, >>)dnl
2280<<
2281#if JPEG_LIB_VERSION < 62
2282#error IJG JPEG library must be version 6b or newer!
2283#endif
2284return 0;
2285>>,
2286changequote([, ])dnl
2287ac_cv_jpeg_version_ok='yes'; passed=`expr $passed + 1`,
2288ac_cv_jpeg_version_ok='no'; failed=`expr $failed + 1`)])
2289fi
2290 AC_MSG_CHECKING([if JPEG package is complete])
2291 if test $passed -gt 0; then
2292 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002293 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002294 have_jpeg='no (failed tests)'
2295 else
2296 JPEG_LIBS='-ljpeg'
2297 LIBS="$JPEG_LIBS $LIBS"
2298 AC_DEFINE(JPEG_DELEGATE,1,Define if you have JPEG library)
cristyad38abe2012-12-23 23:03:21 +00002299 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002300 have_jpeg='yes'
2301 fi
2302 else
cristyad38abe2012-12-23 23:03:21 +00002303 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002304 fi
2305fi
2306AM_CONDITIONAL(JPEG_DELEGATE, test "$have_jpeg" = 'yes')
2307AC_SUBST(JPEG_LIBS)
2308
2309dnl ===========================================================================
2310
2311#
Cristyb316fbb2019-10-05 10:51:15 -04002312# Check for Jpegxl delegate library.
2313#
2314AC_ARG_WITH([jxl],
2315 [AC_HELP_STRING([--without-jxl],
2316 [disable Jpegxl support])],
2317 [with_jxl=$withval],
2318 [with_jxl='yes'])
2319
2320if test "$with_jxl" != 'yes'; then
2321 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-jxl=$with_jxl "
2322fi
2323
2324# Check for the brunsli libraries, currently the only libraries used by the jxl coder.
2325# Full jxl support will be added once the full libraries are released.
2326have_jxl='no'
2327JXL_LIBS=''
2328if test "$with_jxl" != 'no'; then
2329 AC_MSG_RESULT([-------------------------------------------------------------])
2330 AC_MSG_CHECKING([for brunsli])
2331 AC_MSG_RESULT([])
2332 failed=0
2333 passed=0
2334 AC_CHECK_HEADER(brunsli/decode.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2335 AC_CHECK_HEADER(brunsli/encode.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2336 AC_CHECK_LIB(brunslidec-c,DecodeBrunsli,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2337 AC_CHECK_LIB(brunslienc-c,EncodeBrunsli,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2338 AC_MSG_CHECKING([if brunsli package is complete])
2339 if test $passed -gt 0; then
2340 if test $failed -gt 0; then
2341 AC_MSG_RESULT([no -- some components failed test])
2342 have_jxl='no (failed tests)'
2343 else
2344 JXL_LIBS='-lbrunslidec-c -lbrunslienc-c'
2345 LIBS="$JXL_LIBS $LIBS"
2346 AC_DEFINE(JXL_DELEGATE,1,Define if you have brunsli library)
2347 AC_MSG_RESULT([yes])
2348 have_jxl='yes'
2349 fi
2350 else
2351 AC_MSG_RESULT([no])
2352 fi
2353fi
2354AM_CONDITIONAL(JXL_DELEGATE, test "$have_jxl" = 'yes')
2355AC_SUBST(JXL_LIBS)
2356
2357dnl ===========================================================================
2358
2359#
cristy3ed852e2009-09-05 21:47:34 +00002360# Check for LCMS delegate library.
2361#
2362AC_ARG_WITH(lcms,
cristy71203402010-06-18 13:12:03 +00002363 [ --without-lcms disable lcms (v1.1X) support],
2364 [with_lcms=$withval],
2365 [with_lcms='yes'])
2366if test "$with_lcms" != 'yes' ; then
cristy3ed852e2009-09-05 21:47:34 +00002367 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lcms=$with_lcms "
2368fi
2369
cristy71203402010-06-18 13:12:03 +00002370have_lcms='no'
cristy32f75d42015-06-05 18:46:23 +00002371LCMS_CFLAGS=""
2372LCMS_LIBS=""
2373LCMS_PKG=""
2374if test "x$with_lcms" = "xyes"; then
2375 AC_MSG_RESULT([-------------------------------------------------------------])
Cristy9c07dae2019-12-10 10:15:20 -05002376 PKG_CHECK_MODULES(LCMS2,[lcms2 >= 2.0.0], have_lcms=yes, have_lcms=no)
cristy32f75d42015-06-05 18:46:23 +00002377 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002378fi
cristy71203402010-06-18 13:12:03 +00002379
cristy32f75d42015-06-05 18:46:23 +00002380if test "$have_lcms" = 'yes'; then
2381 AC_DEFINE(LCMS_DELEGATE,1,Define if you have LCMS library)
cristyb74ab6e2015-06-06 12:39:54 +00002382 LCMS_CFLAGS="$LCMS2_CFLAGS"
2383 LCMS_LIBS="$LCMS2_LIBS"
cristyb054e072015-06-05 20:35:43 +00002384 CFLAGS="$LCMS2_CFLAGS $CFLAGS"
cristyd6ac47f2015-06-06 13:46:55 +00002385 AC_CHECK_HEADER(lcms2/lcms2.h,have_lcms_header='yes',,)
2386 if test "$have_lcms_header" = 'yes'; then
2387 AC_DEFINE(HAVE_LCMS2_LCMS2_H,1,Define if you have the <lcms2/lcms2.h> header file.)
cristybc8ef1c2015-06-06 14:32:21 +00002388 else
2389 AC_DEFINE(HAVE_LCMS2_H,1,Define if you have the <lcms2.h> header file.)
cristyd6ac47f2015-06-06 13:46:55 +00002390 fi
cristyd09bcf92010-03-25 03:04:45 +00002391fi
cristy32f75d42015-06-05 18:46:23 +00002392
2393AM_CONDITIONAL(LCMS_DELEGATE, test "$have_lcms" = 'yes')
2394AC_SUBST(LCMS_CFLAGS)
cristy3ed852e2009-09-05 21:47:34 +00002395AC_SUBST(LCMS_LIBS)
2396
2397dnl ===========================================================================
2398
2399#
cristy99db3872014-01-01 15:11:34 +00002400# Check for the OpenJP2 delegate library.
2401#
2402AC_ARG_WITH([openjp2],
2403 [AC_HELP_STRING([--without-openjp2],
2404 [disable OpenJP2 support])],
2405 [with_openjp2=$withval],
2406 [with_openjp2='yes'])
2407
2408if test "$with_openjp2" != 'yes'; then
2409 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-openjp2=$with_openjp2 "
2410fi
2411
2412have_openjp2='no'
2413LIBOPENJP2_CFLAGS=""
2414LIBOPENJP2_LIBS=""
2415LIBOPENJP2_PKG=""
2416if test "x$with_openjp2" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002417 AC_MSG_RESULT([-------------------------------------------------------------])
2418 PKG_CHECK_MODULES(LIBOPENJP2,[libopenjp2 >= 2.1.0], have_openjp2=yes, have_openjp2=no)
2419 AC_MSG_RESULT([])
cristy99db3872014-01-01 15:11:34 +00002420fi
2421
2422if test "$have_openjp2" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002423 AC_DEFINE(LIBOPENJP2_DELEGATE,1,Define if you have OPENJP2 library)
2424 CFLAGS="$LIBOPENJP2_CFLAGS $CFLAGS"
cristy99db3872014-01-01 15:11:34 +00002425fi
2426
2427AM_CONDITIONAL(LIBOPENJP2_DELEGATE, test "$have_openjp2" = 'yes')
2428AC_SUBST(LIBOPENJP2_CFLAGS)
2429AC_SUBST(LIBOPENJP2_LIBS)
2430
2431
2432dnl ===========================================================================
2433
2434#
cristy3ed852e2009-09-05 21:47:34 +00002435# Check for the LQR (Liquid Rescale) delegate library.
2436#
2437AC_ARG_WITH([lqr],
2438 [AC_HELP_STRING([--without-lqr],
cristyec501352010-03-13 18:43:34 +00002439 [disable Liquid Rescale support])],
cristy3ed852e2009-09-05 21:47:34 +00002440 [with_lqr=$withval],
2441 [with_lqr='yes'])
2442
2443if test "$with_lqr" != 'yes'; then
2444 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lqr=$with_lqr "
2445fi
2446
2447have_lqr='no'
2448LQR_CFLAGS=""
2449LQR_LIBS=""
2450LQR_PKG=""
2451if test "x$with_lqr" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002452 AC_MSG_RESULT([-------------------------------------------------------------])
2453 PKG_CHECK_MODULES(LQR,[lqr-1 >= 0.1.0], have_lqr=yes, have_lqr=no)
2454 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002455fi
2456
2457if test "$have_lqr" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002458 AC_DEFINE(LQR_DELEGATE,1,Define if you have LQR library)
2459 CFLAGS="$LQR_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00002460fi
2461
2462AM_CONDITIONAL(LQR_DELEGATE, test "$have_lqr" = 'yes')
2463AC_SUBST(LQR_CFLAGS)
2464AC_SUBST(LQR_LIBS)
2465
2466dnl ===========================================================================
2467
cristy81beccd2011-10-03 18:17:24 +00002468# Disable LZMA (lzma library)
cristyfbb0ef02010-12-19 02:32:11 +00002469AC_ARG_WITH(lzma,
glennrp3fc1c212013-01-10 01:52:32 +00002470 [ --without-lzma disable LZMA support],
2471 [with_lzma=$withval],
2472 [with_lzma='yes'])
cristy81beccd2011-10-03 18:17:24 +00002473if test "$with_lzma" != 'yes' ; then
cristyfbb0ef02010-12-19 02:32:11 +00002474 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-lzma=$with_lzma "
2475fi
2476
cristy56bbc922011-11-14 13:18:39 +00002477LZMA_PKG=""
2478if test "x$with_lzma" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002479 AC_MSG_RESULT([-------------------------------------------------------------])
2480 PKG_CHECK_MODULES(LZMA,[liblzma >= 2.9.0], have_lzma=yes, have_lzma=no)
2481 AC_MSG_RESULT([])
cristyf805afb2011-10-03 17:17:37 +00002482fi
cristy56bbc922011-11-14 13:18:39 +00002483
2484if test "$have_lzma" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002485 AC_DEFINE(LZMA_DELEGATE,1,Define if you have LZMA library)
2486 CFLAGS="$LZMA_CFLAGS $CFLAGS"
cristy56bbc922011-11-14 13:18:39 +00002487fi
2488
cristyfbb0ef02010-12-19 02:32:11 +00002489AM_CONDITIONAL(LZMA_DELEGATE, test "$have_lzma" = 'yes')
cristy56bbc922011-11-14 13:18:39 +00002490AC_SUBST(LZMA_CFLAGS)
cristyfbb0ef02010-12-19 02:32:11 +00002491AC_SUBST(LZMA_LIBS)
2492
2493dnl ===========================================================================
2494
cristy3ed852e2009-09-05 21:47:34 +00002495#
2496# Check for the OpenEXR delegate library.
2497#
2498AC_ARG_WITH([openexr],
2499 [AC_HELP_STRING([--without-openexr],
2500 [disable OpenEXR support])],
2501 [with_openexr=$withval],
2502 [with_openexr='yes'])
2503
2504if test "$with_openexr" != 'yes'; then
2505 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-openexr=$with_openexr "
2506fi
2507
2508have_openexr='no'
2509OPENEXR_CFLAGS=""
2510OPENEXR_LIBS=""
2511OPENEXR_PKG=""
2512if test "x$with_openexr" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002513 AC_MSG_RESULT([-------------------------------------------------------------])
2514 PKG_CHECK_MODULES(OPENEXR,[OpenEXR >= 1.0.6], have_openexr=yes, have_openexr=no)
2515 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002516fi
2517
2518if test "$have_openexr" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002519 AC_DEFINE(OPENEXR_DELEGATE,1,Define if you have OPENEXR library)
2520 CFLAGS="$OPENEXR_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00002521fi
2522
2523AM_CONDITIONAL(OPENEXR_DELEGATE, test "$have_openexr" = 'yes')
2524AC_SUBST(OPENEXR_CFLAGS)
2525AC_SUBST(OPENEXR_LIBS)
2526
2527dnl ===========================================================================
2528
2529#
cristy41cbe8a2011-10-27 01:35:18 +00002530# Check for PANGO delegate library.
2531#
2532AC_ARG_WITH([pango],
2533 [AC_HELP_STRING([--without-pango],
2534 [disable PANGO support])],
2535 [with_pango=$withval],
cristyfc3d0222012-02-07 15:05:57 +00002536 [with_pango='yes'])
cristy41cbe8a2011-10-27 01:35:18 +00002537
2538if test "$with_pango" != 'yes'; then
2539 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-pango=$with_pango "
2540fi
2541
2542have_pango='no'
cristya054b762012-03-26 23:16:00 +00002543have_pangocairo='no'
cristy41cbe8a2011-10-27 01:35:18 +00002544PANGO_CFLAGS=""
2545PANGO_LIBS=""
2546PANGO_PKG=""
2547if test "x$with_pango" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002548 AC_MSG_RESULT([-------------------------------------------------------------])
2549 PKG_CHECK_MODULES(PANGO, [pangocairo >= 1.28.1], have_pangocairo=yes, have_pangocairo=no)
2550 AC_MSG_RESULT([])
2551 PKG_CHECK_MODULES(PANGO, [pango >= 1.28.1], have_pango=yes, have_pango=no)
2552 AC_MSG_RESULT([])
cristy41cbe8a2011-10-27 01:35:18 +00002553fi
2554
2555if test "$have_pango" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002556 AC_DEFINE(PANGO_DELEGATE,1,Define if you have PANGO library)
2557 CFLAGS="$PANGO_CFLAGS $CFLAGS"
cristy41cbe8a2011-10-27 01:35:18 +00002558fi
2559
cristya054b762012-03-26 23:16:00 +00002560if test "$have_pangocairo" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002561 AC_DEFINE(PANGOCAIRO_DELEGATE,1,Define if you have PANGOCAIRO library)
2562 CFLAGS="$PANGOCAIRO_CFLAGS $CFLAGS"
cristy41cbe8a2011-10-27 01:35:18 +00002563fi
2564
2565AM_CONDITIONAL(PANGO_DELEGATE, test "$have_pango" = 'yes')
cristya054b762012-03-26 23:16:00 +00002566AM_CONDITIONAL(PANGOCAIRO_DELEGATE, test "$have_pangocairo" = 'yes')
cristy41cbe8a2011-10-27 01:35:18 +00002567AC_SUBST(PANGO_CFLAGS)
2568AC_SUBST(PANGO_LIBS)
2569
2570dnl ===========================================================================
2571
2572#
cristy3ed852e2009-09-05 21:47:34 +00002573# Check for PNG delegate library.
2574#
2575AC_ARG_WITH(png,
2576 [AC_HELP_STRING([--without-png],
2577 [disable PNG support])],
2578 [with_png=$withval],
2579 [with_png='yes'])
2580
2581if test "$with_png" != 'yes'; then
2582 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-png=$with_png "
2583fi
2584
cristy81beccd2011-10-03 18:17:24 +00002585have_png='no'
cristy32f75d42015-06-05 18:46:23 +00002586PNG_CFLAGS=""
2587PNG_LIBS=""
2588PNG_PKG=""
2589if test "x$with_png" = "xyes"; then
cristyad38abe2012-12-23 23:03:21 +00002590 AC_MSG_RESULT([-------------------------------------------------------------])
cristy32f75d42015-06-05 18:46:23 +00002591 PKG_CHECK_MODULES(PNG,[libpng >= 1.0.0], have_png=yes, have_png=no)
2592 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002593fi
cristy64877302011-08-23 19:10:31 +00002594
cristy32f75d42015-06-05 18:46:23 +00002595if test "$have_png" = 'yes'; then
2596 AC_DEFINE(PNG_DELEGATE,1,Define if you have PNG library)
2597 CFLAGS="$PNG_CFLAGS $CFLAGS"
2598fi
cristy3ed852e2009-09-05 21:47:34 +00002599
cristy32f75d42015-06-05 18:46:23 +00002600AM_CONDITIONAL(PNG_DELEGATE, test "$have_png" = 'yes')
2601AC_SUBST(PNG_CFLAGS)
2602AC_SUBST(PNG_LIBS)
cristy81beccd2011-10-03 18:17:24 +00002603
cristy3ed852e2009-09-05 21:47:34 +00002604dnl ===========================================================================
2605
2606#
Cristycefed482017-07-14 07:56:27 -04002607# Check for the Raw delegate library.
2608#
Cristy42ab1bc2017-07-18 17:59:43 -04002609AC_ARG_WITH([raw],
Cristycefed482017-07-14 07:56:27 -04002610 [AC_HELP_STRING([--without-raw],
2611 [disable Raw support])],
2612 [with_raw=$withval],
2613 [with_raw='yes'])
2614
2615if test "$with_raw" != 'yes'; then
2616 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-libraw=$with_raw "
2617fi
2618
2619have_raw='no'
Cristy31c3c132017-07-14 18:49:05 -04002620RAW_R_CFLAGS=""
2621RAW_R_LIBS=""
2622RAW_R_PKG=""
Cristycefed482017-07-14 07:56:27 -04002623if test "x$with_raw" = "xyes"; then
2624 AC_MSG_RESULT([-------------------------------------------------------------])
Cristy31c3c132017-07-14 18:49:05 -04002625 PKG_CHECK_MODULES(RAW_R,[libraw_r >= 0.14.8], have_raw=yes, have_raw=no)
Cristycefed482017-07-14 07:56:27 -04002626 AC_MSG_RESULT([])
2627fi
2628
2629if test "$have_raw" = 'yes'; then
Cristy31c3c132017-07-14 18:49:05 -04002630 AC_DEFINE(RAW_R_DELEGATE,1,Define if you have LIBRAW library)
2631 CFLAGS="$RAW_R_CFLAGS $CFLAGS"
Cristycefed482017-07-14 07:56:27 -04002632fi
2633
Cristy31c3c132017-07-14 18:49:05 -04002634AM_CONDITIONAL(RAW_R_DELEGATE, test "$have_raw" = 'yes')
2635AC_SUBST(RAW_R_CFLAGS)
2636AC_SUBST(RAW_R_LIBS)
Cristycefed482017-07-14 07:56:27 -04002637
2638dnl ===========================================================================
2639
2640#
cristy3ed852e2009-09-05 21:47:34 +00002641# Check for RSVG delegate library.
2642#
2643AC_ARG_WITH([rsvg],
cristy51633f52013-04-23 14:03:19 +00002644 [AC_HELP_STRING([--with-rsvg],
cristy1164d5f2012-08-15 00:58:25 +00002645 [enable RSVG support])],
cristy3ed852e2009-09-05 21:47:34 +00002646 [with_rsvg=$withval],
cristy1164d5f2012-08-15 00:58:25 +00002647 [with_rsvg='no'])
cristy3ed852e2009-09-05 21:47:34 +00002648
2649if test "$with_rsvg" != 'yes'; then
2650 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-rsvg=$with_rsvg "
2651fi
2652
2653have_rsvg='no'
2654have_cairo='no'
2655RSVG_CFLAGS=""
2656RSVG_LIBS=""
2657RSVG_PKG=""
2658if test "x$with_rsvg" = "xyes"; then
cristy32f75d42015-06-05 18:46:23 +00002659 AC_MSG_RESULT([-------------------------------------------------------------])
2660 PKG_CHECK_MODULES(RSVG,[librsvg-2.0 >= 2.9.0], have_rsvg=yes, have_rsvg=no)
2661 AC_MSG_RESULT([])
2662 PKG_CHECK_MODULES(CAIRO_SVG, cairo-svg, have_cairo=yes, have_cairo=no)
2663 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002664fi
2665
2666if test "$have_rsvg" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002667 AC_DEFINE(RSVG_DELEGATE,1,Define if you have RSVG library)
2668 CFLAGS="$RSVG_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00002669fi
2670
2671if test "$have_cairo" = 'yes'; then
cristy32f75d42015-06-05 18:46:23 +00002672 AC_DEFINE(CAIRO_DELEGATE,1,Define if you have CAIRO library)
2673 CFLAGS="$CAIRO_SVG_CFLAGS $CFLAGS"
cristy3ed852e2009-09-05 21:47:34 +00002674fi
2675
2676AM_CONDITIONAL(RSVG_DELEGATE, test "$have_rsvg" = 'yes')
2677AM_CONDITIONAL(CAIRO_DELEGATE, test "$have_cairo" = 'yes')
2678AC_SUBST(RSVG_CFLAGS)
2679AC_SUBST(RSVG_LIBS)
2680
2681dnl ===========================================================================
2682
2683#
2684# Check for TIFF delegate library.
2685#
2686AC_ARG_WITH([tiff],
2687 [AC_HELP_STRING([--without-tiff],
2688 [disable TIFF support])],
2689 [with_tiff=$withval],
2690 [with_tiff='yes'])
2691
2692if test "$with_tiff" != 'yes'; then
2693 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-tiff=$with_tiff "
2694fi
2695
2696have_tiff='no'
2697TIFF_LIBS=''
2698if test "$with_tiff" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00002699 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00002700 AC_MSG_CHECKING([for TIFF])
cristyad38abe2012-12-23 23:03:21 +00002701 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002702 failed=0
2703 passed=0
2704 AC_CHECK_HEADER(tiff.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2705 AC_CHECK_HEADER(tiffio.h,passed=`expr $passed + 1`,failed=`expr $failed + 1`)
2706 AC_CHECK_LIB(tiff,TIFFOpen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2707 AC_CHECK_LIB(tiff,TIFFClientOpen,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2708 AC_CHECK_LIB(tiff,TIFFIsByteSwapped,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2709 AC_CHECK_LIB(tiff,TIFFReadRGBATile,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2710 AC_CHECK_LIB(tiff,TIFFReadRGBAStrip,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
2711 AC_MSG_CHECKING([if TIFF package is complete])
2712 if test $passed -gt 0; then
2713 if test $failed -gt 0; then
cristyad38abe2012-12-23 23:03:21 +00002714 AC_MSG_RESULT([no -- some components failed test])
cristy3ed852e2009-09-05 21:47:34 +00002715 have_tiff='no (failed tests)'
2716 else
2717 TIFF_LIBS='-ltiff'
2718 LIBS="$TIFF_LIBS $LIBS"
2719 AC_DEFINE(TIFF_DELEGATE,1,Define if you have TIFF library)
cristyad38abe2012-12-23 23:03:21 +00002720 AC_MSG_RESULT([yes])
cristy3ed852e2009-09-05 21:47:34 +00002721 have_tiff='yes'
2722 AC_CHECK_HEADERS(tiffconf.h)
2723 AC_CHECK_FUNCS([TIFFIsCODECConfigured TIFFMergeFieldInfo \
cristy3f590e52011-11-14 14:29:44 +00002724 TIFFIsBigEndian TIFFReadEXIFDirectory TIFFSetErrorHandlerExt \
2725 TIFFSetTagExtender TIFFSetWarningHandlerExt \
2726 TIFFSwabArrayOfTriples])
cristy3ed852e2009-09-05 21:47:34 +00002727 fi
2728 else
cristyad38abe2012-12-23 23:03:21 +00002729 AC_MSG_RESULT([no])
cristy3ed852e2009-09-05 21:47:34 +00002730 fi
2731fi
2732AM_CONDITIONAL(TIFF_DELEGATE, test "$have_tiff" = 'yes')
2733AC_SUBST(TIFF_LIBS)
2734
Cristyea6e8ae2019-09-30 07:21:16 -04002735dnl ===========================================================================
2736
Cristyfbca0d02017-09-27 16:52:52 -04002737#
2738# Set URW Base35 font directory.
2739#
2740AC_ARG_WITH([urw-base35-font-dir],
2741 [AC_HELP_STRING([--with-urw-base35-font-dir=DIR],
2742 [URW-base35 font directory])],
2743 [with_urw_base35_font_dir=$withval],
2744 [with_urw_base35_font_dir='default'])
2745
2746if test "$with_urw_base35_font_dir" != 'default'; then
2747 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-urw-base35-font-dir=$with_urw_base35_font_dir "
2748fi
2749
cristy3ed852e2009-09-05 21:47:34 +00002750dnl ===========================================================================
2751
2752#
Cristy692b6782017-11-19 12:35:18 -05002753# Check for the WEBP delegate library.
cristyb1860752011-03-14 00:27:46 +00002754#
Cristy692b6782017-11-19 12:35:18 -05002755AC_ARG_WITH([webp],
cristyb1860752011-03-14 00:27:46 +00002756 [AC_HELP_STRING([--without-webp],
2757 [disable WEBP support])],
2758 [with_webp=$withval],
2759 [with_webp='yes'])
2760
2761if test "$with_webp" != 'yes'; then
2762 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-webp=$with_webp "
2763fi
2764
2765have_webp='no'
Cristy692b6782017-11-19 12:35:18 -05002766have_webpmux='no'
2767WEBP_CFLAGS=""
2768WEBP_LIBS=""
2769WEBP_PKG=""
2770WEBPMUX_CFLAGS=""
2771WEBPMUX_LIBS=""
2772WEBPMUX_PKG=""
2773if test "x$with_webp" = "xyes"; then
2774 AC_MSG_RESULT([-------------------------------------------------------------])
2775 PKG_CHECK_MODULES(WEBP,[libwebp], have_webp=yes, have_webp=no)
Cristy2fcb9372019-10-27 07:02:53 -04002776 PKG_CHECK_MODULES(WEBPMUX,[libwebpmux >= 0.5.0 libwebpdemux >= 0.5.0], have_webpmux=yes, have_webpmux=no)
Cristy692b6782017-11-19 12:35:18 -05002777 AC_MSG_RESULT([])
cristyb1860752011-03-14 00:27:46 +00002778fi
cristyb1860752011-03-14 00:27:46 +00002779
Cristy692b6782017-11-19 12:35:18 -05002780if test "$have_webp" = 'yes'; then
2781 AC_DEFINE(WEBP_DELEGATE,1,Define if you have WEBP library)
2782 CFLAGS="$WEBP_CFLAGS $CFLAGS"
2783fi
2784
2785if test "$have_webpmux" = 'yes'; then
2786 AC_DEFINE(WEBPMUX_DELEGATE,1,Define if you have WEBPMUX library)
2787 CFLAGS="$WEBPMUX_CFLAGS $CFLAGS"
2788fi
2789
2790AM_CONDITIONAL(WEBP_DELEGATE, test "$have_webp" = 'yes')
2791AM_CONDITIONAL(WEBPMUX_DELEGATE, test "$have_webpmux" = 'yes')
2792AC_SUBST(WEBPMUX_CFLAGS)
2793AC_SUBST(WEBPMUX_LIBS)
2794AC_SUBST(WEBP_CFLAGS)
2795AC_SUBST(WEBP_LIBS)
Cristyfbca0d02017-09-27 16:52:52 -04002796
cristyb1860752011-03-14 00:27:46 +00002797dnl ===========================================================================
2798
2799#
cristy3ed852e2009-09-05 21:47:34 +00002800# Set Windows font directory.
2801#
cristy74554ef2011-10-27 12:56:11 +00002802AC_ARG_WITH([windows-font-dir],
cristy3ed852e2009-09-05 21:47:34 +00002803 [AC_HELP_STRING([--with-windows-font-dir=DIR],
cristy5a3dc992014-12-05 19:50:04 +00002804 [Windows font directory])],
2805 [with_windows_font_dir=$withval],
2806 [with_windows_font_dir='default'])
2807
2808if test "$with_windows_font_dir" != 'default'; then
cristy3ed852e2009-09-05 21:47:34 +00002809 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-windows-font-dir=$with_windows_font_dir "
2810fi
2811
2812dnl ===========================================================================
2813
2814#
2815# Check for WMF delegate library.
2816#
2817AC_ARG_WITH([wmf],
cristyd0a9a682012-02-11 00:21:53 +00002818 [AC_HELP_STRING([--with-wmf],
2819 [enable WMF support])],
cristy3ed852e2009-09-05 21:47:34 +00002820 [with_wmf=$withval],
cristy32f75d42015-06-05 18:46:23 +00002821 [with_wmf='yes'])
cristy3ed852e2009-09-05 21:47:34 +00002822
2823if test "$with_wmf" != 'yes'; then
2824 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-wmf=$with_wmf "
2825fi
2826
2827have_wmf='no'
cristyebc8f692015-06-16 10:36:30 +00002828WMF_LIBS=''
2829WMF_CFLAGS=''
2830OLIBS="$LIBS"
2831if test "$with_wmf" != 'no'; then
2832 AC_MSG_CHECKING([for WMF support ])
cristy32f75d42015-06-05 18:46:23 +00002833 AC_MSG_RESULT([])
cristy735e8942010-04-02 20:32:57 +00002834
Cristyd111aac2019-11-24 13:04:06 -05002835 have_libwmflite='no'
cristyebc8f692015-06-16 10:36:30 +00002836 have_libwmf_ipa_h='no'
2837
2838 AC_CHECK_HEADER([libwmf/ipa.h],[have_libwmf_ipa_h='yes'],[],[$FT2BUILD_H])
2839 if test "$have_libwmf_ipa_h" = 'yes'; then
Cristyd111aac2019-11-24 13:04:06 -05002840 AC_CHECK_LIB([wmflite],[wmf_lite_create],[have_libwmflite='yes'],[],[])
2841 if test "$have_libwmflite" = 'yes'; then
cristyebc8f692015-06-16 10:36:30 +00002842 AC_DEFINE(WMF_DELEGATE,1,Define if you have WMF library)
Cristyd111aac2019-11-24 13:04:06 -05002843 WMF_LIBS='-lwmflite'
cristyebc8f692015-06-16 10:36:30 +00002844 LIBS="$WMF_LIBS $LIBS"
2845 have_wmf='yes'
2846 else
2847 AC_MSG_RESULT([no -- some components failed test])
2848 have_wmf='no (failed tests)'
Cristyd111aac2019-11-24 13:04:06 -05002849 have_wmflite='no (failed tests)'
cristyebc8f692015-06-16 10:36:30 +00002850 LIBS="$OLIBS"
2851 WMF_LIBS=''
2852 fi
2853 fi
2854fi
2855AC_MSG_CHECKING([if WMF package is complete ])
cristy32f75d42015-06-05 18:46:23 +00002856if test "$have_wmf" = 'yes'; then
cristyebc8f692015-06-16 10:36:30 +00002857 AC_MSG_RESULT([yes])
2858else
2859 AC_MSG_RESULT([no])
cristy32f75d42015-06-05 18:46:23 +00002860fi
cristyebc8f692015-06-16 10:36:30 +00002861AM_CONDITIONAL([WMF_DELEGATE], [test "$have_wmf" = 'yes'])
2862AC_SUBST([WMF_CFLAGS])
2863AC_SUBST([WMF_LIBS])
cristy81beccd2011-10-03 18:17:24 +00002864
2865dnl ===========================================================================
2866
cristy3ed852e2009-09-05 21:47:34 +00002867#
2868# Check for XML delegate library.
2869#
cristy81beccd2011-10-03 18:17:24 +00002870AC_ARG_WITH([xml],
cristy3ed852e2009-09-05 21:47:34 +00002871 [AC_HELP_STRING([--without-xml],
2872 [disable XML support])],
2873 [with_xml=$withval],
cristyfc3d0222012-02-07 15:05:57 +00002874 [with_xml='yes'])
cristy3ed852e2009-09-05 21:47:34 +00002875
cristy81beccd2011-10-03 18:17:24 +00002876if test "$with_xml" != 'yes' ; then
cristy3ed852e2009-09-05 21:47:34 +00002877 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-xml=$with_xml "
2878fi
2879
cristy81beccd2011-10-03 18:17:24 +00002880have_xml='no'
cristy32f75d42015-06-05 18:46:23 +00002881XML_CFLAGS=""
2882XML_LIBS=""
2883XML_PKG=""
2884if test "x$with_xml" = "xyes"; then
2885 AC_MSG_RESULT([-------------------------------------------------------------])
2886 PKG_CHECK_MODULES(XML,[libxml-2.0 >= 2.0.0], have_xml=yes, have_xml=no)
2887 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00002888fi
cristy32f75d42015-06-05 18:46:23 +00002889
2890if test "$have_xml" = 'yes'; then
2891 AC_DEFINE(XML_DELEGATE,1,Define if you have XML library)
2892 CFLAGS="$XML_CFLAGS $CFLAGS"
2893fi
2894
2895AM_CONDITIONAL(XML_DELEGATE, test "$have_xml" = 'yes')
2896AC_SUBST(XML_CFLAGS)
cristy3ed852e2009-09-05 21:47:34 +00002897AC_SUBST(XML_LIBS)
2898
2899dnl ===========================================================================
2900
Cristyd2b61342019-05-05 12:07:47 -04002901# Check for functions
2902#
Cristybd4a1a12020-01-02 09:00:38 -05002903AC_CHECK_FUNCS([acosh _aligned_malloc asinh atanh atoll atexit cabs carg cimag creal clock clock_getres clock_gettime ctime_r directio erf _exit execvp fchmod floor fork ftime ftruncate getc_unlocked getcwd getpid getexecname getdtablesize getpagesize getpwnam_r 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 realpath select seekdir sendfile setlocale socket sqrt setvbuf stat strcasestr 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])
Cristyd2b61342019-05-05 12:07:47 -04002904
cristy3ed852e2009-09-05 21:47:34 +00002905# Substitute compiler name to build/link PerlMagick
2906#
cristy86b6e552015-06-06 13:25:16 +00002907AC_SUBST([PERLMAINCC])
cristy3ed852e2009-09-05 21:47:34 +00002908
2909#
2910# Configure install Paths
2911#
cristy7def36a2011-10-28 19:04:41 +00002912
cristy2a11bef2011-10-28 18:33:11 +00002913# Path to ImageMagick header files
cristybdabdd62013-03-04 17:43:36 +00002914INCLUDE_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristye52f12f2012-12-31 15:32:36 +00002915INCLUDE_PATH="${INCLUDE_DIR}/${INCLUDE_RELATIVE_PATH}"
2916DEFINE_INCLUDE_PATH="${INCLUDE_DIR}/${INCLUDE_RELATIVE_PATH}/"
cristy2a11bef2011-10-28 18:33:11 +00002917case "${build_os}" in
2918 mingw* )
2919 DEFINE_INCLUDE_PATH=`$WinPathScript "$DEFINE_INCLUDE_PATH" 1`
2920 ;;
2921esac
cristy9c151dc2012-12-02 22:30:16 +00002922AC_DEFINE_UNQUOTED(INCLUDE_PATH,"$DEFINE_INCLUDE_PATH",[Directory where ImageMagick headers live.])
cristy2a11bef2011-10-28 18:33:11 +00002923AC_SUBST(INCLUDE_PATH)
cristy3ed852e2009-09-05 21:47:34 +00002924
cristye52f12f2012-12-31 15:32:36 +00002925# Path to ImageMagick header files (arch part)
2926INCLUDEARCH_PATH="${INCLUDEARCH_DIR}/${INCLUDE_RELATIVE_PATH}"
2927DEFINE_INCLUDEARCH_PATH="${INCLUDEARCH_DIR}/${INCLUDE_RELATIVE_PATH}/"
2928case "${build_os}" in
2929 mingw* )
2930 DEFINE_INCLUDEARCH_PATH=`$WinPathScript "$DEFINE_INCLUDEARCH_PATH" 1`
2931 ;;
2932esac
2933AC_DEFINE_UNQUOTED(INCLUDEARCH_PATH,"$DEFINE_INCLUDE_PATH",[Directory where ImageMagick architecture headers live.])
2934AC_SUBST(INCLUDEARCH_PATH)
2935
cristy3ed852e2009-09-05 21:47:34 +00002936# Subdirectory under lib to place ImageMagick lib files
2937LIBRARY_RELATIVE_PATH="${PACKAGE_NAME}-${PACKAGE_VERSION}"
cristy9c151dc2012-12-02 22:30:16 +00002938AC_DEFINE_UNQUOTED(LIBRARY_RELATIVE_PATH,"$LIBRARY_RELATIVE_PATH",[Subdirectory of lib where ImageMagick architecture dependent files are installed.])
cristy3ed852e2009-09-05 21:47:34 +00002939
2940# Path to ImageMagick bin directory
2941EXECUTABLE_PATH="${BIN_DIR}"
2942DEFINE_EXECUTABLE_PATH="${BIN_DIR}/"
2943case "${build_os}" in
2944 mingw* )
2945 DEFINE_EXECUTABLE_PATH=`$WinPathScript "$DEFINE_EXECUTABLE_PATH" 1`
2946 ;;
2947esac
cristy9c151dc2012-12-02 22:30:16 +00002948AC_DEFINE_UNQUOTED(EXECUTABLE_PATH,"$DEFINE_EXECUTABLE_PATH",[Directory where executables are installed.])
cristy3ed852e2009-09-05 21:47:34 +00002949AC_SUBST(EXECUTABLE_PATH)
2950
2951# Path to ImageMagick lib
2952LIBRARY_PATH="${LIB_DIR}/${LIBRARY_RELATIVE_PATH}"
2953DEFINE_LIBRARY_PATH="${LIB_DIR}/${LIBRARY_RELATIVE_PATH}/"
2954case "${build_os}" in
2955 mingw* )
2956 DEFINE_LIBRARY_PATH=`$WinPathScript "$DEFINE_LIBRARY_PATH" 1`
2957 ;;
2958esac
cristy9c151dc2012-12-02 22:30:16 +00002959AC_DEFINE_UNQUOTED(LIBRARY_PATH,"$DEFINE_LIBRARY_PATH",[Directory where architecture-dependent files live.])
cristy3ed852e2009-09-05 21:47:34 +00002960AC_SUBST(LIBRARY_PATH)
2961
cristy3ed852e2009-09-05 21:47:34 +00002962#
cristy8d0ff762013-03-10 20:33:28 +00002963# path to local binaries
2964if test "x$LIB_BIN_BASEDIRNAME" = "x"; then
2965 LIB_BIN_BASEDIRNAME="bin"
2966fi
2967AC_DEFINE_UNQUOTED(LIB_BIN_BASEDIRNAME,"$LIB_BIN_BASEDIRNAME",[Binaries in libraries path base name (will be during install linked to bin)])
2968AC_SUBST(LIB_BIN_BASEDIRNAME)
2969
2970if test "x$LIB_BIN_DIR" = "x"; then
2971 LIB_BIN_DIR=${LIB_BIN_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
2972fi
2973AC_SUBST(LIB_BIN_DIR)
2974
2975LIB_BIN_DIR_RELATIVE_PATH=$LIB_BIN_DIR
2976AC_SUBST(LIB_BIN_DIR_RELATIVE_PATH)
2977LIB_BIN_DIR_PATH="${LIBRARY_PATH}/${LIB_BIN_DIR_RELATIVE_PATH}"
2978AC_SUBST(LIB_BIN_DIR_PATH)
2979
2980#
cristy01ff9f32012-12-01 18:15:29 +00002981# path to modules lib
2982if test "x$MODULES_BASEDIRNAME" = "x"; then
2983 MODULES_BASEDIRNAME="modules"
2984fi
cristy9c151dc2012-12-02 22:30:16 +00002985AC_DEFINE_UNQUOTED(MODULES_BASEDIRNAME,"$MODULES_BASEDIRNAME",[Module directory name without ABI part.])
cristy01ff9f32012-12-01 18:15:29 +00002986AC_SUBST(MODULES_BASEDIRNAME)
2987
2988if test "x$MODULES_DIRNAME" = "x"; then
cristy7a26abd2012-12-03 00:18:59 +00002989 MODULES_DIRNAME=${MODULES_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
cristy4bdbd342012-12-03 18:41:18 +00002990else
2991 AC_DEFINE_UNQUOTED(MODULES_DIRNAME,"$MODULES_DIRNAME",[Module directory dirname])
cristy01ff9f32012-12-01 18:15:29 +00002992fi
2993AC_SUBST(MODULES_DIRNAME)
2994
cristy371d4812012-12-01 19:48:10 +00002995MODULES_RELATIVE_PATH="${MODULES_DIRNAME}"
cristy01ff9f32012-12-01 18:15:29 +00002996AC_SUBST(MODULES_RELATIVE_PATH)
2997MODULES_PATH="${LIBRARY_PATH}/${MODULES_RELATIVE_PATH}"
2998AC_SUBST(MODULES_PATH)
2999
3000#
3001# path to coders lib
3002if test "x$CODER_DIRNAME" = "x"; then
3003 CODER_DIRNAME="coders"
3004fi
cristy9c151dc2012-12-02 22:30:16 +00003005AC_DEFINE_UNQUOTED(CODER_DIRNAME,"$CODER_DIRNAME",[coders subdirectory.])
cristy01ff9f32012-12-01 18:15:29 +00003006AC_SUBST(CODER_DIRNAME)
3007
cristy371d4812012-12-01 19:48:10 +00003008CODER_RELATIVE_PATH="${CODER_DIRNAME}"
cristy01ff9f32012-12-01 18:15:29 +00003009CODER_PATH="${MODULES_PATH}/${CODER_DIRNAME}"
cristy3ed852e2009-09-05 21:47:34 +00003010AC_SUBST(CODER_PATH)
3011
3012#
3013# Subdirectory under lib to place ImageMagick filter module files
cristy01ff9f32012-12-01 18:15:29 +00003014#
3015# path to coders lib
3016if test "x$FILTER_DIRNAME" = "x"; then
3017 FILTER_DIRNAME="filters"
3018fi
cristy9c151dc2012-12-02 22:30:16 +00003019AC_DEFINE_UNQUOTED(FILTER_DIRNAME,"$FILTER_DIRNAME",[filter subdirectory.])
cristy01ff9f32012-12-01 18:15:29 +00003020AC_SUBST(FILTER_DIRNAME)
3021
cristy371d4812012-12-01 19:48:10 +00003022FILTER_RELATIVE_PATH="${FILTER_DIRNAME}"
cristy01ff9f32012-12-01 18:15:29 +00003023FILTER_PATH="${MODULES_PATH}/${FILTER_DIRNAME}"
cristy3ed852e2009-09-05 21:47:34 +00003024AC_SUBST(FILTER_PATH)
3025
3026#
3027# Path to ImageMagick documentation files
Cristye35bdc62015-09-19 18:29:00 -04003028DOCUMENTATION_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
3029DOCUMENTATION_PATH="${DOC_DIR}/${DOCUMENTATION_RELATIVE_PATH}"
3030DEFINE_DOCUMENTATION_PATH="${DOC_DIR}/${DOCUMENTATION_RELATIVE_PATH}/"
cristy3ed852e2009-09-05 21:47:34 +00003031case "${build_os}" in
3032 mingw* )
3033 DEFINE_DOCUMENTATION_PATH=`$WinPathScript "$DEFINE_DOCUMENTATION_PATH" 1`
3034 ;;
3035esac
cristy9c151dc2012-12-02 22:30:16 +00003036AC_DEFINE_UNQUOTED(DOCUMENTATION_PATH,"$DEFINE_DOCUMENTATION_PATH",[Directory where ImageMagick documents live.])
cristy3ed852e2009-09-05 21:47:34 +00003037AC_SUBST(DOCUMENTATION_PATH)
3038
cristydd17feb2014-03-05 02:06:32 +00003039#
3040# Enable/Disable documentation
3041AC_ARG_ENABLE([docs],
3042 [AS_HELP_STRING([--disable-docs],
3043 [disable building of documentation])],
cristy02272312014-03-07 00:55:25 +00003044 wantdocs=$enableval, wantdocs=yes)
3045AM_CONDITIONAL([INSTALL_DOC], [test "$wantdocs" = "yes"])
cristydd17feb2014-03-05 02:06:32 +00003046
cristy2a11bef2011-10-28 18:33:11 +00003047# Subdirectory to place architecture-dependent configuration files
cristybdabdd62013-03-04 17:43:36 +00003048CONFIGURE_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristy9c151dc2012-12-02 22:30:16 +00003049AC_DEFINE_UNQUOTED(CONFIGURE_RELATIVE_PATH,"$CONFIGURE_RELATIVE_PATH",[Subdirectory of lib where architecture-dependent configuration files live.])
cristy7def36a2011-10-28 19:04:41 +00003050CONFIGURE_PATH="${SYSCONF_DIR}/${CONFIGURE_RELATIVE_PATH}/"
cristy29b1f6f2011-03-27 14:02:38 +00003051DEFINE_CONFIGURE_PATH="${SYSCONF_DIR}/${CONFIGURE_RELATIVE_PATH}/"
3052case "${build_os}" in
3053 mingw* )
3054 DEFINE_CONFIGURE_PATH=`$WinPathScript "$DEFINE_CONFIGURE_PATH" 1`
3055 ;;
3056esac
cristy9c151dc2012-12-02 22:30:16 +00003057AC_DEFINE_UNQUOTED(CONFIGURE_PATH,"$DEFINE_CONFIGURE_PATH",[Directory where architecture-dependent configuration files live.])
cristy29b1f6f2011-03-27 14:02:38 +00003058AC_SUBST(CONFIGURE_PATH)
3059
cristy2a11bef2011-10-28 18:33:11 +00003060# Subdirectory to place architecture-independent configuration files
cristybdabdd62013-03-04 17:43:36 +00003061SHARE_RELATIVE_PATH="${PACKAGE_NAME}-${MAGICK_MAJOR_VERSION}"
cristy9c151dc2012-12-02 22:30:16 +00003062AC_DEFINE_UNQUOTED(SHARE_RELATIVE_PATH,"$SHARE_RELATIVE_PATH",[Subdirectory of lib where architecture-independent configuration files live.])
cristy670aa3c2011-11-03 00:54:00 +00003063SHARE_PATH="${DATA_DIR}/${SHARE_RELATIVE_PATH}"
cristy4f820712011-04-01 12:35:43 +00003064DEFINE_SHARE_PATH="${DATA_DIR}/${SHARE_RELATIVE_PATH}/"
cristy3ed852e2009-09-05 21:47:34 +00003065case "${build_os}" in
3066 mingw* )
cristy4f820712011-04-01 12:35:43 +00003067 DEFINE_SHARE_PATH=`$WinPathScript "$DEFINE_SHARE_PATH" 1`
cristy3ed852e2009-09-05 21:47:34 +00003068 ;;
3069esac
cristy9c151dc2012-12-02 22:30:16 +00003070AC_DEFINE_UNQUOTED(SHARE_PATH,"$DEFINE_SHARE_PATH",[Directory where architecture-independent configuration files live.])
cristy4f820712011-04-01 12:35:43 +00003071AC_SUBST(SHARE_PATH)
cristy3ed852e2009-09-05 21:47:34 +00003072
cristy23c7e9a2012-12-04 15:47:57 +00003073#
3074# Subdirectory to place architecture-dependent configuration files.
3075if test "x$SHAREARCH_BASEDIRNAME" = "x"; then
3076 SHAREARCH_BASEDIRNAME="config"
3077fi
cristyad38abe2012-12-23 23:03:21 +00003078AC_DEFINE_UNQUOTED(SHAREARCH_BASEDIRNAME,"$SHAREARCH_BASEDIRNAME",[Sharearch directory name without ABI part.])
cristy23c7e9a2012-12-04 15:47:57 +00003079AC_SUBST(SHAREARCH_BASEDIRNAME)
3080
3081if test "x$SHAREARCH_DIRNAME" = "x"; then
3082 SHAREARCH_DIRNAME=${SHAREARCH_BASEDIRNAME}-${MAGICK_ABI_SUFFIX}
3083else
cristyad38abe2012-12-23 23:03:21 +00003084 AC_DEFINE_UNQUOTED(SHAREARCH_DIRNAME,"$SHAREARCH_DIRNAME",[Sharearch directory dirname])
cristy23c7e9a2012-12-04 15:47:57 +00003085fi
3086AC_SUBST(SHAREARCH_DIRNAME)
3087
3088SHAREARCH_RELATIVE_PATH="${SHAREARCH_DIRNAME}"
3089AC_SUBST(SHAREARCH_RELATIVE_PATH)
3090SHAREARCH_PATH="${LIBRARY_PATH}/${SHAREARCH_RELATIVE_PATH}"
cristy670aa3c2011-11-03 00:54:00 +00003091AC_SUBST(SHAREARCH_PATH)
3092
cristy3ed852e2009-09-05 21:47:34 +00003093#
3094# program_transform_name is formed for use in a Makefile, so create a
3095# modified version for use in a shell script.
3096configure_transform_name=`echo ${program_transform_name} | sed 's,\\$\\$,$,'`
3097
3098# Default delegate definitions
cristyad38abe2012-12-23 23:03:21 +00003099AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003100AC_MSG_CHECKING([for ImageMagick delegate programs])
cristyad38abe2012-12-23 23:03:21 +00003101AC_MSG_RESULT([])
cristy212cd792014-12-12 00:51:03 +00003102BPGDecodeDelegateDefault='bpgdec'
3103BPGEncodeDelegateDefault='bpgenc'
cristy3d7f8062009-09-24 20:45:35 +00003104BlenderDecodeDelegateDefault='blender'
cristy3ed852e2009-09-05 21:47:34 +00003105BrowseDelegateDefault='xdg-open'
cristy3ed852e2009-09-05 21:47:34 +00003106DNGDecodeDelegateDefault='ufraw-batch'
cristy66f238e2014-05-16 12:21:48 +00003107DOCDecodeDelegateDefault='soffice'
cristy3ed852e2009-09-05 21:47:34 +00003108GVCDecodeDelegateDefault='dot'
3109DVIDecodeDelegateDefault='dvips'
cristy3ed852e2009-09-05 21:47:34 +00003110EditorDelegateDefault='xterm'
Cristy59748702016-05-12 21:35:47 -04003111ConvertDelegateDefault=`echo magick | sed ${configure_transform_name}`
3112DisplayDelegateDefault=`echo magick | sed ${configure_transform_name}`
3113MogrifyDelegateDefault=`echo magick | sed ${configure_transform_name}`
cristy3ed852e2009-09-05 21:47:34 +00003114HPGLDecodeDelegateDefault='hp2xx'
3115HTMLDecodeDelegateDefault='html2ps'
3116ILBMDecodeDelegateDefault='ilbmtoppm'
3117ILBMEncodeDelegateDefault='ppmtoilbm'
cristy71f53d52013-04-27 13:33:59 +00003118JXRDecodeDelegateDefault='JxrDecApp'
3119JXREncodeDelegateDefault='JxrEncApp'
Cristy3ef15c02017-01-02 07:41:13 -05003120LEPDelegateDefault='lepton'
cristy3ed852e2009-09-05 21:47:34 +00003121LPDelegateDefault='lp'
3122LPRDelegateDefault='lpr'
cristy3ed852e2009-09-05 21:47:34 +00003123LaunchDelegateDefault='gimp'
cristy81ab5af2013-10-06 18:28:39 +00003124MPEGDecodeDelegateDefault='avconv'
3125MPEGEncodeDelegateDefault='avconv'
cristy935c86e2010-06-05 23:50:07 +00003126MrSIDDecodeDelegateDefault='mrsidgeodecode'
cristy3ed852e2009-09-05 21:47:34 +00003127MVDelegateDefault='mv'
3128PCLDelegateDefault='pcl6'
cristy3ed852e2009-09-05 21:47:34 +00003129if test "$native_win32_build" = 'yes'; then
3130 PSDelegateDefault='gswin32c'
cristyb7931f12009-09-25 10:22:21 +00003131elif test "$gslib_framework" = 'yes'; then
cristy3ed852e2009-09-05 21:47:34 +00003132 PSDelegateDefault='gsc'
3133else
3134 PSDelegateDefault='gs'
3135fi
cristy3ed852e2009-09-05 21:47:34 +00003136RMDelegateDefault='rm'
cristy5281e322012-02-09 21:12:45 +00003137RSVGDecodeDelegateDefault='rsvg-convert'
cristyec6934f2012-08-14 18:38:40 +00003138SVGDecodeDelegateDefault='inkscape'
Cristy9e113482019-08-21 09:19:28 -04003139TraceEncodeDelegateDefault='potrace'
cristy16db5ed2010-07-29 13:32:02 +00003140UniconvertorDelegateDefault='uniconvertor'
cristy86e86092013-08-04 17:43:57 +00003141WebPDecodeDelegateDefault='dwebp'
3142WebPEncodeDelegateDefault='cwebp'
Cristydc553c12016-05-09 13:27:06 -04003143WWWDecodeDelegateDefault='curl'
cristy3ed852e2009-09-05 21:47:34 +00003144XPSDelegateDefault='gxps'
cristy3ed852e2009-09-05 21:47:34 +00003145
3146# Search for delegates
Cristy06c41ab2016-04-30 10:23:22 -04003147AC_PATH_PROG(BPGDecodeDelegate, "$BPGDecodeDelegateDefault", "$BPGDecodeDelegateDefault")
3148AC_PATH_PROG(BPGEncodeDelegate, "$BPGEncodeDelegateDefault", "$BPGEncodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003149AC_PATH_PROG(BlenderDecodeDelegate, "$BlenderDecodeDelegateDefault", "$BlenderDecodeDelegateDefault")
cristyc59f0e72012-08-27 12:59:33 +00003150AC_PATH_PROGS(BrowseDelegate, "$BrowseDelegateDefault" google-chrome firefox konqueror mozilla lynx, "$BrowseDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003151AC_PATH_PROG(DNGDecodeDelegate, "$DNGDecodeDelegateDefault", "$DNGDecodeDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003152AC_PATH_PROG(DOCDecodeDelegate, "$DOCDecodeDelegateDefault", "$DOCDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003153AC_PATH_PROG(DVIDecodeDelegate, "$DVIDecodeDelegateDefault", "$DVIDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003154AC_PATH_PROG(ConvertDelegate, "$ConvertDelegateDefault", "$ConvertDelegateDefault")
3155AC_PATH_PROG(DisplayDelegate, "$DisplayDelegateDefault", "$DisplayDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003156AC_PATH_PROG(EditorDelegate, "$EditorDelegateDefault", "$EditorDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003157AC_PATH_PROG(GVCDecodeDelegate, "$GVCDecodeDelegateDefault", "$GVCDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003158AC_PATH_PROG(HPGLDecodeDelegate, "$HPGLDecodeDelegateDefault", "$HPGLDecodeDelegateDefault")
3159AC_PATH_PROG(HTMLDecodeDelegate, "$HTMLDecodeDelegateDefault", "$HTMLDecodeDelegateDefault")
3160AC_PATH_PROG(ILBMDecodeDelegate, "$ILBMDecodeDelegateDefault", "$ILBMDecodeDelegateDefault")
3161AC_PATH_PROG(ILBMEncodeDelegate, "$ILBMEncodeDelegateDefault", "$ILBMEncodeDelegateDefault")
cristy71f53d52013-04-27 13:33:59 +00003162AC_PATH_PROG(JXRDecodeDelegate, "$JXRDecodeDelegateDefault", "$JXRDecodeDelegateDefault")
3163AC_PATH_PROG(JXREncodeDelegate, "$JXREncodeDelegateDefault", "$JXREncodeDelegateDefault")
Cristy3ef15c02017-01-02 07:41:13 -05003164AC_PATH_PROG(LEPDelegate, "$LEPDelegateDefault", "$LEPDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003165AC_PATH_PROG(LPDelegate, "$LPDelegateDefault", no)
3166AC_PATH_PROG(LPRDelegate, "$LPRDelegateDefault", "$LPRDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003167AC_PATH_PROG(LaunchDelegate, "$LaunchDelegateDefault", "$LaunchDelegateDefault")
cristy66f238e2014-05-16 12:21:48 +00003168AC_PATH_PROG(MogrifyDelegate, "$MogrifyDelegateDefault", "$MogrifyDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003169AC_PATH_PROG(MPEGDecodeDelegate, "$MPEGDecodeDelegateDefault", "$MPEGDecodeDelegateDefault")
cristy058d15f2014-08-21 18:53:03 +00003170if test "$MPEGDecodeDelegate" = "$MPEGDecodeDelegateDefault" ; then
cristy81ab5af2013-10-06 18:28:39 +00003171 MPEGDecodeDelegateDefault='ffmpeg'
3172 AC_PATH_PROG(MPEGDecodeDelegate, "$MPEGDecodeDelegateDefault", "$MPEGDecodeDelegateDefault")
3173fi;
cristy3ed852e2009-09-05 21:47:34 +00003174AC_PATH_PROG(MPEGEncodeDelegate, "$MPEGEncodeDelegateDefault", "$MPEGEncodeDelegateDefault")
cristy058d15f2014-08-21 18:53:03 +00003175if test "$MPEGEncodeDelegate" = "$MPEGEncodeDelegateDefault" ; then
cristy81ab5af2013-10-06 18:28:39 +00003176 MPEGEncodeDelegateDefault='ffmpeg'
3177 AC_PATH_PROG(MPEGEncodeDelegate, "$MPEGEncodeDelegateDefault", "$MPEGEncodeDelegateDefault")
3178fi;
cristy935c86e2010-06-05 23:50:07 +00003179AC_PATH_PROG(MrSIDDecodeDelegate, "$MrSIDDecodeDelegateDefault", "$MrSIDDecodeDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003180AC_PATH_PROG(MVDelegate, "$MVDelegateDefault", "$MVDelegateDefault")
3181AC_PATH_PROG(PCLDelegate, "$PCLDelegateDefault", "$PCLDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003182AC_PATH_PROGS(PSDelegate, gsx gsc "$PSDelegateDefault", "$PSDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003183AC_PATH_PROG(RMDelegate, "$RMDelegateDefault", "$RMDelegateDefault")
cristy4689cf02010-02-17 21:15:45 +00003184AC_PATH_PROG(RSVGDecodeDelegate, "$RSVGDecodeDelegateDefault", "$RSVGDecodeDelegateDefault")
cristyec6934f2012-08-14 18:38:40 +00003185AC_PATH_PROG(SVGDecodeDelegate, "$SVGDecodeDelegateDefault", "$SVGDecodeDelegateDefault")
Cristy9e113482019-08-21 09:19:28 -04003186AC_PATH_PROG(TraceEncodeDelegate, "$TraceEncodeDelegateDefault", "$TraceEncodeDelegateDefault")
cristy5ac9ac82010-07-29 13:24:24 +00003187AC_PATH_PROG(UniconvertorDelegate, "$UniconvertorDelegateDefault", "$UniconvertorDelegateDefault")
cristy86e86092013-08-04 17:43:57 +00003188AC_PATH_PROG(WebPDecodeDelegate, "$WebPDecodeDelegateDefault", "$WebPDecodeDelegateDefault")
3189AC_PATH_PROG(WebPEncodeDelegate, "$WebPEncodeDelegateDefault", "$WebPEncodeDelegateDefault")
Cristydc553c12016-05-09 13:27:06 -04003190AC_PATH_PROG(WWWDecodeDelegate, "$WWWDecodeDelegateDefault", "$WWWDecodeDelegateDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003191AC_PATH_PROG(XPSDelegate, "$XPSDelegateDefault", "$XPSDelegateDefault")
cristy3ed852e2009-09-05 21:47:34 +00003192
3193# Prefer lpr to lp; lp needs options tacked on.
3194if test "$LPRDelegate" != no; then
3195 PrintDelegate="$LPRDelegate"
3196else
3197 PrintDelegate="$LPDelegate -c -s"
3198fi
3199AC_SUBST(PrintDelegate)
3200
3201# Installed ImageMagick utiltity paths
3202ConvertDelegate="${BIN_DIR}/${ConvertDelegateDefault}"
3203DisplayDelegate="${BIN_DIR}/${DisplayDelegateDefault}"
3204MogrifyDelegate="${BIN_DIR}/${MogrifyDelegateDefault}"
3205
3206# Set delegate booleans
cristy81ab5af2013-10-06 18:28:39 +00003207have_avconv='no'; if test "$MPEGDecodeDelegate" != "$MPEGDecodeDelegateDefault" ; then have_avconv='yes'; fi
cristy3ed852e2009-09-05 21:47:34 +00003208have_gs='no' ; if test "$PSDelegate" != "$PSDelegateDefault"; then have_gs='yes'; fi
3209have_hp2xx='no' ; if test "$HPGLDecodeDelegate" != "$HPGLDecodeDelegateDefault" ; then have_hp2xx='yes'; fi
3210have_ilbmtoppm='no' ; if test "$ILBMDecodeDelegate" != "$ILBMDecodeDelegateDefault" ; then have_ilbmtoppm='yes'; fi
cristy935c86e2010-06-05 23:50:07 +00003211have_mrsid='no'; if test "$MrSIDDecodeDelegate" != "$MrSIDDecodeDelegateDefault" ; then have_mrsid='yes'; fi
cristy3ed852e2009-09-05 21:47:34 +00003212have_pcl='no' ; if test "$PCLDelegate" != "$PCLDelegateDefault"; then have_pcl='yes'; fi
3213have_ppmtoilbm='no' ; if test "$ILBMEncodeDelegate" != "$ILBMEncodeDelegateDefault" ; then have_ppmtoilbm='yes'; fi
cristy3ed852e2009-09-05 21:47:34 +00003214have_xps='no' ; if test "$XPSDelegate" != "$XPSDelegateDefault"; then have_xps='yes'; fi
3215
3216#
3217# Test for font directories
3218#
3219type_include_files=''
3220
Cristy6263d532016-05-01 18:39:52 -04003221# Apple fonts.
cristy5a3dc992014-12-05 19:50:04 +00003222AC_MSG_CHECKING(for Apple fonts directory)
3223apple_font_dir=''
3224if test "${with_apple_font_dir}" != 'default'; then
3225 apple_font_dir="${with_apple_font_dir}/"
3226else
3227 for font_dir in '/Library/Fonts/'; do
3228 if test -f "${font_dir}Arial.ttf"; then
3229 apple_font_dir="${font_dir}"
3230 break 1
3231 fi
3232 done
3233fi
3234if test "${apple_font_dir}x" != 'x'; then
3235 type_include_files="${type_include_files} "'<include file="type-apple.xml" />'
3236 AC_MSG_RESULT([$apple_font_dir])
3237else
3238 AC_MSG_RESULT([not found!]);
3239fi
3240AC_SUBST(apple_font_dir)
3241
cristy430a7312010-01-21 20:44:04 +00003242# Dejavu fonts.
3243AC_MSG_CHECKING(for Dejavu fonts directory)
3244dejavu_font_dir=''
3245if test "${with_dejavu_font_dir}" != 'default'; then
3246 dejavu_font_dir="${with_dejavu_font_dir}/"
3247else
3248 for font_dir in "${prefix}/share/dejavu/fonts/" '/usr/share/fonts/dejavu/'; do
3249 if test -f "${font_dir}DejaVuSerif.ttf"; then
3250 dejavu_font_dir="${font_dir}"
3251 break 1
3252 fi
3253 done
3254fi
3255if test "${dejavu_font_dir}x" != 'x'; then
3256 type_include_files="${type_include_files} "'<include file="type-dejavu.xml" />'
cristyad38abe2012-12-23 23:03:21 +00003257 AC_MSG_RESULT([$dejavu_font_dir])
cristy430a7312010-01-21 20:44:04 +00003258else
cristyad38abe2012-12-23 23:03:21 +00003259 AC_MSG_RESULT([not found!]);
cristy430a7312010-01-21 20:44:04 +00003260fi
3261AC_SUBST(dejavu_font_dir)
3262
cristy3ed852e2009-09-05 21:47:34 +00003263# Ghostscript
3264AC_MSG_CHECKING(for Ghostscript fonts directory)
3265ghostscript_font_dir=''
3266if test "${with_gs_font_dir}" != 'default'; then
3267 ghostscript_font_dir="${with_gs_font_dir}/"
3268else
3269 if test "${native_win32_build}" = 'yes'; then
3270 # Native Windows Build
3271 for font_dir in "c:\\Program Files\\gs\\fonts\\" "c:\\Program Files \(x86\)\\gs\\fonts\\" "c:\\gs\\fonts\\"; do
3272 if test -f "${font_dir}a010013l.pfb"; then
3273 ghostscript_font_dir="$font_dir"
3274 break 1
3275 fi
3276 done
3277 if test "${PSDelegate}" != 'gswin32c'; then
3278 ghostscript_font_dir=`echo "${PSDelegate}" | sed -e 's:/gs/.*:/gs:;s:^/::;s/./&:/;s:/:\\\\:g'`"\\fonts\\"
3279 fi
3280 else
3281 # Linux / Mac OS X / Unix Build
3282 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
3283 if test -f "${font_dir}a010013l.pfb"; then
3284 ghostscript_font_dir="${font_dir}"
3285 break 1
3286 fi
3287 done
3288 if test "${ghostscript_font_dir}x" = 'x'; then
3289 if test "$PSDelegate" != 'gs'; then
3290 ghostscript_font_dir=`echo "$PSDelegate" | sed -e 's:/bin/gs:/share/ghostscript/fonts:'`"/"
3291 fi
3292 fi
3293 fi
3294fi
3295if test "${ghostscript_font_dir}x" != 'x'; then
3296 type_include_files="${type_include_files} "'<include file="type-ghostscript.xml" />'
cristyad38abe2012-12-23 23:03:21 +00003297 AC_MSG_RESULT([$ghostscript_font_dir])
cristy3ed852e2009-09-05 21:47:34 +00003298else
cristyad38abe2012-12-23 23:03:21 +00003299 AC_MSG_RESULT([not found!]);
cristy3ed852e2009-09-05 21:47:34 +00003300fi
3301AC_SUBST(ghostscript_font_dir)
3302case "${build_os}" in
3303 mingw* )
3304 PSDelegate=`$WinPathScript "$PSDelegate" 1`
3305 ;;
3306esac
3307
Cristyfbca0d02017-09-27 16:52:52 -04003308# URW-base35 fonts.
3309AC_MSG_CHECKING(for URW-base35 fonts directory)
3310urw_base35_font_dir=''
3311if test "${with_urw_base35_font_dir}" != 'default'; then
3312 urw_base35_font_dir="${with_urw_base35_font_dir}/"
3313else
3314 for font_dir in "${prefix}/share/urw-base35/fonts/" '/usr/share/fonts/urw-base35/'; do
3315 if test -f "${font_dir}StandardSymbolsPS.t1"; then
3316 urw_base35_font_dir="${font_dir}"
3317 break 1
3318 fi
3319 done
3320fi
3321if test "${urw_base35_font_dir}x" != 'x'; then
3322 type_include_files="${type_include_files} "'<include file="type-urw-base35.xml" />'
3323 AC_MSG_RESULT([$urw_base35_font_dir])
3324else
3325 AC_MSG_RESULT([not found!]);
3326fi
3327AC_SUBST(urw_base35_font_dir)
3328
cristy5a3dc992014-12-05 19:50:04 +00003329# Windows fonts.
3330AC_MSG_CHECKING(for Windows fonts directory)
3331windows_font_dir=''
3332if test "${with_windows_font_dir}" != 'default'; then
3333 windows_font_dir="${with_windows_font_dir}/"
3334else
Cristy6fa18762018-12-16 14:48:50 -05003335 for font_dir in '/usr/X11R6/lib/X11/fonts/truetype/' '/usr/X11R7/lib/X11/fonts/truetype/' '/usr/share/fonts/msttcore/' '/usr/share/fonts/microsoft/' '/usr/share/fonts/truetype/msttcorefonts/'; do
cristy5a3dc992014-12-05 19:50:04 +00003336 if test -f "${font_dir}arial.ttf"; then
3337 windows_font_dir="${font_dir}"
3338 break 1
3339 fi
3340 done
3341fi
3342if test "${windows_font_dir}x" != 'x'; then
3343 type_include_files="${type_include_files} "'<include file="type-windows.xml" />'
3344 AC_MSG_RESULT([$windows_font_dir])
3345else
3346 AC_MSG_RESULT([not found!]);
3347fi
3348AC_SUBST(windows_font_dir)
3349
cristy3ed852e2009-09-05 21:47:34 +00003350AC_SUBST(type_include_files)
3351
3352#
3353# Handle case where user doesn't want frozen paths
3354#
3355if test "$with_frozenpaths" != 'yes'; then
3356 # Re-set delegate definitions to default (no paths)
Cristy06c41ab2016-04-30 10:23:22 -04003357 BPGDecodeDelegate="$BPGDecodeDelegateDefault"
3358 BPGEncodeDelegate="$BPGEncodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003359 BlenderDecodeDelegate="$BlenderDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003360 BrowseDelegate="$BrowseDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003361 ConvertDelegate="$ConvertDelegateDefault"
cristy71f53d52013-04-27 13:33:59 +00003362 DisplayDelegate="$DisplayDelegateDefault"
3363 DNGDecodeDelegate="$DNGDecodeDelegateDefault"
cristy66f238e2014-05-16 12:21:48 +00003364 DOCDecodeDelegate="$DOCDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003365 DVIDecodeDelegate="$DVIDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003366 EditorDelegate="$EditorDelegateDefault"
cristy71f53d52013-04-27 13:33:59 +00003367 GVCDecodeDelegate="$GVCDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003368 HPGLDecodeDelegate="$HPGLDecodeDelegateDefault"
3369 HTMLDecodeDelegate="$HTMLDecodeDelegateDefault"
3370 ILBMDecodeDelegate="$ILBMDecodeDelegateDefault"
3371 ILBMEncodeDelegate="$ILBMEncodeDelegateDefault"
cristy71f53d52013-04-27 13:33:59 +00003372 JXRDecodeDelegate="$JXRDecodeDelegateDefault"
3373 JXREncodeDelegate="$JXREncodeDelegateDefault"
Cristy3ef15c02017-01-02 07:41:13 -05003374 LEPDelegate="$LEPDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003375 LPDelegate="$LPDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003376 LaunchDelegate="$LaunchDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003377 MPEGDecodeDelegate="$MPEGDecodeDelegateDefault"
3378 MPEGEncodeDelegate="$MPEGEncodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003379 MogrifyDelegate="$MogrifyDelegateDefault"
cristy935c86e2010-06-05 23:50:07 +00003380 MrSIDDecodeDelegate="$MrSIDDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003381 PCLDelegate="$PCLDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003382 PSDelegate="$PSDelegateDefault"
cristy4689cf02010-02-17 21:15:45 +00003383 RSVGDecodeDelegate="$RSVGDecodeDelegateDefault"
cristyec6934f2012-08-14 18:38:40 +00003384 SVGDecodeDelegate="$SVGDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003385 ShowImageDelegate="$ShowImageDelegateDefault"
Cristy9e113482019-08-21 09:19:28 -04003386 TraceEncodeDelegate="$TraceEncodeDelegateDefault"
cristy5ac9ac82010-07-29 13:24:24 +00003387 UniconvertorDelegate="$UniconvertorDelegateDefault"
cristy86e86092013-08-04 17:43:57 +00003388 WebPDecodeDelegate="$WebPDecodeDelegateDefault"
3389 WebPEncodeDelegate="$WebPEncodeDelegateDefault"
Cristydc553c12016-05-09 13:27:06 -04003390 WWWDecodeDelegate="$WWWDecodeDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003391 XPSDelegate="$XPSDelegateDefault"
cristy3ed852e2009-09-05 21:47:34 +00003392fi
3393
3394# Delegate substitutions
Cristy06c41ab2016-04-30 10:23:22 -04003395AC_SUBST(BPGDecodeDelegate)
3396AC_SUBST(BPGEncodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003397AC_SUBST(BlenderDecodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003398AC_SUBST(BrowseDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003399AC_SUBST(ConvertDelegate)
3400AC_SUBST(GVCDecodeDelegate)
3401AC_SUBST(DVIDecodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003402AC_SUBST(EditorDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003403AC_SUBST(HPGLDecodeDelegate)
3404AC_SUBST(HTMLDecodeDelegate)
3405AC_SUBST(ILBMDecodeDelegate)
3406AC_SUBST(ILBMEncodeDelegate)
cristy71f53d52013-04-27 13:33:59 +00003407AC_SUBST(JXRDecodeDelegate)
3408AC_SUBST(JXREncodeDelegate)
Cristyea6e8ae2019-09-30 07:21:16 -04003409AC_SUBST(LaunchDelegate)
Cristy3ef15c02017-01-02 07:41:13 -05003410AC_SUBST(LEPDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003411AC_SUBST(LPDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003412AC_SUBST(MPEGDecodeDelegate)
3413AC_SUBST(MPEGEncodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003414AC_SUBST(MogrifyDelegate)
cristy935c86e2010-06-05 23:50:07 +00003415AC_SUBST(MrSIDDecodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003416AC_SUBST(PCLDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003417AC_SUBST(PSDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003418AC_SUBST(ShowImageDelegate)
Cristy9e113482019-08-21 09:19:28 -04003419AC_SUBST(TraceEncodeDelegate)
cristy5ac9ac82010-07-29 13:24:24 +00003420AC_SUBST(UniconvertorDelegate)
cristy86e86092013-08-04 17:43:57 +00003421AC_SUBST(WebPDecodeDelegate)
3422AC_SUBST(WebPEncodeDelegate)
Cristydc553c12016-05-09 13:27:06 -04003423AC_SUBST(WWWDecodeDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003424AC_SUBST(XPSDelegate)
cristy3ed852e2009-09-05 21:47:34 +00003425
3426#
3427# RPM support.
3428#
3429RPM=''
3430AC_CHECK_PROGS(TAR,gnutar gtar tar)
3431AC_CHECK_PROGS(PERL,perl)
3432AC_CHECK_PROGS(RPM,rpmbuild rpm)
3433AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
3434AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
3435AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
3436AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
3437AC_SUBST(RPM)
3438AM_CONDITIONAL(RPM_DELEGATE, test "x$RPM" != "x" )
3439
3440#
3441# 7ZIP support (http://p7zip.sourceforge.net/)
3442#
3443P7ZIP=''
3444AC_CHECK_PROGS(P7ZIP,[7za])
3445AC_SUBST(P7ZIP)
3446AM_CONDITIONAL(P7ZIP_DELEGATE, test "x$P7ZIP" != "x" )
3447
3448#
3449# ZIP support (http://www.info-zip.org/Zip.html)
3450#
3451ZIP=''
3452AC_CHECK_PROGS(ZIP,[zip])
3453AC_SUBST(ZIP)
3454AM_CONDITIONAL(ZIP_DELEGATE, test "x$ZIP" != "x" )
3455
3456#
3457# GhostPCL related configuration.
3458#
3459PCLColorDevice=ppmraw
cristy8bc84082011-09-07 13:57:00 +00003460PCLCMYKDevice=pamcmyk32
cristy3ed852e2009-09-05 21:47:34 +00003461PCLMonoDevice=pbmraw
3462if test -z "$PCLVersion"; then
3463 PCLVersion='unknown'
3464fi
3465if test $have_pcl = 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00003466 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003467 AC_MSG_CHECKING([for PCL])
cristyad38abe2012-12-23 23:03:21 +00003468 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003469 # PCLColorDevice
3470 AC_MSG_CHECKING([for pcl color device])
cristy86e31f32015-06-06 15:47:32 +00003471 if $PCLDelegate -dBATCH -sDEVICE=$PCLColorDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003472 :
3473 else
3474 PCLColorDevice=ppmraw
3475 fi
cristyad38abe2012-12-23 23:03:21 +00003476 AC_MSG_RESULT([$PCLColorDevice])
cristy3ed852e2009-09-05 21:47:34 +00003477
3478 # PCLCMYKDevice
3479 AC_MSG_CHECKING([for pcl CMYK device])
cristy86e31f32015-06-06 15:47:32 +00003480 if $PCLDelegate -dBATCH -sDEVICE=$PCLColorDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003481 :
3482 else
3483 PCLCMYKDevice=$PCLColorDevice
3484 fi
cristyad38abe2012-12-23 23:03:21 +00003485 AC_MSG_RESULT([$PCLCMYKDevice])
cristy3ed852e2009-09-05 21:47:34 +00003486
3487 # PCLMonoDevice
3488 AC_MSG_CHECKING([for pcl mono device])
cristy86e31f32015-06-06 15:47:32 +00003489 if $PCLDelegate -dBATCH -sDEVICE=$PCLMonoDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003490 :
3491 else
3492 PCLMonoDevice=$PCLColorDevice
3493 fi
cristyad38abe2012-12-23 23:03:21 +00003494 AC_MSG_RESULT([$PCLMonoDevice])
cristy3ed852e2009-09-05 21:47:34 +00003495fi
3496
3497AC_SUBST(PCLMonoDevice)
3498AC_SUBST(PCLColorDevice)
3499AC_SUBST(PCLCMYKDevice)
3500AC_SUBST(PCLVersion)
3501
3502#
3503# GhostXPS related configuration.
3504#
3505XPSColorDevice=ppmraw
3506XPSCMYKDevice=bmpsep8
3507XPSMonoDevice=pbmraw
3508if test -z "$XPSVersion"; then
3509 XPSVersion='unknown'
3510fi
3511if test $have_xps = 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00003512 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003513 AC_MSG_CHECKING([for XPS])
cristyad38abe2012-12-23 23:03:21 +00003514 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003515 # XPSColorDevice
3516 AC_MSG_CHECKING([for xps color device])
cristy86e31f32015-06-06 15:47:32 +00003517 if $XPSDelegate -dBATCH -sDEVICE=$XPSColorDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003518 :
3519 else
3520 XPSColorDevice=ppmraw
3521 fi
cristyad38abe2012-12-23 23:03:21 +00003522 AC_MSG_RESULT([$XPSColorDevice])
cristy3ed852e2009-09-05 21:47:34 +00003523
3524 # XPSCMYKDevice
3525 AC_MSG_CHECKING([for xps CMYK device])
cristy86e31f32015-06-06 15:47:32 +00003526 if $XPSDelegate -dBATCH -sDEVICE=$XPSColorDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003527 :
3528 else
3529 XPSCMYKDevice=$XPSColorDevice
3530 fi
cristyad38abe2012-12-23 23:03:21 +00003531 AC_MSG_RESULT([$XPSCMYKDevice])
cristy3ed852e2009-09-05 21:47:34 +00003532
3533 # XPSMonoDevice
3534 AC_MSG_CHECKING([for xps mono device])
cristy86e31f32015-06-06 15:47:32 +00003535 if $XPSDelegate -dBATCH -sDEVICE=$XPSMonoDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003536 :
3537 else
3538 XPSMonoDevice=$XPSColorDevice
3539 fi
cristyad38abe2012-12-23 23:03:21 +00003540 AC_MSG_RESULT([$XPSMonoDevice])
cristy3ed852e2009-09-05 21:47:34 +00003541fi
3542
3543AC_SUBST(XPSMonoDevice)
3544AC_SUBST(XPSColorDevice)
3545AC_SUBST(XPSCMYKDevice)
3546AC_SUBST(XPSVersion)
3547
3548#
3549# Ghostscript related configuration.
3550#
cristya97426c2011-02-04 01:41:27 +00003551GSAlphaDevice=pngalpha
Cristy13f5e9a2019-11-29 12:24:16 -05003552GSColorDevice=png16m
cristy63970c52015-06-06 16:09:04 +00003553GSCMYKDevice=pamcmyk32
cristy3ed852e2009-09-05 21:47:34 +00003554GSMonoDevice=pbmraw
3555GSPDFDevice=pdfwrite
cristyb096ea52013-10-26 20:56:38 +00003556GSPSDevice=ps2write
cristya5b91e72015-01-07 15:39:36 +00003557GSEPSDevice=eps2write
cristy3ed852e2009-09-05 21:47:34 +00003558GSVersion='unknown'
3559if test $have_gs = 'yes'; then
cristyad38abe2012-12-23 23:03:21 +00003560 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003561 AC_MSG_CHECKING([for Ghostscript])
cristyad38abe2012-12-23 23:03:21 +00003562 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003563 AC_MSG_CHECKING([for Ghostscript version])
3564 if GSVersion=`$PSDelegate --version`; then
3565 :
3566 else
3567 GSVersion=`$PSDelegate --help | sed -e '1q' | awk '{ print $3 }'`
3568 fi
cristyad38abe2012-12-23 23:03:21 +00003569 AC_MSG_RESULT([$GSVersion])
cristy3ed852e2009-09-05 21:47:34 +00003570
cristy3ed852e2009-09-05 21:47:34 +00003571 # GSColorDevice
3572 AC_MSG_CHECKING([for gs color device])
cristy86e31f32015-06-06 15:47:32 +00003573 if $PSDelegate -q -dBATCH -sDEVICE=$GSColorDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003574 :
3575 else
cristy63970c52015-06-06 16:09:04 +00003576 GSColorDevice=ppmraw
cristy3ed852e2009-09-05 21:47:34 +00003577 fi
cristyad38abe2012-12-23 23:03:21 +00003578 AC_MSG_RESULT([$GSColorDevice])
cristy3ed852e2009-09-05 21:47:34 +00003579
cristy63970c52015-06-06 16:09:04 +00003580 # GSAlphaDevice
3581 AC_MSG_CHECKING([for gs alpha device])
3582 if $PSDelegate -q -dBATCH -sDEVICE=$GSAlphaDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
3583 :
3584 else
3585 GSAlphaDevice=$GSColorDevice
3586 fi
3587 AC_MSG_RESULT([$GSAlphaDevice])
3588
cristy3ed852e2009-09-05 21:47:34 +00003589 # GSCMYKDevice
3590 AC_MSG_CHECKING([for gs CMYK device])
cristy86e31f32015-06-06 15:47:32 +00003591 if $PSDelegate -q -dBATCH -sDEVICE=$GSCMYKDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003592 :
3593 else
cristy63970c52015-06-06 16:09:04 +00003594 GSCMYKDevice=pam
cristy3ed852e2009-09-05 21:47:34 +00003595 fi
cristyad38abe2012-12-23 23:03:21 +00003596 AC_MSG_RESULT([$GSCMYKDevice])
cristy3ed852e2009-09-05 21:47:34 +00003597
3598 # GSMonoDevice
3599 AC_MSG_CHECKING([for gs mono device])
cristy86e31f32015-06-06 15:47:32 +00003600 if $PSDelegate -q -dBATCH -sDEVICE=$GSMonoDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003601 :
3602 else
3603 GSMonoDevice=$GSColorDevice
3604 fi
cristyad38abe2012-12-23 23:03:21 +00003605 AC_MSG_RESULT([$GSMonoDevice])
cristy3ed852e2009-09-05 21:47:34 +00003606
3607 # GSPDFDevice
3608 AC_MSG_CHECKING([for gs PDF writing device])
cristy86e31f32015-06-06 15:47:32 +00003609 if $PSDelegate -q -dBATCH -sDEVICE=$GSPDFDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003610 :
3611 else
3612 GSPDFDevice=nodevice
3613 fi
cristy63970c52015-06-06 16:09:04 +00003614 AC_MSG_RESULT([$GSPDFDevice])
cristy3ed852e2009-09-05 21:47:34 +00003615
3616 # GSPSDevice
3617 AC_MSG_CHECKING([for gs PS writing device])
cristy86e31f32015-06-06 15:47:32 +00003618 if $PSDelegate -q -dBATCH -sDEVICE=$GSPSDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003619 :
3620 else
cristy15308162015-01-09 23:43:12 +00003621 GSPSDevice=pswrite
cristy3ed852e2009-09-05 21:47:34 +00003622 fi
cristyad38abe2012-12-23 23:03:21 +00003623 AC_MSG_RESULT([$GSPSDevice])
cristy3ed852e2009-09-05 21:47:34 +00003624
3625 # GSEPSDevice
3626 AC_MSG_CHECKING([for gs EPS writing device])
cristy86e31f32015-06-06 15:47:32 +00003627 if $PSDelegate -q -dBATCH -sDEVICE=$GSEPSDevice -sOutputFile=/dev/null < /dev/null 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
cristy3ed852e2009-09-05 21:47:34 +00003628 :
3629 else
cristy15308162015-01-09 23:43:12 +00003630 GSEPSDevice=epswrite
cristy3ed852e2009-09-05 21:47:34 +00003631 fi
cristyad38abe2012-12-23 23:03:21 +00003632 AC_MSG_RESULT([$GSEPSDevice])
cristy3ed852e2009-09-05 21:47:34 +00003633fi
3634
3635AC_SUBST(GSAlphaDevice)
3636AC_SUBST(GSCMYKDevice)
3637AC_SUBST(GSColorDevice)
3638AC_SUBST(GSEPSDevice)
3639AC_SUBST(GSMonoDevice)
3640AC_SUBST(GSPDFDevice)
3641AC_SUBST(GSPSDevice)
3642AC_SUBST(GSVersion)
3643
3644#
3645# PerlMagick-related configuration
3646#
3647
3648# Look for PERL if PerlMagick requested
3649# If name/path of desired PERL interpreter is specified, look for that one first
3650have_perl='no'
3651if test "$with_perl" != 'no'; then
cristyad38abe2012-12-23 23:03:21 +00003652 AC_MSG_RESULT([-------------------------------------------------------------])
cristy3ed852e2009-09-05 21:47:34 +00003653 AC_MSG_CHECKING([for Perl])
cristyad38abe2012-12-23 23:03:21 +00003654 AC_MSG_RESULT([])
cristy3ed852e2009-09-05 21:47:34 +00003655 if test "$with_perl" != 'yes'; then
3656 AC_CACHE_CHECK(for perl,ac_cv_path_PERL,ac_cv_path_PERL="$with_perl");
3657 PERL=$ac_cv_path_PERL
3658 AC_SUBST(PERL)dnl
3659 have_perl="$ac_cv_path_PERL"
3660 else
3661 AC_PATH_PROGS(PERL,perl perl5,)dnl
3662 if test "$ac_cv_path_PERL"; then
3663 have_perl="$ac_cv_path_PERL"
3664 fi
3665 fi
3666fi
3667
cristy949301e2010-01-06 01:38:40 +00003668if test "$with_perl" != 'yes' ; then
3669 DISTCHECK_CONFIG_FLAGS="${DISTCHECK_CONFIG_FLAGS} --with-perl=$with_perl "
3670fi
3671
3672PERL_SUPPORTS_DESTDIR='no'
3673
cristy3ed852e2009-09-05 21:47:34 +00003674with_perl_static='no'
3675with_perl_dynamic='no'
3676if test "$have_perl" != 'no'; then
3677 if test "$with_perl" != 'no' && test "$libtool_build_shared_libs" = 'no'; then
3678 with_perl_static='yes'
3679 fi
3680 if test "$with_perl" != 'no' && test "$libtool_build_shared_libs" = 'yes'; then
3681 with_perl_dynamic='yes'
3682 fi
3683 # Is PERL's MakeMaker new enough to support DESTDIR?
cristy964cb7f2010-04-25 23:18:00 +00003684 AX_PROG_PERL_VERSION(5.8.1,[PERL_SUPPORTS_DESTDIR='yes'],[PERL_SUPPORTS_DESTDIR='no'])
cristy3ed852e2009-09-05 21:47:34 +00003685fi
3686AM_CONDITIONAL(WITH_PERL, test "$have_perl" != 'no')
3687AM_CONDITIONAL(WITH_PERL_STATIC, test $with_perl_static = 'yes')
3688AM_CONDITIONAL(WITH_PERL_DYNAMIC, test $with_perl_dynamic = 'yes')
3689AC_SUBST(PERL_SUPPORTS_DESTDIR)
3690
3691# Determine path to pick up MagickCore library from for use with building PerlMagick
3692MAGICKCORE_PATH="${LIB_DIR}"
3693if test $with_perl_static = 'yes'; then
3694 # Find out where libtool hides its uninstalled libraries (as libtool_objdir)
3695 libtool_objdir=$objdir
3696
3697 # Linker search path to library, followed by -lMagickCore
cristy4c08aed2011-07-01 19:47:50 +00003698 MAGICKCORE_PATH="${builddir}/MagickCore/${libtool_objdir}"
cristy3ed852e2009-09-05 21:47:34 +00003699fi
3700AC_SUBST(MAGICKCORE_PATH)
3701
cristy2a3eb392012-12-17 13:39:20 +00003702# Create a simple string containing format names for all delegate libraries.
cristy422d5502012-12-22 22:20:57 +00003703MAGICK_DELEGATES=''
cristy2a3eb392012-12-17 13:39:20 +00003704if test "$have_autotrace" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003705 MAGICK_DELEGATES="$MAGICK_DELEGATES autotrace"
cristy3ed852e2009-09-05 21:47:34 +00003706fi
cristy2a3eb392012-12-17 13:39:20 +00003707if test "$have_bzlib" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003708 MAGICK_DELEGATES="$MAGICK_DELEGATES bzlib"
cristy2a3eb392012-12-17 13:39:20 +00003709fi
3710if test "$have_dps" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003711 MAGICK_DELEGATES="$MAGICK_DELEGATES dps"
cristy2a3eb392012-12-17 13:39:20 +00003712fi
3713if test "$have_djvu" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003714 MAGICK_DELEGATES="$MAGICK_DELEGATES djvu"
cristy2a3eb392012-12-17 13:39:20 +00003715fi
cristy81ab5af2013-10-06 18:28:39 +00003716if test "$have_avconv" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003717 MAGICK_DELEGATES="$MAGICK_DELEGATES mpeg"
cristy2a3eb392012-12-17 13:39:20 +00003718fi
3719if test "$have_fftw" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003720 MAGICK_DELEGATES="$MAGICK_DELEGATES fftw"
cristy2a3eb392012-12-17 13:39:20 +00003721fi
Cristy6d2f14b2016-04-26 01:41:09 -04003722if test "$have_flif" = 'yes' ; then
3723 MAGICK_DELEGATES="$MAGICK_DELEGATES flif"
3724fi
cristy2a3eb392012-12-17 13:39:20 +00003725if test "$have_fpx" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003726 MAGICK_DELEGATES="$MAGICK_DELEGATES fpx"
cristy2a3eb392012-12-17 13:39:20 +00003727fi
3728if test "$have_fontconfig" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003729 MAGICK_DELEGATES="$MAGICK_DELEGATES fontconfig"
cristy2a3eb392012-12-17 13:39:20 +00003730fi
3731if test "$have_freetype" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003732 MAGICK_DELEGATES="$MAGICK_DELEGATES freetype"
cristy2a3eb392012-12-17 13:39:20 +00003733fi
3734if test "$have_gslib" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003735 MAGICK_DELEGATES="$MAGICK_DELEGATES gslib"
cristy2a3eb392012-12-17 13:39:20 +00003736fi
Cristy9e7b9812017-11-19 09:35:36 -05003737if test "$have_heic" = 'yes' ; then
3738 MAGICK_DELEGATES="$MAGICK_DELEGATES heic"
3739fi
cristy2a3eb392012-12-17 13:39:20 +00003740if test "$have_jbig" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003741 MAGICK_DELEGATES="$MAGICK_DELEGATES jbig"
cristy2a3eb392012-12-17 13:39:20 +00003742fi
3743if test "$have_png$have_jpeg" = 'yesyes' ; then
cristy422d5502012-12-22 22:20:57 +00003744 MAGICK_DELEGATES="$MAGICK_DELEGATES jng"
cristy2a3eb392012-12-17 13:39:20 +00003745fi
cristy2a3eb392012-12-17 13:39:20 +00003746if test "$have_jpeg" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003747 MAGICK_DELEGATES="$MAGICK_DELEGATES jpeg"
cristy2a3eb392012-12-17 13:39:20 +00003748fi
Cristyb316fbb2019-10-05 10:51:15 -04003749if test "$have_jxl" = 'yes' ; then
3750 MAGICK_DELEGATES="$MAGICK_DELEGATES jxl"
3751fi
cristy2a3eb392012-12-17 13:39:20 +00003752if test "$have_lcms" = 'yes' || test "$have_lcms2" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003753 MAGICK_DELEGATES="$MAGICK_DELEGATES lcms"
cristy2a3eb392012-12-17 13:39:20 +00003754fi
3755if test "$have_lqr" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003756 MAGICK_DELEGATES="$MAGICK_DELEGATES lqr"
cristy2a3eb392012-12-17 13:39:20 +00003757fi
3758if test "$have_lzma" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003759 MAGICK_DELEGATES="$MAGICK_DELEGATES lzma"
cristy2a3eb392012-12-17 13:39:20 +00003760fi
3761if test "$have_openexr" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003762 MAGICK_DELEGATES="$MAGICK_DELEGATES openexr"
cristy2a3eb392012-12-17 13:39:20 +00003763fi
cristy99db3872014-01-01 15:11:34 +00003764if test "$have_openjp2" = 'yes' ; then
3765 MAGICK_DELEGATES="$MAGICK_DELEGATES openjp2"
cristy3fe09452014-01-01 12:29:14 +00003766fi
cristy2a3eb392012-12-17 13:39:20 +00003767if test "$have_pango" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003768 MAGICK_DELEGATES="$MAGICK_DELEGATES pango"
cristy2a3eb392012-12-17 13:39:20 +00003769fi
3770if test "$have_png" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003771 MAGICK_DELEGATES="$MAGICK_DELEGATES png"
cristy2a3eb392012-12-17 13:39:20 +00003772fi
3773have_ps='no'
3774if test "$have_dps" = 'yes' || \
3775 test "$have_gs" = 'yes' || \
3776 test "${native_win32_build}" = 'yes' ; then
3777 have_ps='yes'
3778fi
3779if test "$have_ps" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003780 MAGICK_DELEGATES="$MAGICK_DELEGATES ps"
cristy2a3eb392012-12-17 13:39:20 +00003781fi
Cristy5572ef62016-02-06 16:10:00 -05003782if test "$have_raqm" = 'yes' ; then
3783 MAGICK_DELEGATES="$MAGICK_DELEGATES raqm"
3784fi
Cristyea6e8ae2019-09-30 07:21:16 -04003785if test "$have_raw" = 'yes' ; then
3786 MAGICK_DELEGATES="$MAGICK_DELEGATES raw"
3787fi
cristy2a3eb392012-12-17 13:39:20 +00003788if test "$have_ra_ppm" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003789 MAGICK_DELEGATES="$MAGICK_DELEGATES rad"
cristy2a3eb392012-12-17 13:39:20 +00003790fi
3791if test "$have_rsvg" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003792 MAGICK_DELEGATES="$MAGICK_DELEGATES rsvg"
cristy2a3eb392012-12-17 13:39:20 +00003793fi
3794if test "$have_tiff" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003795 MAGICK_DELEGATES="$MAGICK_DELEGATES tiff"
cristy2a3eb392012-12-17 13:39:20 +00003796fi
3797if test "$have_ttf" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003798 MAGICK_DELEGATES="$MAGICK_DELEGATES ttf"
cristy2a3eb392012-12-17 13:39:20 +00003799fi
cristy3b640ed2013-07-29 00:27:59 +00003800if test "$have_webp" = 'yes' ; then
3801 MAGICK_DELEGATES="$MAGICK_DELEGATES webp"
3802fi
cristy2a3eb392012-12-17 13:39:20 +00003803if test "$have_wmf" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003804 MAGICK_DELEGATES="$MAGICK_DELEGATES wmf"
cristy2a3eb392012-12-17 13:39:20 +00003805fi
3806if test "$have_x" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003807 MAGICK_DELEGATES="$MAGICK_DELEGATES x"
cristy2a3eb392012-12-17 13:39:20 +00003808fi
3809if test "$have_xml" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003810 MAGICK_DELEGATES="$MAGICK_DELEGATES xml"
cristy2a3eb392012-12-17 13:39:20 +00003811fi
3812if test "$have_zlib" = 'yes' ; then
cristy422d5502012-12-22 22:20:57 +00003813 MAGICK_DELEGATES="$MAGICK_DELEGATES zlib"
cristy2a3eb392012-12-17 13:39:20 +00003814fi
Cristy08170e62018-10-14 10:33:46 -04003815if test "$have_zstd" = 'yes' ; then
3816 MAGICK_DELEGATES="$MAGICK_DELEGATES zstd"
3817fi
cristyead532a2015-06-05 00:49:30 +00003818
cristy2a3eb392012-12-17 13:39:20 +00003819# Remove extraneous spaces from output variables (asthetic)
cristy422d5502012-12-22 22:20:57 +00003820MAGICK_DELEGATES=`echo $MAGICK_DELEGATES | sed -e 's/ */ /g'`
cristy2a3eb392012-12-17 13:39:20 +00003821MAGICK_FEATURES=`echo $MAGICK_FEATURES | sed -e 's/ */ /g'`
cristy422d5502012-12-22 22:20:57 +00003822AC_SUBST(MAGICK_DELEGATES)
cristyfa161182012-12-19 15:45:28 +00003823AC_SUBST(MAGICK_FEATURES)
cristy3ed852e2009-09-05 21:47:34 +00003824
3825#
3826# Handle special compiler flags
3827#
3828
3829# Add '-p' if prof source profiling support enabled
3830if test "$enable_prof" = 'yes'; then
3831 CFLAGS="-p $CFLAGS"
3832 CXXFLAGS="-p $CXXFLAGS"
3833 LDFLAGS="-p $LDFLAGS"
3834fi
3835
3836# Add '-pg' if gprof source profiling support enabled
3837if test "$enable_gprof" = 'yes'; then
3838 CFLAGS="-pg $CFLAGS"
3839 CXXFLAGS="-pg $CXXFLAGS"
3840 LDFLAGS="-pg $LDFLAGS"
3841fi
3842
3843# Add '-ftest-coverage -fprofile-arcs' if gcov source profiling support enabled
3844# This is a gcc-specific feature
3845if test "$enable_gcov" = 'yes'; then
3846 AC_CHECK_LIB(gcov,_gcov_init)
3847 AC_CHECK_LIB(gcov,__gcov_init)
3848 case "$target_os" in
3849 darwin*)
3850 OSX_GCOV_LDFLAG="-Wl,-single_module"
3851 ;;
3852 *)
3853 OSX_GCOV_LDFLAG=""
3854 ;;
3855 esac
3856 AC_SUBST(OSX_GCOV_LDFLAG)
3857 CFLAGS="-ftest-coverage -fprofile-arcs $CFLAGS"
3858 CXXFLAGS="-ftest-coverage -fprofile-arcs $CXXFLAGS"
3859 LDFLAGS="-ftest-coverage -fprofile-arcs $LDFLAGS"
3860fi
3861
3862#
3863# Build library dependency list for libMagickCore
3864#
3865
cristyc6722092012-10-14 00:19:31 +00003866if test "$build_modules" != 'no'; then
Cristy2acd4782019-09-11 08:08:02 -04003867 MAGICK_DEP_LIBS="$USER_LIBS $LCMS_LIBS $FREETYPE_LIBS $RAQM_LIBS $LQR_LIBS $FFTW_LIBS $XML_LIBS $FLIF_LIBS $FONTCONFIG_LIBS $XEXT_LIBS $IPC_LIBS $X11_LIBS $XT_LIBS $LZMA_LIBS $BZLIB_LIBS $ZLIB_LIBS $ZSTD_LIBS $LTDL_LIBS $GDI32_LIBS $WS2_32_LIBS $MATH_LIBS $CL_LIBS $UMEM_LIBS $JEMALLOC_LIBS $THREAD_LIBS $TCMALLOC_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003868else
Cristyb316fbb2019-10-05 10:51:15 -04003869 MAGICK_DEP_LIBS="$USER_LIBS $JBIG_LIBS $LCMS_LIBS $TIFF_LIBS $FREETYPE_LIBS $RAQM_LIBS $JPEG_LIBS $JXL_LIBS $GS_LIBS $LQR_LIBS $PNG_LIBS $AUTOTRACE_LIBS $DJVU_LIBS $FFTW_LIBS $FLIF_LIBS $FPX_LIBS $FONTCONFIG_LIBS $HEIF_LIBS $WEBPMUX_LIBS $WEBP_LIBS $WMF_LIBS $DPS_LIBS $XEXT_LIBS $XT_LIBS $IPC_LIBS $X11_LIBS $LZMA_LIBS $BZLIB_LIBS $OPENEXR_LIBS $LIBOPENJP2_LIBS $PANGO_LIBS $RAW_R_LIBS $RSVG_LIBS $XML_LIBS $GVC_LIBS $ZLIB_LIBS $ZSTD_LIBS $LTDL_LIBS $GDI32_LIBS $WS2_32_LIBS $MATH_LIBS $CL_LIBS $UMEM_LIBS $JEMALLOC_LIBS $THREAD_LIBS $TCMALLOC_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003870fi
Cristy56d66f22018-10-22 19:15:12 -04003871MAGICK_EXTRA_DEP_LIBS="$GOMP_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003872AC_SUBST(MAGICK_DEP_LIBS)
Cristy56d66f22018-10-22 19:15:12 -04003873AC_SUBST(MAGICK_EXTRA_DEP_LIBS)
cristy3ed852e2009-09-05 21:47:34 +00003874
cristy3ed852e2009-09-05 21:47:34 +00003875# Pass only user-provided LIBS as "global" libraries
3876LIBS=$USER_LIBS
3877
3878#AC_SUBST(CPPFLAGS)
3879AC_SUBST(X_CFLAGS)
3880#AC_SUBST(LDFLAGS)
3881#AC_SUBST(X_PRE_LIBS)
3882#AC_SUBST(X_LIBS)
3883#AC_SUBST(X_EXTRA_LIBS)
3884
3885MAGICK_CFLAGS=$CFLAGS
3886MAGICK_CXXFLAGS="$CXXFLAGS"
3887MAGICK_CPPFLAGS=`echo $MAGICK_CPPFLAGS | sed -e 's/ */ /g'`
3888MAGICK_PCFLAGS=`echo $MAGICK_PCFLAGS | sed -e 's/ */ /g'`
3889MAGICK_LDFLAGS="-L$LIB_DIR $LDFLAGS"
Carsten Teibes93d248a2018-10-29 21:00:15 +01003890MAGICK_LIBS="$MAGICK_DEP_LIBS $MAGICK_EXTRA_DEP_LIBS"
cristy3ed852e2009-09-05 21:47:34 +00003891
3892AC_SUBST(MAGICK_CFLAGS)
3893AC_SUBST(MAGICK_CXXFLAGS)
3894AC_SUBST(MAGICK_CPPFLAGS)
3895AC_SUBST(MAGICK_PCFLAGS)
3896AC_SUBST(MAGICK_LDFLAGS)
3897AC_SUBST(MAGICK_LIBS)
cristy154f9fa2012-12-05 19:30:42 +00003898
cristy3ed852e2009-09-05 21:47:34 +00003899# Set configured scripts to executable.
3900AC_CONFIG_COMMANDS([default],[],[])
cristy2bd4b6e2012-07-22 15:29:11 +00003901AC_CONFIG_COMMANDS([magick.sh.in],[chmod +x magick.sh])
cristy4c08aed2011-07-01 19:47:50 +00003902AC_CONFIG_COMMANDS([MagickCore-config.in],[chmod +x MagickCore/MagickCore-config])
cristy4c08aed2011-07-01 19:47:50 +00003903AC_CONFIG_COMMANDS([MagickWand-config.in],[chmod +x MagickWand/MagickWand-config])
cristy3ed852e2009-09-05 21:47:34 +00003904AC_CONFIG_COMMANDS([Magick++-config.in],[chmod +x Magick++/bin/Magick++-config])
3905AC_CONFIG_COMMANDS([PerlMagick/check.sh.in],[chmod +x PerlMagick/check.sh])
3906
cristyad38abe2012-12-23 23:03:21 +00003907AC_MSG_RESULT([-------------------------------------------------------------])
3908AC_MSG_RESULT([Update ImageMagick configuration])
cristy3ed852e2009-09-05 21:47:34 +00003909
3910rm -f magick-version
3911
cristy430a7312010-01-21 20:44:04 +00003912result_dejavu_font_dir='none'
3913if test "${dejavu_font_dir}x" != 'x'; then
3914 result_dejavu_font_dir=$dejavu_font_dir
3915fi
3916
cristy3ed852e2009-09-05 21:47:34 +00003917result_ghostscript_font_dir='none'
3918if test "${ghostscript_font_dir}x" != 'x'; then
3919 result_ghostscript_font_dir=$ghostscript_font_dir
3920fi
3921
Cristyc5751062018-02-24 15:15:12 -05003922result_urw_base35_font_dir='none'
3923if test "${urw_base35_font_dir}x" != 'x'; then
3924 result_urw_base35_font_dir=$urw_base35_font_dir
3925fi
3926
cristy3ed852e2009-09-05 21:47:34 +00003927result_windows_font_dir='none'
3928if test "${windows_font_dir}x" != 'x'; then
3929 result_windows_font_dir=${windows_font_dir}
3930fi
3931
cristy9af1cbf2014-12-28 22:03:09 +00003932# ==============================================================================
3933# Generate build environment
3934# ==============================================================================
3935AC_CONFIG_FILES([\
3936 common.shi \
3937 config/configure.xml \
3938 config/delegates.xml \
3939 config/ImageMagick.rdf \
3940 config/MagickCore.dox \
3941 config/MagickWand.dox \
3942 config/Magick++.dox \
3943 config/type-apple.xml \
3944 config/type-dejavu.xml \
3945 config/type-ghostscript.xml \
Cristy9283d5b2017-09-27 17:40:11 -04003946 config/type-urw-base35.xml \
cristy9af1cbf2014-12-28 22:03:09 +00003947 config/type-windows.xml \
3948 config/type.xml \
3949 ImageMagick.spec \
3950 Magick++/bin/Magick++-config \
3951 MagickCore/ImageMagick.pc \
3952 Magick++/lib/Magick++.pc \
3953 MagickCore/MagickCore-config \
3954 MagickCore/MagickCore.pc \
3955 MagickCore/version.h \
3956 Makefile \
3957 magick.sh \
3958 PerlMagick/check.sh \
3959 PerlMagick/default/Magick.pm \
3960 PerlMagick/Makefile.PL \
3961 PerlMagick/default/Makefile.PL \
3962 PerlMagick/quantum/Makefile.PL \
3963 PerlMagick/quantum/quantum.pm \
3964 PerlMagick/quantum/quantum.xs \
3965 PerlMagick/quantum/typemap \
3966 utilities/animate.1 \
3967 utilities/compare.1 \
3968 utilities/composite.1 \
3969 utilities/conjure.1 \
3970 utilities/convert.1 \
3971 utilities/display.1 \
3972 utilities/identify.1 \
3973 utilities/ImageMagick.1 \
3974 utilities/import.1 \
Cristy540ea6e2016-04-01 12:06:50 -04003975 utilities/magick.1 \
3976 utilities/magick-script.1 \
cristy9af1cbf2014-12-28 22:03:09 +00003977 utilities/mogrify.1 \
3978 utilities/montage.1 \
3979 utilities/stream.1 \
3980 MagickWand/MagickWand-config \
3981 MagickWand/MagickWand.pc ])
3982AC_OUTPUT
3983
3984# ==============================================================================
3985# ImageMagick Configuration
3986# ==============================================================================
3987AC_MSG_NOTICE([
3988==============================================================================
Cristy90ceb262019-09-11 13:22:38 -04003989${PACKAGE_NAME} ${PACKAGE_VERSION}${PACKAGE_VERSION_ADDENDUM} is configured as follows. Please verify that this
3990configuration matches your expectations.
cristy15308162015-01-09 23:43:12 +00003991
Cristy90ceb262019-09-11 13:22:38 -04003992Host system type: $host
3993Build system type: $build
cristy15308162015-01-09 23:43:12 +00003994
Cristy90ceb262019-09-11 13:22:38 -04003995 Option Value
3996------------------------------------------------------------------------------
3997Shared libraries --enable-shared=$enable_shared $libtool_build_shared_libs
3998Static libraries --enable-static=$enable_static $libtool_build_static_libs
3999Build utilities --with-utilities=$with_utilities $with_utilities
4000Module support --with-modules=$build_modules $build_modules
4001GNU ld --with-gnu-ld=$with_gnu_ld $lt_cv_prog_gnu_ld
4002Quantum depth --with-quantum-depth=$with_quantum_depth $with_quantum_depth
4003High Dynamic Range Imagery
4004 --enable-hdri=$enable_hdri $enable_hdri
cristy3ed852e2009-09-05 21:47:34 +00004005
Cristy90ceb262019-09-11 13:22:38 -04004006Install documentation: $wantdocs
cristy15308162015-01-09 23:43:12 +00004007
Cristy0b5b9682019-09-13 14:54:28 -04004008Memory allocation library:
Cristy90ceb262019-09-11 13:22:38 -04004009 JEMalloc --with-jemalloc=$with_jemalloc $have_jemalloc
4010 TCMalloc --with-tcmalloc=$with_tcmalloc $have_tcmalloc
4011 UMem --with-umem=$with_umem $have_umem
4012
Cristy0b5b9682019-09-13 14:54:28 -04004013Delegate library configuration:
cristy9af1cbf2014-12-28 22:03:09 +00004014 BZLIB --with-bzlib=$with_bzlib $have_bzlib
4015 Autotrace --with-autotrace=$with_autotrace $have_autotrace
4016 DJVU --with-djvu=$with_djvu $have_djvu
4017 DPS --with-dps=$with_dps $have_dps
4018 FFTW --with-fftw=$with_fftw $have_fftw
Cristy6d2f14b2016-04-26 01:41:09 -04004019 FLIF --with-flif=$with_flif $have_flif
cristy9af1cbf2014-12-28 22:03:09 +00004020 FlashPIX --with-fpx=$with_fpx $have_fpx
cristybc8ef1c2015-06-06 14:32:21 +00004021 FontConfig --with-fontconfig=$with_fontconfig $have_fontconfig
cristy9af1cbf2014-12-28 22:03:09 +00004022 FreeType --with-freetype=$with_freetype $have_freetype
4023 Ghostscript lib --with-gslib=$with_gslib $have_gslib
4024 Graphviz --with-gvc=$with_gvc $have_gvc
Cristyb02ab2d2018-05-26 05:43:54 -04004025 HEIC --with-heic=$with_heic $have_heic
cristy9af1cbf2014-12-28 22:03:09 +00004026 JBIG --with-jbig=$with_jbig $have_jbig
4027 JPEG v1 --with-jpeg=$with_jpeg $have_jpeg
Cristyb316fbb2019-10-05 10:51:15 -04004028 JPEG XL --with-jxl=$with_jxl $have_jxl
cristyd6ac47f2015-06-06 13:46:55 +00004029 LCMS --with-lcms=$with_lcms $have_lcms
cristy9af1cbf2014-12-28 22:03:09 +00004030 LQR --with-lqr=$with_lqr $have_lqr
4031 LTDL --with-ltdl=$with_ltdl $have_ltdl
4032 LZMA --with-lzma=$with_lzma $have_lzma
4033 Magick++ --with-magick-plus-plus=$with_magick_plus_plus $have_magick_plus_plus
4034 OpenEXR --with-openexr=$with_openexr $have_openexr
Cristy428ba722015-11-08 15:49:24 -05004035 OpenJP2 --with-openjp2=$with_openjp2 $have_openjp2
cristy9af1cbf2014-12-28 22:03:09 +00004036 PANGO --with-pango=$with_pango $have_pango
4037 PERL --with-perl=$with_perl $have_perl
4038 PNG --with-png=$with_png $have_png
Cristy5572ef62016-02-06 16:10:00 -05004039 RAQM --with-raqm=$with_raqm $have_raqm
Cristy0f781992018-10-17 07:16:24 -04004040 RAW --with-raw=$with_raw $have_raw
cristy9af1cbf2014-12-28 22:03:09 +00004041 RSVG --with-rsvg=$with_rsvg $have_rsvg
4042 TIFF --with-tiff=$with_tiff $have_tiff
4043 WEBP --with-webp=$with_webp $have_webp
4044 WMF --with-wmf=$with_wmf $have_wmf
4045 X11 --with-x=$with_x $have_x
4046 XML --with-xml=$with_xml $have_xml
4047 ZLIB --with-zlib=$with_zlib $have_zlib
Cristy08170e62018-10-14 10:33:46 -04004048 ZSTD --with-zstd=$with_zstd $have_zstd
cristy15308162015-01-09 23:43:12 +00004049
Cristy0b5b9682019-09-13 14:54:28 -04004050Delegate program configuration:
Cristy90ceb262019-09-11 13:22:38 -04004051 GhostPCL None $PCLDelegate ($PCLVersion)
4052 GhostXPS None $XPSDelegate ($XPSVersion)
4053 Ghostscript None $PSDelegate ($GSVersion)
cristy15308162015-01-09 23:43:12 +00004054
Cristy0b5b9682019-09-13 14:54:28 -04004055Font configuration:
cristy9af1cbf2014-12-28 22:03:09 +00004056 Apple fonts --with-apple-font-dir=$with_apple_font_dir $result_apple_font_dir
4057 Dejavu fonts --with-dejavu-font-dir=$with_dejavu_font_dir $result_dejavu_font_dir
Cristy90ceb262019-09-11 13:22:38 -04004058 Ghostscript fonts --with-gs-font-dir=$with_gs_font_dir $result_ghostscript_font_dir
4059 URW-base35 fonts --with-urw-base35-font-dir=$with_urw_base35_font_dir $result_urw_base35_font_dir
cristy9af1cbf2014-12-28 22:03:09 +00004060 Windows fonts --with-windows-font-dir=$with_windows_font_dir $result_windows_font_dir
cristy15308162015-01-09 23:43:12 +00004061
Cristy0b5b9682019-09-13 14:54:28 -04004062X11 configuration:
Cristy90ceb262019-09-11 13:22:38 -04004063 X_CFLAGS = $X_CFLAGS
4064 X_PRE_LIBS = $X_PRE_LIBS
4065 X_LIBS = $X_LIBS
4066 X_EXTRA_LIBS = $X_EXTRA_LIBS
cristy15308162015-01-09 23:43:12 +00004067
Cristy90ceb262019-09-11 13:22:38 -04004068Options used to compile and link:
4069 PREFIX = $PREFIX_DIR
4070 EXEC-PREFIX = $EXEC_PREFIX_DIR
4071 VERSION = $PACKAGE_VERSION
4072 CC = $CC
4073 CFLAGS = $CFLAGS
4074 CPPFLAGS = $CPPFLAGS
4075 PCFLAGS = $PCFLAGS
4076 DEFS = $DEFS
4077 LDFLAGS = $LDFLAGS
4078 LIBS = $MAGICK_DEP_LIBS
4079 CXX = $CXX
4080 CXXFLAGS = $CXXFLAGS
4081 FEATURES = $MAGICK_FEATURES
4082 DELEGATES = $MAGICK_DELEGATES
cristy9af1cbf2014-12-28 22:03:09 +00004083==============================================================================
cristy3ed852e2009-09-05 21:47:34 +00004084])