X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=configure.ac;h=afed24d0ac8573da72d4532d355505dc2eeb92aa;hb=430b13959253a55ec17f6f72cfa94d867c913319;hp=92f3670a9e4ea90a22a02b9424aa1bf7a52d6ff5;hpb=d58eaa815d7afe37a30cd111c3de687b0913fb6a;p=chaz%2Ftar diff --git a/configure.ac b/configure.ac index 92f3670..afed24d 100644 --- a/configure.ac +++ b/configure.ac @@ -18,7 +18,7 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA # 02111-1307, USA. -AC_INIT([GNU tar], [1.13.94], [bug-tar@gnu.org]) +AC_INIT([GNU tar], [1.14.90], [bug-tar@gnu.org]) AC_CONFIG_SRCDIR([src/tar.c]) AC_CONFIG_AUX_DIR([config]) AC_CONFIG_HEADERS([config.h:config.hin]) @@ -36,25 +36,32 @@ AC_C_INLINE AC_CHECK_HEADERS(fcntl.h linux/fd.h memory.h net/errno.h \ sgtty.h string.h \ - sys/buf.h sys/device.h sys/gentape.h \ + sys/param.h sys/device.h sys/gentape.h \ sys/inet.h sys/io/trioctl.h \ sys/mtio.h sys/time.h sys/tprintf.h sys/tape.h \ unistd.h) +AC_CHECK_HEADERS([sys/buf.h], [], [], +[#if HAVE_SYS_PARAM_H +#include +#endif]) + AC_HEADER_SYS_WAIT AM_STDBOOL_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([ +enable_rmt() { + 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 #endif #include ], - tar_cv_header_rmt=yes, tar_cv_header_rmt=no)]) - test $tar_cv_header_rmt = yes && RMT='rmt$(EXEEXT)' - AC_SUBST(RMT) -fi + 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(which ioctl field to test for reversed bytes, tar_cv_header_mtio_check_field, @@ -96,9 +103,9 @@ 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 @@ -127,7 +134,6 @@ LIBS=$tar_save_LIBS AC_CHECK_FUNCS(fsync lstat mkfifo readlink strerror symlink setlocale utimes) AC_CHECK_DECLS([getgrgid],,, [#include ]) AC_CHECK_DECLS([getpwuid],,, [#include ]) -AC_CHECK_DECLS([valloc]) AC_CHECK_DECLS([time],,, [#include ]) # Set LIB_SETSOCKOPT to -lnsl -lsocket if necessary. @@ -175,6 +181,9 @@ fi AC_MSG_CHECKING(for default archive format) +AC_ARG_VAR([DEFAULT_ARCHIVE_FORMAT], + [Set the default archive format. Allowed values are: V7, OLDGNU, USTAR, POSIX, GNU. Default is GNU]) + if test -z "$DEFAULT_ARCHIVE_FORMAT"; then DEFAULT_ARCHIVE_FORMAT="GNU" fi @@ -188,6 +197,8 @@ AC_MSG_RESULT($DEFAULT_ARCHIVE_FORMAT) AC_MSG_CHECKING(for default archive) +AC_ARG_VAR([DEFAULT_ARCHIVE], + [Set the name of the default archive (default: -)]) if test -z "$DEFAULT_ARCHIVE"; then DEFAULT_ARCHIVE=- else @@ -221,12 +232,45 @@ AC_DEFINE_UNQUOTED(DEFAULT_ARCHIVE, "$DEFAULT_ARCHIVE", [Define to a string giving the full name of the default archive file.]) AC_MSG_RESULT($DEFAULT_ARCHIVE) +AC_ARG_VAR([DEFAULT_BLOCKING], + [Define default blocking factor (default: 20)]) AC_MSG_CHECKING(for default blocking) DEFAULT_BLOCKING=${DEFAULT_BLOCKING-20} AC_DEFINE_UNQUOTED(DEFAULT_BLOCKING, $DEFAULT_BLOCKING, [Define to a number giving the default blocking size for archives.]) AC_MSG_RESULT($DEFAULT_BLOCKING) +AC_ARG_VAR([DEFAULT_RMT_DIR], + [Define full file name of the directory where to install `rmt'. (default: $(libexecdir))]) +if test "x$DEFAULT_RMT_DIR" != x; then + DEFAULT_RMT_COMMAND=$DEFAULT_RMT_DIR/rmt +else + DEFAULT_RMT_DIR='$(libexecdir)' +fi + +AC_MSG_CHECKING([whether to build rmt]) +AC_ARG_WITH([rmt], + AC_HELP_STRING([--with-rmt=FILE], + [Use FILE as the default `rmt' program. Do not build included copy of `rmt'.]), + [case $withval in + yes|no) AC_MSG_ERROR([Invalid argument to --with-rmt]);; + /*) DEFAULT_RMT_COMMAND=$withval + AC_MSG_RESULT([no, use $withval instead]);; + *) AC_MSG_ERROR([Argument to --with-rmt must be an absolute file name]);; + esac], + [AC_MSG_RESULT([yes]) + enable_rmt + if test "$RMT" = ""; then + AC_MSG_WARN([not building rmt, required header files are missing]) + fi]) + +AC_SUBST(DEFAULT_RMT_COMMAND) +if test "x$DEFAULT_RMT_COMMAND" != x; then + AC_DEFINE_UNQUOTED(DEFAULT_RMT_COMMAND, "$DEFAULT_RMT_COMMAND", + [Define full file name of rmt program.]) +fi + + # Gettext. AM_GNU_GETTEXT([external], [need-ngettext]) AM_GNU_GETTEXT_VERSION(0.12.1) @@ -243,6 +287,17 @@ AC_CHECK_TYPE(iconv_t,:, #endif ]) +AC_SUBST(BACKUP_LIBEXEC_SCRIPTS) +AC_SUBST(BACKUP_SBIN_SCRIPTS) +AC_ARG_ENABLE(backup-scripts, + AC_HELP_STRING([--enable-backup-scripts], + [Create and install backup and restore scripts]), + [case $enableval in + yes) BACKUP_LIBEXEC_SCRIPTS='$(BACKUP_LIBEXEC_SCRIPTS_LIST)' + BACKUP_SBIN_SCRIPTS='$(BACKUP_SBIN_SCRIPTS_LIST)' + ;; + esac]) + AC_SUBST(BACKUP_SED_COND) if date +%Y-%m-%d 2>/dev/null >&2; then BACKUP_SED_COND='/^\#ELSE_DATE_FORMAT_OK/,/^\#ENDIF_DATE_FORMAT_OK/d;/^\#IF_DATE_FORMAT_OK/d'