DPDK patches and discussions
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas@monjalon.net>
To: Bruce Richardson <bruce.richardson@intel.com>
Cc: Ferruh Yigit <ferruh.yigit@intel.com>,
	David Marchand <david.marchand@redhat.com>, dev <dev@dpdk.org>,
	"Kinsella, Ray" <ray.kinsella@intel.com>,
	Luca Boccassi <bluca@debian.org>
Subject: Re: [dpdk-dev] [PATCH v2] build: fix soname info for 19.11 compatiblity
Date: Thu, 12 Dec 2019 14:41:30 +0100	[thread overview]
Message-ID: <1627408.3L9Xmy2NJP@xps> (raw)
In-Reply-To: <20191212115938.GB422@bricha3-MOBL.ger.corp.intel.com>

12/12/2019 12:59, Bruce Richardson:
> On Thu, Dec 12, 2019 at 11:44:51AM +0000, Bruce Richardson wrote:
> > On Thu, Dec 12, 2019 at 08:57:50AM +0000, Ferruh Yigit wrote:
> > > On 12/12/2019 8:27 AM, David Marchand wrote:
> > > > Hello Bruce,
> > > > 
> > > > On Wed, Dec 11, 2019 at 4:16 PM Bruce Richardson
> > > > <bruce.richardson@intel.com> wrote:
> > > >>
> > > >> The soname for each stable ABI version should be just the ABI version major
> > > >> number without the minor number. Unfortunately both major and minor were
> > > >> used causing version 20.1 to be incompatible with 20.0.
> > > >>
> > > >> This patch fixes the issue by switching from 2-part to 3-part ABI version
> > > >> numbers so that we can keep 20.0 as soname and using the final digits to
> > > >> identify the 20.x releases which are ABI compatible. This requires changes
> > > >> to both make and meson builds to handle the three-digit version and shrink
> > > >> it to 2-digit for soname.
> > > >>
> > > >> Fixes: cba806e07d6f ("build: change ABI versioning to global")
> > > >>
> > > >> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > > >> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> > > > 
> > > > There is an issue with the ethtool example.
> > > > 
> > > >   INSTALL-APP server
> > > >   INSTALL-MAP server.map
> > > > cat: /home/dmarchan/dpdk/examples/ethtool/lib/ABI_VERSION: No such
> > > > file or directory
> > > >   CC rte_ethtool.o
> > > >   LD librte_ethtool.so.0.
> > > >   INSTALL-LIB librte_ethtool.so.0.
> > > > gmake[3]: stat:
> > > > /home/dmarchan/builds/i686-native-linux-gcc+shared+debug+default/examples/ethtool/lib/i686-native-linux-gcc/lib/librte_ethtool.so.0.:
> > > > Too many levels of symbolic links
> > > > == ethtool-app
> > > > 
> > > > 
> > > 
> > > It is linking against itself, in 'examples/ethtool/lib/build/lib':
> > > librte_ethtool.so -> librte_ethtool.so.0.
> > > librte_ethtool.so.0. -> librte_ethtool.so.0.
> > 
> > Yes. The issue is that this patch doesn't correct account for external libs
> > using their own version numbers. The trivial fix for this, which I'll add
> > in v3 is to make two small changes:
> > 
> > 1. Use ?= rather than := when assigning to LIBABIVER in rte.lib.mk
> > 2. Change the LIBABIVER in ethtool/lib to "1.0" rather than "1", since the
> > code assumes that we have more than a single digit in our version numbers.
> > 
> > Question: Do we need to officially support external libs using our build
> > system?
> > 
> > * If no (because we assume nobody uses it or otherwise), then we use the two
> > one-line fixes above and job done.
> > * If yes, then the makefile logic needs further work to support the case of
> > having an arbitrary version number. Also, we need to look into the whole
> > experimental detection logic, as that would probably not apply for external
> > libs.
> > 
> > /Bruce
> > 
> Patch v3 now sent, on the assumption that the answer is "no", or the answer
> is "yes, but we can fix that later" :-)

Yes, that's reasonnable.



  reply	other threads:[~2019-12-12 13:41 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-11 10:26 [dpdk-dev] [PATCH] " Bruce Richardson
2019-12-11 11:04 ` Luca Boccassi
2019-12-11 11:08   ` Thomas Monjalon
2019-12-11 11:14     ` Bruce Richardson
2019-12-11 11:19       ` Ferruh Yigit
2019-12-12 11:07         ` Ray Kinsella
2019-12-11 11:11   ` Bruce Richardson
2019-12-11 11:25     ` Ferruh Yigit
2019-12-12 11:14     ` Ray Kinsella
2019-12-12 13:58       ` Luca Boccassi
2019-12-12 14:05         ` Ray Kinsella
2019-12-12 15:08           ` Bruce Richardson
2019-12-11 11:15 ` Ferruh Yigit
2019-12-11 13:14   ` Bruce Richardson
2019-12-11 15:16 ` [dpdk-dev] [PATCH v2] " Bruce Richardson
2019-12-12  8:27   ` David Marchand
2019-12-12  8:57     ` Ferruh Yigit
2019-12-12 11:44       ` Bruce Richardson
2019-12-12 11:59         ` Bruce Richardson
2019-12-12 13:41           ` Thomas Monjalon [this message]
2019-12-12 11:58 ` [dpdk-dev] [PATCH v3] " Bruce Richardson
2019-12-12 12:30   ` Ray Kinsella
2019-12-12 13:02     ` Bruce Richardson
2019-12-12 15:25       ` Ray Kinsella
2019-12-12 15:34         ` Bruce Richardson
2019-12-12 14:45   ` Ferruh Yigit
2019-12-12 16:34   ` Ray Kinsella
2019-12-13 11:38   ` Neil Horman
2019-12-16 11:21   ` Laatz, Kevin
2019-12-19 12:42   ` David Marchand
2019-12-19 15:19     ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1627408.3L9Xmy2NJP@xps \
    --to=thomas@monjalon.net \
    --cc=bluca@debian.org \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=ray.kinsella@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).