diff --git a/net/dpdk/Makefile b/net/dpdk/Makefile new file mode 100644 index 0000000000..7aa1c9619c --- /dev/null +++ b/net/dpdk/Makefile @@ -0,0 +1,38 @@ +# SPDX-License-Identifier: GPL-2.0-only +# + +include $(TOPDIR)/rules.mk + +PKG_NAME := dpdk +PKG_VERSION := 21.05 + +PKG_SOURCE := dpdk-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL := http://static.dpdk.org/rel +PKG_HASH := 1e12499b4c5fcdb57c83e5fe184ea6becddf7cf092893c2c5ef2efb0eec12f0b + +PKG_BUILD_DEPENDS:= meson/host +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/host-build.mk +include $(TOPDIR)/feeds/packages/devel/meson/meson.mk + +TARGET_CFLAGS += -D_GNU_SOURCE -Wno-unused-result -Wno-format-nonliteral + +define Package/dpdk + SECTION := net + CATEGORY := Network + TITLE := Data Plane Development Kit (DPDK) + DEPENDS := @(x86_64||arm||aarch64) +librt +libpthread +libbpf +libpcap +libopenssl +endef + +define Package/dpdk/description + DPDK consists of libraries to accelerate packet processing + workloads running on a wide variety of CPU architectures. +endef + +define Package/dpdk/install + $(INSTALL_DIR) $(1)/usr/{bin,lib} + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{dpdk-testpmd,dpdk-proc-info,dpdk-test-flow-perf} $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,dpdk)) diff --git a/net/dpdk/patches/0001-Handling-backtrace-and-execinfo-header-file.patch b/net/dpdk/patches/0001-Handling-backtrace-and-execinfo-header-file.patch new file mode 100644 index 0000000000..04ba200e67 --- /dev/null +++ b/net/dpdk/patches/0001-Handling-backtrace-and-execinfo-header-file.patch @@ -0,0 +1,35 @@ +From afe64bae6d398fc9a194bce2763d6b2ab080f38f Mon Sep 17 00:00:00 2001 +From: Chandrakant Sharpa +Date: Mon, 14 Jun 2021 17:53:16 +0530 +Subject: [PATCH] Handling backtrace and execinfo header file + +Signed-off-by: Chandrakant Sharpa +--- + lib/eal/linux/eal_debug.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/lib/eal/linux/eal_debug.c ++++ b/lib/eal/linux/eal_debug.c +@@ -2,9 +2,11 @@ + * Copyright(c) 2010-2014 Intel Corporation + */ + ++#ifdef __GLIBC__ + #ifdef RTE_BACKTRACE + #include + #endif ++#endif + #include + #include + #include +@@ -26,8 +28,10 @@ void rte_dump_stack(void) + char **symb = NULL; + int size; + ++#ifdef __GLIBC__ + size = backtrace(func, BACKTRACE_SIZE); + symb = backtrace_symbols(func, size); ++#endif + + if (symb == NULL) + return;