|  | @@ -0,0 +1,215 @@
 | 
	
		
			
				|  |  | +# Configure template for GNU tar.
 | 
	
		
			
				|  |  | +# Copyright (C) 1991, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
 | 
	
		
			
				|  |  | +# Process this file with autoconf to produce a configure script.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_INIT(src/tar.c)
 | 
	
		
			
				|  |  | +AM_CONFIG_HEADER(config.h)
 | 
	
		
			
				|  |  | +AC_PREREQ(2.12)
 | 
	
		
			
				|  |  | +AM_INIT_AUTOMAKE(tar, 1.12)
 | 
	
		
			
				|  |  | +AC_DEFINE(_GNU_SOURCE)
 | 
	
		
			
				|  |  | +ALL_LINGUAS="de fr it ko nl no pl pt sl sv"
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +fp_PROG_ECHO
 | 
	
		
			
				|  |  | +test $fp_cv_prog_echo_nonl = no \
 | 
	
		
			
				|  |  | +  && echo 2>&1 "WARNING: \`echo' not powerful enough for \`make check'"
 | 
	
		
			
				|  |  | +AC_PROG_CC
 | 
	
		
			
				|  |  | +AC_PROG_GCC_TRADITIONAL
 | 
	
		
			
				|  |  | +AC_AIX
 | 
	
		
			
				|  |  | +AC_MINIX
 | 
	
		
			
				|  |  | +AC_PROG_RANLIB
 | 
	
		
			
				|  |  | +AC_PROG_YACC
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_ISC_POSIX
 | 
	
		
			
				|  |  | +AM_C_PROTOTYPES
 | 
	
		
			
				|  |  | +AC_C_CONST
 | 
	
		
			
				|  |  | +AC_C_INLINE
 | 
	
		
			
				|  |  | +AC_CHECK_SIZEOF(unsigned long, 4)
 | 
	
		
			
				|  |  | +AC_CHECK_SIZEOF(long long, 0)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CHECK_HEADERS(fcntl.h limits.h linux/fd.h memory.h net/errno.h poll.h \
 | 
	
		
			
				|  |  | +sgtty.h string.h stropts.h \
 | 
	
		
			
				|  |  | +sys/buf.h sys/device.h sys/gentape.h sys/inet.h sys/io/trioctl.h sys/ioccom.h \
 | 
	
		
			
				|  |  | +sys/mtio.h sys/param.h sys/tprintf.h sys/tape.h sys/time.h sys/timeb.h \
 | 
	
		
			
				|  |  | +sys/wait.h unistd.h)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# It seems that that many machines where <utime.h> seems to be
 | 
	
		
			
				|  |  | +# broken just require something like -D_XXX_SOURCE, where XXX might
 | 
	
		
			
				|  |  | +# be POSIX, POSIX_C, ALL, HPUX or whatever, depending on the machine.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for utime.h, tar_cv_header_utime_h,
 | 
	
		
			
				|  |  | +  [AC_TRY_COMPILE([
 | 
	
		
			
				|  |  | +#include <sys/types.h>
 | 
	
		
			
				|  |  | +#include <utime.h>], [struct utimbuf foo],
 | 
	
		
			
				|  |  | +  tar_cv_header_utime_h=yes, tar_cv_header_utime_h=no)])
 | 
	
		
			
				|  |  | +test $tar_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +if test $ac_cv_header_sys_mtio_h = yes; then
 | 
	
		
			
				|  |  | +  AC_CACHE_CHECK(for remote tape header files, tar_cv_header_rmt,
 | 
	
		
			
				|  |  | +    [AC_TRY_CPP([
 | 
	
		
			
				|  |  | +#if HAVE_SGTTY_H
 | 
	
		
			
				|  |  | +# include <sgtty.h>
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +#include <sys/socket.h>],
 | 
	
		
			
				|  |  | +    tar_cv_header_rmt=yes, tar_cv_header_rmt=no)])
 | 
	
		
			
				|  |  | +  test $tar_cv_header_rmt = yes && RMT=rmt
 | 
	
		
			
				|  |  | +  AC_SUBST(RMT)
 | 
	
		
			
				|  |  | +fi
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for getgrgid declaration, tar_cv_header_getgrgid,
 | 
	
		
			
				|  |  | +  [AC_EGREP_HEADER(getgrgid, grp.h,
 | 
	
		
			
				|  |  | +  tar_cv_header_getgrgid=yes, tar_cv_header_getgrgid=no)])
 | 
	
		
			
				|  |  | +test $tar_cv_header_getgrgid = yes && AC_DEFINE(HAVE_GETGRGID)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for getpwuid declaration, tar_cv_header_getpwuid,
 | 
	
		
			
				|  |  | +  [AC_EGREP_HEADER(getpwuid, pwd.h,
 | 
	
		
			
				|  |  | +  tar_cv_header_getpwuid=yes, tar_cv_header_getpwuid=no)])
 | 
	
		
			
				|  |  | +test $tar_cv_header_getpwuid = yes && AC_DEFINE(HAVE_GETPWUID)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(which ioctl field to test for reversed bytes,
 | 
	
		
			
				|  |  | +  tar_cv_header_mtio_check_field,
 | 
	
		
			
				|  |  | +  [AC_EGREP_HEADER(mt_model, sys/mtio.h,
 | 
	
		
			
				|  |  | +  tar_cv_header_mtio_check_field=mt_model,
 | 
	
		
			
				|  |  | +  tar_cv_header_mtio_check_field=mt_type)])
 | 
	
		
			
				|  |  | +AC_DEFINE_UNQUOTED(MTIO_CHECK_FIELD, $tar_cv_header_mtio_check_field)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_HEADER_DIRENT
 | 
	
		
			
				|  |  | +AC_HEADER_MAJOR
 | 
	
		
			
				|  |  | +AC_HEADER_STAT
 | 
	
		
			
				|  |  | +AC_HEADER_STDC
 | 
	
		
			
				|  |  | +AC_HEADER_TIME
 | 
	
		
			
				|  |  | +AC_STRUCT_ST_BLKSIZE
 | 
	
		
			
				|  |  | +AC_STRUCT_ST_BLOCKS
 | 
	
		
			
				|  |  | +AC_TYPE_SIGNAL
 | 
	
		
			
				|  |  | +AC_TYPE_SIZE_T
 | 
	
		
			
				|  |  | +AC_TYPE_UID_T
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CHECK_FUNCS(fsync ftime getcwd isascii lchown mkfifo nap napms poll \
 | 
	
		
			
				|  |  | +select strerror strstr usleep)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for mknod, tar_cv_func_mknod,
 | 
	
		
			
				|  |  | +  [AC_TRY_LINK([
 | 
	
		
			
				|  |  | +#include <sys/types.h>
 | 
	
		
			
				|  |  | +#include <sys/stat.h>],
 | 
	
		
			
				|  |  | +  [mknod (0, 0, 0)],
 | 
	
		
			
				|  |  | +  tar_cv_func_mknod=yes, tar_cv_func_mknod=no)])
 | 
	
		
			
				|  |  | +test $tar_cv_func_mknod = yes && AC_DEFINE(HAVE_MKNOD)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# Whenever both -lsocket and -lnsl are needed, it seems to be always the
 | 
	
		
			
				|  |  | +# case that gethostbyname requires -lnsl.  So, check -lnsl first, for it
 | 
	
		
			
				|  |  | +# to be in LIBS before the setsockopt checks are performed.  *However*,
 | 
	
		
			
				|  |  | +# on SINIX-N 5.43, this is false, and gethostent seems to be a better
 | 
	
		
			
				|  |  | +# candidate. So, let's use it below instead of gethostbyname, and see.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CHECK_FUNC(gethostent)
 | 
	
		
			
				|  |  | +if test $ac_cv_func_gethostent = no; then
 | 
	
		
			
				|  |  | +  AC_CHECK_LIB(nsl, gethostent)
 | 
	
		
			
				|  |  | +fi
 | 
	
		
			
				|  |  | +AC_CHECK_FUNC(setsockopt)
 | 
	
		
			
				|  |  | +if test $ac_cv_func_setsockopt = no; then
 | 
	
		
			
				|  |  | +  AC_CHECK_LIB(socket, setsockopt)
 | 
	
		
			
				|  |  | +fi
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_FUNC_ALLOCA
 | 
	
		
			
				|  |  | +AC_FUNC_FNMATCH
 | 
	
		
			
				|  |  | +test $ac_cv_func_fnmatch_works = yes || LIBOBJS="$LIBOBJS fnmatch.o"
 | 
	
		
			
				|  |  | +AC_FUNC_VPRINTF
 | 
	
		
			
				|  |  | +AC_REPLACE_FUNCS(basename dirname execlp ftruncate memset mkdir rename rmdir)
 | 
	
		
			
				|  |  | +test "$ac_cv_func_strstr" = yes || LIBOBJS="$LIBOBJS strstr.o"
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# The 3-argument open happens to go along with the O_* defines, which
 | 
	
		
			
				|  |  | +# are easier to check for.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for 3-argument open, tar_cv_func_open3,
 | 
	
		
			
				|  |  | +  [AC_TRY_COMPILE([
 | 
	
		
			
				|  |  | +#if HAVE_FCNTL_H
 | 
	
		
			
				|  |  | +# include <fcntl.h>
 | 
	
		
			
				|  |  | +#else
 | 
	
		
			
				|  |  | +# include <sys/file.h>
 | 
	
		
			
				|  |  | +#endif],
 | 
	
		
			
				|  |  | +  [int x = O_RDONLY],
 | 
	
		
			
				|  |  | +  tar_cv_func_open3=yes, tar_cv_func_open3=no)])
 | 
	
		
			
				|  |  | +if test $tar_cv_func_open3 = no; then
 | 
	
		
			
				|  |  | +  AC_DEFINE(EMUL_OPEN3)
 | 
	
		
			
				|  |  | +fi
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# `union wait' is preferrably avoided.  We merely assume below
 | 
	
		
			
				|  |  | +# that if `int pid;' fails, `union wait pid;' would have worked.
 | 
	
		
			
				|  |  | +# Directly trying `union wait pid;' is seeking for trouble, as
 | 
	
		
			
				|  |  | +# some POSIX systems are offering compatibility hacks generating
 | 
	
		
			
				|  |  | +# ugly diagnostics.  Also, on some systems, WEXITSTATUS exists,
 | 
	
		
			
				|  |  | +# but fails when called on `union wait' variables.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for union wait, tar_cv_header_union_wait,
 | 
	
		
			
				|  |  | +  [AC_TRY_COMPILE([
 | 
	
		
			
				|  |  | +#include <sys/types.h>
 | 
	
		
			
				|  |  | +#if HAVE_SYS_WAIT_H
 | 
	
		
			
				|  |  | +# include <sys/wait.h>
 | 
	
		
			
				|  |  | +#endif],
 | 
	
		
			
				|  |  | +  [int status; int pid; pid = wait (&status);],
 | 
	
		
			
				|  |  | +  tar_cv_header_union_wait=no, tar_cv_header_union_wait=yes)])
 | 
	
		
			
				|  |  | +test $tar_cv_header_union_wait = yes && AC_DEFINE(HAVE_UNION_WAIT)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_CACHE_CHECK(for remote shell, tar_cv_path_RSH,
 | 
	
		
			
				|  |  | +  [if test -n "$RSH"; then
 | 
	
		
			
				|  |  | +    tar_cv_path_RSH=$RSH
 | 
	
		
			
				|  |  | +  else
 | 
	
		
			
				|  |  | +    tar_cv_path_RSH=no
 | 
	
		
			
				|  |  | +    for ac_file in /usr/ucb/rsh /usr/bin/remsh /usr/bin/rsh /usr/bsd/rsh \
 | 
	
		
			
				|  |  | +  	/usr/bin/nsh /usr/bin/rcmd
 | 
	
		
			
				|  |  | +    do
 | 
	
		
			
				|  |  | +      if test -f $ac_file; then
 | 
	
		
			
				|  |  | +        tar_cv_path_RSH=$ac_file
 | 
	
		
			
				|  |  | +        break
 | 
	
		
			
				|  |  | +      fi
 | 
	
		
			
				|  |  | +    done
 | 
	
		
			
				|  |  | +  fi])
 | 
	
		
			
				|  |  | +if test $tar_cv_path_RSH = no; then
 | 
	
		
			
				|  |  | +  AC_CHECK_HEADERS(netdb.h)
 | 
	
		
			
				|  |  | +else
 | 
	
		
			
				|  |  | +  AC_DEFINE_UNQUOTED(REMOTE_SHELL, "$tar_cv_path_RSH")
 | 
	
		
			
				|  |  | +fi
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_MSG_CHECKING(for default archive)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +if test -z "$DEFAULT_ARCHIVE"; then
 | 
	
		
			
				|  |  | +  DEFAULT_ARCHIVE=-
 | 
	
		
			
				|  |  | +else
 | 
	
		
			
				|  |  | +  if test -z "`ls $DEFAULT_ARCHIVE 2>/dev/null`"; then
 | 
	
		
			
				|  |  | +    AC_MSG_WARN(DEFAULT_ARCHIVE \`$DEFAULT_ARCHIVE' not found on this system)
 | 
	
		
			
				|  |  | +  fi
 | 
	
		
			
				|  |  | +  # FIXME: Look for DEFTAPE in <sys/mtio.h>.
 | 
	
		
			
				|  |  | +  # FIXME: Let DEVICE_PREFIX be configured from the environment.
 | 
	
		
			
				|  |  | +  # FIXME: Rearrange, here.
 | 
	
		
			
				|  |  | +  case $DEFAULT_ARCHIVE in
 | 
	
		
			
				|  |  | +changequote(, )dnl
 | 
	
		
			
				|  |  | +    *[0-7][lmh])
 | 
	
		
			
				|  |  | +      device_prefix=`echo $DEFAULT_ARCHIVE | sed 's/[0-7][lmh]$//'`
 | 
	
		
			
				|  |  | +changequote([, ])dnl
 | 
	
		
			
				|  |  | +      AC_DEFINE_UNQUOTED(DEVICE_PREFIX, "$device_prefix")
 | 
	
		
			
				|  |  | +      AC_DEFINE(DENSITY_LETTER)
 | 
	
		
			
				|  |  | +      ;;
 | 
	
		
			
				|  |  | +changequote(, )dnl
 | 
	
		
			
				|  |  | +    *[0-7])
 | 
	
		
			
				|  |  | +      device_prefix=`echo $DEFAULT_ARCHIVE | sed 's/[0-7]$//'`
 | 
	
		
			
				|  |  | +changequote([, ])dnl
 | 
	
		
			
				|  |  | +      AC_DEFINE_UNQUOTED(DEVICE_PREFIX, "$device_prefix")
 | 
	
		
			
				|  |  | +      ;;
 | 
	
		
			
				|  |  | +  esac
 | 
	
		
			
				|  |  | +fi
 | 
	
		
			
				|  |  | +AC_DEFINE_UNQUOTED(DEFAULT_ARCHIVE, "$DEFAULT_ARCHIVE")
 | 
	
		
			
				|  |  | +AC_MSG_RESULT($DEFAULT_ARCHIVE)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_MSG_CHECKING(for default blocking)
 | 
	
		
			
				|  |  | +DEFAULT_BLOCKING=${DEFAULT_BLOCKING-20}
 | 
	
		
			
				|  |  | +AC_DEFINE_UNQUOTED(DEFAULT_BLOCKING, $DEFAULT_BLOCKING)
 | 
	
		
			
				|  |  | +AC_MSG_RESULT($DEFAULT_BLOCKING)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +fp_WITH_INCLUDED_MALLOC
 | 
	
		
			
				|  |  | +AM_WITH_DMALLOC
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AM_GNU_GETTEXT
 | 
	
		
			
				|  |  | +AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +AC_OUTPUT([Makefile doc/Makefile intl/Makefile lib/Makefile po/Makefile.in \
 | 
	
		
			
				|  |  | +scripts/Makefile src/Makefile tests/Makefile tests/preset],
 | 
	
		
			
				|  |  | +[sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile])
 |