]> Dogcows Code - chaz/tar/blobdiff - configure.ac
Support for POSIX ACLs
[chaz/tar] / configure.ac
index 0a3bfcacd566fac4eb7cb26315fd8c608d0cc665..3e501a82d091da4ce56f6a6b378f00e30846bb75 100644 (file)
@@ -1,11 +1,12 @@
-# Configure template for GNU tar.
+# Configure template for GNU tar.  -*- autoconf -*-
 
 # Copyright (C) 1991, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
+# Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
+# the Free Software Foundation; either version 3, or (at your option)
 # any later version.
 
 # This program is distributed in the hope that it will be useful,
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 # 02110-1301, USA.
 
-AC_INIT([GNU tar], [1.15.2], [bug-tar@gnu.org])
+AC_INIT([GNU tar], [1.26.90], [bug-tar@gnu.org])
 AC_CONFIG_SRCDIR([src/tar.c])
 AC_CONFIG_AUX_DIR([build-aux])
-AC_CONFIG_HEADERS([config.h:config.hin])
-AC_PREREQ([2.59])
-AM_INIT_AUTOMAKE([1.8 gnits dist-bzip2 dist-shar std-options])
+AC_CONFIG_HEADERS([config.h])
+AC_PREREQ([2.63])
+AM_INIT_AUTOMAKE([1.11 gnits tar-ustar dist-bzip2 dist-xz dist-shar std-options silent-rules])
+
+# Enable silent rules by default:
+AM_SILENT_RULES([yes])
 
-gl_USE_SYSTEM_EXTENSIONS
 AC_PROG_CC
 AC_EXEEXT
 AC_PROG_RANLIB
 AC_PROG_YACC
+gl_EARLY
+
 AC_SYS_LARGEFILE
 AC_ISC_POSIX
 AC_C_INLINE
 
