Message ID | 20250609134119.11666-1-dixitparmar19@gmail.com |
---|---|
State | New |
Headers | show |
Series | [v2] meta/meta-selftest: add selftest-hello-mod recipe | expand |
On 6/9/25 15:41, Dixit Parmar via lists.openembedded.org wrote: > <snip> > --- /dev/null > +++ b/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/hello.c > @@ -0,0 +1,24 @@ > +/****************************************************************************** > + * > + * Copyright (C) 2011 Intel Corporation. All rights reserved. > + * > + * SPDX-License-Identifier: GPL-2.0-only > + * > + *****************************************************************************/ <snip> > +LICENSE = "MIT" > +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" > One note: the recipe says MIT license, but the source claims to be GPL-2.0-only
diff --git a/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/Makefile b/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/Makefile new file mode 100644 index 0000000000..4ded35fbc3 --- /dev/null +++ b/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/Makefile @@ -0,0 +1,14 @@ +obj-m := hello.o + +SRC := $(shell pwd) + +all: + $(MAKE) -C $(KERNEL_SRC) M=$(SRC) + +modules_install: + $(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules_install + +clean: + rm -f *.o *~ core .depend .*.cmd *.ko *.mod.c + rm -f Module.markers Module.symvers modules.order + rm -rf .tmp_versions Modules.symvers diff --git a/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/hello.c b/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/hello.c new file mode 100644 index 0000000000..4f73455d20 --- /dev/null +++ b/meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/hello.c @@ -0,0 +1,24 @@ +/****************************************************************************** + * + * Copyright (C) 2011 Intel Corporation. All rights reserved. + * + * SPDX-License-Identifier: GPL-2.0-only + * + *****************************************************************************/ + +#include <linux/module.h> + +static int __init hello_init(void) +{ + pr_info("Hello World!\n"); + return 0; +} + +static void __exit hello_exit(void) +{ + pr_info("Goodbye Cruel World!\n"); +} + +module_init(hello_init); +module_exit(hello_exit); +MODULE_LICENSE("GPL"); diff --git a/meta-selftest/recipes-test/selftest-hello-mod/hello-mod_0.1.bb b/meta-selftest/recipes-test/selftest-hello-mod/hello-mod_0.1.bb new file mode 100644 index 0000000000..8a98c70703 --- /dev/null +++ b/meta-selftest/recipes-test/selftest-hello-mod/hello-mod_0.1.bb @@ -0,0 +1,17 @@ +SUMMARY = "Example of how to build an external Linux kernel module - selftest variant" +DESCRIPTION = "${SUMMARY}" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit module + +SRC_URI = "file://hello-mod/Makefile \ + file://hello-mod/hello.c \ + " + +S = "${WORKDIR}/hello-mod" + +# The inherit of module.bbclass will automatically name module packages with +# "kernel-module-" prefix as required by the oe-core build environment. + +RPROVIDES:${PN} += "kernel-module-hello"
Kernel module specific oe test cases requires a test kernel module package to work with. Added selftest-hello-mod derived from meta-skeleton/recipes-kernel/hello-mod. Signed-off-by: Dixit Parmar <dixitparmar19@gmail.com> --- .../files/hello-mod/Makefile | 14 +++++++++++ .../files/hello-mod/hello.c | 24 +++++++++++++++++++ .../selftest-hello-mod/hello-mod_0.1.bb | 17 +++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/Makefile create mode 100644 meta-selftest/recipes-test/selftest-hello-mod/files/hello-mod/hello.c create mode 100644 meta-selftest/recipes-test/selftest-hello-mod/hello-mod_0.1.bb