commit:     ad3b55a6ebe3af2eb795cdbd9b80ce2bb424ea6c
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Sat May 30 04:33:52 2015 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Sat May 30 04:37:38 2015 +0000
URL:        https://gitweb.gentoo.org/proj/crossdev.git/commit/?id=ad3b55a6

crossdev: use qmerge for unmerging packages

The latest version of qmerge should be reliable when it comes to unmerge,
so start using that when uninstalling targets.  It's significantly faster
than emerge.

Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>

 crossdev | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/crossdev b/crossdev
index 677b5ae..b5f9245 100755
--- a/crossdev
+++ b/crossdev
@@ -416,15 +416,8 @@ uninstall() {
        rm -f /etc/revdep-rebuild/05cross-${CTARGET}
        rmdir /etc/revdep-rebuild 2>/dev/null
 
-       rmdir /var/db/pkg/cross-${CTARGET} 2>/dev/null
-       if [[ -d /var/db/pkg/cross-${CTARGET} ]] ; then
-               export CLEAN_DELAY=0
-               cd /var/db/pkg
-               local pkgs=( cross-${CTARGET}/* )
-               emerge -qC ${pkgs[@]/#/=} || exit 1
-       else
-               ewarn "${CTARGET}: no packages installed; will clean out known 
files"
-       fi
+       # Unmerge all toolchain packages for this target.
+       qmerge -Uqy $(qlist -IC "cross-${CTARGET}/")
 
        # clean out known toolchain files (binutils/gcc)
        for f in \

Reply via email to