-AC_CHECK_HEADERS(fcntl.h linux/fd.h memory.h net/errno.h \
+AC_CHECK_HEADERS_ONCE(fcntl.h linux/fd.h memory.h net/errno.h \
   sgtty.h string.h \
   sys/param.h sys/device.h sys/gentape.h \
   sys/inet.h sys/io/trioctl.h \
@@ -47,14 +52,12 @@ AC_CHECK_HEADERS([sys/buf.h], [], [],
 #endif])
 
 AC_HEADER_SYS_WAIT
-AM_STDBOOL_H
 
 AC_HEADER_DIRENT
 AC_HEADER_MAJOR
 AC_HEADER_STAT
 AC_HEADER_STDC
-AC_STRUCT_ST_BLKSIZE
-AC_STRUCT_ST_BLOCKS
+
 AC_MSG_CHECKING([for st_fstype string in struct stat])
 AC_CACHE_VAL(diff_cv_st_fstype_string,
   [AC_TRY_COMPILE([#include <sys/types.h>
@@ -81,36 +84,35 @@ AC_CHECK_TYPE(dev_t, unsigned)
 AC_CHECK_TYPE(ino_t, unsigned)
 
 gt_TYPE_SSIZE_T
-gl_AC_TYPE_INTMAX_T
-jm_AC_TYPE_UINTMAX_T
 
 # gnulib modules
-tar_GNULIB
+gl_INIT
 # paxutils modules
 tar_PAXUTILS
 
-AC_CHECK_MEMBERS([struct stat.st_spare1, struct stat.st_atim.tv_nsec, struct stat.st_atimespec.tv_nsec, struct stat.st_atimensec], , ,
-                 [
-#include <sys/types.h>
-#include <sys/stat.h>])
-
-# Save and restore LIBS so e.g., -lrt, isn't added to it.  Otherwise, *all*
-# programs in the package would end up linked with that potentially-shared
-# library, inducing unnecessary run-time overhead.
-
-# Solaris 2.5.1 needs -lposix4 to get the clock_gettime function.
-# Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
-tar_save_LIBS=$LIBS
-  LIB_CLOCK_GETTIME=
-  AC_SEARCH_LIBS(clock_gettime, [rt posix4])
-  case "$ac_cv_search_clock_gettime" in
-    -l*) LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime;;
-  esac
-  AC_SUBST(LIB_CLOCK_GETTIME)
-  AC_CHECK_FUNCS(clock_gettime)
-LIBS=$tar_save_LIBS
+TAR_HEADERS_ATTR_XATTR_H
+
+AC_CHECK_FUNCS_ONCE([fchmod fchown fsync lstat mkfifo readlink symlink])
+
+# we use gnulib's acl.h - because of very useful file_has_acl() function.  M4
+# file from gnulib/acl does a quite good job of course.  The problem is that
+# this function works on wide list of platforms and we need to restrict tar to
+# use POSIX.1e ACLs only.
+AC_ARG_WITH([posix-acls],
+    AS_HELP_STRING([--without-posix-acls],
+                   [do not use POSIX.1e access control lists]),
+    [with_posix_acls=no])
+AC_CHECK_HEADERS(sys/acl.h,, [with_posix_acl=no])
+AC_SEARCH_LIBS([acl_get_file],  [acl pacl],, [with_posix_acl=no])
+AC_SEARCH_LIBS([acl_get_fd],    [acl pacl],, [with_posix_acl=no])
+AC_SEARCH_LIBS([acl_set_file],  [acl pacl],, [with_posix_acl=no])
+AC_SEARCH_LIBS([acl_set_fd],    [acl pacl],, [with_posix_acl=no])
+AC_SEARCH_LIBS([acl_to_text],   [acl pacl],, [with_posix_acl=no])
+AC_SEARCH_LIBS([acl_from_text], [acl pacl],, [with_posix_acl=no])
+if test "x$with_posix_acls" != xno; then
+  AC_DEFINE(HAVE_POSIX_ACLS,,[Define when we have working POSIX acls])
+fi
 
-AC_CHECK_FUNCS(fsync lstat mkfifo readlink strerror symlink setlocale utimes)
 AC_CHECK_DECLS([getgrgid],,, [#include <grp.h>])
 AC_CHECK_DECLS([getpwuid],,, [#include <pwd.h>])
 AC_CHECK_DECLS([time],,, [#include <time.h>])
@@ -145,6 +147,14 @@ else
     [Define to the full path of your rsh, if any.])
 fi
 
+TAR_COMPR_PROGRAM(compress)
+TAR_COMPR_PROGRAM(gzip)
+TAR_COMPR_PROGRAM(bzip2)
+TAR_COMPR_PROGRAM(lzip)
+TAR_COMPR_PROGRAM(lzma)
+TAR_COMPR_PROGRAM(lzop)
+TAR_COMPR_PROGRAM(xz)
+
 AC_MSG_CHECKING(for default archive format)
 
 AC_ARG_VAR([DEFAULT_ARCHIVE_FORMAT],
@@ -169,7 +179,7 @@ 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)
+    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.
@@ -177,7 +187,7 @@ else
   case $DEFAULT_ARCHIVE in
     *[[0-7][lmh]])
       AC_DEFINE(DENSITY_LETTER, 1,
-       [[Define to 1 if density may be indicated by [lmh] at end of device.]])
+       [Define to 1 if density may be indicated by [lmh] at end of device.])
       device_prefix=`echo $DEFAULT_ARCHIVE | sed 's/[0-7][lmh]$//'`
       ;;
     *[[0-7]])
@@ -206,6 +216,23 @@ AC_DEFINE_UNQUOTED(DEFAULT_BLOCKING, $DEFAULT_BLOCKING,
   [Define to a number giving the default blocking size for archives.])
 AC_MSG_RESULT($DEFAULT_BLOCKING)
 
+AC_MSG_CHECKING(for default quoting style)
+
+m4_define([QUOTING_STYLES],dnl
+          [literal|shell|shell-always|c|escape|locale|clocale])
+DEFAULT_QUOTING_STYLE="escape"
+AC_ARG_VAR([DEFAULT_QUOTING_STYLE],
+           [Set the default quoting style. Allowed values are: ] m4_bpatsubst(QUOTING_STYLES,[|], [[, ]]) [. Default is "escape".])
+
+case $DEFAULT_QUOTING_STYLE in
+QUOTING_STYLES) ;;
+*)  AC_MSG_ERROR(Invalid quoting style);;
+esac
+AC_MSG_RESULT($DEFAULT_QUOTING_STYLE)
+DEFAULT_QUOTING_STYLE=`echo ${DEFAULT_QUOTING_STYLE}|sed 's/-/_/g'`_quoting_style
+AC_DEFINE_UNQUOTED(DEFAULT_QUOTING_STYLE, $DEFAULT_QUOTING_STYLE,
+  [Define to a default quoting style (see lib/quoteargs.c for the list)])
+
 # Iconv
 AM_ICONV
 AC_CHECK_HEADERS(iconv.h)
@@ -219,8 +246,8 @@ AC_CHECK_TYPE(iconv_t,:,
 ])
 
 # Gettext.
-AM_GNU_GETTEXT([external], [need-ngettext])
-AM_GNU_GETTEXT_VERSION(0.12.1)
+AM_GNU_GETTEXT([external], [need-formatstring-macros])
+AM_GNU_GETTEXT_VERSION([0.16])
 
 # Initialize the test suite.
 AC_CONFIG_TESTDIR(tests)
@@ -245,9 +272,9 @@ else
        BACKUP_SED_COND='/^\#IF_DATE_FORMAT_OK/,/^\#ELSE_DATE_FORMAT_OK/d;/^\#ENDIF_DATE_FORMAT_OK/d'
 fi
 
-
 AC_OUTPUT([Makefile\
            doc/Makefile\
+          gnu/Makefile\
            lib/Makefile\
            po/Makefile.in\
            scripts/Makefile\
This page took 0.026214 seconds and 4 git commands to generate.