1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
diff -rupN orig/abuild-2.1/abuild.in src/abuild-2.1/abuild.in
--- orig/abuild-2.1/abuild.in 2009-12-30 04:05:49.000000000 -0500
+++ src/abuild-2.1/abuild.in 2010-04-29 09:21:43.000000000 -0400
@@ -149,12 +149,11 @@ md5check() {
uri_fetch() {
local uri="$1"
- local d="${s##*/}" # $(basename $s)
+ local d="${uri##*/}" # $(basename $uri)
local opts
[ -n "$quiet" ] && opts="-q"
[ -f "$SRCDEST/$d" ] && return 0
-
# we need GNU wget for this
case "$uri" in
https://*) opts="--no-check-certificate";;
@@ -178,12 +177,22 @@ is_remote() {
return 1
}
+# try download from file from mirror first
+uri_fetch_mirror() {
+ local uri="$1"
+ local d="${uri##*/}" # $(basename $uri)
+ if [ -n "$DISTFILES_MIRROR" ]; then
+ uri_fetch "$DISTFILES_MIRROR"/$d && return 0
+ fi
+ uri_fetch "$uri"
+}
+
default_fetch() {
local s
mkdir -p "$srcdir"
for s in $source; do
if is_remote "$s"; then
- uri_fetch "$s" || return 1
+ uri_fetch_mirror "$s" || return 1
ln -sf "$SRCDEST/${s##*/}" "$srcdir"/
else
ln -sf "$startdir/$s" "$srcdir/"
@@ -308,6 +317,12 @@ build() {
:
}
+# generate a simple tar.gz package of pkgdir
+targz() {
+ cd "$pkgdir" || return 1
+ tar -czf "$PKGDEST"/$pkgname-$pkgver-r$pkgrel.tar.gz *
+}
+
get_split_func() {
# get the 'func' from "sub-pkg:func"
local func=${1##*:}
@@ -712,8 +727,8 @@ up2date() {
depparse_aports() {
# lets run this in a subshell since we source all APKBUILD here
(
- aportsdir=$(realpath ${APKBUILD%/APKBUILD}/../..)
- for i in $aportsdir/*/*/APKBUILD; do
+ aportsdir=$(realpath ${APKBUILD%/APKBUILD}/..)
+ for i in $aportsdir/*/APKBUILD; do
pkgname=
subpackages=
depends=
@@ -811,7 +826,13 @@ builddeps() {
uninstall_after=".makedepends-$pkgname $uninstall_after"
if [ -n "$install_deps" ] && [ -z "$recursive" ]; then
+ # make a --simluate run first to detect missing deps
+ # apk-tools --virtual is no goot at reporting those.
+ $SUDO apk add --repository "$apkcache" \
+ --wait 30 \
+ --simulate --quiet $deps || return 1
$SUDO apk add --repository "$apkcache" \
+ --wait 30 \
--virtual .makedepends-$pkgname $deps \
&& return 0
fi
@@ -834,6 +855,7 @@ builddeps() {
cd "$dir" && $0 -k -r apkcache || return 1
done
$SUDO apk add -u --repository "$apkcache" \
+ --wait 30 \
--virtual .makedepends-$pkgname $deps
}
@@ -945,12 +967,13 @@ post_add() {
post_add $i || return 1
fi
done
- $SUDO apk add -u "$pkgf" || die "Failed to install $1"
+ $SUDO apk add --wait 30 -u "$pkgf" || die "Failed to install $1"
}
installdeps() {
local deps i
- sudo apk add --repository "$apkcache" --virtual .makedepends-$pkgname \
+ sudo apk add --wait 30 --repository "$apkcache" \
+ --virtual .makedepends-$pkgname \
$makedepends
}
|