diff options
| author | Lee Chee Yang <chee.yang.lee@intel.com> | 2023-12-07 15:38:08 +0800 |
|---|---|---|
| committer | Anuj Mittal <anuj.mittal@intel.com> | 2023-12-08 09:04:48 +0800 |
| commit | 617ca40b421f0b0ce4e3ba996688bbac2c68b14b (patch) | |
| tree | 4241d95138cf0a92296d08285e98694cc234a5d5 | |
| parent | 3493058e7dcf00c78517ec5efb6457ebb1e85089 (diff) | |
| download | meta-dpdk-617ca40b421f0b0ce4e3ba996688bbac2c68b14b.tar.gz | |
dpdk: 23.07 -> 23.11 (LTS)
drop the dpdk-module, kni driver now dropped.
https://github.com/DPDK/dpdk/commit/f78c100bc87119c6a94130a6689d773afdaa9d98
EXTRA_OEMESON remove enable_kmods.
set the cpu_instruction_set through EXTRA_OEMESON.
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
| -rw-r--r-- | recipes-extended/dpdk/dpdk-module_23.07.bb | 50 | ||||
| -rw-r--r-- | recipes-extended/dpdk/dpdk/0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch | 32 | ||||
| -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 @@ | |||
| 1 | include dpdk.inc | ||
| 2 | |||
| 3 | FILESEXTRAPATHS:prepend := "${THISDIR}/dpdk:" | ||
| 4 | |||
| 5 | SRC_URI = "git://dpdk.org/git/dpdk;branch=${BRANCH};protocol=https \ | ||
| 6 | file://0001-Makefile-add-makefile.patch \ | ||
| 7 | " | ||
| 8 | |||
| 9 | BRANCH = "releases" | ||
| 10 | SRCREV = "12fcafcd62286933e6b167b14856d21f642efa5f" | ||
| 11 | S = "${WORKDIR}/git" | ||
| 12 | |||
| 13 | inherit module | ||
| 14 | |||
| 15 | #kernel module needs 'rte_build_config.h', which is generated at buid time | ||
| 16 | DEPENDS += "dpdk" | ||
| 17 | |||
| 18 | COMPATIBLE_MACHINE = "null" | ||
| 19 | COMPATIBLE_HOST:libc-musl:class-target = "null" | ||
| 20 | COMPATIBLE_HOST:linux-gnux32 = "null" | ||
| 21 | |||
| 22 | export S | ||
| 23 | export STAGING_KERNEL_DIR | ||
| 24 | export STAGING_INCDIR | ||
| 25 | export INSTALL_MOD_DIR="dpdk" | ||
| 26 | |||
| 27 | do_configure[noexec] = "1" | ||
| 28 | |||
| 29 | do_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 | |||
| 41 | do_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 @@ | |||
| 1 | From 121e5d019f0bb6dec0ace2b361611edd10fc8ff8 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Lee Chee Yang <chee.yang.lee@intel.com> | ||
| 3 | Date: Wed, 6 Dec 2023 16:58:10 +0800 | ||
| 4 | Subject: [PATCH] config/meson: get cpu_instruction_set from meson option | ||
| 5 | |||
| 6 | Workaround error: | ||
| 7 | | ../git/config/meson.build:178:8: ERROR: Problem encountered: Compiler | ||
| 8 | does not support "x86_64" arch flag. | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate [ yocto specific to set cpu_instruction_set ] | ||
| 11 | |||
| 12 | Signed-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 | |||
| 17 | diff --git a/config/meson.build b/config/meson.build | ||
| 18 | index 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 | -- | ||
| 31 | 2.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 @@ | |||
| 1 | include dpdk.inc | 1 | include dpdk.inc |
| 2 | 2 | ||
| 3 | SRC_URI = "git://dpdk.org/git/dpdk;branch=${BRANCH};protocol=https \ | 3 | SRC_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 | ||
| 7 | BRANCH = "releases" | 5 | STABLE = "-stable" |
| 8 | SRCREV = "12fcafcd62286933e6b167b14856d21f642efa5f" | 6 | BRANCH = "23.11" |
| 7 | SRCREV = "eeb0605f118dae66e80faa44f7b3e88748032353" | ||
| 9 | S = "${WORKDIR}/git" | 8 | S = "${WORKDIR}/git" |
| 10 | 9 | ||
| 11 | # kernel module is provide by dpdk-module recipe, so disable here | 10 | def get_cpu_instruction_set(bb, d): |
| 12 | EXTRA_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 | |||
| 15 | EXTRA_OEMESON = " -Dexamples=all -Dcpu_instruction_set=${@get_cpu_instruction_set(bb, d)} " | ||
| 15 | 16 | ||
| 16 | COMPATIBLE_MACHINE = "null" | 17 | COMPATIBLE_MACHINE = "null" |
| 17 | COMPATIBLE_HOST:libc-musl:class-target = "null" | 18 | COMPATIBLE_HOST:libc-musl:class-target = "null" |
