dpdk: prevent linking dpdk against libbsd
If libbsd is detected by the DPDK build system, DPDK does not provide implementations for strlcpy and dynamically link against the one provided by libbsd. When the DPDK plugin is loaded by VPP, a crash occurs because libbsd is not loaded by VPP. Type: fix Change-Id: Ib691bbe27edcf0f6f0a3d39952e439027cef72cb Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
This commit is contained in:
committed by
Damjan Marion
parent
5cc11b1210
commit
1f799bc3cb
Vendored
+16
-1
@@ -12,6 +12,7 @@
|
||||
# limitations under the License.
|
||||
|
||||
DPDK_PKTMBUF_HEADROOM ?= 128
|
||||
DPDK_USE_LIBBSD ?= n
|
||||
DPDK_DEBUG ?= n
|
||||
DPDK_MLX4_PMD ?= n
|
||||
DPDK_MLX5_PMD ?= n
|
||||
@@ -118,6 +119,19 @@ echo '$(HASH)define RTE_$(1) $(DPDK_$(1))' \
|
||||
fi
|
||||
endef
|
||||
|
||||
define dpdk_config_def
|
||||
if [[ "$(DPDK_$(1))" == "y" ]]; then \
|
||||
if ! grep -q "RTE_$(1)" $(dpdk_build_dir)/rte_build_config.h \
|
||||
$(dpdk_src_dir)/config/rte_config.h ; then \
|
||||
echo '$(HASH)define RTE_$(1) 1' \
|
||||
>> $(dpdk_build_dir)/rte_build_config.h ; \
|
||||
fi; \
|
||||
elif [[ "$(DPDK_$(1))" == "n" ]]; then \
|
||||
sed -i '/$(HASH)define RTE_$(1) .*/d' $(dpdk_build_dir)/rte_build_config.h \
|
||||
$(dpdk_src_dir)/config/rte_config.h ; \
|
||||
fi
|
||||
endef
|
||||
|
||||
DPDK_MESON_ARGS = \
|
||||
--default-library static \
|
||||
--libdir lib \
|
||||
@@ -143,7 +157,8 @@ define dpdk_config_cmds
|
||||
deactivate && \
|
||||
echo "DPDK post meson configuration" && \
|
||||
echo "Altering rte_build_config.h" && \
|
||||
$(call dpdk_config,PKTMBUF_HEADROOM)
|
||||
$(call dpdk_config,PKTMBUF_HEADROOM) && \
|
||||
$(call dpdk_config_def,USE_LIBBSD)
|
||||
endef
|
||||
|
||||
define dpdk_build_cmds
|
||||
|
||||
Reference in New Issue
Block a user