From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id F3C73A04DB; Thu, 15 Oct 2020 16:03:38 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 545B81E96B; Thu, 15 Oct 2020 16:03:37 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 9BD1F1E968 for ; Thu, 15 Oct 2020 16:03:35 +0200 (CEST) IronPort-SDR: Hxi289zxtOhgOa37+wc2Dz/hFFL9PT+pL2TeaCQswL+0MLQIt939y4v6WEtut4C2rMwCiyBAZI iru/fTD5LVjQ== X-IronPort-AV: E=McAfee;i="6000,8403,9774"; a="154179335" X-IronPort-AV: E=Sophos;i="5.77,379,1596524400"; d="scan'208";a="154179335" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Oct 2020 07:03:20 -0700 IronPort-SDR: io/Lmdblp3oGFfVBWR54RX9r3Y7RiHAfcq+3PUaYGEMwy9JwXWPGwjtTSdy9QUcyoL6LSGqyrU b7jTO6kC5BPg== X-IronPort-AV: E=Sophos;i="5.77,379,1596524400"; d="scan'208";a="531265031" Received: from bricha3-mobl.ger.corp.intel.com ([10.213.245.94]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 15 Oct 2020 07:03:17 -0700 Date: Thu, 15 Oct 2020 15:03:12 +0100 From: Bruce Richardson To: Luca Boccassi Cc: dev@dpdk.org, david.marchand@redhat.com, arybchenko@solarflare.com, ferruh.yigit@intel.com, thomas@monjalon.net Message-ID: <20201015140312.GD554@bricha3-MOBL.ger.corp.intel.com> References: <20200916164429.244847-1-bruce.richardson@intel.com> <20201014141304.632120-1-bruce.richardson@intel.com> <20201014141304.632120-7-bruce.richardson@intel.com> <431a3c639870949ee8c62a6e2ab9d3a1bd567d0f.camel@debian.org> <20201015111839.GB554@bricha3-MOBL.ger.corp.intel.com> <7dc47047bf543a0f239a1c07b3b0c67158271ba3.camel@debian.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <7dc47047bf543a0f239a1c07b3b0c67158271ba3.camel@debian.org> Subject: Re: [dpdk-dev] [PATCH v3 6/7] build: standardize component names and defines 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Oct 15, 2020 at 02:05:37PM +0100, Luca Boccassi wrote: > On Thu, 2020-10-15 at 12:18 +0100, Bruce Richardson wrote: > > On Thu, Oct 15, 2020 at 11:30:29AM +0100, Luca Boccassi wrote: > > > On Wed, 2020-10-14 at 15:13 +0100, Bruce Richardson wrote: > > > > As discussed on the dpdk-dev mailing list[1], we can make some easy > > > > improvements in standardizing the naming of the various components in DPDK, > > > > and their associated feature-enabled macros. > > > > > > > > Following this patch, each library will have the name in format, > > > > 'librte_.so', and the macro indicating that library is enabled in the > > > > build will have the form 'RTE_LIB_'. > > > > > > > > Similarly, for libraries, the equivalent name formats and macros are: > > > > 'librte__.so' and 'RTE__', where class is the > > > > device type taken from the relevant driver subdirectory name, i.e. 'net', > > > > 'crypto' etc. > > > > > > > > To avoid too many changes at once for end applications, the old macro names > > > > will still be provided in the build in this release, but will be removed > > > > subsequently. > > > > > > > > Signed-off-by: Bruce Richardson > > > > > > > > [1] http://inbox.dpdk.org/dev/ef7c1a87-79ab-e405-4202-39b7ad6b0c71@solarflare.com/t/#u > > > > --- > > > > app/test-bbdev/meson.build | 4 ++-- > > > > app/test-crypto-perf/meson.build | 2 +- > > > > app/test-pmd/meson.build | 12 ++++++------ > > > > app/test/meson.build | 8 ++++---- > > > > doc/guides/rel_notes/deprecation.rst | 8 ++++++++ > > > > drivers/baseband/meson.build | 1 - > > > > drivers/bus/meson.build | 1 - > > > > drivers/common/meson.build | 1 - > > > > drivers/common/mlx5/meson.build | 1 - > > > > drivers/common/qat/meson.build | 1 - > > > > drivers/compress/meson.build | 1 - > > > > drivers/compress/octeontx/meson.build | 2 +- > > > > drivers/crypto/meson.build | 1 - > > > > drivers/crypto/null/meson.build | 2 +- > > > > drivers/crypto/octeontx/meson.build | 2 +- > > > > drivers/crypto/octeontx2/meson.build | 2 +- > > > > drivers/crypto/scheduler/meson.build | 2 +- > > > > drivers/crypto/virtio/meson.build | 2 +- > > > > drivers/event/dpaa/meson.build | 2 +- > > > > drivers/event/dpaa2/meson.build | 2 +- > > > > drivers/event/meson.build | 1 - > > > > drivers/event/octeontx/meson.build | 2 +- > > > > drivers/event/octeontx2/meson.build | 2 +- > > > > drivers/mempool/meson.build | 1 - > > > > drivers/meson.build | 9 ++++----- > > > > drivers/net/meson.build | 1 - > > > > drivers/net/mlx4/meson.build | 2 +- > > > > drivers/raw/ifpga/meson.build | 2 +- > > > > drivers/raw/meson.build | 1 - > > > > drivers/regex/meson.build | 1 - > > > > drivers/vdpa/meson.build | 1 - > > > > examples/bond/meson.build | 2 +- > > > > examples/ethtool/meson.build | 2 +- > > > > examples/ioat/meson.build | 2 +- > > > > examples/l2fwd-crypto/meson.build | 2 +- > > > > examples/ntb/meson.build | 2 +- > > > > examples/vm_power_manager/meson.build | 6 +++--- > > > > lib/librte_ethdev/meson.build | 1 - > > > > lib/librte_graph/meson.build | 2 -- > > > > lib/meson.build | 3 ++- > > > > 40 files changed, 47 insertions(+), 55 deletions(-) > > > > > > Does this change the share object file names too, or only the macros? > > > > > > > It does indeed change the object name files, which is a little bit > > concerning. However, the consensus based on the RFC seemed to be that the > > benefit is likely worth the change. If we want, we can look to use symlinks > > to the old names on install, but I think that just delays the pain since I > > would expect few to actually change their build to the new names until the > > old ones and the symlinks completely go away. > > > > /Bruce > > It is a backward incompatible change, so we need to provide symlinks, > right? On upgrade, programs linked to librte_old.so will fail to start. > Or was this targeted at 20.11 thus piggy-backing on the ABI change > which forces a re-link? > More of the latter, and the fact that changing the build system involved a few library renames anyway for those using make. Since the ABI is changing this release, and all the libs have a new major version number there is no requirement for libs linked against an older version to work, and since pkg-config should now be used for linking the actual names should not be a concern. That's the thinking anyway. :-) /Bruce