From 31e4e0d6c8f378ed7abc0fe8250d683924ed09c3 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 6 Jan 2007 00:16:59 +0000 Subject: [PATCH] Fix shell glob logic that leads to false positives. Thanks to Flameeyes for reporting. svn path=/main/trunk/; revision=5466 --- bin/misc-functions.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh index 75b95ba09..68078714b 100755 --- a/bin/misc-functions.sh +++ b/bin/misc-functions.sh @@ -244,6 +244,7 @@ install_qa_check() { # http://bugs.gentoo.org/4411 abort="no" for a in "${D}"usr/lib*/*.a ; do + [[ ! -e ${a} ]] && continue s=${a%.a}.so if [[ ! -e ${s} ]] ; then s=${s%usr/*}${s##*/usr/} @@ -257,11 +258,17 @@ install_qa_check() { [[ ${abort} == "yes" ]] && die "add those ldscripts" # Make sure people don't store libtool files or static libs in /lib - f=$(ls "${D}"lib*/*.{a,la} 2>/dev/null) + f=() + for a in "${D}"lib*/*.{a,la} ; do + [[ ! -e ${a} ]] && continue + f=("${f[@]}" "${a}") + done if [[ -n ${f} ]] ; then vecho -ne '\a\n' - vecho "QA Notice: excessive files found in the / partition\a" - vecho "${f}" + vecho "QA Notice: excessive files found in the / partition" + for a in "${f[@]}" ; do + vecho "${a}" + done vecho -ne '\a\n' die "static archives (*.a) and libtool library files (*.la) do not belong in /" fi @@ -269,6 +276,7 @@ install_qa_check() { # Verify that the libtool files don't contain bogus $D entries. abort="no" for a in "${D}"usr/lib*/*.la ; do + [[ ! -e ${a} ]] && continue s=${a##*/} if grep -qs "${D}" "${a}" ; then vecho -ne '\a\n' -- 2.26.2