projects
/
gnulib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
pselect: document better
[gnulib.git]
/
build-aux
/
mdate-sh
diff --git
a/build-aux/mdate-sh
b/build-aux/mdate-sh
index
4b2efdf
..
60dc485
100755
(executable)
--- a/
build-aux/mdate-sh
+++ b/
build-aux/mdate-sh
@@
-1,10
+1,10
@@
#!/bin/sh
# Get modification time of a file or directory and pretty-print it.
#!/bin/sh
# Get modification time of a file or directory and pretty-print it.
-scriptversion=20
05-02-07.09
+scriptversion=20
10-08-21.06; # UTC
-# Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005
Free Software
-# Foundation, Inc.
+# Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005
, 2007, 2009, 2010
+# F
ree Software F
oundation, Inc.
# written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995
#
# This program is free software; you can redistribute it and/or modify
# written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995
#
# This program is free software; you can redistribute it and/or modify
@@
-18,8
+18,7
@@
scriptversion=2005-02-07.09
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@
-30,6
+29,15
@@
scriptversion=2005-02-07.09
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+fi
+
case $1 in
'')
echo "$0: No file. Try \`$0 --help' for more information." 1>&2
case $1 in
'')
echo "$0: No file. Try \`$0 --help' for more information." 1>&2
@@
-39,7
+47,8
@@
case $1 in
cat <<\EOF
Usage: mdate-sh [--help] [--version] FILE
cat <<\EOF
Usage: mdate-sh [--help] [--version] FILE
-Pretty-print the modification time of FILE.
+Pretty-print the modification day of FILE, in the format:
+1 January 1970
Report bugs to <bug-automake@gnu.org>.
EOF
Report bugs to <bug-automake@gnu.org>.
EOF
@@
-51,6
+60,13
@@
EOF
;;
esac
;;
esac
+error ()
+{
+ echo "$0: $1" >&2
+ exit 1
+}
+
+
# Prevent date giving response in another language.
LANG=C
export LANG
# Prevent date giving response in another language.
LANG=C
export LANG
@@
-59,7
+75,15
@@
export LC_ALL
LC_TIME=C
export LC_TIME
LC_TIME=C
export LC_TIME
-save_arg1="$1"
+# GNU ls changes its time format in response to the TIME_STYLE
+# variable. Since we cannot assume `unset' works, revert this
+# variable to its documented default.
+if test "${TIME_STYLE+set}" = set; then
+ TIME_STYLE=posix-long-iso
+ export TIME_STYLE
+fi
+
+save_arg1=$1
# Find out how to get the extended ls output of a file or directory.
if ls -L /dev/null 1>/dev/null 2>&1; then
# Find out how to get the extended ls output of a file or directory.
if ls -L /dev/null 1>/dev/null 2>&1; then
@@
-67,6
+91,10
@@
if ls -L /dev/null 1>/dev/null 2>&1; then
else
ls_command='ls -l -d'
fi
else
ls_command='ls -l -d'
fi
+# Avoid user/group names that might have spaces, when possible.
+if ls -n /dev/null 1>/dev/null 2>&1; then
+ ls_command="$ls_command -n"
+fi
# A `ls -l' line looks as follows on OS/2.
# drwxrwx--- 0 Aug 11 2001 foo
# A `ls -l' line looks as follows on OS/2.
# drwxrwx--- 0 Aug 11 2001 foo
@@
-81,13
+109,14
@@
fi
# words should be skipped to get the date.
# On HPUX /bin/sh, "set" interprets "-rw-r--r--" as options, so the "x" below.
# words should be skipped to get the date.
# On HPUX /bin/sh, "set" interprets "-rw-r--r--" as options, so the "x" below.
-set x`
ls -l -
d /`
+set x`
$ls_comman
d /`
# Find which argument is the month.
month=
command=
until test $month
do
# Find which argument is the month.
month=
command=
until test $month
do
+ test $# -gt 0 || error "failed parsing \`$ls_command /' output"
shift
# Add another shift to the command.
command="$command shift;"
shift
# Add another shift to the command.
command="$command shift;"
@@
-107,8
+136,10
@@
do
esac
done
esac
done
+test -n "$month" || error "failed parsing \`$ls_command /' output"
+
# Get the extended ls output of the file or directory.
# Get the extended ls output of the file or directory.
-set dummy x`eval "$ls_command \"\$save_arg1\""`
+set dummy x`eval "$ls_command \"\
\\
$save_arg1\""`
# Remove all preceding arguments
eval $command
# Remove all preceding arguments
eval $command
@@
-189,5
+220,6
@@
echo $day $month $year
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
# End: