Ticket #61276: tar_check.diff

File tar_check.diff, 2.8 KB (added by jmroot (Joshua Root), 2 years ago)

base patch to check for old gnutar and use -m

  • aclocal.m4

    diff --git a/aclocal.m4 b/aclocal.m4
    index 5777ecbd..9f66c1b6 100644
    a b AC_DEFUN([MP_TAR_FAST_READ],[ 
    11031103        AC_SUBST(TAR_Q)
    11041104])
    11051105
    1106 dnl This macro tests for tar support of --no-same-owner
    1107 AC_DEFUN([MP_TAR_NO_SAME_OWNER],[
     1106dnl This macro tests for tar support of --no-same-owner and
     1107dnl full-resolution timestamps
     1108AC_DEFUN([MP_TAR_CMD],[
    11081109        AC_PATH_PROG(TAR, [tar])
    11091110        AC_PATH_PROG(GNUTAR, [gnutar])
    11101111       
    AC_DEFUN([MP_TAR_NO_SAME_OWNER],[ 
    11211122                AC_MSG_RESULT([yes])
    11221123                TAR_CMD="$TAR_CMD --no-same-owner"
    11231124        fi
     1125
     1126        AC_MSG_CHECKING([for $TAR_CMD full-resolution timestamp support])
     1127        MP_GNUTAR_VERSION="`$TAR_CMD --version 2>&1 | grep -E 'tar \(GNU tar\) [[0-9.]]+' | cut -d " " -f 4`"
     1128        MP_GNUTAR_NEW_ENOUGH=yes
     1129        if test -n "$MP_GNUTAR_VERSION"; then
     1130            MP_GNUTAR_VERSION_MAJOR="`echo "$MP_GNUTAR_VERSION" | cut -d . -f 1`"
     1131            MP_GNUTAR_VERSION_MINOR="`echo "$MP_GNUTAR_VERSION" | cut -d . -f 1`"
     1132            if test -n "$MP_GNUTAR_VERSION_MAJOR" -a -n "$MP_GNUTAR_VERSION_MINOR"; then
     1133                if test "$MP_GNUTAR_VERSION_MAJOR" -lt 1 -o "$MP_GNUTAR_VERSION_MAJOR" -eq 1 -a "$MP_GNUTAR_VERSION_MINOR" -lt 16; then
     1134                    MP_GNUTAR_NEW_ENOUGH=no
     1135                    TAR_CMD="$TAR_CMD -m"
     1136                fi
     1137            fi
     1138        fi
     1139        AC_MSG_RESULT([$MP_GNUTAR_NEW_ENOUGH])
    11241140])
    11251141
    11261142dnl This macro tests for GNU patch
  • configure

    diff --git a/configure b/configure
    index e71cddea..8d9ad0ef 100755
    a b printf "%s\n" "yes" >&6; } 
    63866386                TAR_CMD="$TAR_CMD --no-same-owner"
    63876387        fi
    63886388
     6389        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $TAR_CMD full-resolution timestamp support" >&5
     6390printf %s "checking for $TAR_CMD full-resolution timestamp support... " >&6; }
     6391        MP_GNUTAR_VERSION="`$TAR_CMD --version 2>&1 | grep -E 'tar \(GNU tar\) [0-9.]+' | cut -d " " -f 4`"
     6392        MP_GNUTAR_NEW_ENOUGH=yes
     6393        if test -n "$MP_GNUTAR_VERSION"; then
     6394            MP_GNUTAR_VERSION_MAJOR="`echo "$MP_GNUTAR_VERSION" | cut -d . -f 1`"
     6395            MP_GNUTAR_VERSION_MINOR="`echo "$MP_GNUTAR_VERSION" | cut -d . -f 1`"
     6396            if test -n "$MP_GNUTAR_VERSION_MAJOR" -a -n "$MP_GNUTAR_VERSION_MINOR"; then
     6397                if test "$MP_GNUTAR_VERSION_MAJOR" -lt 1 -o "$MP_GNUTAR_VERSION_MAJOR" -eq 1 -a "$MP_GNUTAR_VERSION_MINOR" -lt 16; then
     6398                    MP_GNUTAR_NEW_ENOUGH=no
     6399                    TAR_CMD="$TAR_CMD -m"
     6400                fi
     6401            fi
     6402        fi
     6403        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MP_GNUTAR_NEW_ENOUGH" >&5
     6404printf "%s\n" "$MP_GNUTAR_NEW_ENOUGH" >&6; }
     6405
    63896406
    63906407        # Extract the first word of "patch", so it can be a program name with args.
    63916408set dummy patch; ac_word=$2
  • configure.ac

    diff --git a/configure.ac b/configure.ac
    index d06d62b7..6c1ebf0d 100644
    a b if test "x$MTREE" = "x"; then 
    183183fi
    184184
    185185MP_TAR_FAST_READ
    186 MP_TAR_NO_SAME_OWNER
     186MP_TAR_CMD
    187187MP_PATCH_GNU_VERSION
    188188
    189189# Quiche eaters options.