implement is_remote(). fix up2date to deal with $SRCDEST properly.

This commit is contained in:
Natanael Copa 2008-11-25 11:00:29 +00:00
parent c3408b76fe
commit b9ce3c170a

41
abuild
View File

@ -129,19 +129,24 @@ uri_fetch() {
&& mv "$SRCDEST/$d.part" "$SRCDEST/$d"
}
is_remote() {
case "$1" in
http://*|ftp://*)
return 0;;
esac
return 1
}
fetch() {
local s
mkdir -p "$srcdir"
for s in $source; do
case "$s" in
http://*|ftp://*)
uri_fetch "$s" || return 1
ln -sf "$SRCDEST/${s##*/}" "$srcdir"/
;;
*)
ln -sf "$startdir/$s" "$srcdir/"
;;
esac
for s in $source; do
if is_remote "$s"; then
uri_fetch "$s" || return 1
ln -sf "$SRCDEST/${s##*/}" "$srcdir"/
else
ln -sf "$startdir/$s" "$srcdir/"
fi
done
}
@ -181,11 +186,10 @@ clean() {
cleancache() {
local s
for s in $source; do
case "$s" in
http://*|ftp://*)
msg "Cleaning downloaded ${s##*/}..."
rm -f "$SRCDEST/${s##*/}";;
esac
if is_remote "$s"; then
msg "Cleaning downloaded ${s##*/}..."
rm -f "$SRCDEST/${s##*/}"
fi
done
}
@ -377,7 +381,12 @@ up2date() {
cd "$startdir"
[ -f "$pkg" ] || return 1
for i in $source APKBUILD; do
local s="$SRCDEST/${i##*/}" # $(basename $i)
local s
if is_remote "$i"; then
s="$SRCDEST/${i##*/}" # $(basename $i)
else
s="$startdir/${i##*/}"
fi
if [ "$s" -nt "$pkg" ]; then
return 1
fi