From: Simon Stelling Date: Sun, 27 Aug 2006 18:54:53 +0000 (-0000) Subject: make the multilib-strict check show all files that violate the rule, not just the... X-Git-Tag: v2.1.1~37 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=a462ffb170646951e0ad1d9908353febd252020b;p=portage.git make the multilib-strict check show all files that violate the rule, not just the first one svn path=/main/trunk/; revision=4354 --- diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh index 45a85326f..8b6d88e92 100755 --- a/bin/misc-functions.sh +++ b/bin/misc-functions.sh @@ -199,13 +199,22 @@ install_qa_check() { if hasq multilib-strict ${FEATURES} && [ -x /usr/bin/file -a -x /usr/bin/find -a \ -n "${MULTILIB_STRICT_DIRS}" -a -n "${MULTILIB_STRICT_DENY}" ]; then + local abort=no firstrun=yes MULTILIB_STRICT_EXEMPT=$(echo ${MULTILIB_STRICT_EXEMPT} | sed -e 's:\([(|)]\):\\\1:g') for dir in ${MULTILIB_STRICT_DIRS}; do [ -d "${D}/${dir}" ] || continue for file in $(find ${D}/${dir} -type f | grep -v "^${D}/${dir}/${MULTILIB_STRICT_EXEMPT}"); do - file ${file} | egrep -q "${MULTILIB_STRICT_DENY}" && die "File ${file} matches a file type that is not allowed in ${dir}" + if $(file ${file} | egrep -q "${MULTILIB_STRICT_DENY}") ; then + if [[ ${firstrun} == "yes" ]] ; then + echo "Files matching a file type that is not allowed:" + firstrun=no + fi + abort=yes + echo " ${file#${D}//}" + fi done done + [[ ${abort} == yes ]] && die "multilib-strict check failed!" fi }