From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id E07DD9611 for ; Tue, 7 Jun 2016 16:37:58 +0200 (CEST) Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga102.fm.intel.com with ESMTP; 07 Jun 2016 07:37:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.26,433,1459839600"; d="scan'208";a="117580824" Received: from bricha3-mobl3.ger.corp.intel.com ([10.237.221.81]) by fmsmga004.fm.intel.com with SMTP; 07 Jun 2016 07:37:55 -0700 Received: by (sSMTP sendmail emulation); Tue, 07 Jun 2016 15:37:54 +0025 Date: Tue, 7 Jun 2016 15:37:54 +0100 From: Bruce Richardson To: Thomas Monjalon Cc: Christian Ehrhardt , Panu Matilainen , dev@dpdk.org, Ferruh Yigit , olivier.matz@6wind.com Message-ID: <20160607143754.GA11964@bricha3-MOBL3> References: <62da0f5f31b2ab9db2dcc16acd2f8425a575a26f.1465293714.git.pmatilai@redhat.com> <24422417.UYSFgAybK6@xps13> <20160607140715.GC6948@bricha3-MOBL3> <4901376.7OB1d4j3hA@xps13> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4901376.7OB1d4j3hA@xps13> Organization: Intel Research and =?iso-8859-1?Q?De=ACvel?= =?iso-8859-1?Q?opment?= Ireland Ltd. User-Agent: Mutt/1.5.23 (2014-03-12) Subject: Re: [dpdk-dev] [PATCH] mk: generate internal library dependencies from DEPDIRS-y automatically 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: Tue, 07 Jun 2016 14:37:59 -0000 On Tue, Jun 07, 2016 at 04:19:47PM +0200, Thomas Monjalon wrote: > 2016-06-07 15:07, Bruce Richardson: > > On Tue, Jun 07, 2016 at 03:00:45PM +0200, Thomas Monjalon wrote: > > > 2016-06-07 14:36, Christian Ehrhardt: > > > > But I still struggle to see how to fix the circular dependency between > > > > librte_eal and librte_mempool. > > > > > > Why is there a circular dependency? > > > Only because of logs using mempool? > > > > > > > Maybe now is a time to look at this part of the original threads again to > > > > eventually get apps less overlinked? > > > > => http://www.dpdk.org/ml/archives/dev/2016-May/039441.html > > > > My naive suggestions in generalized form can be found there (no answer yet): > > > > => > > > > http://stackoverflow.com/questions/37351699/how-to-create-both-so-files-for-two-circular-depending-libraries > > > > > > I would prefer removing the circular dependency. > > > Maybe we can rewrite the code to not use mempool or move it outside of EAL. > > > > Or else we can take the attitude that the mempools and the rings are just a core > > part of DPDK and move them and the EAL into a dpdk_core library at link time. > > Having the code separate in the git tree is good, but I'm not sure having > > the resulting object files being in separate .a/.so files is particularly useful. > > I can't see someone wanting to use one without the other. > > EAL could be used as an abstraction layer on top of systems and platforms. > And I think keeping things separated and layered help to maintain a design > easy to understand. All that applies to the code, not so much to the resulting libraries generated. I don't see how having a separate eal.so and mempool.so particularly helps in any way, except to require more flags for linking. /Bruce