[coreboot] [PATCH] [v2] fix build system race condition

Patrick Georgi patrick at georgi-clan.de
Thu Nov 27 18:37:50 CET 2008


Am Donnerstag, den 27.11.2008, 16:40 +0100 schrieb Carl-Daniel
Hailfinger:
> I have no idea about how util/newconfig/config.g is supposed to work, so
> I can't ack that part.
I had to work through that as well. It's the parser, and it's a somewhat
BNF/yacc-ish syntax.
The token "RULE" is supposed to catch rule targets with spaces in it
(but not at the beginning and the end), so multiple filenames can be
specified (eg. "option_table.h option_table.c")

The rules makerule and depsacts were folded together, as depsacts wasn't
used elsewhere, and I had some troubles with them split like they were,
while using the RULE token.

So the change is:
1. a new token type that accepts on strings with spaces
2. change makerule to use that token instead of the original one
3. fold depsacts into makerule to avoid some issues of the (rather
simple) parser generator. it's not used anywhere else, so no issue
there.

It's clearer from doing a side-by-side comparison of both versions than
from looking at the diff.

The whole change is supposed to create make rules like:
option_table.h option_table.c: build_opt_tbl $(MAINBOARD)/cmos.layout

These avoid clashes between the generation of both files individually in
case you run make with a large degree of parallelism.


Regards,
Patrick Georgi





More information about the coreboot mailing list