From 4f67c2665272ccf353a4bdee9a769e4a08d28840 Mon Sep 17 00:00:00 2001
From: Juan RP <xtraeme@voidlinux.eu>
Date: Sat, 2 May 2015 03:40:52 +0200
Subject: [PATCH] xbps-src: force autodeps cleanup while building dependencies.

Before that change, "./xbps-src -C pkg foo" would not remove dependencies
installed by previous builds required by foo.
---
 common/xbps-src/libexec/build.sh              | 2 +-
 common/xbps-src/shutils/build_dependencies.sh | 6 ++++--
 common/xbps-src/shutils/pkgtarget.sh          | 2 --
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/xbps-src/libexec/build.sh b/common/xbps-src/libexec/build.sh
index b71e1c0bfe..67a7dba901 100755
--- a/common/xbps-src/libexec/build.sh
+++ b/common/xbps-src/libexec/build.sh
@@ -83,7 +83,7 @@ if declare -f do_clean >/dev/null; then
     run_func do_clean
 fi
 
-if [ -z "$XBPS_KEEP_ALL" ]; then
+if [ -n "$XBPS_DEPENDENCY" -o -z "$XBPS_KEEP_ALL" ]; then
     remove_pkg_autodeps
     remove_pkg_wrksrc
     remove_pkg $XBPS_CROSS_BUILD
diff --git a/common/xbps-src/shutils/build_dependencies.sh b/common/xbps-src/shutils/build_dependencies.sh
index af7e11f2d3..5fa38b4832 100644
--- a/common/xbps-src/shutils/build_dependencies.sh
+++ b/common/xbps-src/shutils/build_dependencies.sh
@@ -344,7 +344,8 @@ install_pkg_deps() {
         (
         curpkgdepname=$($XBPS_UHELPER_CMD getpkgname "$i" 2>/dev/null)
         setup_pkg $curpkgdepname $cross
-        exec env XBPS_BINPKG_EXISTS=1 $XBPS_LIBEXECDIR/build.sh $sourcepkg $pkg $target $cross $cross_prepare || exit $?
+        exec env XBPS_DEPENDENCY=1 XBPS_BINPKG_EXISTS=1 \
+            $XBPS_LIBEXECDIR/build.sh $sourcepkg $pkg $target $cross $cross_prepare || exit $?
         ) || exit $?
         binpkg_deps+=("$i")
     done
@@ -361,7 +362,8 @@ install_pkg_deps() {
             fi
         fi
         setup_pkg $curpkgdepname $cross
-        exec env XBPS_BINPKG_EXISTS=1 $XBPS_LIBEXECDIR/build.sh $sourcepkg $pkg $target $cross $cross_prepare || exit $?
+        exec env XBPS_DEPENDENCY=1 XBPS_BINPKG_EXISTS=1 \
+            $XBPS_LIBEXECDIR/build.sh $sourcepkg $pkg $target $cross $cross_prepare || exit $?
         ) || exit $?
     done
 
diff --git a/common/xbps-src/shutils/pkgtarget.sh b/common/xbps-src/shutils/pkgtarget.sh
index 6a21c97e40..abdf608823 100644
--- a/common/xbps-src/shutils/pkgtarget.sh
+++ b/common/xbps-src/shutils/pkgtarget.sh
@@ -43,8 +43,6 @@ pkg_available() {
 remove_pkg_autodeps() {
     local rval= tmplogf=
 
-    [ -n "$XBPS_KEEP_ALL" ] && return 0
-
     cd $XBPS_MASTERDIR || return 1
     msg_normal "${pkgver:-xbps-src}: removing autodeps, please wait...\n"
     tmplogf=$(mktemp)