[pacman-dev] [PATCH] makepkg: list files containing $srcdir (FS#31558)

Phillip Smith lists at fukawi2.nl
Mon May 20 03:08:29 EDT 2013


From: Phillip Smith <fukawi2 at gmail.com>

when checking for files in a built package that contain references to
$srcdir or $pkgdir_base, show the files that match to assist in
debugging.

Signed-off-by: Phillip Smith <fukawi2 at gmail.com>
---
 scripts/makepkg.sh.in | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 75ddfe5..1b3cc5a 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1606,11 +1606,19 @@ tidy_install() {
 	done
 
 	# check for references to the build and package directory
-	if find "${pkgdir}" -type f -print0 | xargs -0  grep -q -I "${srcdir}" ; then
-		warning "$(gettext "Package contains reference to %s")" "\$srcdir"
+	mapfile -t srcdir_refs <<< $(cd "${pkgdir}" && find -type f -exec grep -I -l "$srcdir" {} \;)
+	if [[ -n ${srcdir_refs[*]} ]] ; then
+		warning "$(gettext "The following files within the package reference %s")" "\$srcdir"
+		for fname in ${srcdir_refs[*]} ; do
+			printf "  %s\n" "$fname"
+		done
 	fi
-	if find "${pkgdir}" -type f -print0 | xargs -0  grep -q -I "${pkgdirbase}" ; then
-		warning "$(gettext "Package contains reference to %s")" "\$pkgdir"
+	mapfile -t pkgdir_refs <<< $(cd "${pkgdir}" && find -type f -exec grep -I -l "${pkgdirbase}" {} \;)
+	if [[ -n ${pkgdir_refs[*]} ]] ; then
+		warning "$(gettext "The following files within the package reference %s")" "\$pkgdir"
+		for fname in ${pkgdir_refs[*]} ; do
+			printf "  %s\n" "$fname"
+		done
 	fi
 
 	if check_option "zipman" "y" && [[ -n ${MAN_DIRS[*]} ]]; then
-- 
1.8.2.3



More information about the pacman-dev mailing list