Blame configure.ac

Packit 994f1a
dnl                                               -*- Autoconf -*-
Packit 994f1a
dnl Tag Image File Format (TIFF) Software
Packit 994f1a
dnl
Packit 994f1a
dnl Copyright (C) 2004, Andrey Kiselev <dron@ak4719.spb.edu>
Packit 994f1a
dnl
Packit 994f1a
dnl Permission to use, copy, modify, distribute, and sell this software and 
Packit 994f1a
dnl its documentation for any purpose is hereby granted without fee, provided
Packit 994f1a
dnl that (i) the above copyright notices and this permission notice appear in
Packit 994f1a
dnl all copies of the software and related documentation, and (ii) the names of
Packit 994f1a
dnl Sam Leffler and Silicon Graphics may not be used in any advertising or
Packit 994f1a
dnl publicity relating to the software without the specific, prior written
Packit 994f1a
dnl permission of Sam Leffler and Silicon Graphics.
Packit 994f1a
dnl 
Packit 994f1a
dnl THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
Packit 994f1a
dnl EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
Packit 994f1a
dnl WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
Packit 994f1a
dnl 
Packit 994f1a
dnl IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
Packit 994f1a
dnl ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
Packit 994f1a
dnl OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
Packit 994f1a
dnl WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
Packit 994f1a
dnl LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
Packit 994f1a
dnl OF THIS SOFTWARE.
Packit 994f1a
Packit 994f1a
dnl Process this file with autoconf to produce a configure script.
Packit 994f1a
Packit Service a02f91
AC_PREREQ(2.63)
Packit 994f1a
AC_INIT([LibTIFF Software],[3.9.4],[tiff@lists.maptools.org],[tiff])
Packit 994f1a
AC_CONFIG_AUX_DIR(config)
Packit 994f1a
AC_CONFIG_MACRO_DIR(m4)
Packit 994f1a
AC_LANG(C)
Packit 994f1a
Packit 994f1a
dnl Compute the canonical target-system type variable
Packit 994f1a
AC_CANONICAL_TARGET
Packit 994f1a
Packit 994f1a
AM_INIT_AUTOMAKE
Packit 994f1a
dnl Do not rebuild generated files every time
Packit 994f1a
AM_MAINTAINER_MODE
Packit 994f1a
Packit 994f1a
dnl Versioning.
Packit 994f1a
dnl Don't fill the ALPHA_VERSION field, if not applicable.
Packit 994f1a
LIBTIFF_MAJOR_VERSION=3
Packit 994f1a
LIBTIFF_MINOR_VERSION=9
Packit 994f1a
LIBTIFF_MICRO_VERSION=4
Packit 994f1a
LIBTIFF_ALPHA_VERSION=
Packit 994f1a
LIBTIFF_VERSION=$LIBTIFF_MAJOR_VERSION.$LIBTIFF_MINOR_VERSION.$LIBTIFF_MICRO_VERSION$LIBTIFF_ALPHA_VERSION
Packit 994f1a
dnl This will be used with the 'make release' target
Packit 994f1a
LIBTIFF_RELEASE_DATE=`date +"%Y%m%d"`
Packit 994f1a
Packit 994f1a
# This is a special hack for OpenBSD and MirOS systems. The dynamic linker
Packit 994f1a
# in OpenBSD uses some special semantics for shared libraries. Their soname
Packit 994f1a
# contains only two numbers, major and minor.
Packit 994f1a
# See http://bugzilla.remotesensing.org/show_bug.cgi?id=838 for details.
Packit 994f1a
case "$target_os" in
Packit 994f1a
    openbsd* | mirbsd*)
Packit 994f1a
	LIBTIFF_VERSION_INFO=$LIBTIFF_MAJOR_VERSION$LIBTIFF_MINOR_VERSION:$LIBTIFF_MICRO_VERSION:0
Packit 994f1a
	;;
Packit 994f1a
    *)
Packit 994f1a
	LIBTIFF_VERSION_INFO=$LIBTIFF_MAJOR_VERSION:$LIBTIFF_MINOR_VERSION:$LIBTIFF_MICRO_VERSION
Packit 994f1a
	;;
