From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.tuxdriver.com (charlotte.tuxdriver.com [70.61.120.58]) by dpdk.org (Postfix) with ESMTP id 247DC5584 for ; Thu, 7 Jul 2016 17:57:15 +0200 (CEST) Received: from [2606:a000:111b:40ed:7aac:c0ff:fec2:933b] (helo=localhost) by smtp.tuxdriver.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1bLBfm-0006UW-Lb; Thu, 07 Jul 2016 11:57:12 -0400 Date: Thu, 7 Jul 2016 11:56:55 -0400 From: Neil Horman To: Thomas Monjalon Cc: dev@dpdk.org Message-ID: <20160707155655.GD26064@hmsreliant.think-freely.org> References: <1467905790-10597-1-git-send-email-thomas.monjalon@6wind.com> <1467905790-10597-4-git-send-email-thomas.monjalon@6wind.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1467905790-10597-4-git-send-email-thomas.monjalon@6wind.com> User-Agent: Mutt/1.6.1 (2016-04-27) X-Spam-Score: -1.0 (-) X-Spam-Status: No Subject: Re: [dpdk-dev] [PATCH 03/11] mk: fix build dependency of drivers on pmdinfogen X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jul 2016 15:57:15 -0000 On Thu, Jul 07, 2016 at 05:36:22PM +0200, Thomas Monjalon wrote: > When compiling the drivers, some code is generated with pmdinfogen. > A fresh parallel build can fail if a driver is compiled before pmdinfogen: > build/buildtools/dpdk-pmdinfogen: Permission denied > > There was a dependency declared in drivers/Makefile but it cannot work > because this file is based on mk/rte.subdir.mk which do not handle > dependencies. > > It is fixed by declaring the whole buildtools as (order only) prerequisite > of drivers. > > Fixes: cb6696d22023 ("drivers: update registration macro usage") > > Signed-off-by: Thomas Monjalon > --- > drivers/Makefile | 2 -- > mk/rte.sdkbuild.mk | 1 + > 2 files changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/Makefile b/drivers/Makefile > index 75a3168..81c03a8 100644 > --- a/drivers/Makefile > +++ b/drivers/Makefile > @@ -34,6 +34,4 @@ include $(RTE_SDK)/mk/rte.vars.mk > DIRS-y += net > DIRS-$(CONFIG_RTE_LIBRTE_CRYPTODEV) += crypto > > -DEPDIRS-y += buildtools/pmdinfo > - > include $(RTE_SDK)/mk/rte.subdir.mk > diff --git a/mk/rte.sdkbuild.mk b/mk/rte.sdkbuild.mk > index fb68af2..354f006 100644 > --- a/mk/rte.sdkbuild.mk > +++ b/mk/rte.sdkbuild.mk > @@ -49,6 +49,7 @@ $(1): $(sort $(LOCAL_DEPDIRS-$(1))) > endef > > $(foreach d,$(ROOTDIRS-y),$(eval $(call depdirs_rule,$(d)))) > +drivers: | buildtools > I'm not sure i understand the reasoning here, DEPDIRS is meant to declare prerequisites to a directory (and its children) getting built, right? A parallel make should block any drivers getting built prior to pmdinfogen getting built. What am I missing? Neil > # > # build and clean targets > -- > 2.7.0 > >