Folks, Parallel builds contain a race due to a missing dependency
between gengtype-lex.o and $(BCONFIG_H).

This was introduced by the commit:

http://gcc.gnu.org/ml/gcc-patches/2010-11/msg00926.html

.. which injects an include of bconfig.h into the top of
gengtype-lex.c but does not make both of the objects built from that
file dependent on bconfig.h

There is a simple fix, below, but I'm concerned that this is just
papering over the cracks, is it really correct that both the build and
host machine variants include the same config file?

Cheers
/Marcus




diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index d74e7b3..8e8f4d3 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -3885,7 +3885,7 @@ build/gengenrtl.o : gengenrtl.c $(BCONFIG_H)
$(SYSTEM_H) rtl.def
 # the build-%: rule doesn't apply to them.

 gengtype-lex.o build/gengtype-lex.o : gengtype-lex.c gengtype.h $(SYSTEM_H)
-gengtype-lex.o: $(CONFIG_H)
+gengtype-lex.o: $(CONFIG_H) $(BCONFIG_H)
 CFLAGS-gengtype-lex.o += -DGENERATOR_FILE
 build/gengtype-lex.o: $(BCONFIG_H)

Reply via email to