From: Stefano Lattarini Date: Sun, 30 Oct 2011 09:30:09 +0000 (+0100) Subject: missing: inform the user if GNU tar is called X-Git-Tag: v1.11.2b~18^2~18^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a930b7d18bfd011647c84def5fef69e3880a2686;p=thirdparty%2Fautomake.git missing: inform the user if GNU tar is called * lib/missing: If the code trying to run GNU tar is reached, it means that the previous attempt to run the default tar program has failed, very likely producing some error message. At this point, just running GNU tar without further comments might be confusing. --- diff --git a/ChangeLog b/ChangeLog index 92297ecfe..ec3aec105 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2011-12-22 Stefano Lattarini + + missing: inform the user if GNU tar is called + * lib/missing: If the code trying to run GNU tar is reached, it + means that the previous attempt to run the default tar program + has failed, very likely producing some error message. At this + point, just running GNU tar without further comments might be + confusing. + 2011-12-22 Stefano Lattarini missing: if GNU tar exists but fails when called, give up diff --git a/lib/missing b/lib/missing index 411123ff7..46f33bf07 100755 --- a/lib/missing +++ b/lib/missing @@ -322,12 +322,13 @@ WARNING: \`$1' is $msg. You should only need it if shift # We have already tried tar in the generic part. So try with GNU tar. # Look for gnutar/gtar before invocation to avoid ugly error messages. - if (gnutar --version) > /dev/null 2>&1; then - exec gnutar "$@" - fi - if (gtar --version) > /dev/null 2>&1; then - exec gtar "$@" - fi + for cmd in gnutar gtar; do + ($cmd --version) > /dev/null 2>&1 || continue + echo 1>&2 "\ +WARNING: I can't seem to be able to run \`tar' with the given arguments. + Trying to use GNU tar (\"$cmd\") instead ..." + exec $cmd "$@" + done firstarg=$1 if shift; then case $firstarg in