Packit 994f1a
esac
Packit 994f1a
Packit 994f1a
AC_SUBST(LIBTIFF_MAJOR_VERSION)
Packit 994f1a
AC_SUBST(LIBTIFF_MINOR_VERSION)
Packit 994f1a
AC_SUBST(LIBTIFF_MICRO_VERSION)
Packit 994f1a
AC_SUBST(LIBTIFF_ALPHA_VERSION)
Packit 994f1a
AC_SUBST(LIBTIFF_VERSION)
Packit 994f1a
AC_SUBST(LIBTIFF_VERSION_INFO)
Packit 994f1a
AC_SUBST(LIBTIFF_RELEASE_DATE)
Packit 994f1a
Packit 994f1a
# Ensure that make can run correctly
Packit 994f1a
AM_SANITY_CHECK
Packit 994f1a
Packit 994f1a
dnl Checks for programs.
Packit 994f1a
AC_PROG_CC
Packit 994f1a
AC_PROG_CC_STDC
Packit 994f1a
AC_PROG_CPP
Packit 994f1a
LT_PATH_LD
Packit 994f1a
Packit 994f1a
AM_PROG_CC_C_O
Packit 994f1a
LT_PATH_LD
Packit 994f1a
Packit 994f1a
dnl We want warnings. As many warnings as possible.
Packit 994f1a
VL_PROG_CC_WARNINGS()
Packit 994f1a
AC_PROG_INSTALL
Packit 994f1a
AC_PROG_MAKE_SET
Packit 994f1a
AC_PROG_LN_S
Packit 994f1a
Packit 994f1a
dnl Tests for Windows
Packit 994f1a
AC_EXEEXT
Packit 994f1a
AC_OBJEXT
Packit 994f1a
Packit 994f1a
dnl initialize libtool
Packit 994f1a
LT_INIT([win32-dll])
Packit 994f1a
LT_LANG([C++])
Packit 994f1a
Packit 994f1a
# Enable support for silent build rules
Packit 994f1a
AM_SILENT_RULES
Packit 994f1a
Packit 994f1a
dnl Checks for libraries.
Packit 994f1a
AC_CHECK_LIB([c], [main])
Packit 994f1a
Packit 994f1a
dnl We don't need to add math library to all targets
Packit 994f1a
case "${host_os}" in
Packit 994f1a
    cygwin* | mingw32* | beos* | darwin*)
Packit 994f1a
        ;;
Packit 994f1a
    *)
Packit 994f1a
	AC_CHECK_LIB(m,sin,,,)
Packit 994f1a
        ;;
Packit 994f1a
esac
Packit 994f1a
Packit 994f1a
dnl Checks for header files.
Packit 994f1a
AC_CHECK_HEADERS([assert.h fcntl.h io.h limits.h malloc.h search.h sys/time.h unistd.h])
Packit 994f1a
Packit 994f1a
dnl Checks for typedefs, structures, and compiler characteristics.
Packit 994f1a
AC_C_CONST
Packit 994f1a
AC_C_INLINE
Packit 994f1a
AC_C_BIGENDIAN
Packit 994f1a
AC_TYPE_OFF_T
Packit 994f1a
AC_TYPE_SIZE_T
Packit 994f1a
AC_CHECK_SIZEOF(int)
Packit 994f1a
AC_CHECK_SIZEOF(long)
Packit 994f1a
AC_HEADER_TIME
Packit 994f1a
AC_STRUCT_TM
Packit 994f1a
dnl Some compilers (IBM VisualAge) has these types defined, so check it here:
Packit 994f1a
AC_CHECK_TYPES([int8, int16, int32],,,
Packit 994f1a
[
Packit 994f1a
#if HAVE_INTTYPES_H
Packit 994f1a
# include <inttypes.h>
Packit 994f1a
#endif
Packit 994f1a
])
Packit 994f1a
Packit 994f1a
# Obtain size of a 'signed long' and define as SIZEOF_SIGNED_LONG
Packit 994f1a
AC_CHECK_SIZEOF(signed long)
Packit 994f1a
Packit 994f1a
# Obtain size of a 'unsigned long' and define as SIZEOF_UNSIGNED_LONG
Packit 994f1a
AC_CHECK_SIZEOF(unsigned long)
Packit 994f1a
Packit 994f1a
# Obtain size of a 'long long' and define as SIZEOF_SIGNED_LONG_LONG.
Packit 994f1a
# If 'long long' is not supported then the value defined is zero.
Packit 994f1a
AC_CHECK_SIZEOF(signed long long)
Packit 994f1a
Packit 994f1a
# Obtain size of a 'unsigned long long' and define as
Packit 994f1a
# SIZEOF_UNSIGNED_LONG_LONG.  If 'unsigned long long' is not
Packit 994f1a
# supported then the value defined is zero.
Packit 994f1a
AC_CHECK_SIZEOF(unsigned long long)
Packit 994f1a
Packit 994f1a
AC_MSG_CHECKING(for signed 64-bit type)
Packit 994f1a
INT64_T='none'
Packit 994f1a
INT64_FORMAT='none'
Packit 994f1a
if test $ac_cv_sizeof_signed_long -eq 8
Packit 994f1a
then
Packit 994f1a
  INT64_T='signed long'
Packit 994f1a
  INT64_FORMAT='"%ld"'
Packit 994f1a
elif test $ac_cv_sizeof_signed_long_long -eq 8
Packit 994f1a
then
Packit 994f1a
  INT64_FORMAT='"%lld"'
