[coreboot-gerrit] New patch to review for coreboot: abuild: allow users to specify multiple boards

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Sat Oct 31 01:11:59 CET 2015


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/12278

-gerrit

commit 5ff121fae307e3e380c35b550db303fc8fe8b688
Author: Patrick Georgi <pgeorgi at chromium.org>
Date:   Sat Oct 31 00:42:50 2015 +0100

    abuild: allow users to specify multiple boards
    
    Specifying a directory with multiple boards (eg abuild -t google/veyron)
    makes abuild run through all of them.
    
    Change-Id: Ifb60f3a1f0c4a727dc43c48671ea90711ffe5585
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
---
 util/abuild/abuild | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/util/abuild/abuild b/util/abuild/abuild
index 8a2520d..1157c81 100755
--- a/util/abuild/abuild
+++ b/util/abuild/abuild
@@ -541,25 +541,25 @@ if [ "$cpus" != "1" ]; then
 	if [ "$cpus" = "max" ]; then
 		cpus=32
 	fi
-	if [ "$target" = "" ]; then
-		# Test if xargs supports the non-standard -P flag
-		# FIXME: disabled until we managed to eliminate all the make(1) quirks
-		echo | xargs -P ${cpus:-0} -n 1 echo 2>/dev/null >/dev/null && USE_XARGS=1
-	fi
+	# Test if xargs supports the non-standard -P flag
+	# FIXME: disabled until we managed to eliminate all the make(1) quirks
+	echo | xargs -P ${cpus:-0} -n 1 echo 2>/dev/null >/dev/null && USE_XARGS=1
 fi
 
 if [ "$USE_XARGS" = "0" ]; then
 test "$MAKEFLAGS" == "" && test "$cpus" != "" && export MAKEFLAGS="-j $cpus"
-build_all_targets()
+build_targets()
 {
-	for MAINBOARD in $( get_mainboards ); do
-		build_target $MAINBOARD
+	local targets=${*-$(get_mainboards)}
+	for MAINBOARD in $targets; do
+		build_target ${MAINBOARD}
 		remove_target ${MAINBOARD}
 	done
 }
 else
-build_all_targets()
+build_targets()
 {
+	local targets=${*-$(get_mainboards)}
 	# seed shared utils
 	TMPCFG=`mktemp`
 	printf "$configoptions" > $TMPCFG
@@ -603,7 +603,7 @@ build_all_targets()
 		rmdir ${scanbuild_out}tmp
 	fi
 	rm -rf $TARGET/temp $TMPCFG
-	get_mainboards | xargs -P ${cpus:-0} -n 1 $0 $cmdline -t
+	echo $targets | xargs -P ${cpus:-0} -n 1 $0 $cmdline -t
 }
 fi
 
@@ -622,7 +622,9 @@ if [ "$target" != "" ]; then
 		exit 1
 	fi
 	build_srcdir=$(mainboard_directory ${MAINBOARD})
-	if [ ! -r $ROOT/src/mainboard/${build_srcdir} ]; then
+	if [ "$(echo ${MAINBOARD} | wc -w)" -gt 1 ]; then
+		build_targets ${MAINBOARD}
+	elif [ ! -r $ROOT/src/mainboard/${build_srcdir} ]; then
 		printf "No such target: ${MAINBOARD}\n"
 		exit 1
 	else
@@ -634,7 +636,7 @@ if [ "$target" != "" ]; then
 		XMLFILE=$REAL_XMLFILE
 	fi
 else
-	build_all_targets
+	build_targets
 	rm -f $REAL_XMLFILE
 	XMLFILE=$REAL_XMLFILE
 	junit '<?xml version="1.0" encoding="utf-8"?>'



More information about the coreboot-gerrit mailing list