mirror of
git://git.yoctoproject.org/meta-dpdk.git
synced 2025-07-19 21:09:04 +02:00
dpdk-module: add recipe
This recipe builds rte_kni.ko module Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This commit is contained in:
parent
d4ddaf2e54
commit
7ec861d3c9
45
recipes-extended/dpdk/dpdk-module_20.11.1.bb
Normal file
45
recipes-extended/dpdk/dpdk-module_20.11.1.bb
Normal file
|
@ -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}
|
||||||
|
}
|
74
recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
Normal file
74
recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
From 768cef60957d5e840071d1d6514d4add3f3c2904 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||||
|
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 <naveen.kumar.saini@intel.com>
|
||||||
|
---
|
||||||
|
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 <bluca@debian.org>
|
||||||
|
-
|
||||||
|
-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
|
||||||
|
|
Loading…
Reference in New Issue
Block a user