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.
next prev parent 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).