[arch-projects] [PATCH] Add an option to explicitly run namcap

Jan Steffens jan.steffens at gmail.com
Sat Sep 17 04:26:20 EDT 2011


Installs namcap if needed, *after* building the package,
contrary to the former way of having to have namcap installed,
e.g. via makedepends.

Signed-off-by: Jan Steffens <jan.steffens at gmail.com>
---
 makechrootpkg |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/makechrootpkg b/makechrootpkg
index a60c9fe..974628c 100755
--- a/makechrootpkg
+++ b/makechrootpkg
@@ -18,6 +18,7 @@ update_first='0'
 clean_first='0'
 install_pkg=''
 add_to_db=0
+run_namcap=0
 
 chrootdir=''
 
@@ -54,11 +55,12 @@ usage() {
 	echo '-I <pkg>   Install a package into the working copy of the chroot'
 	echo '-l <copy>  The directory to use as the working copy of the chroot'
 	echo '           Useful for maintaining multiple copies.'
+	echo '-n         Run namcap on the package'
 	echo "           Default: $default_copy"
 	exit 1
 }
 
-while getopts 'hcudr:I:l:' arg; do
+while getopts 'hcudr:I:l:n' arg; do
 	case "${arg}" in
 		h) usage ;;
 		c) clean_first=1 ;;
@@ -67,6 +69,7 @@ while getopts 'hcudr:I:l:' arg; do
 		r) chrootdir="$OPTARG" ;;
 		I) install_pkg="$OPTARG" ;;
 		l) copy="$OPTARG" ;;
+		n) run_namcap=1 ;;
 		*) MAKEPKG_ARGS="$MAKEPKG_ARGS -$arg $OPTARG" ;;
 	esac
 done
@@ -175,6 +178,8 @@ if [ "$REPACK" != "1" ]; then
 	rm -rf "$copydir/build/"*
 fi
 
+[ "$run_namcap" -eq "1" ] && touch "$copydir/build/RUN_NAMCAP"
+
 # Read .makepkg.conf even if called via sudo
 if [ -n "${SUDO_USER}" ]; then
 	makepkg_conf="/$(eval echo ~${SUDO_USER})/.makepkg.conf"
@@ -257,7 +262,10 @@ cd /build
 export HOME=/build
 sudo -u nobody makepkg $MAKEPKG_ARGS || touch BUILD_FAILED
 [ -f BUILD_FAILED ] && exit 1
-which namcap &>/dev/null && namcap /build/PKGBUILD /pkgdest/*.pkg.tar.* > /build/namcap.log
+if [ -f RUN_NAMCAP ]; then
+	pacman -S --needed --noconfirm namcap
+	namcap /build/PKGBUILD /pkgdest/*.pkg.tar.* > /build/namcap.log
+fi
 exit 0
 EOF
 ) > "$copydir/chrootbuild"
@@ -303,3 +311,5 @@ if [ -e "${copydir}/build/BUILD_FAILED" ]; then
 	rm "${copydir}/build/BUILD_FAILED"
 	exit 1
 fi
+
+# vim:set noet ts=8 sw=8:
-- 
1.7.6.1



More information about the arch-projects mailing list