summaryrefslogtreecommitdiff
path: root/abuild.in
diff options
context:
space:
mode:
Diffstat (limited to 'abuild.in')
-rwxr-xr-xabuild.in33
1 files changed, 20 insertions, 13 deletions
diff --git a/abuild.in b/abuild.in
index c7168ee..c6f85c1 100755
--- a/abuild.in
+++ b/abuild.in
@@ -14,16 +14,9 @@ apkcache=@apkcache@
datadir=@datadir@
program=${0##*/}
-startdir="$PWD"
-srcdir=${srcdir:-"$startdir/src"}
-pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
-pkgrel=0
-repo=${startdir%/*}
-repo=${repo##*/}
+abuild_path=$(readlink -f $0)
# defaults
-SRCDEST=${SRCDEST:-$startdir}
-PKGDEST=${PKGDEST:-$startdir}
BUILD_BASE="build-base"
SUDO=${SUDO:-"sudo"}
@@ -635,7 +628,8 @@ rootpkg() {
fi
cd "$startdir"
msg "Entering fakeroot..."
- fakeroot $0 $do_build prepare_subpackages prepare_package create_apks
+ fakeroot "$abuild_path" $do_build prepare_subpackages prepare_package \
+ create_apks
}
srcpkg() {
@@ -1017,15 +1011,28 @@ while getopts "dfhi:kinp:P:qrRs:u" opt; do
done
shift $(( $OPTIND - 1 ))
+# find startdir
+[ -f "$APKBUILD" ] || die "Could not find $APKBUILD (PWD=$PWD)"
+APKBUILD=$(readlink -f "$APKBUILD")
+
+startdir="${APKBUILD%/*}"
+srcdir=${srcdir:-"$startdir/src"}
+pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+pkgrel=0
+repo=${startdir%/*}
+repo=${repo##*/}
+
+SRCDEST=${SRCDEST:-$startdir}
+PKGDEST=${PKGDEST:-$startdir}
+
+cd "$startdir" || die
+. "$APKBUILD"
+
# If REPODEST is set then it will override the PKGDEST
if [ -n "$REPODEST" ]; then
PKGDEST="$REPODEST/$repo"
fi
-# source the buildfile
-[ -f "$APKBUILD" ] || die "Could not find $APKBUILD (PWD=$PWD)"
-. "$APKBUILD"
-
# If we are handling a sub package then reset subpackages and install
if [ -n "$subpkgname" ]; then
origsubpackages="$subpackages"