Blame configure.ac

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