From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 53338A0032; Tue, 16 Nov 2021 18:25:33 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1315641165; Tue, 16 Nov 2021 18:25:33 +0100 (CET) Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by mails.dpdk.org (Postfix) with ESMTP id 55FE140141 for ; Tue, 16 Nov 2021 18:25:31 +0100 (CET) Received: from compute6.internal (compute6.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 03D3B5C02FA; Tue, 16 Nov 2021 12:25:31 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Tue, 16 Nov 2021 12:25:31 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=fm2; bh= WnuxbH4SO59ZTPXZHmCIpVANBR/MQUUc7iXwcd3Ef80=; b=bK3Pa83gr28u5u+Z eOBapz2iQ+f+oz9HYaibHruXpTsFBWlLqjclGxLrAvpDwGVIUiqNk4H8kBVuyguF pZD+GLwjrVEkRQAT+T7hpxeWKf/3sMXluapdgLolHV5yNpnBOkkM7d8qutPOCwJC cyNnkaqIxjaRw6rUGZjBFSAVgi6l+nEJHPGDS23fTLrk3eiArM/otjP2FjNVcLrO yAvpMFijYw3hx9LADldc3SUp6FdN1jbv7Kh1g/s8V98W3pVlrW8tFIW5qvcQEFM9 rvMViNalG+fRe8pwHhNrpjLSUw2bkC6mccC7znxUf8saAUTSM4JxzZETSkZmHZR3 6qvIdQ== 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-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; bh=WnuxbH4SO59ZTPXZHmCIpVANBR/MQUUc7iXwcd3Ef 80=; b=UdA4rLPkeEVuhYAW1Uq5I4OqrmE69KySjY0mYEJVbRBz/bxyHINmV/A1z qgOc2rRILI//2NMZbJz1i6RqmO1M07CSSkP+gfGZjA227wIpoceQzFic8RgyOe7J XCLhFs3S2Fy+a3c17cO+kWh0qzrp0CRciGX4RyDrfGQ6ToQSEMcBoYkYh8eeJaXb Gf7AONioIR4B6f5vGYcD5zPqX05Ly1/idCENBAg5WRDBuXPsgcDTP3pX06uMDFI4 uQq5OD5eu1lpSNYfTi7QRqgv/evjsgrNuILJnAvyjFqLMXRQXSfEsPtiHx+w6Rqb D/7KH/7DCmdjZxSmpQdVtx4Kcrr8Q== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvuddrfedvgdellecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucggtf frrghtthgvrhhnpedugefgvdefudfftdefgeelgffhueekgfffhfeujedtteeutdejueei iedvffegheenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhroh hmpehthhhomhgrshesmhhonhhjrghlohhnrdhnvght X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 16 Nov 2021 12:25:29 -0500 (EST) From: Thomas Monjalon To: David Marchand , Bruce Richardson Cc: dev@dpdk.org, bluca@debian.org, tredaelli@redhat.com, i.maximets@ovn.org, james.r.harris@intel.com, mohammed@hawari.fr Subject: Re: [PATCH 5/5] build: select optional libraries Date: Tue, 16 Nov 2021 18:25:28 +0100 Message-ID: <4536860.m2YTRCI3sh@thomas> In-Reply-To: References: <20211110164814.5231-1-david.marchand@redhat.com> <20211110164814.5231-6-david.marchand@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org 10/11/2021 18:34, Bruce Richardson: > On Wed, Nov 10, 2021 at 05:48:14PM +0100, David Marchand wrote: > > There is currently no way to know which libraries are optional. > > Introduce a enable_libs option (close to what we have for drivers) so > > that packagers or projects consuming DPDK can more easily select the > > optional libraries that matter to them and disable other optional > > libraries. > > > > Note: the enabled_libs variable is renamed for sake of consistency. > > > > Signed-off-by: David Marchand > > --- > This is the only patch of this set I would have some concerns about. I'm > just not sure that it makes sense to have this option for libraries > compared to drivers. > > Specifically: > * We have over 200 drivers in DPDK (rough count using find), of which 2 are > mandatory, and therefore specifying just 1 or 2 that you want can make > sense. > * On the other hand, we have 53 libraries, of which only 7 or so (after > this patchset) are optional. This means that use of the term > "enable_libs" is misleading - at least to me - in that it's only a very > small proportion of the libs which would be affected by that flag > (compared to 99% of the drivers) The options are described like this: option('disable_libs', type: 'string', value: '', description: 'Comma-separated list of libraries to explicitly disable. [NOTE: not all libs can be disabled]') +option('enable_libs', type: 'string', value: '', description: + 'Comma-separated list of libraries to explicitly enable.') I feel we should mention it is enabling optional libraries, and the default is to enable all. > * Also, while the number of mandatory drivers is unlikely to change much > (since there are only 2), it should be fairly safe to do builds using > "--enable-drivers". On the other hand, the list of libraries affected by > "--enable-libs" is likely to change, so short of each user naming each > and every lib they use (and each library those depend on), to the list, > it's quite possible that any --enable-libs use could lead to a broken > build in future if a library changes from mandatory to optional. In order to be safe, the user can list all required libs, including non-optional ones. > Overall, I'm just concerned that this flag is premature, and would prefer > to keep it just to the disable option until we are confident that out > "optional library" list is relatively settled. I see it the opposite way: Someone who does not wish to deliver extra libs could use this option to list the required libs, so not-required libs will disappear from the build once they are declared optional in future releases.