From: Kevin Laatz Date: Wed, 7 Nov 2018 18:10:18 +0000 (+0000) Subject: telemetry: fix shared link with make X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=fe1570a73e77565e1018dfc77f386c09e8f172fa;p=dpdk.git telemetry: fix shared link with make Currently, telemetry is not working for shared builds in make. The --as-needed flag is preventing telemetry from being linked as there are no direct API calls from the app to telemetry. This is causing the --telemetry option to not be recognized by EAL. Telemetry registers it's EAL option using the RTE_INIT constructor. Since EAL's option parsing is done before the plugins init, the --telemetry option isn't registered at the time of parsing, and as a result, the --telemetry option is not being recognized. This patch fixes this issue by explicitly linking telemetry to the application by setting the "--no-as-needed" flag for the library in mk/rte.app.mk. Fixes: 8877ac688b52 ("telemetry: introduce infrastructure") Reported-by: Yanjie Xu Signed-off-by: Kevin Laatz Reviewed-by: Ferruh Yigit --- diff --git a/mk/rte.app.mk b/mk/rte.app.mk index 3ebc4e64c9..5699d979d7 100644 --- a/mk/rte.app.mk +++ b/mk/rte.app.mk @@ -50,9 +50,11 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_LPM) += -lrte_lpm _LDLIBS-$(CONFIG_RTE_LIBRTE_ACL) += --whole-archive _LDLIBS-$(CONFIG_RTE_LIBRTE_ACL) += -lrte_acl _LDLIBS-$(CONFIG_RTE_LIBRTE_ACL) += --no-whole-archive +_LDLIBS-$(CONFIG_RTE_LIBRTE_TELEMETRY) += --no-as-needed _LDLIBS-$(CONFIG_RTE_LIBRTE_TELEMETRY) += --whole-archive _LDLIBS-$(CONFIG_RTE_LIBRTE_TELEMETRY) += -lrte_telemetry -ljansson _LDLIBS-$(CONFIG_RTE_LIBRTE_TELEMETRY) += --no-whole-archive +_LDLIBS-$(CONFIG_RTE_LIBRTE_TELEMETRY) += --as-needed _LDLIBS-$(CONFIG_RTE_LIBRTE_JOBSTATS) += -lrte_jobstats _LDLIBS-$(CONFIG_RTE_LIBRTE_METRICS) += -lrte_metrics _LDLIBS-$(CONFIG_RTE_LIBRTE_BITRATE) += -lrte_bitratestats