Packit 994f1a
  INT64_T='signed long long'
Packit 994f1a
fi
Packit 994f1a
AC_MSG_RESULT($INT64_T)
Packit 994f1a
AC_DEFINE_UNQUOTED(TIFF_INT64_T,$INT64_T,[Signed 64-bit type])
Packit 994f1a
AC_DEFINE_UNQUOTED(TIFF_INT64_FORMAT,$INT64_FORMAT,[Signed 64-bit type formatter])
Packit 994f1a
Packit 994f1a
AC_MSG_CHECKING(for unsigned 64-bit type)
Packit 994f1a
UINT64_T='none'
Packit 994f1a
UINT64_FORMAT='none'
Packit 994f1a
if test $ac_cv_sizeof_unsigned_long -eq 8
Packit 994f1a
then
Packit 994f1a
  UINT64_T='unsigned long'
Packit 994f1a
  UINT64_FORMAT='"%lu"'
Packit 994f1a
elif test $ac_cv_sizeof_unsigned_long_long -eq 8
Packit 994f1a
then
Packit 994f1a
  UINT64_T='unsigned long long'
Packit 994f1a
  UINT64_FORMAT='"%llu"'
Packit 994f1a
fi
Packit 994f1a
AC_MSG_RESULT($UINT64_T)
Packit 994f1a
AC_DEFINE_UNQUOTED(TIFF_UINT64_T,$UINT64_T,[Unsigned 64-bit type])
Packit 994f1a
AC_DEFINE_UNQUOTED(TIFF_UINT64_FORMAT,$UINT64_FORMAT,[Unsigned 64-bit type formatter])
Packit 994f1a
Packit 994f1a
dnl Checks for library functions.
Packit 994f1a
AC_CHECK_FUNCS([floor isascii memmove memset mmap pow setmode sqrt strchr strrchr strstr strtol])
Packit 994f1a
Packit 994f1a
dnl Will use local replacements for unavailable functions
Packit 994f1a
AC_REPLACE_FUNCS(getopt)
Packit 994f1a
AC_REPLACE_FUNCS(strcasecmp)
Packit 994f1a
AC_REPLACE_FUNCS(strtoul)
Packit 994f1a
AC_REPLACE_FUNCS(lfind)
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check the native cpu bit order.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
AC_MSG_CHECKING([native cpu bit order])
Packit 994f1a
case "$target_cpu" in
Packit 994f1a
    i*86*|x86_64*)
Packit 994f1a
        HOST_FILLORDER=FILLORDER_LSB2MSB
Packit 994f1a
	AC_MSG_RESULT([lsb2msb])
Packit 994f1a
	;;
Packit 994f1a
    *)
Packit 994f1a
	HOST_FILLORDER=FILLORDER_MSB2LSB
Packit 994f1a
	AC_MSG_RESULT([msb2lsb])
Packit 994f1a
        ;;
Packit 994f1a
esac
Packit 994f1a
AC_DEFINE_UNQUOTED(HOST_FILLORDER, $HOST_FILLORDER, [Set the native cpu bit order (FILLORDER_LSB2MSB or FILLORDER_MSB2LSB)])
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Configure legacy tifconf.h HOST_BIGENDIAN.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
if test "$ac_cv_c_bigendian" = yes ; then
Packit 994f1a
    HOST_BIGENDIAN=1
Packit 994f1a
else
Packit 994f1a
    HOST_BIGENDIAN=0
Packit 994f1a
fi
Packit 994f1a
AC_DEFINE_UNQUOTED(HOST_BIGENDIAN,$HOST_BIGENDIAN,[Native cpu byte order: 1 if big-endian (Motorola) or 0 if little-endian (Intel)])
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Make the POSIX.2 features available.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
#_POSIX_C_SOURCE=2
Packit 994f1a
#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 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Set the floating point format.
Packit 994f1a
dnl FIXME: write appropriate test.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
HAVE_IEEEFP=1
Packit 994f1a
AC_DEFINE_UNQUOTED(HAVE_IEEEFP, $HAVE_IEEEFP, [Define as 0 or 1 according to the floating point format suported by the machine])
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Enable run-time paths to libraries usage.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(rpath,
Packit 994f1a
	      AS_HELP_STRING([--enable-rpath],
Packit 994f1a
			     [Enable runtime linker paths (-R libtool option)]),
Packit 994f1a
	      [HAVE_RPATH=$enableval], [HAVE_RPATH=no])
Packit 994f1a
AM_CONDITIONAL(HAVE_RPATH, test "$HAVE_RPATH" = "yes")
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Support large files.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_SYS_LARGEFILE
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Point to path where we should install documentation.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
LIBTIFF_DOCDIR=\${prefix}/share/doc/${PACKAGE}-${LIBTIFF_VERSION}
Packit 994f1a
Packit 994f1a
AC_ARG_WITH(docdir,
Packit 994f1a
	    AS_HELP_STRING([--with-docdir=DIR],
Packit 994f1a
			   [directory where documentation should be installed]),,)
