[coreboot] r3777 - in trunk/coreboot-v2: src/config util/newconfig

svn at coreboot.org svn at coreboot.org
Fri Nov 28 12:56:27 CET 2008


Author: oxygene
Date: 2008-11-28 12:56:27 +0100 (Fri, 28 Nov 2008)
New Revision: 3777

Modified:
   trunk/coreboot-v2/src/config/Config.lb
   trunk/coreboot-v2/util/newconfig/config.g
Log:
This patch fixes the ugly race condition created through build_opt_tbl
running twice at the same time, overwriting its output files. This caused
a depending rule to produce an object file with no symbols in it.

This should silence up the regularly happening build failure messages on
the mailing list since we moved to the newer, much faster server.

Signed-off-by: Stefan Reinauer <stepan at coresystems.de>
Signed-off-by: Patrick Georgi <patrick.georgi at coresystems.de>
Acked-by: Peter Stuge <peter at stuge.se>


Modified: trunk/coreboot-v2/src/config/Config.lb
===================================================================
--- trunk/coreboot-v2/src/config/Config.lb	2008-11-28 05:40:27 UTC (rev 3776)
+++ trunk/coreboot-v2/src/config/Config.lb	2008-11-28 11:56:27 UTC (rev 3777)
@@ -179,21 +179,16 @@
 	action	"$(HOSTCC) $(HOSTCFLAGS) $(CPUFLAGS) $< -o $@" 
 end
 
-makerule option_table.c
+makerule option_table.h option_table.c
 	depends	"build_opt_tbl $(MAINBOARD)/cmos.layout" 
-	action	"./build_opt_tbl -b  --config $(MAINBOARD)/cmos.layout --header option_table.h"
+	action	"./build_opt_tbl -b  --config $(MAINBOARD)/cmos.layout --header option_table.h --option option_table.c"
 end
 
-makerule option_table.h
-	depends	"build_opt_tbl $(MAINBOARD)/cmos.layout" 
-	action	"./build_opt_tbl -b  --config $(MAINBOARD)/cmos.layout --header option_table.h"
-end
-
 if HAVE_OPTION_TABLE
 object ./option_table.o 
 end
 
-makerule clean  
+makerule clean 
 	action	"rm -f coreboot.* *~"
 	action	"rm -f coreboot"
 	action	"rm -f ldscript.ld"

Modified: trunk/coreboot-v2/util/newconfig/config.g
===================================================================
--- trunk/coreboot-v2/util/newconfig/config.g	2008-11-28 05:40:27 UTC (rev 3776)
+++ trunk/coreboot-v2/util/newconfig/config.g	2008-11-28 11:56:27 UTC (rev 3777)
@@ -1607,6 +1607,7 @@
     token PATH:			r'[-a-zA-Z0-9_.][-a-zA-Z0-9/_.]+[-a-zA-Z0-9_.]+'
     # Dir's on the other hand are abitrary
     # this may all be stupid.
+    token RULE:			r'[-a-zA-Z0-9_$()./]+[-a-zA-Z0-9_ $()./]+[-a-zA-Z0-9_$()./]+'
     token DIRPATH:		r'[-a-zA-Z0-9_$()./]+'
     token ID:			r'[a-zA-Z_.]+[a-zA-Z0-9_.]*'
     token DELEXPR:		r'{([^}]+|\\.)*}'
@@ -1703,13 +1704,10 @@
 			[ ELSE (stmt<<C and not c>>)* ]
 			END
 
-    rule depsacts<<ID, C>>:
-			( DEPENDS STR		{{ if (C): adddep(ID, STR) }}
-			| ACTION STR		{{ if (C): addaction(ID, STR) }}
+    rule makerule<<C>>:	MAKERULE RULE		{{ if (C): addrule(RULE) }}
+			( DEPENDS STR		{{ if (C): adddep(RULE, STR) }}
+			| ACTION STR		{{ if (C): addaction(RULE, STR) }}
 			)*
-
-    rule makerule<<C>>:	MAKERULE DIRPATH	{{ if (C): addrule(DIRPATH) }} 
-			depsacts<<DIRPATH, C>> 
 			END
 
     rule makedefine<<C>>:





More information about the coreboot mailing list