From f197c51d788aacc1be4724521a9842c97b7c9d65 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Fri, 15 Feb 2013 13:05:39 +0000 Subject: buildrepo: speed up by avoiding forks --- buildrepo.in | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/buildrepo.in b/buildrepo.in index 7ed2643..51031b1 100755 --- a/buildrepo.in +++ b/buildrepo.in @@ -53,12 +53,24 @@ build() { [ -f "$aportsdir/$repo/$i" ] || continue export REPODEST="$repodir" cd "$aportsdir/$repo"/${i%/*} || return 1 - if abuild -k -q up2date 2>/dev/null; then + pkgname= + pkgver= + pkgrel= + subpackages= + . ./APKBUILD + + pkgs= + for subpkg in $pkgname $subpackages; do + pkgfile=${subpkg%:*}-$pkgver-r$pkgrel.apk + if ! [ -f "$REPODEST/$repo/$CARCH/$pkgfile" ]; then + pkgs="$pkgs $pkgfile" + fi + done + if [ -z "$pkgs" ]; then continue fi # try link or copy the files if they are in the ports dir - pkgs=$(abuild listpkg) if all_exist $pkgs; then echo ">>> Copying " $pkgs cp -p -l $pkgs "$repodir/$repo/$arch"/ 2>/dev/null \ -- cgit v1.2.3-60-g2f50