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 +}
