From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 549FCA0554;
	Tue, 18 Feb 2020 00:45:03 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 0AB5A1D9D4;
	Tue, 18 Feb 2020 00:45:03 +0100 (CET)
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com
 [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id 431AA1D9D2
 for <dev@dpdk.org>; Tue, 18 Feb 2020 00:45:01 +0100 (CET)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id 7574721F30;
 Mon, 17 Feb 2020 18:44:59 -0500 (EST)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Mon, 17 Feb 2020 18:44:59 -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; s=mesmtp; bh=BrB8j55A7G
 enkxUAih4cjSxhfHuMnQPVMSKCjMnjEns=; b=rFI8cOYbi4TyH0suwvIa5JfU7J
 qiowWHX795Ep1j6L3NpI7XBJFjw1pH+9gYLKQtDaqgYAFn0RZIwM8IFhdZ4I1oQI
 TL/L56ZpDWDho+Mksm7EVLGA2zty7VpAF/zXpxb/WjamVNNUFAqPpzpxEEgQcpFh
 A9WJ5ix3HIFzTgvuM=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-transfer-encoding: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=
 fm2; bh=BrB8j55A7GenkxUAih4cjSxhfHuMnQPVMSKCjMnjEns=; b=tsygyM5G
 GX9GDatjjwiY0OHVvluJMQRItZOUc5SkVsEauXqHsxnBQK25ap5eOuKiyzyFxRGw
 nA52+djloV8kI62kM8lfnR5HgIeNIespx4Yz3HfV6pE6Z6muwbQQprlcnVwMhCs2
 XzGE2m2BUAJeFaRVuGA2uXgiPEqUkIkttL9vXBibOzvnZzdDFUgkRKRVc1cCd1ed
 +jR+Lb8auG77ToGefUcddBH5AqSv4v0J0gWxJzBy2UraR5MKkW/FKTMwdH4Tftre
 JoLLKUuahvcYLceY19OYo0F878BcGDltuIqYWRe8OJbZF0j+AqUbxhDmMadyeNB9
 2m/MDPSB79RluQ==
X-ME-Sender: <xms:eiVLXviTDj3QkJ2Bf4sQGOqRZ3K21tp9QOuuuII-oZQ2zdErpbHnbQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedugedrjeejgddufecutefuodetggdotefrodftvf
 curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
 uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
 fjughrpefhvffufffkofgjfhgggfestdekredtredttdenucfhrhhomhepvfhhohhmrghs
 ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucffoh
 hmrghinheplhhisgdrmhhknecukfhppeejjedrudefgedrvddtfedrudekgeenucevlhhu
 shhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhhomhgrshesmh
 honhhjrghlohhnrdhnvght
X-ME-Proxy: <xmx:eiVLXmffNC6PZMx8zhfiy0KixkhN8st8I76U1Ps0Y69r909XIUiD6A>
 <xmx:eiVLXl34B5LskXYedaKemN4j4YuYrTfHY4dxyIjXulzhAgXy42s0Dg>
 <xmx:eiVLXmtA1lIoyC-WnxNvqI_ZCBh7VwPxW0cB6hz7hOy5k1uTDF8JtA>
 <xmx:eyVLXjmenrwJopblQMCQJ5kPNROaylBjh7MVOhzwPc8n8XIwmlBxfg>
Received: from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184])
 by mail.messagingengine.com (Postfix) with ESMTPA id 17F703280065;
 Mon, 17 Feb 2020 18:44:58 -0500 (EST)
From: Thomas Monjalon <thomas@monjalon.net>
To: dev@dpdk.org
Cc: ray.kinsella@intel.com, nhorman@tuxdriver.com, bluca@debian.org,
 david.marchand@redhat.com, ktraynor@redhat.com,
 Bruce Richardson <bruce.richardson@intel.com>
Date: Tue, 18 Feb 2020 00:44:02 +0100
Message-Id: <20200217234402.2235904-1-thomas@monjalon.net>
X-Mailer: git-send-email 2.25.0
In-Reply-To: <44659287.fMDQidcC6G@xps>
References: <44659287.fMDQidcC6G@xps>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: [dpdk-dev] [PATCH] build: fix soname for experimental libraries
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

Because of an original mistake in ABI numbering,
and a temporary workaround for ABI 20,
for experimental libs, numbering would lead to consider
	ABI 20.1 > ABI 21.0

Before this patch:

DPDK 19.11: ABI version 0.200 and soname 0.20
DPDK 20.02: ABI version 0.2001 and soname 0.201
Numbers are increasing, that's fine.
For the next major ABI, back to normal numbering:
DPDK 20.11: ABI version 0.210 and soname 0.21
Numbers are decreasing!

After this patch:

DPDK 19.11: ABI version 0.200 and soname 0.20
DPDK 20.02: ABI version 0.201 and soname 0.20
DPDK 20.11: ABI version 0.210 and soname 0.21

Fixes: f26c2b39b271 ("build: fix soname info for 19.11 compatibility")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 config/meson.build | 8 ++++----
 mk/rte.lib.mk      | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/config/meson.build b/config/meson.build
index 6c46767e3e..e7cd74e2c2 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -27,12 +27,12 @@ abi_version = run_command(find_program('cat', 'more'),
 # and the filename suffix as 0.majorminor versions,
 # e.g. v20.1 => librte_stable.so.20.1, librte_experimental.so.0.201
 #    sonames => librte_stable.so.20, librte_experimental.so.0.20
-# e.g. v20.0.1 => librte_stable.so.20.0.1, librte_experimental.so.0.2001
-#      sonames => librte_stable.so.20.0, librte_experimental.so.0.200
+# e.g. v20.0.1 => librte_stable.so.20.0.1, librte_experimental.so.0.201
+#      sonames => librte_stable.so.20.0, librte_experimental.so.0.20
 abi_va = abi_version.split('.')
 stable_so_version = abi_va.length() == 2 ? abi_va[0] : abi_va[0] + '.' + abi_va[1]
-experimental_abi_version = '0.' + ''.join(abi_va)
-experimental_so_version = '0.' + ''.join(stable_so_version.split('.'))
+experimental_abi_version = '0.' + ''.join([abi_va[0], abi_va[2]])
+experimental_so_version = '0.' + ''.join([abi_va[0]])
 
 # extract all version information into the build configuration
 dpdk_conf.set('RTE_VER_YEAR', pver.get(0).to_int())
diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk
index b1a8372cc2..8730c084ce 100644
--- a/mk/rte.lib.mk
+++ b/mk/rte.lib.mk
@@ -15,8 +15,8 @@ LIBABIVER ?= $(shell cat $(RTE_SRCDIR)/ABI_VERSION)
 SOVER := $(basename $(LIBABIVER))
 ifeq ($(shell grep -s "^DPDK_" $(SRCDIR)/$(EXPORT_MAP)),)
 # EXPERIMENTAL ABI is versioned as 0.major+minor, e.g. 0.201 for 20.1 ABI
-LIBABIVER := 0.$(shell echo $(LIBABIVER) | tr -d '.')
-SOVER := 0.$(shell echo $(SOVER) | tr -d '.')
+LIBABIVER := 0.$(shell echo $(LIBABIVER) | cut -d '.' -f1,3 | tr -d '.')
+SOVER := 0.$(shell echo $(SOVER) | cut -d '.' -f1)
 endif
 
 ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y)
-- 
2.25.0