Generate the version string with awk on BSD systems and work around wrong

day/month order in the ls output.
based on a patch by Chris Roccati <roccati - at - pobox - dot - com>


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15650 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
diego 2005-06-05 17:38:10 +00:00
parent a32c084b97
commit 4261c52c85
1 changed files with 11 additions and 8 deletions

View File

@ -18,14 +18,17 @@ case "$OS" in
Darwin|*BSD)
# BSD 'date -r' does not print modification time
# LC_ALL=C sets month/day order and English language in the date string
LS=`LC_ALL=C ls -lT CVS/Entries`
year=`echo $LS | cut -d' ' -f9 | cut -c 3-4`
month=`echo $LS | awk -F" " '{printf "%.2d", \
(index("JanFebMarAprMayJunJulAugSepOctNovDec",$6)+2)/3}'`
day=`printf %.2d \` echo $LS | cut -d' ' -f7 \` `
hour=`echo $LS | cut -d' ' -f8 | cut -d: -f1`
minute=`echo $LS | cut -d' ' -f8 | cut -d: -f2`
last_cvs_update="${year}${month}${day}-${hour}:${minute}"
# The if in the awk call works around wrong day/month order.
last_cvs_update=`LC_ALL=C ls -lT CVS/Entries | \
awk '{ \
day=$7; \
month=index(" JanFebMarAprMayJunJulAugSepOctNovDec", $6); \
if(month==0) { \
day=$6; \
month=index(" JanFebMarAprMayJunJulAugSepOctNovDec",$7); } \
printf("%s%.02d%.02d-%s", \
substr($9, 3, 2), (month+1)/3, day, substr($8, 0, 5)); \
}'`
;;
*)
last_cvs_update=`date +%y%m%d-%H:%M`