summaryrefslogtreecommitdiffstats
path: root/recipes-extended
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-extended')
-rw-r--r--recipes-extended/dpdk/dpdk-module_23.07.bb50
-rw-r--r--recipes-extended/dpdk/dpdk/0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch32
-rw-r--r--recipes-extended/dpdk/dpdk_23.11.bb (renamed from recipes-extended/dpdk/dpdk_23.07.bb)19
3 files changed, 42 insertions, 59 deletions
diff --git a/recipes-extended/dpdk/dpdk-module_23.07.bb b/recipes-extended/dpdk/dpdk-module_23.07.bb
deleted file mode 100644
index c76ed87..0000000
--- a/recipes-extended/dpdk/dpdk-module_23.07.bb
+++ /dev/null
@@ -1,50 +0,0 @@
1include dpdk.inc
2
3FILESEXTRAPATHS:prepend := "${THISDIR}/dpdk:"
4
5SRC_URI = "git://dpdk.org/git/dpdk;branch=${BRANCH};protocol=https \
6 file://0001-Makefile-add-makefile.patch \
7"
8
9BRANCH = "releases"
10SRCREV = "12fcafcd62286933e6b167b14856d21f642efa5f"
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
diff --git a/recipes-extended/dpdk/dpdk/0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch b/recipes-extended/dpdk/dpdk/0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch
new file mode 100644
index 0000000..92e3523
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk/0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch
@@ -0,0 +1,32 @@
1From 121e5d019f0bb6dec0ace2b361611edd10fc8ff8 Mon Sep 17 00:00:00 2001
2From: Lee Chee Yang <chee.yang.lee@intel.com>
3Date: Wed, 6 Dec 2023 16:58:10 +0800
4Subject: [PATCH] config/meson: get cpu_instruction_set from meson option
5
6Workaround error:
7| ../git/config/meson.build:178:8: ERROR: Problem encountered: Compiler
8does not support "x86_64" arch flag.
9
10Upstream-Status: Inappropriate [ yocto specific to set cpu_instruction_set ]
11
12Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
13---
14 config/meson.build | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/config/meson.build b/config/meson.build
18index a9ccd56deb..f310c7adf6 100644
19--- a/config/meson.build
20+++ b/config/meson.build
21@@ -105,7 +105,7 @@ platform = get_option('platform')
22
23 # set the cpu_instruction_set and cflags for it
24 if meson.is_cross_build()
25- cpu_instruction_set = host_machine.cpu()
26+ cpu_instruction_set = get_option('cpu_instruction_set')
27 else
28 cpu_instruction_set = get_option('cpu_instruction_set')
29 machine = get_option('machine')
30--
312.37.3
32
diff --git a/recipes-extended/dpdk/dpdk_23.07.bb b/recipes-extended/dpdk/dpdk_23.11.bb
index 3a1b0a8..5f0f9ec 100644
--- a/recipes-extended/dpdk/dpdk_23.07.bb
+++ b/recipes-extended/dpdk/dpdk_23.11.bb
@@ -1,17 +1,18 @@
1include dpdk.inc 1include dpdk.inc
2 2
3SRC_URI = "git://dpdk.org/git/dpdk;branch=${BRANCH};protocol=https \ 3SRC_URI += " file://0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch "
4 file://0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch \
5"
6 4
7BRANCH = "releases" 5STABLE = "-stable"
8SRCREV = "12fcafcd62286933e6b167b14856d21f642efa5f" 6BRANCH = "23.11"
7SRCREV = "eeb0605f118dae66e80faa44f7b3e88748032353"
9S = "${WORKDIR}/git" 8S = "${WORKDIR}/git"
10 9
11# kernel module is provide by dpdk-module recipe, so disable here 10def get_cpu_instruction_set(bb, d):
12EXTRA_OEMESON = " -Denable_kmods=false \ 11 import re
13 -Dexamples=all \ 12 march = re.search(r'-march=([^\s]*)', d.getVar('CC')).group(1)
14" 13 return march
14
15EXTRA_OEMESON = " -Dexamples=all -Dcpu_instruction_set=${@get_cpu_instruction_set(bb, d)} "
15 16
16COMPATIBLE_MACHINE = "null" 17COMPATIBLE_MACHINE = "null"
17COMPATIBLE_HOST:libc-musl:class-target = "null" 18COMPATIBLE_HOST:libc-musl:class-target = "null"