This means multiple packages can be build using the same BUILDDIR
without their source files all ending up extracted in the same
directory.  Fixes FS#28417.

Signed-off-by: Allan McRae <al...@archlinux.org>
---
 scripts/makepkg.sh.in |   10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 89cd118..8763ffb 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -2061,8 +2061,6 @@ if [[ ! -w $BUILDDIR ]]; then
        plain "$(gettext "Aborting...")"
        exit 1
 fi
-srcdir="$BUILDDIR/src"
-pkgdir="$BUILDDIR/pkg"
 
 PKGDEST=${_PKGDEST:-$PKGDEST}
 PKGDEST=${PKGDEST:-$startdir} #default to $startdir if undefined
@@ -2159,6 +2157,14 @@ fi
 pkgbase=${pkgbase:-${pkgname[0]}}
 epoch=${epoch:-0}
 
+if [[ $BUILDDIR = "$startdir" ]]; then
+       srcdir="$BUILDDIR/src"
+       pkgdir="$BUILDDIR/pkg"
+else
+       srcdir="$BUILDDIR/$pkgbase/src"
+       pkgdir="$BUILDDIR/$pkgbase/pkg"
+fi
+
 if (( GENINTEG )); then
        mkdir -p "$srcdir"
        chmod a-s "$srcdir"
-- 
1.7.9.3


Reply via email to