version 1.2, 2003/11/16 17:17:02 |
version 1.8, 2007/12/10 16:02:37 |
|
|
#!/bin/sh |
#!/bin/sh |
# $OpenXM: OpenXM/src/util/oxfetch.sh,v 1.1 2003/11/14 02:58:20 ohara Exp $ |
# $OpenXM: OpenXM/src/util/oxfetch.sh,v 1.7 2006/10/13 11:51:25 ohara Exp $ |
|
|
fetch="wget --no-directories --passive-ftp --quiet --timestamping" |
MASTER_SITES="ftp://ftp.math.kobe-u.ac.jp/pub/OpenXM/misc/" |
|
fetch="wget --no-directories --passive-ftp --timestamping" |
url=$1 |
url=$1 |
distdir=${2:-.} |
distdir=${2:-.} |
distinfo=$3 |
distinfo=${3:-./distinfo} |
distfile=`basename "$url"` |
distfile=`basename "$url"` |
|
|
_usage () { |
_usage () { |
|
|
} |
} |
|
|
_fetch () { |
_fetch () { |
if [ "distfile" != "" -a ! -f "$distdir/$distfile" ]; then |
if [ "$distfile" != "" -a ! -f "$distdir/$distfile" ]; then |
(cd $distdir; $fetch $url) |
(cd $distdir; $fetch $url) |
fi |
fi |
} |
} |
|
|
# usage: cat distinfo | _md5 gc6.2.tar.gz |
# usage: _md5grep gc6.2.tar.gz distinfo |
_md5 () { |
_md5grep () { |
if [ $# -gt 0 ]; then |
if [ $# -gt 0 ]; then |
grep "^MD5 ($1) =" | sed -e "s/^MD5 ($1) = //" |
awk '/^MD5 \('"$1"'\) =/{print $NF}' $2 |
fi |
fi |
} |
} |
|
|
_check () { |
_md5sum () { |
|
md5.sh "$1" | awk '{print $NF}' |
|
} |
|
|
|
_check() { |
|
if [ ! -f "$distdir/$distfile" ]; then |
|
echo "Error: ${distfile} not found." |
|
exit 1 |
|
fi |
if [ -f "$distinfo" ]; then |
if [ -f "$distinfo" ]; then |
key1=`(cd $distdir; md5 "$distfile" ) | _md5 $distfile` |
key1=`_md5sum "${distdir}/${distfile}"` |
key2=`cat $distinfo | _md5 "$distfile"` |
key2=`_md5grep "${distfile}" ${distinfo}` |
if [ "$key1" = "$key2" ] ; then |
if [ "$key1" = "$key2" ] ; then |
echo "Checksum OK for $distfile". |
echo "Checksum OK for $distfile". |
|
elif [ -z "$key1" ]; then |
|
echo "Warnig: no md5 checker." |
else |
else |
echo "Checksum mismatch for $distfile". |
echo "Error: checksum mismatch for $distfile". |
|
exit 1 |
fi |
fi |
fi |
fi |
} |
} |
|
|
_mkdir $distdir |
_mkdir $distdir |
_fetch |
_fetch |
_check |
_check |
|
exit 0 |