From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id 0AE4F29C6 for ; Wed, 18 Oct 2017 21:21:53 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 673FF20D5D; Wed, 18 Oct 2017 15:21:53 -0400 (EDT) Received: from frontend1 ([10.202.2.160]) by compute1.internal (MEProxy); Wed, 18 Oct 2017 15:21:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-sender :x-me-sender:x-sasl-enc; s=mesmtp; bh=BG0lDthvIWj7TlFEHAVKkVnL64 PQw6ReCD+pwxL3eVM=; b=giuEnibhFQ4dJ6MjmfCW8TLl+STsfZcwZxBw+VAi8a /AoIX0PdWx9LPlr0RRUHDF11VgH7aIVBjGfCbITM2/Qf6Ta1TIuVzOV6bbtzt3+H urfFVla5nlNP/wGgzM7tgkfEKAB+R7pGFyNa1jRaYdZUfjfncGe/ahuhp98kw8P2 s= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=BG0lDt hvIWj7TlFEHAVKkVnL64PQw6ReCD+pwxL3eVM=; b=k/DZJoLTMLkg6s/kaf34jY 1I9SP/ke7q9nzineArqyn3/GqZS5RJlPhvnKeGfalpJQkzTQEljdQFuL5tTnw6fj 3j2di/UNPPGeZ4svurqWZghjHVfdYbn6ucqvPnMovxxzv+jqFxBiUCeUPeLf4euu 3KkctNGdYOibnL1QUCEEOMyMPXGTEHcplNRHHg8nXeYO+TQ4EiVajNlaMOnCvnBN YhVC7L64fThSaqafmas2AXkIkogFXkQ/FdZBYJM9yAZ2pt8iWksaZsQIjMkFSU60 LsvjEJLebXKPck/pFgeKxBx1KdsZIq/FOm0eexWZO2kNcrOtYktjy5KhVvpw0IfQ == X-ME-Sender: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id 123847F3AB; Wed, 18 Oct 2017 15:21:53 -0400 (EDT) From: Thomas Monjalon To: Aaron Conole Cc: Luca Boccassi , Bruce Richardson , dev@dpdk.org, olivier.matz@6wind.com, sergio.gonzalez.monroy@intel.com Date: Wed, 18 Oct 2017 21:21:52 +0200 Message-ID: <52014257.9Hsyuahhlk@xps> In-Reply-To: References: <20171017161220.59941-1-bruce.richardson@intel.com> <1508340515.25747.12.camel@debian.org> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH 1/8] build: add maths library to libs in pkg-config file X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Oct 2017 19:21:54 -0000 18/10/2017 21:13, Aaron Conole: > Luca Boccassi writes: > > On Wed, 2017-10-18 at 15:20 +0100, Bruce Richardson wrote: > >> On Wed, Oct 18, 2017 at 01:24:54PM +0100, Bruce Richardson wrote: > >> > On Wed, Oct 18, 2017 at 11:14:07AM +0100, Luca Boccassi wrote: > >> > > On Wed, 2017-10-18 at 10:51 +0100, Bruce Richardson wrote: > >> > > > Thinking about it some more, is there any reason why we can't > >> > > > or > >> > > > shouldn't do both static and dynamic libs in all builds, and > >> > > > then let > >> > > > apps use pkg-config to determine what they want to link > >> > > > against? It > >> > > > wouldn't be a massive change to the new build system to do > >> > > > that, I > >> > > > think. > >> > > > > >> > > > /Bruce > >> > > > >> > > Yes that would be ideal! Right now in Debian/Ubuntu we have to > >> > > build > >> > > twice, doubling the required time unfortunately. > >> > > > >> > > In theory the same objects could be packed into .ar and .so but > >> > > sadly > >> > > Meson doesn't support that yet like autotools/cmake do: > >> > > > >> > > https://github.com/mesonbuild/meson/issues/484 > >> > > > >> > > (please do add some feedback there as developers!) > >> > > > >> > > It looks like it could be possible with some extensive hacking, > >> > > not > >> > > sure if it would be worth it. > >> > > > >> > > >> > Actually, I think it's workable using extract_objects. Build the > >> > static > >> > lib first, then extract_all_objects() and then use those to build > >> > the .so. > >> > I can prototype it very easily by changing lib/meson.build and see > >> > what > >> > happens. > >> > > >> > >> Seems to work fine. This change makes all the libraries (bar EAL, > >> which > >> is special-cased) appear as both .a and .so. Testpmd links against > >> the > >> dynamic versions and still works. > >> > >> When I get the chance I'll see about doing the same for EAL and > >> drivers, > >> and then having the pkgconfig file reflect both possibilities. Then I > >> can test with some examples linking both dynamically and statically > >> and > >> check all is as expected. [...] > > Nice! Much easier than I thought reading that thread :-) > > > > I'll try to give it a test run in the next few days. Thanks! > > Would there be any opposition if someone were to feel ambitious and > attempt this for the existing build system as well? Not me, of course. > Asking for a friend, that's all. ;) You can say to your friend that it must be done in one compilation pass to avoid losing too much time. Only the link step would be duplicate. Then your friend should think about how to link the applications. Whould -you- he keep the config option or link the app in two flavours? > Having both library types spit out is really useful. One less config > option, etc.