commit:     a2fb92eea6f3cda99315844a006b37c7784c8cd5
Author:     Adrian Schollmeyer <nex+b-g-o <AT> nexadn <DOT> de>
AuthorDate: Thu May 11 14:46:18 2023 +0000
Commit:     Adrian Schollmeyer <nex+b-g-o <AT> nexadn <DOT> de>
CommitDate: Thu May 11 14:47:01 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=a2fb92ee

sys-kernel/dpdk-kmod: add 23.03

Signed-off-by: Adrian Schollmeyer <nex+b-g-o <AT> nexadn.de>

 sys-kernel/dpdk-kmod/Manifest               |  1 +
 sys-kernel/dpdk-kmod/dpdk-kmod-23.03.ebuild | 86 +++++++++++++++++++++++++++++
 2 files changed, 87 insertions(+)

diff --git a/sys-kernel/dpdk-kmod/Manifest b/sys-kernel/dpdk-kmod/Manifest
index 26d1a089d..f303cab39 100644
--- a/sys-kernel/dpdk-kmod/Manifest
+++ b/sys-kernel/dpdk-kmod/Manifest
@@ -1,2 +1,3 @@
 DIST dpdk-21.11.1.tar.xz 15115156 BLAKE2B 
089e98279922b5494b205d957f9ac05001a668f4536d45e5fd89b9f7d04779e0671ec428b2408963641da3ae999d5943a1ff5dc59c23020ccefce824609c8f11
 SHA512 
d7afc0c918626b1706a18a129086fcd3741b251c28fa00c5711eb85a03137e5ee6e08de7bd5ebe957e442dc9b901314042b382b223e74f0fdd5d560ac657f1b3
 DIST dpdk-22.07.tar.xz 15231912 BLAKE2B 
29e36519fb91d440645259932863b5fb6c2386f78d9ba78a871505d7d32e9f4803012aa62044aa578585eee4507aa1c277bda6ec0428a27820faef644f5bfd79
 SHA512 
8b2adb8a47732efca4e35a68ab03d6c579fc0f699344c0c10be45e62c90d412ebea5ddc37a26efd08a9af08e65c84de177817300a66e6107674f15ecfe3e696c
+DIST dpdk-23.03.tar.xz 15816416 BLAKE2B 
bfcd533039a765683458a784ee3827836ceca245cfd2108f807b6d8bfb3139a2d30eceb9167131b96c18e3b4d6b640b6c79a20e5f1ec4cfca54e481087f965d4
 SHA512 
c879ad1d84200af3233d8d717b25121e8a9906cd9f2908411e9e6044f388d7f60046427873e592bb922fd603da400ea680d2338a707809ca54bd5f5c944d945d

diff --git a/sys-kernel/dpdk-kmod/dpdk-kmod-23.03.ebuild 
b/sys-kernel/dpdk-kmod/dpdk-kmod-23.03.ebuild
new file mode 100644
index 000000000..bb9933168
--- /dev/null
+++ b/sys-kernel/dpdk-kmod/dpdk-kmod-23.03.ebuild
@@ -0,0 +1,86 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_11 )
+inherit linux-mod toolchain-funcs python-single-r1 meson
+
+DESCRIPTION="DPDK Kernel Nic Interface module"
+HOMEPAGE="https://dpdk.org/";
+SRC_URI="https://fast.dpdk.org/rel/dpdk-${PV}.tar.xz";
+S="${WORKDIR}/dpdk-${PV}"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+# tests need root
+RESTRICT="test"
+
+RDEPEND="${PYTHON_DEPS}"
+
+DEPEND="${RDEPEND}
+       $(python_gen_cond_dep '
+               dev-python/pyelftools[${PYTHON_USEDEP}]
+       ')
+       app-crypt/intel-ipsec-mb
+       dev-libs/elfutils
+       dev-libs/isa-l
+       dev-libs/jansson
+       dev-libs/libbpf
+       dev-libs/libbsd
+       dev-libs/openssl
+       net-libs/libmnl
+       net-libs/libpcap
+       sys-apps/dtc
+       sys-cluster/rdma-core
+       sys-process/numactl
+"
+BDEPEND="
+       ${PYTHON_DEPS}
+"
+
+PATCHES=( "${FILESDIR}/dpdk-22.03-binutils.patch" )
+
+pkg_setup() {
+       linux-mod_pkg_setup
+       python-single-r1_pkg_setup
+}
+
+src_prepare() {
+       default
+       sed -e "s/@OBJDUMP@/$(tc-getOBJDUMP)/g" -i \
+               buildtools/meson.build \
+               buildtools/check-symbols.sh \
+               devtools/check-abi-version.sh || die
+}
+
+src_configure() {
+       linux-mod_pkg_setup
+       python-single-r1_pkg_setup
+       # we still have to do meson configuration as it creates
+       # header files needed for compiling the rte_kni module
+       local emesonargs=(
+               -Denable_kmods=false
+               -Dmachine=default
+               -Dplatform=generic
+       )
+       meson_src_configure
+
+       # export after meson_src_configure as BUILD_DIR is needed for module 
compilation
+       export MODULE_NAMES="rte_kni(extra/dpdk:${S}/kernel/linux/kni)"
+       export BUILD_PARAMS="-C \"${KERNEL_DIR}\" M=\"${S}\"/kernel/linux/kni \
+               src=\"${S}\"/kernel/linux/kni \
+               MODULE_CFLAGS=\"${HAVE_ARG_TX_QUEUE} -include 
${S}/config/rte_config.h -I${S}/lib/eal/include \
+               -I${S}/lib/kni -I${S}/kernel/linux/kni -I${BUILD_DIR} -I${S}\""
+       export BUILD_TARGETS="modules"
+}
+
+src_compile() {
+       linux-mod_src_compile
+}
+
+src_install() {
+       linux-mod_src_install
+}

Reply via email to