MAKEALL: update to work with new boards.cfg syntax
authorAllen Martin <amartin@nvidia.com>
Fri, 31 Aug 2012 08:30:06 +0000 (08:30 +0000)
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>
Sat, 1 Sep 2012 12:58:21 +0000 (14:58 +0200)
Update MAKEALL to handle the optional SPL CPU field that was added to
boards.cfg.  This impacts the cases in MAKEALL that have to match
against CPU type (field 3).  In these cases use ':' as a field
separator to split the u-boot CPU from the SPL CPU.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
MAKEALL

diff --git a/MAKEALL b/MAKEALL
index 6b9ff30fd8737a3fd66469b6b890d1b54ea790db..eb7dd027d3704491840054d1fce895cfa4509d9a 100755 (executable)
--- a/MAKEALL
+++ b/MAKEALL
@@ -87,9 +87,9 @@ while true ; do
        -c|--cpu)
                # echo "Option CPU: argument \`$2'"
                if [ "$opt_c" ] ; then
-                       opt_c="${opt_c%)} || \$3 == \"$2\")"
+                       opt_c="${opt_c%)} || \$3 == \"$2\" || \$3 ~ /$2:/)"
                else
-                       opt_c="(\$3 == \"$2\")"
+                       opt_c="(\$3 == \"$2\" || \$3 ~ /$2:/)"
                fi
                SELECTED='y'
                shift 2 ;;
@@ -211,14 +211,17 @@ RC=0
 # Helper funcs for parsing boards.cfg
 boards_by_field()
 {
+       FS="[ \t]+"
+       [ -n "$3" ] && FS="$3"
        awk \
                -v field="$1" \
                -v select="$2" \
+               -F "$FS" \
                '($1 !~ /^#/ && $field == select) { print $1 }' \
                boards.cfg
 }
 boards_by_arch() { boards_by_field 2 "$@" ; }
-boards_by_cpu()  { boards_by_field 3 "$@" ; }
+boards_by_cpu()  { boards_by_field 3 "$@" "[: \t]+" ; }
 boards_by_soc()  { boards_by_field 6 "$@" ; }
 
 #########################################################################