[coreboot-gerrit] New patch to review for coreboot: abuild: allow specifying multiple targets by mainboard descriptor

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Sat Oct 31 09:14:53 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/12281

-gerrit

commit 22415056e913f86a2a81b5f03242ee456025a4dc
Author: Patrick Georgi <pgeorgi at chromium.org>
Date:   Sat Oct 31 09:13:26 2015 +0100

    abuild: allow specifying multiple targets by mainboard descriptor
    
    abuild -t EMULATION_QEMU_UCB_RISCV,EMULATION_SPIKE_UCB_RISCV works now
    
    Change-Id: I49d8cd86e21ede724d8daa441b728efa1f6ea1fa
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
---
 util/abuild/abuild | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/util/abuild/abuild b/util/abuild/abuild
index 51011a1..cddcb57 100755
--- a/util/abuild/abuild
+++ b/util/abuild/abuild
@@ -118,7 +118,7 @@ function get_mainboards
 {
 	local search_space=${1-*/*}
 	grep -h "^[[:space:]]*config\>[[:space:]]*\<BOARD_" \
-		${ROOT}/src/mainboard/${search_space}/Kconfig.name | \
+		${ROOT}/src/mainboard/${search_space}/Kconfig.name 2>/dev/null | \
 		sed "s,^.*\<BOARD_\([A-Z0-9_]*\)\>.*$,\1,"
 }
 
@@ -154,11 +154,21 @@ function mainboard_vendor
 # If a directory contains multiple boards, returns them all.
 function normalize_target
 {
-	if [ -r ${ROOT}/src/mainboard/$1/Kconfig.name ]; then
-		get_mainboards $1
-	elif [ -n "$(mainboard_directory $1)" ]; then
-		echo $1
+	local targets=$(get_mainboards $1)
+	if [ -n "$targets" ]; then
+		echo $targets
+		return
 	fi
+
+	local targets=$(echo $1 | tr ',' ' ')
+	for i in $targets; do
+		if [ -n "$(mainboard_directory $i)" ]; then
+			echo $i
+		else
+			echo "$i is not a valid target" >&2
+			exit 1
+		fi
+	done
 }
 
 function create_config



More information about the coreboot-gerrit mailing list