[dpdk-dev,2/2] mk: fix two more missing libm dependencies
Commit Message
Commit e86a699cf6b1 missed two further libm dependencies: ceil() used by
librte_meter is typically inlined so the missing dependency does not
actually cause failures, and librte_pmd_nfp is not built by default
so its easy to miss.
This causes duplicates in LDLIBS in many configurations so its vital
they are removed before passing to linker.
Fixes: e86a699cf6b1 ("mk: fix shared library dependencies on libm and librt")
Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
---
drivers/net/nfp/Makefile | 2 ++
lib/librte_meter/Makefile | 2 ++
mk/rte.app.mk | 2 ++
3 files changed, 6 insertions(+)
Comments
On 3/21/2016 11:33 AM, Panu Matilainen wrote:
> Commit e86a699cf6b1 missed two further libm dependencies: ceil() used by
> librte_meter is typically inlined so the missing dependency does not
> actually cause failures, and librte_pmd_nfp is not built by default
> so its easy to miss.
>
> This causes duplicates in LDLIBS in many configurations so its vital
> they are removed before passing to linker.
>
> Fixes: e86a699cf6b1 ("mk: fix shared library dependencies on libm and librt")
>
> Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Tested-by: Ferruh Yigit <ferruh.yigit@intel.com>
2016-03-21 11:48, Ferruh Yigit:
> On 3/21/2016 11:33 AM, Panu Matilainen wrote:
> > Commit e86a699cf6b1 missed two further libm dependencies: ceil() used by
> > librte_meter is typically inlined so the missing dependency does not
> > actually cause failures, and librte_pmd_nfp is not built by default
> > so its easy to miss.
> >
> > This causes duplicates in LDLIBS in many configurations so its vital
> > they are removed before passing to linker.
> >
> > Fixes: e86a699cf6b1 ("mk: fix shared library dependencies on libm and librt")
> >
> > Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
>
> Tested-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied, thanks
@@ -39,6 +39,8 @@ LIB = librte_pmd_nfp.a
CFLAGS += -O3
CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lm
+
EXPORT_MAP := rte_pmd_nfp_version.map
LIBABIVER := 1
@@ -39,6 +39,8 @@ LIB = librte_meter.a
CFLAGS += -O3
CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lm
+
EXPORT_MAP := rte_meter_version.map
LIBABIVER := 1
@@ -85,6 +85,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_VHOST) += -lrte_vhost
ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),n)
_LDLIBS-$(CONFIG_RTE_LIBRTE_SCHED) += -lm
_LDLIBS-$(CONFIG_RTE_LIBRTE_SCHED) += -lrt
+_LDLIBS-$(CONFIG_RTE_LIBRTE_METER) += -lm
ifeq ($(CONFIG_RTE_LIBRTE_VHOST_NUMA),y)
_LDLIBS-$(CONFIG_RTE_LIBRTE_VHOST) += -lnuma
endif
@@ -101,6 +102,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += -libverbs
_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_SZEDATA2) += -lsze2
_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_XENVIRT) += -lxenstore
_LDLIBS-$(CONFIG_RTE_LIBRTE_MPIPE_PMD) += -lgxio
+_LDLIBS-$(CONFIG_RTE_LIBRTE_NFP_PMD) += -lm
# QAT / AESNI GCM PMDs are dependent on libcrypto (from openssl)
# for calculating HMAC precomputes
ifeq ($(CONFIG_RTE_LIBRTE_PMD_QAT),y)