summaryrefslogtreecommitdiffstats
path: root/recipes-extended/dpdk/dpdk_20.11.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-extended/dpdk/dpdk_20.11.bb')
-rw-r--r--recipes-extended/dpdk/dpdk_20.11.bb93
1 files changed, 93 insertions, 0 deletions
diff --git a/recipes-extended/dpdk/dpdk_20.11.bb b/recipes-extended/dpdk/dpdk_20.11.bb
new file mode 100644
index 00000000..2d27adc5
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk_20.11.bb
@@ -0,0 +1,93 @@
1include dpdk-20.11.inc
2
3SRC_URI += " \
4 file://0001-meson.build-march-and-mcpu-already-passed-by-Yocto.patch \
5 file://0001-ifpga-meson-Fix-finding-librt-using-find_library.patch \
6 file://0001-drivers-net-enetfec-enet_uio.c-fix-multiple-definiti.patch \
7"
8
9MESON_BUILDTYPE = "release"
10
11# kernel module is provide by dpdk-module recipe, so disable here
12EXTRA_OEMESON = " -Denable_kmods=false \
13 -Dexamples=all \
14 -Doptimization=3 \
15"
16
17PACKAGECONFIG ??= "openssl"
18PACKAGECONFIG[afxdp] = ",,libbpf"
19PACKAGECONFIG[libvirt] = ",,libvirt"
20PACKAGECONFIG[openssl] = ",,openssl"
21
22RDEPENDS:${PN} += "bash pciutils python3-core"
23RDEPENDS:${PN}-examples += "bash"
24DEPENDS = "numactl"
25
26inherit meson
27
28INSTALL_PATH = "${prefix}/share/dpdk"
29
30do_configure:prepend() {
31 sed -i "/implementor_/d" ${WORKDIR}/meson.cross
32 sed -i "/\[properties]/aimplementor_id = 'dpaa'" ${WORKDIR}/meson.cross
33 sed -i "/\[properties]/aimplementor_pn = 'default'" ${WORKDIR}/meson.cross
34 sed -i "s/cpu =.*/cpu = 'armv8-a'/" ${WORKDIR}/meson.cross
35}
36
37do_install:append(){
38 # remove source files
39 rm -rf ${D}/${INSTALL_PATH}/examples/*
40
41 # Install examples
42 install -m 0755 -d ${D}/${INSTALL_PATH}/examples/
43 for dirname in ${B}/examples/dpdk-*
44 do
45 if [ ! -d ${dirname} ] && [ -x ${dirname} ]; then
46 install -m 0755 ${dirname} ${D}/${INSTALL_PATH}/examples/
47 fi
48 done
49 cp -rf ${S}/nxp/* ${D}/${INSTALL_PATH}/
50}
51
52PACKAGES =+ "${PN}-tools ${PN}-examples ${PN}-misc"
53
54FILES:${PN}-tools = " \
55 ${bindir}/dpdk-testpmd \
56 ${INSTALL_PATH}/examples/dpdk-l2fwd \
57 ${INSTALL_PATH}/examples/dpdk-l2fwd-crypto \
58 ${INSTALL_PATH}/examples/dpdk-l3fwd \
59 ${INSTALL_PATH}/examples/dpdk-ipsec-secgw \
60"
61
62FILES:${PN}-examples = " \
63 ${bindir}/dpdk-proc-info \
64 ${bindir}/dpdk-test \
65 ${bindir}/dpdk-test-crypto-perf \
66 ${bindir}/dpdk-*.py \
67 ${INSTALL_PATH}/examples/dpdk-cmdif \
68 ${INSTALL_PATH}/examples/dpdk-cmdline \
69 ${INSTALL_PATH}/examples/dpdk-ethtool \
70 ${INSTALL_PATH}/examples/dpdk-ip_fragmentation \
71 ${INSTALL_PATH}/examples/dpdk-ip_reassembly \
72 ${INSTALL_PATH}/examples/dpdk-kni \
73 ${INSTALL_PATH}/examples/dpdk-l2fwd-keepalive \
74 ${INSTALL_PATH}/examples/dpdk-l2fwd-qdma \
75 ${INSTALL_PATH}/examples/dpdk-l3fwd-acl \
76 ${INSTALL_PATH}/examples/dpdk-link_status_interrupt \
77 ${INSTALL_PATH}/examples/dpdk-mp_client \
78 ${INSTALL_PATH}/examples/dpdk-mp_server \
79 ${INSTALL_PATH}/examples/dpdk-qdma_demo \
80 ${INSTALL_PATH}/examples/dpdk-simple_mp \
81 ${INSTALL_PATH}/examples/dpdk-symmetric_mp \
82 ${INSTALL_PATH}/examples/dpdk-symmetric_mp_qdma \
83 ${INSTALL_PATH}/examples/dpdk-timer \
84"
85
86FILES:${PN}-misc = " \
87 ${bindir}/dpdk-pdump \
88 ${bindir}/dpdk-test-* \
89 ${bindir}/dpdk-*.py \
90 ${INSTALL_PATH}/examples/* \
91"
92
93INSANE_SKIP:${PN} = "dev-so"