This recipe builds rte_kni.ko module
Signed-off-by: Naveen Saini <[email protected]>
---
recipes-extended/dpdk/dpdk-module_20.11.1.bb | 45 +++++++++++
.../dpdk/0001-Makefile-add-makefile.patch | 74 +++++++++++++++++++
2 files changed, 119 insertions(+)
create mode 100644 recipes-extended/dpdk/dpdk-module_20.11.1.bb
create mode 100644 recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
diff --git a/recipes-extended/dpdk/dpdk-module_20.11.1.bb
b/recipes-extended/dpdk/dpdk-module_20.11.1.bb
new file mode 100644
index 0000000..ac931bc
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk-module_20.11.1.bb
@@ -0,0 +1,45 @@
+include dpdk.inc
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/dpdk:"
+
+SRC_URI += " \
+ file://0001-Makefile-add-makefile.patch \
+"
+STABLE = "-stable"
+BRANCH = "20.11"
+SRCREV = "b1e71cf43153cca07db6cbb69fdca030ccf52234"
+S = "${WORKDIR}/git"
+
+inherit module
+
+#kernel module needs 'rte_build_config.h', which is generated at buid time
+DEPENDS += "dpdk"
+
+export S
+export STAGING_KERNEL_DIR
+export STAGING_INCDIR
+export INSTALL_MOD_DIR="dpdk"
+
+do_configure[noexec] = "1"
+
+do_compile() {
+ cd ${S}/kernel/linux/kni
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+ oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
+ KERNEL_VERSION=${KERNEL_VERSION} \
+ CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
+ AR="${KERNEL_AR}" \
+ O=${STAGING_KERNEL_BUILDDIR} \
+ KBUILD_EXTRA_SYMBOLS="${KBUILD_EXTRA_SYMBOLS}" \
+ ${MAKE_TARGETS}
+}
+
+do_install() {
+ cd ${S}/kernel/linux/kni
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+ oe_runmake DEPMOD=echo
MODLIB="${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}" \
+ INSTALL_FW_PATH="${D}${nonarch_base_libdir}/firmware" \
+ CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
+ O=${STAGING_KERNEL_BUILDDIR} \
+ ${MODULES_INSTALL_TARGET}
+}
diff --git a/recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
b/recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
new file mode 100644
index 0000000..18b75fb
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
@@ -0,0 +1,74 @@
+From 768cef60957d5e840071d1d6514d4add3f3c2904 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <[email protected]>
+Date: Wed, 14 Apr 2021 17:25:53 +0800
+Subject: [PATCH] Makefile: add makefile
+
+Current meson build for kernel module build does not fit in Yocto.
+So added Makefile to build rte_kni.ko
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Naveen Saini <[email protected]>
+---
+ kernel/linux/kni/Kbuild | 6 ------
+ kernel/linux/kni/Makefile | 35 +++++++++++++++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+ delete mode 100644 kernel/linux/kni/Kbuild
+ create mode 100644 kernel/linux/kni/Makefile
+
+diff --git a/kernel/linux/kni/Kbuild b/kernel/linux/kni/Kbuild
+deleted file mode 100644
+index e5452d6c00..0000000000
+--- a/kernel/linux/kni/Kbuild
++++ /dev/null
+@@ -1,6 +0,0 @@
+-# SPDX-License-Identifier: BSD-3-Clause
+-# Copyright(c) 2018 Luca Boccassi <[email protected]>
+-
+-ccflags-y := $(MODULE_CFLAGS)
+-obj-m := rte_kni.o
+-rte_kni-y := $(patsubst $(src)/%.c,%.o,$(wildcard $(src)/*.c))
+diff --git a/kernel/linux/kni/Makefile b/kernel/linux/kni/Makefile
+new file mode 100644
+index 0000000000..19897ee06e
+--- /dev/null
++++ b/kernel/linux/kni/Makefile
+@@ -0,0 +1,35 @@
++#
++# Makefile for building rte_kni.ko
++#
++MODULE_CFLAGS += -include $(S)/config/rte_config.h
++MODULE_CFLAGS += -I$(S)/lib/librte_eal/include
++MODULE_CFLAGS += -I$(S)/lib/librte_kni
++MODULE_CFLAGS += -I$(S)/kernel/linux/kni
++MODULE_CFLAGS += -I$(S)
++MODULE_CFLAGS += -I$(STAGING_INCDIR)
++
++rte_kni-objs = kni_misc.o kni_net.o
++
++ccflags-y := $(MODULE_CFLAGS)
++cflags-y := $(MODULE_CFLAGS)
++obj-m := rte_kni.o
++
++
++KERNEL_MAKE_OPTS := -C $(STAGING_KERNEL_DIR) M=$(CURDIR)
++ifneq ($(ARCH),)
++KERNEL_MAKE_OPTS += ARCH=$(ARCH)
++endif
++ifneq ($(CROSS_COMPILE),)
++KERNEL_MAKE_OPTS += CROSS_COMPILE=$(CROSS_COMPILE)
++endif
++
++build:
++ $(MAKE) $(KERNEL_MAKE_OPTS) modules
++
++install: modules_install
++
++modules_install:
++ $(MAKE) $(KERNEL_MAKE_OPTS) modules_install
++
++clean:
++ $(MAKE) $(KERNEL_MAKE_OPTS) clean
+--
+2.17.1
+
--
2.17.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6998):
https://lists.yoctoproject.org/g/meta-intel/message/6998
Mute This Topic: https://lists.yoctoproject.org/mt/82113572/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-intel/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-