summaryrefslogtreecommitdiff
path: root/tiff/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'tiff/configure.ac')
-rwxr-xr-xtiff/configure.ac1035
1 files changed, 1035 insertions, 0 deletions
diff --git a/tiff/configure.ac b/tiff/configure.ac
new file mode 100755
index 0000000..c9e7658
--- /dev/null
+++ b/tiff/configure.ac
@@ -0,0 +1,1035 @@
+dnl -*- Autoconf -*-
+dnl Tag Image File Format (TIFF) Software
+dnl
+dnl Copyright (C) 2004, Andrey Kiselev <dron@ak4719.spb.edu>
+dnl
+dnl Permission to use, copy, modify, distribute, and sell this software and
+dnl its documentation for any purpose is hereby granted without fee, provided
+dnl that (i) the above copyright notices and this permission notice appear in
+dnl all copies of the software and related documentation, and (ii) the names of
+dnl Sam Leffler and Silicon Graphics may not be used in any advertising or
+dnl publicity relating to the software without the specific, prior written
+dnl permission of Sam Leffler and Silicon Graphics.
+dnl
+dnl THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
+dnl EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
+dnl WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+dnl
+dnl IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
+dnl ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
+dnl OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+dnl WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
+dnl LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
+dnl OF THIS SOFTWARE.
+
+dnl Process this file with autoconf to produce a configure script.
+
+AC_PREREQ(2.64)
+AC_INIT([LibTIFF Software],[4.0.4beta],[tiff@lists.maptools.org],[tiff])
+AC_CONFIG_AUX_DIR(config)
+AC_CONFIG_MACRO_DIR(m4)
+AC_LANG(C)
+
+dnl Compute the canonical host (run-time) system type variable
+AC_CANONICAL_HOST
+
+AM_INIT_AUTOMAKE
+dnl Do not rebuild generated files every time
+AM_MAINTAINER_MODE
+
+dnl Versioning.
+dnl Don't fill the ALPHA_VERSION field, if not applicable.
+LIBTIFF_MAJOR_VERSION=4
+LIBTIFF_MINOR_VERSION=0
+LIBTIFF_MICRO_VERSION=4
+LIBTIFF_ALPHA_VERSION=beta
+LIBTIFF_VERSION=$LIBTIFF_MAJOR_VERSION.$LIBTIFF_MINOR_VERSION.$LIBTIFF_MICRO_VERSION$LIBTIFF_ALPHA_VERSION
+dnl This will be used with the 'make release' target
+LIBTIFF_RELEASE_DATE=`date +"%Y%m%d"`
+
+dnl Libtool library revision control info
+dnl See the libtool documentation under the heading "Libtool's versioning
+dnl system" in order to understand the meaning of these fields
+dnl
+dnl current
+dnl The most recent interface number that this library implements.
+dnl revision
+dnl The implementation number of the current interface.
+dnl age
+dnl The difference between the newest and oldest interfaces that
+dnl this library implements. In other words, the library implements
+dnl all the interface numbers in the range from number current -
+dnl age to current.
+dnl
+dnl Here are a set of rules to help you update your library version
+dnl information:
+dnl
+dnl 1. Start with version information of `0:0:0' for each libtool library.
+dnl 2. Update the version information only immediately before a public
+dnl release of your software. More frequent updates are unnecessary, and
+dnl only guarantee that the current interface number gets larger faster.
+dnl 3. If the library source code has changed at all since the last update,
+dnl then increment revision (`c:r:a' becomes `c:r+1:a').
+dnl 4. If any interfaces have been added, removed, or changed since the last
+dnl update, increment current, and set revision to 0.
+dnl 5. If any interfaces have been added since the last public release, then
+dnl increment age.
+dnl 6. If any interfaces have been removed since the last public release,
+dnl then set age to 0.
+LIBTIFF_CURRENT=7
+LIBTIFF_REVISION=1
+LIBTIFF_AGE=2
+LIBTIFF_VERSION_INFO=$LIBTIFF_CURRENT:$LIBTIFF_REVISION:$LIBTIFF_AGE
+
+# This is a special hack for OpenBSD and MirOS systems. The dynamic linker
+# in OpenBSD uses some special semantics for shared libraries. Their soname
+# contains only two numbers, major and minor.
+# See http://bugzilla.remotesensing.org/show_bug.cgi?id=838 for details.
+#case "$host_os" in
+# openbsd* | mirbsd*)
+# LIBTIFF_VERSION_INFO=$LIBTIFF_MAJOR_VERSION$LIBTIFF_MINOR_VERSION:$LIBTIFF_MICRO_VERSION:0
+# ;;
+# *)
+# LIBTIFF_VERSION_INFO=$LIBTIFF_MAJOR_VERSION:$LIBTIFF_MINOR_VERSION:$LIBTIFF_MICRO_VERSION
+# ;;
+#esac
+
+AC_SUBST(LIBTIFF_MAJOR_VERSION)
+AC_SUBST(LIBTIFF_MINOR_VERSION)
+AC_SUBST(LIBTIFF_MICRO_VERSION)
+AC_SUBST(LIBTIFF_ALPHA_VERSION)
+AC_SUBST(LIBTIFF_VERSION)
+AC_SUBST(LIBTIFF_VERSION_INFO)
+AC_SUBST(LIBTIFF_RELEASE_DATE)
+
+dnl Checks for programs.
+AC_PROG_CC
+AM_PROG_CC_C_O
+
+dnl We want warnings. As many warnings as possible.
+VL_PROG_CC_WARNINGS()
+
+AC_PROG_INSTALL
+AC_PROG_LN_S
+
+
+# Check if LD supports linker scripts, and define automake conditional
+# HAVE_LD_VERSION_SCRIPT if so. This functionality is currently
+# constrained to compilers using GNU ld on ELF systems or systems
+# which provide an adequate emulation thereof.
+AC_ARG_ENABLE([ld-version-script],
+ AS_HELP_STRING([--enable-ld-version-script],
+ [enable linker version script (default is disabled)]),
+ [have_ld_version_script=$enableval], [have_ld_version_script=no])
+if test "$have_ld_version_script" != no; then
+ AC_MSG_CHECKING([if LD -Wl,--version-script works])
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
+ cat > conftest.map <<EOF
+VERS_1 {
+ global: sym;
+};
+
+VERS_2 {
+ global: sym;
+} VERS_1;
+EOF
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
+ [have_ld_version_script=yes], [have_ld_version_script=no])
+ rm -f conftest.map
+ LDFLAGS="$save_LDFLAGS"
+ AC_MSG_RESULT($have_ld_version_script)
+fi
+AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes")
+
+
+dnl Tests for Windows
+AC_EXEEXT
+AC_OBJEXT
+
+dnl initialize libtool
+LT_INIT([win32-dll])
+LT_LANG([C++])
+
+# Enable support for silent build rules
+AM_SILENT_RULES
+
+tiff_libs_private=
+AC_SUBST(tiff_libs_private)
+
+dnl We don't need to add math library to all targets
+case "${host_os}" in
+ cygwin* | mingw32* | beos* | darwin*)
+ ;;
+ *)
+ AC_CHECK_LIB(m,sin,[libm_lib=yes], [libm_lib=no],)
+ if test "x$libm_lib" = "xyes" ; then
+ LIBS="-lm $LIBS"
+ tiff_libs_private="-lm ${tiff_libs_private}"
+ fi
+ ;;
+esac
+
+dnl Checks for header files.
+AC_CHECK_HEADERS([assert.h fcntl.h io.h limits.h malloc.h search.h sys/time.h unistd.h])
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+AC_C_INLINE
+AC_C_BIGENDIAN
+AC_TYPE_OFF_T
+AC_TYPE_SIZE_T
+AC_HEADER_TIME
+AC_STRUCT_TM
+
+dnl ---------------------------------------------------------------------------
+dnl Compute sized types for current CPU and compiler options
+dnl ---------------------------------------------------------------------------
+
+# Obtain size of an 'signed short' and define as SIZEOF_SIGNED_SHORT
+AC_CHECK_SIZEOF(signed short)
+
+# Obtain size of an 'unsigned short' and define as SIZEOF_UNSIGNED_SHORT
+AC_CHECK_SIZEOF(unsigned short)
+
+# Obtain size of an 'signed int' and define as SIZEOF_SIGNED_INT
+AC_CHECK_SIZEOF(signed int)
+
+# Obtain size of an 'unsigned int' and define as SIZEOF_UNSIGNED_INT
+AC_CHECK_SIZEOF(unsigned int)
+
+# Obtain size of a 'signed long' and define as SIZEOF_SIGNED_LONG
+AC_CHECK_SIZEOF(signed long)
+
+# Obtain size of a 'unsigned long' and define as SIZEOF_UNSIGNED_LONG
+AC_CHECK_SIZEOF(unsigned long)
+
+# Obtain size of a 'long long' and define as SIZEOF_SIGNED_LONG_LONG.
+# If 'long long' is not supported then the value defined is zero.
+AC_CHECK_SIZEOF(signed long long)
+
+# Obtain size of a 'unsigned long long' and define as
+# SIZEOF_UNSIGNED_LONG_LONG. If 'unsigned long long' is not
+# supported then the value defined is zero.
+AC_CHECK_SIZEOF(unsigned long long)
+
+# Obtain the size of an 'unsigned char *' and define as
+# SIZEOF_UNSIGNED_CHAR_P. Result is available in
+# ac_cv_sizeof_unsigned_char_p.
+AC_CHECK_SIZEOF(unsigned char *)
+
+AC_MSG_CHECKING(for signed 8-bit type)
+INT8_T='signed char'
+AC_MSG_RESULT($INT8_T)
+AC_DEFINE_UNQUOTED(TIFF_INT8_T,$INT8_T,[Signed 8-bit type])
+
+AC_MSG_CHECKING(for unsigned 8-bit type)
+UINT8_T='unsigned char'
+AC_MSG_RESULT($UINT8_T)
+AC_DEFINE_UNQUOTED(TIFF_UINT8_T,$UINT8_T,[Unsigned 8-bit type])
+
+AC_MSG_CHECKING(for signed 16-bit type)
+INT16_T='signed short'
+AC_MSG_RESULT($INT16_T)
+AC_DEFINE_UNQUOTED(TIFF_INT16_T,$INT16_T,[Signed 16-bit type])
+
+
+AC_MSG_CHECKING(for unsigned 16-bit type)
+UINT16_T='unsigned short'
+AC_MSG_RESULT($UINT16_T)
+AC_DEFINE_UNQUOTED(TIFF_UINT16_T,$UINT16_T,[Unsigned 16-bit type])
+
+AC_MSG_CHECKING(for signed 32-bit type)
+INT32_T='none'
+INT32_FORMAT='none'
+if test $ac_cv_sizeof_signed_int -eq 4
+then
+ INT32_T='signed int'
+ INT32_FORMAT='"%d"'
+elif test $ac_cv_sizeof_signed_long -eq 4
+then
+ INT32_T='signed long'
+ INT32_FORMAT='"%ld"'
+fi
+AC_MSG_RESULT($INT32_T)
+AC_DEFINE_UNQUOTED(TIFF_INT32_T,$INT32_T,[Signed 32-bit type])
+AC_DEFINE_UNQUOTED(TIFF_INT32_FORMAT,$INT32_FORMAT,[Signed 32-bit type formatter])
+
+AC_MSG_CHECKING(for unsigned 32-bit type)
+UINT32_T='none'
+UINT32_FORMAT='none'
+if test $ac_cv_sizeof_unsigned_int -eq 4
+then
+ UINT32_T='unsigned int'
+ UINT32_FORMAT='"%u"'
+elif test $ac_cv_sizeof_unsigned_long -eq 4
+then
+ UINT32_T='unsigned long'
+ UINT32_FORMAT='"%lu"'
+fi
+AC_MSG_RESULT($UINT32_T)
+AC_DEFINE_UNQUOTED(TIFF_UINT32_T,$UINT32_T,[Unsigned 32-bit type])
+AC_DEFINE_UNQUOTED(TIFF_UINT32_FORMAT,$UINT32_FORMAT,[Unsigned 32-bit type formatter])
+
+AC_MSG_CHECKING(for signed 64-bit type)
+INT64_T='none'
+INT64_FORMAT='none'
+if test $ac_cv_sizeof_signed_long -eq 8
+then
+ INT64_T='signed long'
+ INT64_FORMAT='"%ld"'
+elif test $ac_cv_sizeof_signed_long_long -eq 8
+then
+ INT64_T='signed long long'
+ case "${host_os}" in
+ mingw32*)
+ # MinGW32 understands 'long long', but uses printf from WIN32 CRT
+ INT64_FORMAT='"%I64d"'
+ ;;
+ *)
+ INT64_FORMAT='"%lld"'
+ ;;
+ esac
+fi
+
+
+AC_MSG_RESULT($INT64_T)
+AC_DEFINE_UNQUOTED(TIFF_INT64_T,$INT64_T,[Signed 64-bit type])
+AC_DEFINE_UNQUOTED(TIFF_INT64_FORMAT,$INT64_FORMAT,[Signed 64-bit type formatter])
+
+AC_MSG_CHECKING(for unsigned 64-bit type)
+UINT64_T='none'
+UINT64_FORMAT='none'
+if test $ac_cv_sizeof_unsigned_long -eq 8
+then
+ UINT64_T='unsigned long'
+ UINT64_FORMAT='"%lu"'
+elif test $ac_cv_sizeof_unsigned_long_long -eq 8
+then
+ UINT64_T='unsigned long long'
+ case "${host_os}" in
+ mingw32*)
+ # MinGW32 understands 'unsigned long long', but uses printf from WIN32 CRT
+ UINT64_FORMAT='"%I64u"'
+ ;;
+ *)
+ UINT64_FORMAT='"%llu"'
+ ;;
+ esac
+fi
+AC_MSG_RESULT($UINT64_T)
+AC_DEFINE_UNQUOTED(TIFF_UINT64_T,$UINT64_T,[Unsigned 64-bit type])
+AC_DEFINE_UNQUOTED(TIFF_UINT64_FORMAT,$UINT64_FORMAT,[Unsigned 64-bit type formatter])
+
+# Determine TIFF equivalent of ssize_t
+AC_MSG_CHECKING(for signed size type)
+SSIZE_T='unknown'
+SSIZE_FORMAT='unknown'
+if test $ac_cv_sizeof_signed_long -eq $ac_cv_sizeof_unsigned_char_p
+then
+ SSIZE_T='signed long'
+ SSIZE_FORMAT='"%ld"'
+elif test $ac_cv_sizeof_signed_long_long -eq $ac_cv_sizeof_unsigned_char_p
+then
+ SSIZE_T='signed long long'
+ SSIZE_FORMAT='"%lld"'
+fi
+AC_MSG_RESULT($SSIZE_T)
+AC_DEFINE_UNQUOTED(TIFF_SSIZE_T,$SSIZE_T,[Signed size type])
+AC_DEFINE_UNQUOTED(TIFF_SSIZE_FORMAT,$SSIZE_FORMAT,[Signed size type formatter])
+
+# Determine the type to use for the difference between two pointers.
+# We will default to the POSIX ptrdiff_t if it is available, but will
+# be prepared for the case when it is not.
+PTRDIFF_T='unknown'
+PTRDIFF_FORMAT='"%ld"'
+AC_CHECK_TYPE(ptrdiff_t,[PTRDIFF_T=ptrdiff_t])
+if test $PTRDIFF_T = unknown
+then
+ PTRDIFF_T=$SSIZE_T
+ PTRDIFF_FORMAT=$SSIZE_FORMAT
+fi
+AC_MSG_CHECKING(for pointer difference type)
+AC_MSG_RESULT($PTRDIFF_T)
+AC_DEFINE_UNQUOTED(TIFF_PTRDIFF_T,$PTRDIFF_T,[Pointer difference type])
+AC_DEFINE_UNQUOTED(TIFF_PTRDIFF_FORMAT,$PTRDIFF_FORMAT,[Pointer difference type formatter])
+
+dnl Some compilers (IBM VisualAge) has these types defined, so check it here:
+AC_CHECK_TYPES([int8, int16, int32],,,
+[
+#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#endif
+])
+
+dnl Checks for library functions.
+AC_CHECK_FUNCS([floor isascii memmove memset mmap pow setmode sqrt strchr strrchr strstr strtol strtoull])
+
+dnl Will use local replacements for unavailable functions
+AC_REPLACE_FUNCS(getopt)
+AC_REPLACE_FUNCS(strcasecmp)
+AC_REPLACE_FUNCS(strtoul)
+AC_REPLACE_FUNCS(strtoull)
+AC_REPLACE_FUNCS(lfind)
+
+dnl ---------------------------------------------------------------------------
+dnl Check the native cpu bit order.
+dnl ---------------------------------------------------------------------------
+AC_MSG_CHECKING([native cpu bit order])
+case "$host_cpu" in
+ i*86*|x86_64*)
+ HOST_FILLORDER=FILLORDER_LSB2MSB
+ AC_MSG_RESULT([lsb2msb])
+ ;;
+ *)
+ HOST_FILLORDER=FILLORDER_MSB2LSB
+ AC_MSG_RESULT([msb2lsb])
+ ;;
+esac
+AC_DEFINE_UNQUOTED(HOST_FILLORDER, $HOST_FILLORDER, [Set the native cpu bit order (FILLORDER_LSB2MSB or FILLORDER_MSB2LSB)])
+
+dnl ---------------------------------------------------------------------------
+dnl Configure legacy tifconf.h HOST_BIGENDIAN.
+dnl ---------------------------------------------------------------------------
+if test "$ac_cv_c_bigendian" = yes ; then
+ HOST_BIGENDIAN=1
+else
+ HOST_BIGENDIAN=0
+fi
+AC_DEFINE_UNQUOTED(HOST_BIGENDIAN,$HOST_BIGENDIAN,[Native cpu byte order: 1 if big-endian (Motorola) or 0 if little-endian (Intel)])
+
+dnl ---------------------------------------------------------------------------
+dnl Make the POSIX.2 features available.
+dnl ---------------------------------------------------------------------------
+#_POSIX_C_SOURCE=2
+#AC_DEFINE_UNQUOTED(_POSIX_C_SOURCE, $_POSIX_C_SOURCE, [Define this macro to a positive integer to control which POSIX functionality is made available.])
+
+dnl ---------------------------------------------------------------------------
+dnl Set the floating point format.
+dnl FIXME: write appropriate test.
+dnl ---------------------------------------------------------------------------
+HAVE_IEEEFP=1
+AC_DEFINE_UNQUOTED(HAVE_IEEEFP, $HAVE_IEEEFP, [Define as 0 or 1 according to the floating point format suported by the machine])
+
+dnl ---------------------------------------------------------------------------
+dnl Enable run-time paths to libraries usage.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(rpath,
+ AS_HELP_STRING([--enable-rpath],
+ [Enable runtime linker paths (-R libtool option)]),
+ [HAVE_RPATH=$enableval], [HAVE_RPATH=no])
+AM_CONDITIONAL(HAVE_RPATH, test "$HAVE_RPATH" = "yes")
+
+dnl ---------------------------------------------------------------------------
+dnl Support large files.
+dnl ---------------------------------------------------------------------------
+
+AC_SYS_LARGEFILE
+
+dnl ---------------------------------------------------------------------------
+dnl Point to path where we should install documentation.
+dnl ---------------------------------------------------------------------------
+
+LIBTIFF_DOCDIR=\${prefix}/share/doc/${PACKAGE}-${LIBTIFF_VERSION}
+
+AC_ARG_WITH(docdir,
+ AS_HELP_STRING([--with-docdir=DIR],
+ [directory where documentation should be installed]),,)
+if test "x$with_docdir" != "x" ; then
+ LIBTIFF_DOCDIR=$with_docdir
+fi
+
+AC_SUBST(LIBTIFF_DOCDIR)
+
+dnl ---------------------------------------------------------------------------
+dnl Switch on/off internal codecs.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(ccitt,
+ AS_HELP_STRING([--disable-ccitt],
+ [disable support for CCITT Group 3 & 4 algorithms]),
+ [HAVE_CCITT=$enableval], [HAVE_CCITT=yes])
+
+if test "$HAVE_CCITT" = "yes" ; then
+ AC_DEFINE(CCITT_SUPPORT,1,[Support CCITT Group 3 & 4 algorithms])
+fi
+
+AC_ARG_ENABLE(packbits,
+ AS_HELP_STRING([--disable-packbits],
+ [disable support for Macintosh PackBits algorithm]),
+ [HAVE_PACKBITS=$enableval], [HAVE_PACKBITS=yes])
+
+if test "$HAVE_PACKBITS" = "yes" ; then
+ AC_DEFINE(PACKBITS_SUPPORT,1,[Support Macintosh PackBits algorithm])
+fi
+
+AC_ARG_ENABLE(lzw,
+ AS_HELP_STRING([--disable-lzw],
+ [disable support for LZW algorithm]),
+ [HAVE_LZW=$enableval], [HAVE_LZW=yes])
+
+if test "$HAVE_LZW" = "yes" ; then
+ AC_DEFINE(LZW_SUPPORT,1,[Support LZW algorithm])
+fi
+
+AC_ARG_ENABLE(thunder,
+ AS_HELP_STRING([--disable-thunder],
+ [disable support for ThunderScan 4-bit RLE algorithm]),
+ [HAVE_THUNDER=$enableval], [HAVE_THUNDER=yes])
+
+if test "$HAVE_THUNDER" = "yes" ; then
+ AC_DEFINE(THUNDER_SUPPORT,1,[Support ThunderScan 4-bit RLE algorithm])
+fi
+
+HAVE_NEXT=yes
+
+AC_ARG_ENABLE(next,
+ AS_HELP_STRING([--disable-next],
+ [disable support for NeXT 2-bit RLE algorithm]),
+ [HAVE_NEXT=$enableval], [HAVE_NEXT=yes])
+
+if test "$HAVE_NEXT" = "yes" ; then
+ AC_DEFINE(NEXT_SUPPORT,1,[Support NeXT 2-bit RLE algorithm])
+fi
+
+AC_ARG_ENABLE(logluv,
+ AS_HELP_STRING([--disable-logluv],
+ [disable support for LogLuv high dynamic range encoding]),
+ [HAVE_LOGLUV=$enableval], [HAVE_LOGLUV=yes])
+
+if test "$HAVE_LOGLUV" = "yes" ; then
+ AC_DEFINE(LOGLUV_SUPPORT,1,[Support LogLuv high dynamic range encoding])
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Switch on/off support for Microsoft Document Imaging
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(mdi,
+ AS_HELP_STRING([--disable-mdi],
+ [disable support for Microsoft Document Imaging]),
+ [HAVE_MDI=$enableval], [HAVE_MDI=yes])
+
+if test "$HAVE_MDI" = "yes" ; then
+ AC_DEFINE(MDI_SUPPORT,1,[Support Microsoft Document Imaging format])
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for ZLIB.
+dnl ---------------------------------------------------------------------------
+
+HAVE_ZLIB=no
+
+AC_ARG_ENABLE(zlib,
+ AS_HELP_STRING([--disable-zlib],
+ [disable Zlib usage (required for Deflate compression, enabled by default)]),,)
+AC_ARG_WITH(zlib-include-dir,
+ AS_HELP_STRING([--with-zlib-include-dir=DIR],
+ [location of Zlib headers]),,)
+AC_ARG_WITH(zlib-lib-dir,
+ AS_HELP_STRING([--with-zlib-lib-dir=DIR],
+ [location of Zlib library binary]),,)
+
+if test "x$enable_zlib" != "xno" ; then
+
+ if test "x$with_zlib_lib_dir" != "x" ; then
+ LDFLAGS="-L$with_zlib_lib_dir $LDFLAGS"
+ fi
+
+ AC_CHECK_LIB(z, inflateEnd, [zlib_lib=yes], [zlib_lib=no],)
+ if test "$zlib_lib" = "no" -a "x$with_zlib_lib_dir" != "x"; then
+ AC_MSG_ERROR([Zlib library not found at $with_zlib_lib_dir])
+ fi
+
+ if test "x$with_zlib_include_dir" != "x" ; then
+ CPPFLAGS="-I$with_zlib_include_dir $CPPFLAGS"
+ fi
+ AC_CHECK_HEADER(zlib.h, [zlib_h=yes], [zlib_h=no])
+ if test "$zlib_h" = "no" -a "x$with_zlib_include_dir" != "x" ; then
+ AC_MSG_ERROR([Zlib headers not found at $with_zlib_include_dir])
+ fi
+
+ if test "$zlib_lib" = "yes" -a "$zlib_h" = "yes" ; then
+ HAVE_ZLIB=yes
+ fi
+
+fi
+
+if test "$HAVE_ZLIB" = "yes" ; then
+ AC_DEFINE(ZIP_SUPPORT,1,[Support Deflate compression])
+ LIBS="-lz $LIBS"
+ tiff_libs_private="-lz ${tiff_libs_private}"
+
+ if test "$HAVE_RPATH" = "yes" -a "x$with_zlib_lib_dir" != "x" ; then
+ LIBDIR="-R $with_zlib_lib_dir $LIBDIR"
+ fi
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for Pixar log-format algorithm.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(pixarlog,
+ AS_HELP_STRING([--disable-pixarlog],
+ [disable support for Pixar log-format algorithm (requires Zlib)]),
+ [HAVE_PIXARLOG=$enableval], [HAVE_PIXARLOG=yes])
+
+if test "$HAVE_ZLIB" = "yes" -a "$HAVE_PIXARLOG" = "yes" ; then
+ AC_DEFINE(PIXARLOG_SUPPORT, 1,
+ [Support Pixar log-format algorithm (requires Zlib)])
+else
+ HAVE_PIXARLOG=no
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for JPEG.
+dnl ---------------------------------------------------------------------------
+
+HAVE_JPEG=no
+
+AC_ARG_ENABLE(jpeg,
+ AS_HELP_STRING([--disable-jpeg],
+ [disable IJG JPEG library usage (required for JPEG compression, enabled by default)]),,)
+AC_ARG_WITH(jpeg-include-dir,
+ AS_HELP_STRING([--with-jpeg-include-dir=DIR],
+ [location of IJG JPEG library headers]),,)
+AC_ARG_WITH(jpeg-lib-dir,
+ AS_HELP_STRING([--with-jpeg-lib-dir=DIR],
+ [location of IJG JPEG library binary]),,)
+
+if test "x$enable_jpeg" != "xno" ; then
+
+ if test "x$with_jpeg_lib_dir" != "x" ; then
+ LDFLAGS="-L$with_jpeg_lib_dir $LDFLAGS"
+
+ fi
+
+ AC_CHECK_LIB(jpeg, jpeg_read_scanlines, [jpeg_lib=yes], [jpeg_lib=no],)
+ if test "$jpeg_lib" = "no" -a "x$with_jpeg_lib_dir" != "x" ; then
+ AC_MSG_ERROR([IJG JPEG library not found at $with_jpeg_lib_dir])
+ fi
+
+ if test "x$with_jpeg_include_dir" != "x" ; then
+ CPPFLAGS="-I$with_jpeg_include_dir $CPPFLAGS"
+ fi
+ AC_CHECK_HEADER(jpeglib.h, [jpeg_h=yes], [jpeg_h=no])
+ if test "$jpeg_h" = "no" -a "x$with_jpeg_include_dir" != "x" ; then
+ AC_MSG_ERROR([IJG JPEG library headers not found at $with_jpeg_include_dir])
+ fi
+
+ if test "$jpeg_lib" = "yes" -a "$jpeg_h" = "yes" ; then
+ HAVE_JPEG=yes
+ fi
+
+fi
+
+if test "$HAVE_JPEG" = "yes" ; then
+ AC_DEFINE(JPEG_SUPPORT,1,[Support JPEG compression (requires IJG JPEG library)])
+ LIBS="-ljpeg $LIBS"
+ tiff_libs_private="-ljpeg ${tiff_libs_private}"
+
+ if test "$HAVE_RPATH" = "yes" -a "x$with_jpeg_lib_dir" != "x" ; then
+ LIBDIR="-R $with_jpeg_lib_dir $LIBDIR"
+ fi
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for Old JPEG.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(old-jpeg,
+ AS_HELP_STRING([--disable-old-jpeg],
+ [disable support for Old JPEG compresson (read-only, enabled by default)]),
+ [HAVE_OJPEG=${enableval}], [HAVE_OJPEG=yes])
+
+if test "$HAVE_JPEG" = "yes" -a "$HAVE_OJPEG" = "yes" ; then
+ AC_DEFINE(OJPEG_SUPPORT, 1,
+ [Support Old JPEG compresson (read-only)])
+else
+ HAVE_OJPEG=no
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for JBIG-KIT.
+dnl ---------------------------------------------------------------------------
+
+HAVE_JBIG=no
+
+AC_ARG_ENABLE(jbig,
+ AS_HELP_STRING([--disable-jbig],
+ [disable JBIG-KIT usage (required for ISO JBIG compression, enabled by default)]),,)
+AC_ARG_WITH(jbig-include-dir,
+ AS_HELP_STRING([--with-jbig-include-dir=DIR],
+ [location of JBIG-KIT headers]),,)
+AC_ARG_WITH(jbig-lib-dir,
+ AS_HELP_STRING([--with-jbig-lib-dir=DIR],
+ [location of JBIG-KIT library binary]),,)
+
+if test "x$enable_jbig" != "xno" ; then
+
+ if test "x$with_jbig_lib_dir" != "x" ; then
+ LDFLAGS="-L$with_jbig_lib_dir $LDFLAGS"
+
+ fi
+
+ AC_CHECK_LIB(jbig, jbg_dec_init, [jbig_lib=yes], [jbig_lib=no],)
+ if test "$jbig_lib" = "no" -a "x$with_jbig_lib_dir" != "x" ; then
+ AC_MSG_ERROR([JBIG-KIT library not found at $with_jbig_lib_dir])
+ fi
+
+ if test "x$with_jbig_include_dir" != "x" ; then
+ CPPFLAGS="-I$with_jbig_include_dir $CPPFLAGS"
+ fi
+ AC_CHECK_HEADER(jbig.h, [jbig_h=yes], [jbig_h=no])
+ if test "$jbig_h" = "no" -a "x$with_jbig_include_dir" != "x" ; then
+ AC_MSG_ERROR([JBIG-KIT library headers not found at $with_jbig_include_dir])
+ fi
+
+ if test "$jbig_lib" = "yes" -a "$jbig_h" = "yes" ; then
+ HAVE_JBIG=yes
+ fi
+
+fi
+
+if test "$HAVE_JBIG" = "yes" ; then
+ AC_DEFINE(JBIG_SUPPORT,1,[Support ISO JBIG compression (requires JBIG-KIT library)])
+ LIBS="-ljbig $LIBS"
+ tiff_libs_private="-ljbig ${tiff_libs_private}"
+
+ if test "$HAVE_RPATH" = "yes" -a "x$with_jbig_lib_dir" != "x" ; then
+ LIBDIR="-R $with_jbig_lib_dir $LIBDIR"
+ fi
+
+ # Older versions of jbigkit lack jbg_newlen
+ AC_CHECK_FUNCS([jbg_newlen])
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for liblzma2.
+dnl ---------------------------------------------------------------------------
+
+HAVE_LZMA=no
+
+AC_ARG_ENABLE(lzma,
+ AS_HELP_STRING([--disable-lzma],
+ [disable liblzma usage (required for LZMA2 compression, enabled by default)]),,)
+AC_ARG_WITH(lzma-include-dir,
+ AS_HELP_STRING([--with-lzma-include-dir=DIR],
+ [location of liblzma headers]),,)
+AC_ARG_WITH(lzma-lib-dir,
+ AS_HELP_STRING([--with-lzma-lib-dir=DIR],
+ [location of liblzma library binary]),,)
+
+if test "x$enable_lzma" != "xno" ; then
+
+ if test "x$with_lzma_lib_dir" != "x" ; then
+ LDFLAGS="-L$with_lzma_lib_dir $LDFLAGS"
+ fi
+
+ AC_CHECK_LIB(lzma, lzma_code, [lzma_lib=yes], [lzma_lib=no],)
+ if test "$lzma_lib" = "no" -a "x$with_lzma_lib_dir" != "x"; then
+ AC_MSG_ERROR([lzma library not found at $with_lzma_lib_dir])
+ fi
+
+ if test "x$with_lzma_include_dir" != "x" ; then
+ CPPFLAGS="-I$with_lzma_include_dir $CPPFLAGS"
+ fi
+ AC_CHECK_HEADER(lzma.h, [lzma_h=yes], [lzma_h=no])
+ if test "$lzma_h" = "no" -a "x$with_lzma_include_dir" != "x" ; then
+ AC_MSG_ERROR([Liblzma headers not found at $with_lzma_include_dir])
+ fi
+
+ if test "$lzma_lib" = "yes" -a "$lzma_h" = "yes" ; then
+ HAVE_LZMA=yes
+ fi
+
+fi
+
+if test "$HAVE_LZMA" = "yes" ; then
+ AC_DEFINE(LZMA_SUPPORT,1,[Support LZMA2 compression])
+ LIBS="-llzma $LIBS"
+ tiff_libs_private="-llzma ${tiff_libs_private}"
+
+ if test "$HAVE_RPATH" = "yes" -a "x$with_lzma_lib_dir" != "x" ; then
+ LIBDIR="-R $with_lzma_lib_dir $LIBDIR"
+ fi
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Should 8/12 bit jpeg mode be enabled?
+dnl ---------------------------------------------------------------------------
+
+HAVE_JPEG12=no
+
+AC_ARG_ENABLE(jpeg12,
+ AS_HELP_STRING([--enable-jpeg12],
+ [enable libjpeg 8/12bit dual mode]),,)
+AC_ARG_WITH(jpeg12-include-dir,
+ AS_HELP_STRING([--with-jpeg12-include-dir=DIR],
+ [location of libjpeg 12bit headers]),,)
+AC_ARG_WITH(jpeg12-lib,
+ AS_HELP_STRING([--with-jpeg12-lib=LIBRARY],
+ [path to libjpeg 12bit library]),,)
+
+if test "x$enable_jpeg12" == "xyes" ; then
+
+ if test "x$with_jpeg12_lib" != "x" ; then
+ LIBS="$with_jpeg12_lib $LIBS"
+ fi
+
+ HAVE_JPEG12=yes
+
+ AC_DEFINE(JPEG_DUAL_MODE_8_12,1,[8/12 bit libjpeg dual mode enabled])
+ if test "x$with_jpeg12_include_dir" != "x" ; then
+ AC_DEFINE_UNQUOTED(LIBJPEG_12_PATH,"$with_jpeg12_include_dir/jpeglib.h",[12bit libjpeg primary include file with path])
+ fi
+fi
+
+
+dnl ---------------------------------------------------------------------------
+dnl Check for C++.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(cxx,
+ AS_HELP_STRING([--enable-cxx],
+ [enable C++ stream API building (requires C++ compiler)]),
+ [HAVE_CXX=$enableval], [HAVE_CXX=yes])
+
+if test "$HAVE_CXX" = "yes" ; then
+ AC_DEFINE(CXX_SUPPORT, 1, [Support C++ stream API (requires C++ compiler)])
+else
+ HAVE_CXX=no
+fi
+
+AM_CONDITIONAL(HAVE_CXX, test "$HAVE_CXX" = "yes")
+
+dnl ---------------------------------------------------------------------------
+dnl Check for OpenGL and GLUT.
+dnl ---------------------------------------------------------------------------
+
+HAVE_OPENGL=no
+
+
+AC_PATH_XTRA
+
+dnl AX_CHECK_GL sets GL_CFLAGS & GL_LIBS. Also PTHREAD_LIBS,
+dnl PTHREAD_CFLAGS, & PTHREAD_CC as a side-effect
+AX_CHECK_GL
+
+dnl AX_CHECK_GLU sets GLU_CFLAGS & GLU_LIBS
+AX_CHECK_GLU
+
+dnl AX_CHECK_GLUT sets GLUT_CFLAGS & GLUT_LIBS
+AX_CHECK_GLUT
+
+if test "$no_x" != "yes" -a "$no_gl" != "yes" \
+ -a "$no_glu" != "yes" -a "$no_glut" != "yes" ; then
+ HAVE_OPENGL=yes
+fi
+
+AM_CONDITIONAL(HAVE_OPENGL, test "$HAVE_OPENGL" = "yes")
+
+dnl ---------------------------------------------------------------------------
+dnl Check for Win32 IO: make sure we have windows.h but not cygwin
+dnl this must be after the ogl test, since that looks for windows.h and we
+dnl test it
+dnl ---------------------------------------------------------------------------
+
+win32_io_ok=no
+case "${host_os}" in
+ cygwin*)
+ ;;
+ *)
+ if test x"$ac_cv_header_windows_h" = xyes; then
+ win32_io_ok=yes
+ AC_DEFINE(USE_WIN32_FILEIO,1,[define to use win32 IO system])
+ fi
+ ;;
+esac
+AM_CONDITIONAL([WIN32_IO], [test "$win32_io_ok" = yes])
+
+dnl ---------------------------------------------------------------------------
+dnl Check for X Athena Widgets
+dnl ---------------------------------------------------------------------------
+
+dnl HAVE_XAW=no
+
+dnl ICE_FIND_ATHENA
+
+dnl if test "$no_xaw" != "yes" ; then
+dnl HAVE_XAW=yes
+dnl fi
+
+dnl AM_CONDITIONAL(HAVE_XAW, test "$HAVE_XAW" = "yes")
+
+dnl ===========================================================================
+dnl ``Orthogonal Features''
+dnl ===========================================================================
+
+dnl ---------------------------------------------------------------------------
+dnl Default handling of strip chopping support.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(strip-chopping,
+ AS_HELP_STRING([--disable-strip-chopping],
+ [disable support for strip chopping (whether or not to convert single-strip uncompressed images to mutiple strips of specified size to reduce memory usage)]),
+ [HAVE_STRIPCHOP=$enableval], [HAVE_STRIPCHOP=yes])
+AC_ARG_WITH(default-strip-size,
+ AS_HELP_STRING([--with-default-strip-size=SIZE],
+ [default size of the strip in bytes (when strip chopping enabled) [[default=8192]]]),,)
+
+if test "$HAVE_STRIPCHOP" = "yes" \
+ -a "x$with_default_strip_size" != "xno"; then
+ AC_DEFINE(STRIPCHOP_DEFAULT,TIFF_STRIPCHOP,[Support strip chopping (whether or not to convert single-strip uncompressed images to mutiple strips of specified size to reduce memory usage)])
+
+ if test "x$with_default_strip_size" = "x" \
+ -o "x$with_default_strip_size" = "xyes"; then
+ with_default_strip_size="8192"
+ fi
+
+ AC_DEFINE_UNQUOTED(STRIP_SIZE_DEFAULT,$with_default_strip_size,[Default size of the strip in bytes (when strip chopping enabled)])
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Should we try to defer loading of strip/tile offsets and sizes to
+dnl optimize directory scanning? These is an experimental feature for
+dnl libtiff 4.0.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(defer-strile-load,
+ AS_HELP_STRING([--enable-defer-strile-load],
+ [enable deferred strip/tile offset/size loading (experimental)]),
+ [HAVE_DEFER_STRILE_LOAD=$enableval], [HAVE_DEFER_STRILE_LOAD=no])
+
+if test "$HAVE_DEFER_STRILE_LOAD" = "yes" ; then
+ AC_DEFINE(DEFER_STRILE_LOAD,1,[enable deferred strip/tile offset/size loading (experimental)])
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Check for support of CHUNKY_STRIP_READ_SUPPORT, a mechanism to allowing
+dnl reading large strips (usually one strip files) in chunks when using
+dnl TIFFReadScanline(). This is an experimental feature in libtiff 4.0.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(chunky-strip-read,
+ AS_HELP_STRING([--enable-chunky-strip-read],
+ [enable reading large strips in chunks for TIFFReadScanline() (experimental)]),
+ [HAVE_CHUNKY_STRIP_READ=$enableval], [HAVE_CHUNKY_STRIP_READ=no])
+
+if test "$HAVE_CHUNKY_STRIP_READ" = "yes" ; then
+ AC_DEFINE(CHUNKY_STRIP_READ_SUPPORT,1,[enable partial strip reading for large strips (experimental)])
+
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Default subifd support.
+dnl ---------------------------------------------------------------------------
+AC_DEFINE(SUBIFD_SUPPORT,1,[Enable SubIFD tag (330) support])
+
+dnl ---------------------------------------------------------------------------
+dnl Default handling of ASSOCALPHA support.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(extrasample-as-alpha,
+ AS_HELP_STRING([--disable-extrasample-as-alpha],
+ [the RGBA interface will treat a fourth sample with no EXTRASAMPLE_ value as being ASSOCALPHA. Many packages produce RGBA files but don't mark the alpha properly]),
+ [HAVE_EXTRASAMPLE_AS_ALPHA=$enableval],
+ [HAVE_EXTRASAMPLE_AS_ALPHA=yes])
+
+if test "$HAVE_EXTRASAMPLE_AS_ALPHA" = "yes" ; then
+ AC_DEFINE(DEFAULT_EXTRASAMPLE_AS_ALPHA, 1,
+ [Treat extra sample as alpha (default enabled). The RGBA interface will treat a fourth sample with no EXTRASAMPLE_ value as being ASSOCALPHA. Many packages produce RGBA files but don't mark the alpha properly.])
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl Default handling of YCbCr subsampling support.
+dnl See Bug 168 in Bugzilla, and JPEGFixupTestSubsampling() for details.
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(check-ycbcr-subsampling,
+ AS_HELP_STRING([--disable-check-ycbcr-subsampling],
+ [disable picking up YCbCr subsampling info from the JPEG data stream to support files lacking the tag]),
+ [CHECK_JPEG_YCBCR_SUBSAMPLING=$enableval],
+ [CHECK_JPEG_YCBCR_SUBSAMPLING=yes])
+
+if test "$CHECK_JPEG_YCBCR_SUBSAMPLING" = "yes" ; then
+ AC_DEFINE(CHECK_JPEG_YCBCR_SUBSAMPLING, 1,
+ [Pick up YCbCr subsampling info from the JPEG data stream to support files lacking the tag (default enabled).])
+fi
+
+dnl ---------------------------------------------------------------------------
+
+AC_SUBST(LIBDIR)
+
+AC_CONFIG_HEADERS([libtiff/tif_config.h libtiff/tiffconf.h])
+
+AC_CONFIG_FILES([Makefile \
+ build/Makefile \
+ contrib/Makefile \
+ contrib/addtiffo/Makefile \
+ contrib/dbs/Makefile \
+ contrib/dbs/xtiff/Makefile \
+ contrib/iptcutil/Makefile \
+ contrib/mfs/Makefile \
+ contrib/pds/Makefile \
+ contrib/ras/Makefile \
+ contrib/stream/Makefile \
+ contrib/tags/Makefile \
+ contrib/win_dib/Makefile \
+ html/Makefile \
+ html/images/Makefile \
+ html/man/Makefile \
+ libtiff-4.pc \
+ libtiff/Makefile \
+ man/Makefile \
+ port/Makefile \
+ test/Makefile \
+ tools/Makefile])
+AC_OUTPUT
+
+dnl ---------------------------------------------------------------------------
+dnl Display configuration status
+dnl ---------------------------------------------------------------------------
+
+LOC_MSG()
+LOC_MSG([Libtiff is now configured for ${host}])
+LOC_MSG()
+LOC_MSG([ Installation directory: ${prefix}])
+LOC_MSG([ Documentation directory: ${LIBTIFF_DOCDIR}])
+LOC_MSG([ C compiler: ${CC} ${CFLAGS}])
+LOC_MSG([ C++ compiler: ${CXX} ${CXXFLAGS}])
+LOC_MSG([ Enable runtime linker paths: ${HAVE_RPATH}])
+LOC_MSG([ Enable linker symbol versioning: ${have_ld_version_script}])
+LOC_MSG([ Support Microsoft Document Imaging: ${HAVE_MDI}])
+LOC_MSG([ Use win32 IO: ${win32_io_ok}])
+LOC_MSG()
+LOC_MSG([ Support for internal codecs:])
+LOC_MSG([ CCITT Group 3 & 4 algorithms: ${HAVE_CCITT}])
+LOC_MSG([ Macintosh PackBits algorithm: ${HAVE_PACKBITS}])
+LOC_MSG([ LZW algorithm: ${HAVE_LZW}])
+LOC_MSG([ ThunderScan 4-bit RLE algorithm: ${HAVE_THUNDER}])
+LOC_MSG([ NeXT 2-bit RLE algorithm: ${HAVE_NEXT}])
+LOC_MSG([ LogLuv high dynamic range encoding: ${HAVE_LOGLUV}])
+LOC_MSG()
+LOC_MSG([ Support for external codecs:])
+LOC_MSG([ ZLIB support: ${HAVE_ZLIB}])
+LOC_MSG([ Pixar log-format algorithm: ${HAVE_PIXARLOG}])
+LOC_MSG([ JPEG support: ${HAVE_JPEG}])
+LOC_MSG([ Old JPEG support: ${HAVE_OJPEG}])
+LOC_MSG([ JPEG 8/12 bit dual mode: ${HAVE_JPEG12}])
+LOC_MSG([ ISO JBIG support: ${HAVE_JBIG}])
+LOC_MSG([ LZMA2 support: ${HAVE_LZMA}])
+LOC_MSG()
+LOC_MSG([ C++ support: ${HAVE_CXX}])
+LOC_MSG()
+dnl LOC_MSG([ X Athena Widgets support: ${HAVE_XAW}])
+LOC_MSG([ OpenGL support: ${HAVE_OPENGL}])
+LOC_MSG()
+