commit: e74e2670e3f043608fced9847e54bdbb19f35169
Author: Bertrand Jacquin <bertrand <AT> jacquin <DOT> bzh>
AuthorDate: Mon Apr 20 19:46:00 2015 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Mon Apr 20 23:31:47 2015 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=e74e2670
MEDIUM: misc-functions: Be more verbose when removing INSTALL_MASK glob
When glob are defined in INSTALL_MASK, no output is given on what file
has been deleted.
The following patch provide more information to user about what is
actually removed.
Example:
# INSTALL_MASK='*.h' emerge -va1t x11-proto/xproto
..
>>> Installing (1 of 2) x11-proto/xproto-7.0.27::gentoo
* Removing /usr/include/X11/DECkeysym.h
* Removing /usr/include/X11/HPkeysym.h
* Removing /usr/include/X11/Sunkeysym.h
* Removing /usr/include/X11/X.h
* Removing /usr/include/X11/XF86keysym.h
* Removing /usr/include/X11/XWDFile.h
* Removing /usr/include/X11/Xalloca.h
* Removing /usr/include/X11/Xarch.h
* Removing /usr/include/X11/Xatom.h
* Removing /usr/include/X11/Xdefs.h
* Removing /usr/include/X11/Xfuncproto.h
* Removing /usr/include/X11/Xfuncs.h
* Removing /usr/include/X11/Xmd.h
* Removing /usr/include/X11/Xos.h
* Removing /usr/include/X11/Xos_r.h
* Removing /usr/include/X11/Xosdefs.h
* Removing /usr/include/X11/Xpoll.h
* Removing /usr/include/X11/Xproto.h
* Removing /usr/include/X11/Xprotostr.h
* Removing /usr/include/X11/Xthreads.h
* Removing /usr/include/X11/Xw32defs.h
* Removing /usr/include/X11/Xwindows.h
* Removing /usr/include/X11/Xwinsock.h
* Removing /usr/include/X11/ap_keysym.h
* Removing /usr/include/X11/keysym.h
* Removing /usr/include/X11/keysymdef.h
* checking 1 files for package collisions
>>> Merging x11-proto/xproto-7.0.27 to /
Signed-off-by: Bertrand Jacquin <bertrand <AT> jacquin.bzh>
Acked-by: Brian Dolbec <dolsen <AT> gentoo.org>
bin/misc-functions.sh | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh
index b5b7510..24941af 100755
--- a/bin/misc-functions.sh
+++ b/bin/misc-functions.sh
@@ -276,7 +276,13 @@ install_mask() {
# we also need to handle globs (*.a, *.h, etc)
find "${root}" \( -path "${no_inst}" -or -name "${no_inst}" \) \
- -exec rm -fR {} \; >/dev/null 2>&1
+ -print0 2> /dev/null \
+ | LC_ALL=C sort -z \
+ | while read -r -d ''; do
+ __quiet_mode || einfo "Removing /${REPLY#${root}}"
+ rm -Rf "${REPLY}" >&/dev/null
+ done
+
done
# set everything back the way we found it
set +o noglob