diff options
author | Bruce Ashfield <bruce.ashfield@gmail.com> | 2021-06-16 23:10:15 -0400 |
---|---|---|
committer | Bruce Ashfield <bruce.ashfield@gmail.com> | 2021-10-13 22:45:55 -0400 |
commit | fcf53f6a8c4fb67f60143955c7239f204f633dfe (patch) | |
tree | ea3609db1927e54a7deadefe73561f695b591018 /recipes-kernel | |
parent | 83cf2863916968d4dc44c26f60f34322f93d33ce (diff) | |
download | meta-virtualization-fcf53f6a8c4fb67f60143955c7239f204f633dfe.tar.gz |
yocto-cfg-fragments: introduce native provider of configuration fragments
To allow the use of the yocto configuration fragments in scenarios where
a kernel inherits kernel-yocto or has a custom fragment implementation, but
doesn't directly include the yocto-kernel-cache in the kernel SRC_URI,
we introduce a native provider of the fragments.
This fragment provider is independent of a kernel tree and when added
as a dependency to a recipe, the fragments will be placed in:
recipe-sysroot-native/kcfg/
These can then be referenced on the SRC_URI or in KERNEL_FEEATURES by
using '../recipe-sysroot-native/kcfg' as the relative path to the
.scc or .cfg file. In the future, this won't be required as kernel-yocto
will always check the native sysroot for fragments, and fragments will
always be referenced by relative path from the base of the kernel-cache.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Diffstat (limited to 'recipes-kernel')
-rw-r--r-- | recipes-kernel/linux/yocto-cfg-fragments.bb | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/recipes-kernel/linux/yocto-cfg-fragments.bb b/recipes-kernel/linux/yocto-cfg-fragments.bb new file mode 100644 index 00000000..5f858182 --- /dev/null +++ b/recipes-kernel/linux/yocto-cfg-fragments.bb | |||
@@ -0,0 +1,37 @@ | |||
1 | HOMEPAGE = "https://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-cache/" | ||
2 | SUMMARY = "Kernel configuration fragments" | ||
3 | DESCRIPTION = "Typically used as part of a kernel clone, this is the standalone \ | ||
4 | fragment repository. Making it available to other fragment management schemes \ | ||
5 | " | ||
6 | SECTION = "devel" | ||
7 | |||
8 | LICENSE = "MIT" | ||
9 | LIC_FILES_CHKSUM = "file://COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" | ||
10 | |||
11 | do_configure[noexec] = "1" | ||
12 | do_compile[noexec] = "1" | ||
13 | INHIBIT_DEFAULT_DEPS = "1" | ||
14 | |||
15 | LINUX_VERSION ?= "5.14" | ||
16 | PV = "v${LINUX_VERSION}+git${SRCREV}" | ||
17 | |||
18 | SRCREV = "25509cd5563356638e78d33ec7e5354225fbd3db" | ||
19 | SRC_URI = "\ | ||
20 | git://git.yoctoproject.org/yocto-kernel-cache;branch=yocto-${LINUX_VERSION} \ | ||
21 | " | ||
22 | |||
23 | S = "${WORKDIR}/git" | ||
24 | |||
25 | do_install() { | ||
26 | install -d ${D}${base_prefix}/kcfg | ||
27 | |||
28 | # copy the configuration fragments over to the native deploy | ||
29 | cp -r ${S}/* ${D}${base_prefix}/kcfg | ||
30 | # scripts bring in a bash dependency we don't want | ||
31 | rm -rf ${D}${base_prefix}/kcfg/scripts | ||
32 | } | ||
33 | |||
34 | FILES:${PN} += "kcfg/" | ||
35 | SYSROOT_DIRS += "${base_prefix}/kcfg" | ||
36 | BBCLASSEXTEND = "native nativesdk" | ||
37 | |||