From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: docs <docs@lists.yoctoproject.org>
Subject: Fwd: [OE-core] [PATCH 00/25] Class file improvements
Date: Sun, 02 Aug 2026 11:30:27 +0100 [thread overview]
Message-ID: <4e962542767f0d9f4fa29e6621ce93936be989d2.camel@linuxfoundation.org> (raw)
In-Reply-To: 18C7F641A8EDB50A.3252690@lists.openembedded.org
[-- Attachment #1: Type: text/plain, Size: 113 bytes --]
Hopefully the notes here can be the basis for migration notes for 6.1
for these changes.
Cheers,
Richard
[-- Attachment #2: Forwarded message — [OE-core] [PATCH 00/25] Class file improvements --]
[-- Type: message/rfc822, Size: 17970 bytes --]
[-- Attachment #2.1.1: Type: text/plain, Size: 5443 bytes --]
This series starts to clean up a few class file issues. The general theme is
to move python functions into lib/oe and out of the class files.
It does separate out "kernel" from barebox and u-boot which removes certain
headaches.
The series does break some things, notably:
* the get_kernel*() functions are now oe.kernel.get*()
* kernel-arch no longer exports or sets ARCH and UBOOT_ARCH, there are
functions you can use to get the values instead
* ARCH and UBOOT_ARCH are not exported into the environment in most cases
* the default kernel build make commands now sets ARCH
* various utils.bbclass python functions are now oe.utils.XXX()
* most sanity.bbclass functions are now oe.sanity.XXX()
* the 'valid_arches' variable is no longer available to change ARCH
* the linux-kernel-base class was removed
* lsb_distro_identifier is now always oe.lsb.distro_identifier()
The changes to adapt should hopefully not be too onerous and should
give us a cleaner code base which is easier to follow with a better data
store memory usage profile.
There is more work to be done along these lines but this is a start...
Richard Purdie (25):
sstatesig: Use kernel.bbclass instead of linux-kernel-base.bbclass
linux-kernel-base: Delete unused function
lib/oe/kernel: Move python functions from linux-kernel-base to library
code
kernel-yocto: Simplify code for cleanliness and slight performance
kernel-arch: Move kernel and uboot arch functions to lib/oe/kernel.py
kernel-arch: Simplify KERNEL_ARCH variable usage
kernel-arch: Don't export UBOOT_ARCH
u-boot: Separate out from kernel-arch.bbclass
barebox: Separate out from kernel-arch.bbclass
lib/oe/kernel: Simplify map_uboot_arch
image_types/kernel-uimage: Swap UBOOT_ARCH for
oe.kernel.map_uboot_arch call
kernel-fit-image: Swap UBOOT_ARCH for oe.kernel.map_uboot_arch call
linux-yocto-fitimage: Set UBOOT_ARCH
kernel-arch: Drop UBOOT_ARCH
linux-libc-headers: Drop kernel-arch and set ARCH directly
toolchain-scripts: Drop usage of kernel-arch
kernel-arch: Move ARCH usage into target classes
linux-yocto-fitimage: Drop obsolete dependency on linux-kernel-base
linux-kernel-base: Fold remainder into kernel-arch and drop
kernel-devicetree: Add missing function prefixes
utils: Drop explode_deps function
utils: Move functions from utils.bbclass to utils.py
lib/oe/lsb: Merge distro_identifier functions
sanity: Move code to lib/oe
sanity: Drop unreachable code
meta/classes-global/base.bbclass | 14 +-
meta/classes-global/package.bbclass | 2 +-
meta/classes-global/sanity.bbclass | 1050 +----------------
meta/classes-global/utils.bbclass | 93 --
meta/classes-recipe/barebox.bbclass | 4 +-
meta/classes-recipe/cross-canadian.bbclass | 2 +-
meta/classes-recipe/devicetree.bbclass | 4 +-
meta/classes-recipe/image.bbclass | 4 +-
meta/classes-recipe/image_types.bbclass | 4 +-
meta/classes-recipe/kernel-arch.bbclass | 80 +-
meta/classes-recipe/kernel-devicetree.bbclass | 8 +-
meta/classes-recipe/kernel-fit-image.bbclass | 4 +-
meta/classes-recipe/kernel-uimage.bbclass | 2 +-
meta/classes-recipe/kernel-yocto.bbclass | 10 +-
meta/classes-recipe/kernel.bbclass | 19 +-
meta/classes-recipe/kernelsrc.bbclass | 6 +-
meta/classes-recipe/linux-kernel-base.bbclass | 62 -
meta/classes-recipe/module-base.bbclass | 1 +
meta/classes-recipe/populate_sdk_base.bbclass | 10 +-
meta/classes-recipe/populate_sdk_ext.bbclass | 2 +-
meta/classes-recipe/testimage.bbclass | 2 +-
meta/classes-recipe/toolchain-scripts.bbclass | 4 +-
meta/classes/multilib.bbclass | 2 +-
meta/classes/report-error.bbclass | 2 +-
meta/classes/sign_ipk.bbclass | 4 +-
meta/classes/sign_package_feed.bbclass | 4 +-
meta/classes/sign_rpm.bbclass | 6 +-
meta/conf/multilib.conf | 2 +-
meta/lib/oe/__init__.py | 2 +-
meta/lib/oe/kernel.py | 88 ++
meta/lib/oe/lsb.py | 10 +-
meta/lib/oe/sanity.py | 1032 ++++++++++++++++
meta/lib/oe/sstatesig.py | 2 +-
meta/lib/oe/utils.py | 85 ++
meta/lib/oeqa/sdk/testsdk.py | 2 +-
meta/recipes-bsp/u-boot/u-boot.inc | 7 +-
meta/recipes-core/glibc/glibc-ld.inc | 2 +-
meta/recipes-core/meta/dummy-sdk-package.inc | 2 +-
meta/recipes-core/meta/meta-environment.bb | 2 +-
meta/recipes-core/meta/meta-go-toolchain.bb | 2 +-
.../packagegroups/packagegroup-core-sdk.bb | 4 +-
.../packagegroup-cross-canadian.bb | 6 +-
.../packagegroup-go-cross-canadian.bb | 2 +-
.../packagegroup-rust-cross-canadian.bb | 2 +-
.../linux-libc-headers/linux-libc-headers.inc | 4 +-
.../linux/linux-yocto-fitimage.bb | 6 +-
.../make-mod-scripts/make-mod-scripts_1.0.bb | 8 +-
meta/recipes-kernel/perf/perf.bb | 4 +-
48 files changed, 1323 insertions(+), 1356 deletions(-)
delete mode 100644 meta/classes-recipe/linux-kernel-base.bbclass
create mode 100644 meta/lib/oe/kernel.py
create mode 100644 meta/lib/oe/sanity.py
[-- Attachment #2.1.2: Type: text/plain, Size: 442 bytes --]
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#242525): https://lists.openembedded.org/g/openembedded-core/message/242525
Mute This Topic: https://lists.openembedded.org/mt/120561012/1686473
Group Owner: openembedded-core+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [richard.purdie@linuxfoundation.org]
-=-=-=-=-=-=-=-=-=-=-=-
parent reply other threads:[~2026-08-02 10:30 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <18C7F641A8EDB50A.3252690@lists.openembedded.org>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4e962542767f0d9f4fa29e6621ce93936be989d2.camel@linuxfoundation.org \
--to=richard.purdie@linuxfoundation.org \
--cc=docs@lists.yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox