summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNaveen Saini <naveen.kumar.saini@intel.com>2022-10-25 11:33:11 +0800
committerAnuj Mittal <anuj.mittal@intel.com>2022-10-25 14:37:48 +0800
commit4557324dde2becb4d34bd1fac7130f72201fcea0 (patch)
tree194d08052ad4b27d98ab5c39c67839d20d8f7488
parenta491d84ccc5542535bfc4734d9e9753aa84bd651 (diff)
downloadmeta-dpdk-4557324dde2becb4d34bd1fac7130f72201fcea0.tar.gz
dpdk/22.07.0: add recipe
https://git.dpdk.org/dpdk/ Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-rw-r--r--recipes-extended/dpdk/dpdk-module_22.07.0.bb58
-rw-r--r--recipes-extended/dpdk/dpdk_22.07.0.bb76
2 files changed, 134 insertions, 0 deletions
diff --git a/recipes-extended/dpdk/dpdk-module_22.07.0.bb b/recipes-extended/dpdk/dpdk-module_22.07.0.bb
new file mode 100644
index 0000000..52d5d4c
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk-module_22.07.0.bb
@@ -0,0 +1,58 @@
1include dpdk.inc
2
3FILESEXTRAPATHS:prepend := "${THISDIR}/dpdk:"
4
5SRC_URI = "git://dpdk.org/dpdk;branch=${BRANCH};protocol=https \
6 file://0001-Makefile-add-makefile.patch \
7"
8
9BRANCH = "releases"
10SRCREV = "4fceceed5b5e9fbf04acffd66239c79d81e79260"
11S = "${WORKDIR}/git"
12
13inherit module
14
15#kernel module needs 'rte_build_config.h', which is generated at buid time
16DEPENDS += "dpdk"
17
18COMPATIBLE_MACHINE = "null"
19COMPATIBLE_HOST:libc-musl:class-target = "null"
20COMPATIBLE_HOST:linux-gnux32 = "null"
21
22export S
23export STAGING_KERNEL_DIR
24export STAGING_INCDIR
25export INSTALL_MOD_DIR="dpdk"
26
27do_configure[noexec] = "1"
28
29do_compile() {
30 cd ${S}/kernel/linux/kni
31 unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
32 oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
33 KERNEL_VERSION=${KERNEL_VERSION} \
34 CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
35 AR="${KERNEL_AR}" \
36 O=${STAGING_KERNEL_BUILDDIR} \
37 KBUILD_EXTRA_SYMBOLS="${KBUILD_EXTRA_SYMBOLS}" \
38 ${MAKE_TARGETS}
39}
40
41do_install() {
42 cd ${S}/kernel/linux/kni
43 unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
44 oe_runmake DEPMOD=echo MODLIB="${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}" \
45 INSTALL_FW_PATH="${D}${nonarch_base_libdir}/firmware" \
46 CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
47 O=${STAGING_KERNEL_BUILDDIR} \
48 ${MODULES_INSTALL_TARGET}
49}
50
51# CVE-2021-3839 has been fixed by commit 4c40d30d2b in 21.11.1
52# NVD database is incomplete
53# CVE-2022-0669 has been fixed by commit 6cb68162e4 in 21.11.1
54# NVD database is incomplete
55CVE_CHECK_IGNORE += "\
56 CVE-2021-3839 \
57 CVE-2022-0669 \
58"
diff --git a/recipes-extended/dpdk/dpdk_22.07.0.bb b/recipes-extended/dpdk/dpdk_22.07.0.bb
new file mode 100644
index 0000000..bbaa847
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk_22.07.0.bb
@@ -0,0 +1,76 @@
1include dpdk.inc
2
3SRC_URI = "git://dpdk.org/dpdk;branch=${BRANCH};protocol=https \
4 file://0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch \
5"
6
7BRANCH = "releases"
8SRCREV = "4fceceed5b5e9fbf04acffd66239c79d81e79260"
9S = "${WORKDIR}/git"
10
11# CVE-2021-3839 has been fixed by commit 4c40d30d2b in 21.11.1
12# NVD database is incomplete
13# CVE-2022-0669 has been fixed by commit 6cb68162e4 in 21.11.1
14# NVD database is incomplete
15CVE_CHECK_IGNORE += "\
16 CVE-2021-3839 \
17 CVE-2022-0669 \
18"
19
20# kernel module is provide by dpdk-module recipe, so disable here
21EXTRA_OEMESON = " -Denable_kmods=false \
22 -Dexamples=all \
23"
24
25COMPATIBLE_MACHINE = "null"
26COMPATIBLE_HOST:libc-musl:class-target = "null"
27COMPATIBLE_HOST:linux-gnux32 = "null"
28
29PACKAGECONFIG ??= " "
30PACKAGECONFIG[afxdp] = ",,libbpf xdp-tools"
31PACKAGECONFIG[libvirt] = ",,libvirt"
32
33RDEPENDS:${PN} += "pciutils python3-core"
34RDEPENDS:${PN}-examples += "bash"
35DEPENDS = "numactl python3-pyelftools-native"
36
37inherit meson pkgconfig
38
39INSTALL_PATH = "${prefix}/share/dpdk"
40
41do_install:append(){
42 # remove source files
43 rm -rf ${D}/${INSTALL_PATH}/examples/*
44
45 # Install examples
46 install -m 0755 -d ${D}/${INSTALL_PATH}/examples/
47 for dirname in ${B}/examples/dpdk-*
48 do
49 if [ ! -d ${dirname} ] && [ -x ${dirname} ]; then
50 install -m 0755 ${dirname} ${D}/${INSTALL_PATH}/examples/
51 fi
52 done
53
54}
55
56PACKAGES =+ "${PN}-examples ${PN}-tools"
57
58FILES:${PN} += " ${bindir}/dpdk-testpmd \
59 ${bindir}/dpdk-proc-info \
60 ${libdir}/*.so* \
61 ${libdir}/dpdk/pmds-22.0/*.so* \
62 "
63FILES:${PN}-examples = " \
64 ${prefix}/share/dpdk/examples/* \
65 "
66
67FILES:${PN}-tools = " \
68 ${bindir}/dpdk-pdump \
69 ${bindir}/dpdk-test \
70 ${bindir}/dpdk-test-* \
71 ${bindir}/dpdk-*.py \
72 "
73
74CVE_PRODUCT = "data_plane_development_kit"
75
76INSANE_SKIP:${PN} = "dev-so"