From patchwork Tue Oct 18 21:38:08 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mike Frysinger X-Patchwork-Id: 120524 X-Patchwork-Delegate: shemminger@vyatta.com Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id C9589B70DC for ; Wed, 19 Oct 2011 08:38:22 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754289Ab1JRViL (ORCPT ); Tue, 18 Oct 2011 17:38:11 -0400 Received: from smtp.gentoo.org ([140.211.166.183]:53834 "EHLO smtp.gentoo.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754265Ab1JRViI (ORCPT ); Tue, 18 Oct 2011 17:38:08 -0400 Received: from localhost.localdomain (localhost [127.0.0.1]) by smtp.gentoo.org (Postfix) with ESMTP id E95311B4006; Tue, 18 Oct 2011 21:38:07 +0000 (UTC) From: Mike Frysinger To: stephen.hemminger@vyatta.com, netdev@vger.kernel.org Subject: [PATCH] tc: fix parallel build file with lex/yacc Date: Tue, 18 Oct 2011 17:38:08 -0400 Message-Id: <1318973888-29496-1-git-send-email-vapier@gentoo.org> X-Mailer: git-send-email 1.7.6.1 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org 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 --- tc/Makefile | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/tc/Makefile b/tc/Makefile index 08aa4ce..b2ca165 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