From: Mike Frysinger Date: Tue, 18 Oct 2011 21:38:08 +0000 (-0400) Subject: tc: fix parallel build file with lex/yacc X-Git-Tag: v3.1.0~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aa48b5931a069b8f8faf41c2efc769f3127b28d6;p=thirdparty%2Fiproute2.git tc: fix parallel build file with lex/yacc Building iproute2 in parallel might hit the race failure: emp_ematch.l:2:30: fatal error: emp_ematch.yacc.h: No such file or directory make[1]: *** [emp_ematch.lex.o] Error 1 This is because we currently allow the yacc/lex files to generate and compile in parallel. So add a simple dependency to make sure yacc has finished before we attempt to compile the lex output. Signed-off-by: Mike Frysinger --- diff --git a/tc/Makefile b/tc/Makefile index 08aa4cefa..b2ca16550 100644 --- a/tc/Makefile +++ b/tc/Makefile @@ -136,6 +136,11 @@ m_xt_old.so: m_xt_old.c %.lex.c: %.l $(LEX) $(LEXFLAGS) -o$@ $< +# our lexer includes the header from yacc, so make sure +# we don't attempt to compile it before the header has +# been generated as part of the yacc step. +emp_ematch.lex.o: emp_ematch.yacc.c + ifneq ($(SHARED_LIBS),y) tc: static-syms.o