[OE-core] [PATCH V2 2/2] kernel-selftest: add vm testcase to recipe
Hongzhi.Song
hongzhi.song at windriver.com
Fri Jul 6 09:07:42 UTC 2018
Add vm testcase to recipe, and sightly modify organization of code
Signed-off-by: Hongzhi.Song <hongzhi.song at windriver.com>
---
.../kernel-selftest/kernel-selftest.bb | 62 +++++++++++-----------
1 file changed, 31 insertions(+), 31 deletions(-)
diff --git a/meta/recipes-kernel/kernel-selftest/kernel-selftest.bb b/meta/recipes-kernel/kernel-selftest/kernel-selftest.bb
index c976e7b..28fd178 100644
--- a/meta/recipes-kernel/kernel-selftest/kernel-selftest.bb
+++ b/meta/recipes-kernel/kernel-selftest/kernel-selftest.bb
@@ -2,6 +2,7 @@ SUMMARY = "Kernel selftest for Linux"
DESCRIPTION = "Kernel selftest for Linux"
LICENSE = "GPLv2"
+# for bpf and vm
DEPENDS = " \
elfutils \
libcap \
@@ -10,6 +11,10 @@ DEPENDS = " \
util-linux \
rsync-native \
"
+# for vm
+RDEPENDS_${PN} += "libgcc \
+ bash \
+"
do_configure[depends] += "virtual/kernel:do_shared_workdir"
@@ -17,14 +22,13 @@ inherit linux-kernel-base kernel-arch
do_populate_lic[depends] += "virtual/kernel:do_patch"
-inherit kernelsrc
-
S = "${WORKDIR}/${BP}"
-# The LDFLAGS is required or some old kernels fails due missing
-# symbols and this is preferred than requiring patches to every old
-# supported kernel.
-LDFLAGS="-ldl -lutil"
+# now we just test bpf and vm
+# we will append other kernel selftest in the future
+TEST_LIST = "bpf \
+ vm \
+"
EXTRA_OEMAKE = '\
CROSS_COMPILE=${TARGET_PREFIX} \
@@ -32,41 +36,37 @@ EXTRA_OEMAKE = '\
CC="${CC}" \
AR="${AR}" \
LD="${LD}" \
- EXTRA_CFLAGS="-ldw" \
- ${PACKAGECONFIG_CONFARGS} \
'
EXTRA_OEMAKE += "\
'DESTDIR=${D}' \
- 'prefix=${prefix}' \
- 'bindir=${bindir}' \
- 'sharedir=${datadir}' \
- 'sysconfdir=${sysconfdir}' \
- 'sharedir=${@os.path.relpath(datadir, prefix)}' \
- 'mandir=${@os.path.relpath(mandir, prefix)}' \
- 'infodir=${@os.path.relpath(infodir, prefix)}' \
"
KERNEL_SELFTEST_SRC ?= "Makefile \
- include \
- tools \
+ include \
+ tools \
+ scripts \
+ arch \
"
-# Add bpf selftest now, other can be added later.
-do_compile () {
- # Linux kernel build system is expected to do the right thing
- unset CFLAGS
- oe_runmake -C ${S}/tools/testing/selftests/bpf
+do_compile() {
+ for i in ${TEST_LIST}
+ do
+ oe_runmake -C ${S}/tools/testing/selftests/${i}
+ done
+}
+
+do_install() {
+ for i in ${TEST_LIST}
+ do
+ oe_runmake -C ${S}/tools/testing/selftests/${i} INSTALL_PATH=${D}/opt/kselftest/${i} install
+ done
+
+ chown root:root -R ${D}/opt/kselftest
}
-# On target, enter /opt/kselftest/bpf directory, run "./test_align 0 11"
-# The test_align testcase test the bpf instruction set, the testcase defined here:
-# https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git/tree/tools/testing/selftests/bpf/test_align.c#n47
-do_install () {
- # Linux kernel build system is expected to do the right thing
- unset CFLAGS
- mkdir -p ${D}/opt/kselftest/bpf
- install -m 0755 ${B}/tools/testing/selftests/bpf/test_align ${D}/opt/kselftest/bpf/
+do_configure() {
+ :
}
do_configure[prefuncs] += "copy_perf_source_from_kernel remove_clang_related"
@@ -91,4 +91,4 @@ remove_clang_related() {
PACKAGE_ARCH = "${MACHINE_ARCH}"
INHIBIT_PACKAGE_DEBUG_SPLIT="1"
-FILES_${PN} += "/opt/kselftest/bpf/*"
+FILES_${PN} += "/opt/kselftest/"
--
2.8.1
More information about the Openembedded-core
mailing list