Packit 994f1a
if test "x$with_docdir" != "x" ; then
Packit 994f1a
  LIBTIFF_DOCDIR=$with_docdir
Packit 994f1a
fi
Packit 994f1a
 
Packit 994f1a
AC_SUBST(LIBTIFF_DOCDIR)
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Switch on/off internal codecs.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(ccitt,
Packit 994f1a
	      AS_HELP_STRING([--disable-ccitt],
Packit 994f1a
			     [disable support for CCITT Group 3 & 4 algorithms]),
Packit 994f1a
	      [HAVE_CCITT=$enableval], [HAVE_CCITT=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_CCITT" = "yes" ; then
Packit 994f1a
  AC_DEFINE(CCITT_SUPPORT,1,[Support CCITT Group 3 & 4 algorithms])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(packbits,
Packit 994f1a
	      AS_HELP_STRING([--disable-packbits],
Packit 994f1a
			     [disable support for Macintosh PackBits algorithm]),
Packit 994f1a
	      [HAVE_PACKBITS=$enableval], [HAVE_PACKBITS=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_PACKBITS" = "yes" ; then
Packit 994f1a
  AC_DEFINE(PACKBITS_SUPPORT,1,[Support Macintosh PackBits algorithm])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(lzw,
Packit 994f1a
	      AS_HELP_STRING([--disable-lzw],
Packit 994f1a
			     [disable support for LZW algorithm]),
Packit 994f1a
	      [HAVE_LZW=$enableval], [HAVE_LZW=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_LZW" = "yes" ; then
Packit 994f1a
  AC_DEFINE(LZW_SUPPORT,1,[Support LZW algorithm])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(thunder,
Packit 994f1a
	      AS_HELP_STRING([--disable-thunder],
Packit 994f1a
			     [disable support for ThunderScan 4-bit RLE algorithm]),
Packit 994f1a
	      [HAVE_THUNDER=$enableval], [HAVE_THUNDER=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_THUNDER" = "yes" ; then
Packit 994f1a
  AC_DEFINE(THUNDER_SUPPORT,1,[Support ThunderScan 4-bit RLE algorithm])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
HAVE_NEXT=yes
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(next,
Packit 994f1a
	      AS_HELP_STRING([--disable-next],
Packit 994f1a
			     [disable support for NeXT 2-bit RLE algorithm]),
Packit 994f1a
	      [HAVE_NEXT=$enableval], [HAVE_NEXT=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_NEXT" = "yes" ; then
Packit 994f1a
  AC_DEFINE(NEXT_SUPPORT,1,[Support NeXT 2-bit RLE algorithm])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(logluv,
Packit 994f1a
	      AS_HELP_STRING([--disable-logluv],
Packit 994f1a
			     [disable support for LogLuv high dynamic range encoding]),
Packit 994f1a
	      [HAVE_LOGLUV=$enableval], [HAVE_LOGLUV=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_LOGLUV" = "yes" ; then
Packit 994f1a
  AC_DEFINE(LOGLUV_SUPPORT,1,[Support LogLuv high dynamic range encoding])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Switch on/off support for Microsoft Document Imaging
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(mdi,
Packit 994f1a
	      AS_HELP_STRING([--disable-mdi],
Packit 994f1a
			     [disable support for Microsoft Document Imaging]),
Packit 994f1a
	      [HAVE_MDI=$enableval], [HAVE_MDI=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_MDI" = "yes" ; then
Packit 994f1a
  AC_DEFINE(MDI_SUPPORT,1,[Support Microsoft Document Imaging format])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for ZLIB.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
HAVE_ZLIB=no
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(zlib,
Packit 994f1a
	      AS_HELP_STRING([--disable-zlib],
Packit 994f1a
			     [disable Zlib usage (required for Deflate compression, enabled by default)]),,)
Packit 994f1a
AC_ARG_WITH(zlib-include-dir,
Packit 994f1a
	    AS_HELP_STRING([--with-zlib-include-dir=DIR],
Packit 994f1a
			   [location of Zlib headers]),,)
Packit 994f1a
AC_ARG_WITH(zlib-lib-dir,
Packit 994f1a
	    AS_HELP_STRING([--with-zlib-lib-dir=DIR],
Packit 994f1a
			   [location of Zlib library binary]),,)
Packit 994f1a
Packit 994f1a
if test "x$enable_zlib" != "xno" ; then
Packit 994f1a
Packit 994f1a
  if test "x$with_zlib_lib_dir" != "x" ; then
Packit 994f1a
    LDFLAGS="-L$with_zlib_lib_dir $LDFLAGS"
Packit 994f1a
  fi
Packit 994f1a
  
Packit 994f1a
  AC_CHECK_LIB(z, inflateEnd, [zlib_lib=yes], [zlib_lib=no],)
Packit 994f1a
  if test "$zlib_lib" = "no" -a "x$with_zlib_lib_dir" != "x"; then
Packit 994f1a
    AC_MSG_ERROR([Zlib library not found at $with_zlib_lib_dir])
Packit 994f1a
  fi
Packit 994f1a
    
Packit 994f1a
  if test "x$with_zlib_include_dir" != "x" ; then
Packit 994f1a
    CPPFLAGS="-I$with_zlib_include_dir $CPPFLAGS"
Packit 994f1a
  fi
Packit 994f1a
  AC_CHECK_HEADER(zlib.h, [zlib_h=yes], [zlib_h=no])
Packit 994f1a
  if test "$zlib_h" = "no" -a "x$with_zlib_include_dir" != "x" ; then
Packit 994f1a
    AC_MSG_ERROR([Zlib headers not found at $with_zlib_include_dir])
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
  if test "$zlib_lib" = "yes" -a "$zlib_h" = "yes" ; then
Packit 994f1a
    HAVE_ZLIB=yes
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
if test "$HAVE_ZLIB" = "yes" ; then
Packit 994f1a
  AC_DEFINE(ZIP_SUPPORT,1,[Support Deflate compression])
Packit 994f1a
  LIBS="-lz $LIBS"
Packit 994f1a
Packit 994f1a
  if test "$HAVE_RPATH" = "yes" -a "x$with_zlib_lib_dir" != "x" ; then
Packit 994f1a
    LIBDIR="-R $with_zlib_lib_dir $LIBDIR"
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for Pixar log-format algorithm.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(pixarlog,
Packit 994f1a
	      AS_HELP_STRING([--disable-pixarlog],
Packit 994f1a
			     [disable support for Pixar log-format algorithm (requires Zlib)]),
Packit 994f1a
	      [HAVE_PIXARLOG=$enableval], [HAVE_PIXARLOG=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_ZLIB" = "yes" -a "$HAVE_PIXARLOG" = "yes" ; then
Packit 994f1a
  AC_DEFINE(PIXARLOG_SUPPORT, 1,
Packit 994f1a
	    [Support Pixar log-format algorithm (requires Zlib)])
Packit 994f1a
else
Packit 994f1a
  HAVE_PIXARLOG=no
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for JPEG.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
HAVE_JPEG=no
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(jpeg,
Packit 994f1a
	      AS_HELP_STRING([--disable-jpeg],
Packit 994f1a
			     [disable IJG JPEG library usage (required for JPEG compression, enabled by default)]),,)
Packit 994f1a
AC_ARG_WITH(jpeg-include-dir,
Packit 994f1a
	    AS_HELP_STRING([--with-jpeg-include-dir=DIR],
Packit 994f1a
			   [location of IJG JPEG library headers]),,)
Packit 994f1a
AC_ARG_WITH(jpeg-lib-dir,
Packit 994f1a
	    AS_HELP_STRING([--with-jpeg-lib-dir=DIR],
Packit 994f1a
			   [location of IJG JPEG library binary]),,)
Packit 994f1a
Packit 994f1a
if test "x$enable_jpeg" != "xno" ; then
Packit 994f1a
Packit 994f1a
  if test "x$with_jpeg_lib_dir" != "x" ; then
Packit 994f1a
    LDFLAGS="-L$with_jpeg_lib_dir $LDFLAGS"
Packit 994f1a
  
Packit 994f1a
  fi
Packit 994f1a
  
Packit 994f1a
  AC_CHECK_LIB(jpeg, jpeg_read_scanlines, [jpeg_lib=yes], [jpeg_lib=no],)
Packit 994f1a
  if test "$jpeg_lib" = "no" -a "x$with_jpeg_lib_dir" != "x" ; then
Packit 994f1a
    AC_MSG_ERROR([IJG JPEG library not found at $with_jpeg_lib_dir])
Packit 994f1a
  fi
Packit 994f1a
    
Packit 994f1a
  if test "x$with_jpeg_include_dir" != "x" ; then
Packit 994f1a
    CPPFLAGS="-I$with_jpeg_include_dir $CPPFLAGS"
Packit 994f1a
  fi
Packit 994f1a
  AC_CHECK_HEADER(jpeglib.h, [jpeg_h=yes], [jpeg_h=no])
Packit 994f1a
  if test "$jpeg_h" = "no" -a "x$with_jpeg_include_dir" != "x" ; then
Packit 994f1a
    AC_MSG_ERROR([IJG JPEG library headers not found at $with_jpeg_include_dir])
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
  if test "$jpeg_lib" = "yes" -a "$jpeg_h" = "yes" ; then
Packit 994f1a
    HAVE_JPEG=yes
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
if test "$HAVE_JPEG" = "yes" ; then
Packit 994f1a
  AC_DEFINE(JPEG_SUPPORT,1,[Support JPEG compression (requires IJG JPEG library)])
Packit 994f1a
  LIBS="-ljpeg $LIBS"
Packit 994f1a
Packit 994f1a
  if test "$HAVE_RPATH" = "yes" -a "x$with_jpeg_lib_dir" != "x" ; then
Packit 994f1a
    LIBDIR="-R $with_jpeg_lib_dir $LIBDIR"
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for Old JPEG.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(old-jpeg,
Packit 994f1a
	      AS_HELP_STRING([--disable-old-jpeg],
Packit 994f1a
			     [disable support for Old JPEG compresson (read-only, enabled by default)]),
Packit 994f1a
	      [HAVE_OJPEG=${enableval}], [HAVE_OJPEG=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_JPEG" = "yes" -a "$HAVE_OJPEG" = "yes" ; then
Packit 994f1a
  AC_DEFINE(OJPEG_SUPPORT, 1,
Packit 994f1a
	    [Support Old JPEG compresson (read-only)])
Packit 994f1a
else
Packit 994f1a
  HAVE_OJPEG=no
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for JBIG-KIT.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
HAVE_JBIG=no
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(jbig,
Packit 994f1a
	      AS_HELP_STRING([--disable-jbig],
Packit 994f1a
			     [disable JBIG-KIT usage (required for ISO JBIG compression, enabled by default)]),,)
Packit 994f1a
AC_ARG_WITH(jbig-include-dir,
Packit 994f1a
	    AS_HELP_STRING([--with-jbig-include-dir=DIR],
Packit 994f1a
			   [location of JBIG-KIT headers]),,)
Packit 994f1a
AC_ARG_WITH(jbig-lib-dir,
Packit 994f1a
	    AS_HELP_STRING([--with-jbig-lib-dir=DIR],
Packit 994f1a
			   [location of JBIG-KIT library binary]),,)
Packit 994f1a
Packit 994f1a
if test "x$enable_jbig" != "xno" ; then
Packit 994f1a
Packit 994f1a
  if test "x$with_jbig_lib_dir" != "x" ; then
Packit 994f1a
    LDFLAGS="-L$with_jbig_lib_dir $LDFLAGS"
Packit 994f1a
  
Packit 994f1a
  fi
Packit 994f1a
  
Packit 994f1a
  AC_CHECK_LIB(jbig, jbg_dec_init, [jbig_lib=yes], [jbig_lib=no],)
Packit 994f1a
  if test "$jbig_lib" = "no" -a "x$with_jbig_lib_dir" != "x" ; then
Packit 994f1a
    AC_MSG_ERROR([JBIG-KIT library not found at $with_jbig_lib_dir])
Packit 994f1a
  fi
Packit 994f1a
    
Packit 994f1a
  if test "x$with_jbig_include_dir" != "x" ; then
Packit 994f1a
    CPPFLAGS="-I$with_jbig_include_dir $CPPFLAGS"
Packit 994f1a
  fi
Packit 994f1a
  AC_CHECK_HEADER(jbig.h, [jbig_h=yes], [jbig_h=no])
Packit 994f1a
  if test "$jbig_h" = "no" -a "x$with_jbig_include_dir" != "x" ; then
Packit 994f1a
    AC_MSG_ERROR([JBIG-KIT library headers not found at $with_jbig_include_dir])
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
  if test "$jbig_lib" = "yes" -a "$jbig_h" = "yes" ; then
Packit 994f1a
    HAVE_JBIG=yes
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
if test "$HAVE_JBIG" = "yes" ; then
Packit 994f1a
  AC_DEFINE(JBIG_SUPPORT,1,[Support ISO JBIG compression (requires JBIG-KIT library)])
Packit 994f1a
  LIBS="-ljbig $LIBS"
Packit 994f1a
Packit 994f1a
  if test "$HAVE_RPATH" = "yes" -a "x$with_jbig_lib_dir" != "x" ; then
Packit 994f1a
    LIBDIR="-R $with_jbig_lib_dir $LIBDIR"
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
  # Older versions of jbigkit lack jbg_newlen
Packit 994f1a
  AC_CHECK_FUNCS([jbg_newlen])
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for C++.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(cxx,
Packit 994f1a
	      AS_HELP_STRING([--enable-cxx],
Packit 994f1a
			     [enable C++ stream API building (requires C++ compiler)]),
Packit 994f1a
	      [HAVE_CXX=$enableval], [HAVE_CXX=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_CXX" = "yes" ; then
Packit 994f1a
  AC_DEFINE(CXX_SUPPORT, 1, [Support C++ stream API (requires C++ compiler)])
Packit 994f1a
else
Packit 994f1a
  HAVE_CXX=no
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
AM_CONDITIONAL(HAVE_CXX, test "$HAVE_CXX" = "yes")
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for OpenGL and GLUT.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
HAVE_OPENGL=no
Packit 994f1a
Packit 994f1a
AC_PATH_XTRA
Packit 994f1a
Packit 994f1a
AX_CHECK_GL
Packit 994f1a
AX_CHECK_GLU
Packit 994f1a
AX_CHECK_GLUT
Packit 994f1a
Packit 994f1a
if test "$no_x" != "yes" -a "$no_gl" != "yes" \
Packit 994f1a
	-a "$no_glu" != "yes" -a "$no_glut" != "yes" ; then
Packit 994f1a
  HAVE_OPENGL=yes
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
AM_CONDITIONAL(HAVE_OPENGL, test "$HAVE_OPENGL" = "yes")
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Check for X Athena Widgets
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
dnl HAVE_XAW=no
Packit 994f1a
Packit 994f1a
dnl ICE_FIND_ATHENA
Packit 994f1a
Packit 994f1a
dnl if test "$no_xaw" != "yes" ; then
Packit 994f1a
dnl   HAVE_XAW=yes
Packit 994f1a
dnl fi
Packit 994f1a
Packit 994f1a
dnl AM_CONDITIONAL(HAVE_XAW, test "$HAVE_XAW" = "yes")
Packit 994f1a
Packit 994f1a
dnl ===========================================================================
Packit 994f1a
dnl ``Orthogonal Features''
Packit 994f1a
dnl ===========================================================================
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Default handling of strip chopping support.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(strip-chopping,
Packit 994f1a
	      AS_HELP_STRING([--disable-strip-chopping],
Packit 994f1a
			     [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 994f1a
	      [HAVE_STRIPCHOP=$enableval], [HAVE_STRIPCHOP=yes])
Packit 994f1a
AC_ARG_WITH(default-strip-size,
Packit 994f1a
	    AS_HELP_STRING([--with-default-strip-size=SIZE],
Packit 994f1a
			   [default size of the strip in bytes (when strip chopping enabled) [[default=8192]]]),,)
Packit 994f1a
Packit 994f1a
if test "$HAVE_STRIPCHOP" = "yes" \
Packit 994f1a
	-a "x$with_default_strip_size" != "xno"; then
Packit 994f1a
  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 994f1a
Packit 994f1a
  if test "x$with_default_strip_size" = "x" \
Packit 994f1a
	  -o "x$with_default_strip_size" = "xyes"; then
Packit 994f1a
    with_default_strip_size="8192"
Packit 994f1a
  fi
Packit 994f1a
Packit 994f1a
  AC_DEFINE_UNQUOTED(STRIP_SIZE_DEFAULT,$with_default_strip_size,[Default size of the strip in bytes (when strip chopping enabled)])
Packit 994f1a
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Default subifd support.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
AC_DEFINE(SUBIFD_SUPPORT,1,[Enable SubIFD tag (330) support])
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Default handling of ASSOCALPHA support.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(extrasample-as-alpha,
Packit 994f1a
	      AS_HELP_STRING([--disable-extrasample-as-alpha],
Packit 994f1a
			     [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 994f1a
	      [HAVE_EXTRASAMPLE_AS_ALPHA=$enableval],
Packit 994f1a
	      [HAVE_EXTRASAMPLE_AS_ALPHA=yes])
Packit 994f1a
Packit 994f1a
if test "$HAVE_EXTRASAMPLE_AS_ALPHA" = "yes" ; then
Packit 994f1a
  AC_DEFINE(DEFAULT_EXTRASAMPLE_AS_ALPHA, 1,
Packit 994f1a
	    [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 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Default handling of YCbCr subsampling support.
Packit 994f1a
dnl See Bug 168 in Bugzilla, and JPEGFixupTestSubsampling() for details.
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_ARG_ENABLE(check-ycbcr-subsampling,
Packit 994f1a
	      AS_HELP_STRING([--disable-check-ycbcr-subsampling],
Packit 994f1a
			     [disable picking up YCbCr subsampling info from the JPEG data stream to support files lacking the tag]),
Packit 994f1a
	      [CHECK_JPEG_YCBCR_SUBSAMPLING=$enableval],
Packit 994f1a
	      [CHECK_JPEG_YCBCR_SUBSAMPLING=yes])
Packit 994f1a
Packit 994f1a
if test "$CHECK_JPEG_YCBCR_SUBSAMPLING" = "yes" ; then
Packit 994f1a
  AC_DEFINE(CHECK_JPEG_YCBCR_SUBSAMPLING, 1,
Packit 994f1a
	    [Pick up YCbCr subsampling info from the JPEG data stream to support files lacking the tag (default enabled).])
Packit 994f1a
fi
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
AC_SUBST(LIBDIR)
Packit 994f1a
Packit 994f1a
AC_CONFIG_HEADERS([libtiff/tif_config.h libtiff/tiffconf.h])
Packit 994f1a
Packit 994f1a
AC_CONFIG_FILES([Makefile \
Packit 994f1a
		 build/Makefile \
Packit 994f1a
		 contrib/Makefile \
Packit 994f1a
		 contrib/acorn/Makefile \
Packit 994f1a
		 contrib/addtiffo/Makefile \
Packit 994f1a
		 contrib/dbs/Makefile \
Packit 994f1a
		 contrib/dbs/xtiff/Makefile \
Packit 994f1a
		 contrib/iptcutil/Makefile \
Packit 994f1a
		 contrib/mac-cw/Makefile \
Packit 994f1a
		 contrib/mac-mpw/Makefile \
Packit 994f1a
		 contrib/mfs/Makefile \
Packit 994f1a
		 contrib/pds/Makefile \
Packit 994f1a
		 contrib/ras/Makefile \
Packit 994f1a
		 contrib/stream/Makefile \
Packit 994f1a
		 contrib/tags/Makefile \
Packit 994f1a
		 contrib/win_dib/Makefile \
Packit 994f1a
                 html/Makefile \
Packit 994f1a
		 html/images/Makefile \
Packit 994f1a
		 html/man/Makefile \
Packit 994f1a
                 libtiff/Makefile \
Packit 994f1a
                 man/Makefile \
Packit 994f1a
		 port/Makefile \
Packit 994f1a
		 test/Makefile \
Packit 994f1a
                 tools/Makefile])
Packit 994f1a
AC_OUTPUT
Packit 994f1a
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
dnl Display configuration status
Packit 994f1a
dnl ---------------------------------------------------------------------------
Packit 994f1a
Packit 994f1a
LOC_MSG()
Packit 994f1a
LOC_MSG([Libtiff is now configured for ${host}])
Packit 994f1a
LOC_MSG()
Packit 994f1a
LOC_MSG([  Installation directory:             ${prefix}])
Packit 994f1a
LOC_MSG([  Documentation directory:            ${LIBTIFF_DOCDIR}])
Packit 994f1a
LOC_MSG([  C compiler:                         ${CC} ${CFLAGS}])
Packit 994f1a
LOC_MSG([  C++ compiler:                       ${CXX} ${CXXFLAGS}])
Packit 994f1a
LOC_MSG([  Enable runtime linker paths:        ${HAVE_RPATH}])
Packit 994f1a
LOC_MSG([  Support Microsoft Document Imaging: ${HAVE_MDI}])
Packit 994f1a
LOC_MSG()
Packit 994f1a
LOC_MSG([ Support for internal codecs:])
Packit 994f1a
LOC_MSG([  CCITT Group 3 & 4 algorithms:       ${HAVE_CCITT}])
Packit 994f1a
LOC_MSG([  Macintosh PackBits algorithm:       ${HAVE_PACKBITS}])
Packit 994f1a
LOC_MSG([  LZW algorithm:                      ${HAVE_LZW}])
Packit 994f1a
LOC_MSG([  ThunderScan 4-bit RLE algorithm:    ${HAVE_THUNDER}])
Packit 994f1a
LOC_MSG([  NeXT 2-bit RLE algorithm:           ${HAVE_NEXT}])
Packit 994f1a
LOC_MSG([  LogLuv high dynamic range encoding: ${HAVE_LOGLUV}])
Packit 994f1a
LOC_MSG()
Packit 994f1a
LOC_MSG([ Support for external codecs:])
Packit 994f1a
LOC_MSG([  ZLIB support:                       ${HAVE_ZLIB}])
Packit 994f1a
LOC_MSG([  Pixar log-format algorithm:         ${HAVE_PIXARLOG}])
Packit 994f1a
LOC_MSG([  JPEG support:                       ${HAVE_JPEG}])
Packit 994f1a
LOC_MSG([  Old JPEG support:                   ${HAVE_OJPEG}])
Packit 994f1a
LOC_MSG([  ISO JBIG support:                   ${HAVE_JBIG}])
Packit 994f1a
LOC_MSG()
Packit 994f1a
LOC_MSG([  C++ support:                        ${HAVE_CXX}])
Packit 994f1a
LOC_MSG()
Packit 994f1a
dnl LOC_MSG([  X Athena Widgets support:           ${HAVE_XAW}])
Packit 994f1a
LOC_MSG([  OpenGL support:                     ${HAVE_OPENGL}])
Packit 994f1a
LOC_MSG()
Packit 994f1a