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 E7616A046B for ; Tue, 23 Jul 2019 03:01:45 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E0A9E1B998; Tue, 23 Jul 2019 03:01:45 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id BAAD51B998 for ; Tue, 23 Jul 2019 03:01:44 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE2 (envelope-from yskoh@mellanox.com) with ESMTPS (AES256-SHA encrypted); 23 Jul 2019 04:01:39 +0300 Received: from scfae-sc-2.mti.labs.mlnx (scfae-sc-2.mti.labs.mlnx [10.101.0.96]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id x6N11Hex026580; Tue, 23 Jul 2019 04:01:38 +0300 From: Yongseok Koh To: Thomas Monjalon Cc: dpdk stable Date: Mon, 22 Jul 2019 17:59:40 -0700 Message-Id: <20190723010115.6446-13-yskoh@mellanox.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190723010115.6446-1-yskoh@mellanox.com> References: <20190723010115.6446-1-yskoh@mellanox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'mk: fix build of shared library with libbsd' has been queued to LTS release 17.11.7 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 17.11.7 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objection by 07/27/19. So please shout if anyone has objection. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Thanks. Yongseok --- >From 39d07d7200b3c829cf50e96b508e0e77d8868f6a Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Tue, 12 Feb 2019 23:07:05 +0100 Subject: [PATCH] mk: fix build of shared library with libbsd [ upstream commit fdb3798d6f870f79d5fa40b2c3425e8285dd4e44 ] When building DPDK with "make" and options CONFIG_RTE_USE_LIBBSD=y and CONFIG_RTE_BUILD_SHARED_LIB=y libbsd was not linked, resulting in compilation errors: undefined reference to `strlcpy' The link option -lbsd is added in a common place for both Linux apps and libs. It is used in app linkage via EXECENV_LDLIBS, and in lib linkage via the added variable EXECENV_LDLIBS-y. Fixes: 5364de644a4b ("eal: support strlcpy function") Signed-off-by: Thomas Monjalon --- mk/exec-env/linuxapp/rte.vars.mk | 6 ++++++ mk/rte.app.mk | 3 --- mk/rte.lib.mk | 2 ++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/mk/exec-env/linuxapp/rte.vars.mk b/mk/exec-env/linuxapp/rte.vars.mk index 9a7169996d..f6e247a5ab 100644 --- a/mk/exec-env/linuxapp/rte.vars.mk +++ b/mk/exec-env/linuxapp/rte.vars.mk @@ -52,6 +52,8 @@ ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y) EXECENV_LDLIBS += -lgcc_s endif +EXECENV_LDLIBS-$(CONFIG_RTE_USE_LIBBSD) += -lbsd + # force applications to link with gcc/icc instead of using ld LINK_USING_CC := 1 @@ -60,4 +62,8 @@ EXECENV_LDFLAGS += -export-dynamic # Add library to the group to resolve symbols EXECENV_LDLIBS += -ldl +# EXECENV_LDLIBS-y applies to lib.so and app linking +# while EXECENV_LDLIBS applies only to app linking. +EXECENV_LDLIBS += $(EXECENV_LDLIBS-y) + export EXECENV_CFLAGS EXECENV_LDFLAGS EXECENV_ASFLAGS EXECENV_LDLIBS diff --git a/mk/rte.app.mk b/mk/rte.app.mk index 98ab58de07..6a6a7452e2 100644 --- a/mk/rte.app.mk +++ b/mk/rte.app.mk @@ -218,9 +218,6 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lrt ifeq ($(CONFIG_RTE_EXEC_ENV_LINUXAPP)$(CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES),yy) _LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lnuma endif -ifeq ($(CONFIG_RTE_EXEC_ENV_LINUXAPP)$(CONFIG_RTE_USE_LIBBSD),yy) -_LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lbsd -endif _LDLIBS-$(CONFIG_RTE_LIBRTE_SCHED) += -lm _LDLIBS-$(CONFIG_RTE_LIBRTE_SCHED) += -lrt _LDLIBS-$(CONFIG_RTE_LIBRTE_MEMBER) += -lm diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk index d0979a528b..c7653a3126 100644 --- a/mk/rte.lib.mk +++ b/mk/rte.lib.mk @@ -63,6 +63,8 @@ PREINSTALL = $(SYMLINK-FILES-y) _INSTALL = $(INSTALL-FILES-y) $(RTE_OUTPUT)/lib/$(LIB) _CLEAN = doclean +LDLIBS += $(EXECENV_LDLIBS-y) + .PHONY: all all: install -- 2.21.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2019-07-22 17:55:07.225387632 -0700 +++ 0013-mk-fix-build-of-shared-library-with-libbsd.patch 2019-07-22 17:55:05.817475000 -0700 @@ -1,8 +1,10 @@ -From fdb3798d6f870f79d5fa40b2c3425e8285dd4e44 Mon Sep 17 00:00:00 2001 +From 39d07d7200b3c829cf50e96b508e0e77d8868f6a Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Tue, 12 Feb 2019 23:07:05 +0100 Subject: [PATCH] mk: fix build of shared library with libbsd +[ upstream commit fdb3798d6f870f79d5fa40b2c3425e8285dd4e44 ] + When building DPDK with "make" and options CONFIG_RTE_USE_LIBBSD=y and @@ -16,7 +18,6 @@ and in lib linkage via the added variable EXECENV_LDLIBS-y. Fixes: 5364de644a4b ("eal: support strlcpy function") -Cc: stable@dpdk.org Signed-off-by: Thomas Monjalon --- @@ -26,10 +27,10 @@ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/mk/exec-env/linuxapp/rte.vars.mk b/mk/exec-env/linuxapp/rte.vars.mk -index 3129edc8c0..57ee82150b 100644 +index 9a7169996d..f6e247a5ab 100644 --- a/mk/exec-env/linuxapp/rte.vars.mk +++ b/mk/exec-env/linuxapp/rte.vars.mk -@@ -24,6 +24,8 @@ ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y) +@@ -52,6 +52,8 @@ ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y) EXECENV_LDLIBS += -lgcc_s endif @@ -38,7 +39,7 @@ # force applications to link with gcc/icc instead of using ld LINK_USING_CC := 1 -@@ -32,4 +34,8 @@ EXECENV_LDFLAGS += -export-dynamic +@@ -60,4 +62,8 @@ EXECENV_LDFLAGS += -export-dynamic # Add library to the group to resolve symbols EXECENV_LDLIBS += -ldl @@ -48,10 +49,10 @@ + export EXECENV_CFLAGS EXECENV_LDFLAGS EXECENV_ASFLAGS EXECENV_LDLIBS diff --git a/mk/rte.app.mk b/mk/rte.app.mk -index 8a4f0f4e50..d0ab942d5a 100644 +index 98ab58de07..6a6a7452e2 100644 --- a/mk/rte.app.mk +++ b/mk/rte.app.mk -@@ -309,9 +309,6 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lrt +@@ -218,9 +218,6 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lrt ifeq ($(CONFIG_RTE_EXEC_ENV_LINUXAPP)$(CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES),yy) _LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lnuma endif @@ -62,10 +63,10 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_SCHED) += -lrt _LDLIBS-$(CONFIG_RTE_LIBRTE_MEMBER) += -lm diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk -index c696a21747..4df8849a08 100644 +index d0979a528b..c7653a3126 100644 --- a/mk/rte.lib.mk +++ b/mk/rte.lib.mk -@@ -35,6 +35,8 @@ PREINSTALL = $(SYMLINK-FILES-y) +@@ -63,6 +63,8 @@ PREINSTALL = $(SYMLINK-FILES-y) _INSTALL = $(INSTALL-FILES-y) $(RTE_OUTPUT)/lib/$(LIB) _CLEAN = doclean