[U-Boot] [PATCH 3/3] MAKEALL: fix boards_by_field function

Masahiro Yamada
2013-10-17T10:32:31Z

Hello Albert

> > -v field="$1" \
> > -v select="$2" \
> > -F "$FS" \
> > - '($1 !~ /^#/ && $field == select) { print $1 }' \
> > + '($1 !~ /^#/ && $field == select) { print $7 }' \
> > boards.cfg
> > }
> > boards_by_arch() { boards_by_field 2 "$@" ; }
> > boards_by_cpu() { boards_by_field 3 "$@" "[: \t]+" ; }
> > -boards_by_soc() { boards_by_field 6 "$@" ; }
> > +boards_by_soc() { boards_by_field 4 "$@" ; }
> >
> >
> > TAB is also treated as a field speparator, so
> > we should have taken the 8th field for Tegra
> > whereas the 7th field for the other cpus.
>
> (As per our discussion, 'tab' here should be 'colon')

Yes, I answerd so in my previous reply.

> Not sure I am getting the logic here. Colon is *not* a field separator,
> precisely because it is not present on all lines; it is a sub-field
> separator. At this low level, the only field separator should be spaces.
>
> Therefore, I would prefer boards_by_field() and board_by_cpu() to *not*
> handle colons and thus consider the CPU field as a whole even when it
> consists in a cpu:splcpu pair.

Yes. I think I already did this in my v1 patch.

+ -v cut="$3" \
+ '{sub(cut,"",$field)}

These lines split the pair into cpu and spl_cpu.
I simply cut down spl_cpu because it is the same behaviour
as before Commit 27af930e.

> Splitting that pair and using either cpu or splcpu depending on
> whether building SPL or not should only happen when the CPU field is
> actually used, not fetched.
>
> Can you try and provide a v2 patch (set) along these lines?

Sorry, I cannot understand what you mean.

Best Regards
Masahiro Yamada