[dpdk-stable] patch 'mk: fix build of shared library with libbsd' has been queued to LTS release 18.11.2

Kevin Traynor ktraynor at redhat.com
Wed Apr 10 18:43:30 CEST 2019


Hi,

FYI, your patch has been queued to LTS release 18.11.2

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 04/16/19. So please
shout if anyone has objections.

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.

Kevin Traynor

---
>From 8e843c6c7bea789291b100b02226748dd8c9321b Mon Sep 17 00:00:00 2001
From: Thomas Monjalon <thomas at monjalon.net>
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 <thomas at monjalon.net>
---
 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 3129edc8c..57ee82150 100644
--- a/mk/exec-env/linuxapp/rte.vars.mk
+++ b/mk/exec-env/linuxapp/rte.vars.mk
@@ -25,4 +25,6 @@ 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
@@ -33,3 +35,7 @@ EXECENV_LDFLAGS += -export-dynamic
 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 5699d979d..c539bb9c3 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -304,7 +304,4 @@ 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
diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk
index c696a2174..4df8849a0 100644
--- a/mk/rte.lib.mk
+++ b/mk/rte.lib.mk
@@ -36,4 +36,6 @@ _INSTALL = $(INSTALL-FILES-y) $(RTE_OUTPUT)/lib/$(LIB)
 _CLEAN = doclean
 
+LDLIBS += $(EXECENV_LDLIBS-y)
+
 .PHONY: all
 all: install
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-04-10 14:06:09.688376126 +0100
+++ 0022-mk-fix-build-of-shared-library-with-libbsd.patch	2019-04-10 14:06:07.840294793 +0100
@@ -1,8 +1,10 @@
-From fdb3798d6f870f79d5fa40b2c3425e8285dd4e44 Mon Sep 17 00:00:00 2001
+From 8e843c6c7bea789291b100b02226748dd8c9321b Mon Sep 17 00:00:00 2001
 From: Thomas Monjalon <thomas at monjalon.net>
 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 at dpdk.org
 
 Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
 ---
@@ -45,10 +46,10 @@
 +
  export EXECENV_CFLAGS EXECENV_LDFLAGS EXECENV_ASFLAGS EXECENV_LDLIBS
 diff --git a/mk/rte.app.mk b/mk/rte.app.mk
-index 8a4f0f4e5..d0ab942d5 100644
+index 5699d979d..c539bb9c3 100644
 --- a/mk/rte.app.mk
 +++ b/mk/rte.app.mk
-@@ -310,7 +310,4 @@ ifeq ($(CONFIG_RTE_EXEC_ENV_LINUXAPP)$(CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES),yy)
+@@ -304,7 +304,4 @@ 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)


More information about the stable mailing list