From: Zhihang Wei <wzh@ilbers.de>
To: Jan Kiszka <jan.kiszka@siemens.com>,
isar-users <isar-users@googlegroups.com>,
Anton Mikanovich <amikan@ilbers.de>
Subject: Re: [PATCH v2 00/27] Use more classes!
Date: Thu, 27 Nov 2025 15:54:20 +0100 [thread overview]
Message-ID: <6b7a474a-d8e8-4205-99ac-817904a36ae6@ilbers.de> (raw)
In-Reply-To: <727f6b55-9f96-43cb-b663-96fb733b86d8@siemens.com>
On 11/27/25 15:48, Jan Kiszka wrote:
> On 10.11.25 08:22, 'Jan Kiszka' via isar-users wrote:
>> Changes in v2:
>> - rebased over next
>> - beautified some TEMPLATE_VARS list
>>
>> As there was no feedback on [1], I interpreted it as an OK. So here
>> comes a full refactoring of our classes folders according to [2] and a
>> conversion of all recipe helper includes into classes (majority of the
>> changes).
>>
>> There are some extra changes to the barebox include/class, but my
>> impression is that this one is still broken, lacking the machine in its
>> target name, just like u-boot and other machine-specific packages have.
>> But I don't have any barebox cases around and lack insights into how it
>> is build, so I didn't go into details here.
>>
>> As this is a broad change, there will be frequent collisions with other
>> patches. I would appreciate a signal when this series is considered, and
>> on to of what so that I can do a rebase only when needed - and can also
>> avoid flooding the list with this long series repeatedly.
>>
>> Jan
>>
>> PS: Patch stats are misleading. This is copying things around and then
>> changing the original files to stubs. It is not eliminating code, is is
>> actually adding a bit as long as we carry the transitional stubs.
>>
>> [1] https://groups.google.com/g/isar-users/c/ggT6EpeRy-0
>> [2] https://docs.yoctoproject.org/bitbake/bitbake-user-manual/bitbake-user-manual-intro.html#class-types
>>
>>
>> CC: Anton Mikanovich <amikan@ilbers.de>
>>
>> Jan Kiszka (27):
>> linux-custom: Drop redundant template inheritance
>> meta: Move INHERIT'ed classes into classes-global
>> meta: Move recipe-pulled classes into classes-recipe
>> meta-isar: Move recipe-pulled classes into classes-recipe
>> linux-custom: Migrate to a bbclass
>> meta-isar: Switch to linux-kernel class
>> linux-module: Migrate to a bbclasss
>> meta-isar: Switch to linux-module class
>> kselftest: Migrate to a bbclass
>> meta-isar: Switch to kselftest class
>> u-boot-custom: Migrate to a bbclass
>> meta-isar: Switch to u-boot class
>> optee-os[-tadevkit]-custom: Migrate to bbclass'es
>> meta-isar: Switch to optee-os[-tadevkit] classes
>> optee-client: Migrate to a bbclass
>> meta-isar: Switch to optee-client class
>> trusted-firmware-a: Migrate to a bbclass
>> meta-isar: Switch to trusted-firmware-a class
>> barebox: Add SPDX license identifiers
>> barebox: Move inherit dpkg into common .inc
>> barebox: Migrate to a bbclass
>> meta-isar: Switch to barebox class
>> initramfs-hook: Migrate to a bbclass
>> meta[-isar]: Switch to initramfs-hook class
>> container-loader: Migrate to bbclass'es
>> meta-isar: Switch to {docker,podman}-loader classes
>> RECIPES-API-CHANGELOG: Document include to class conversion
>>
>> RECIPE-API-CHANGELOG.md | 32 ++
>> doc/technical_overview.md | 8 +-
>> doc/user_manual.md | 19 +-
>> .../installer-add-rootfs.bbclass | 0
>> .../target-bootstrapper.bbclass | 0
>> .../ubi-ubifs-img.bbclass | 0
>> .../prebuilt-docker-img_0.1.bb | 4 +-
>> .../prebuilt-podman-img_0.1.bb | 4 +-
>> .../recipes-bsp/barebox/barebox_2024.05.0.bb | 7 +-
>> .../optee-client-stm32mp15x_3.21.0.bb | 4 +-
>> .../optee-os/optee-os-beagleplay_4.0.0.bb | 2 +-
>> .../optee-os/optee-os-stm32mp15x_3.21.0.bb | 3 +-
>> .../optee-os-tadevkit-stm32mp15x_3.21.0.bb | 3 +-
>> .../trusted-firmware-a-beagleplay_2.10.bb | 4 +-
>> .../trusted-firmware-a-stm32mp15x_2.4.bb | 4 +-
>> .../recipes-bsp/u-boot/u-boot-2020.10.inc | 4 +-
>> .../u-boot/u-boot-beagleplay_2024.01.bb | 4 +-
>> .../u-boot-starfive-visionfive2_2024.01.bb | 4 +-
>> .../initramfs-isar-example-hook_0.1.bb | 2 +-
>> .../example-module/example-module.bb | 2 +-
>> .../kselftest/kselftest_5.6.13.bb | 3 +-
>> .../linux/linux-cip_4.4.166-cip29.bb | 2 +-
>> .../linux/linux-mainline_6.6.11.bb | 2 +-
>> .../linux-starfive_6.6.20-visionfive2.bb | 2 +-
>> meta/{classes => classes-global}/base.bbclass | 0
>> .../buildstats.bbclass | 0
>> .../isar-events.bbclass | 0
>> .../{classes => classes-global}/lists.bbclass | 0
>> .../logging.bbclass | 0
>> .../sstate.bbclass | 0
>> .../template.bbclass | 0
>> .../barebox.bbclass} | 7 +-
>> .../bootstrap.bbclass | 0
>> .../compat.bbclass | 0
>> .../container-loader.bbclass} | 5 +-
>> .../crossvars.bbclass | 0
>> .../customization-base.bbclass | 0
>> .../deb-dl-dir.bbclass | 0
>> .../debianize.bbclass | 0
>> .../docker-loader.bbclass} | 4 +-
>> .../dpkg-base.bbclass | 0
>> .../dpkg-customization.bbclass | 0
>> .../dpkg-gbp.bbclass | 0
>> .../dpkg-prebuilt.bbclass | 0
>> .../dpkg-raw.bbclass | 0
>> .../dpkg-source.bbclass | 0
>> meta/{classes => classes-recipe}/dpkg.bbclass | 0
>> .../essential.bbclass | 0
>> .../features_check.bbclass | 0
>> .../image-account-extension.bbclass | 0
>> .../image-customizations.bbclass | 0
>> .../image-locales-extension.bbclass | 0
>> .../image-postproc-extension.bbclass | 0
>> .../image-tools-extension.bbclass | 0
>> .../{classes => classes-recipe}/image.bbclass | 0
>> .../imagetypes.bbclass | 0
>> .../imagetypes_container.bbclass | 0
>> .../imagetypes_vm.bbclass | 0
>> .../imagetypes_wic.bbclass | 0
>> .../initramfs-hook.bbclass} | 5 +-
>> .../initramfs.bbclass | 0
>> .../kbuildtarget.bbclass | 0
>> .../kselftest.bbclass} | 5 +-
>> .../linux-kernel.bbclass} | 3 +-
>> .../linux-module.bbclass} | 3 +-
>> .../multiarch.bbclass | 0
>> .../native.bbclass | 0
>> .../opensbi.bbclass | 0
>> .../optee-client.bbclass} | 9 +-
>> .../optee-os-base.bbclass} | 3 +-
>> .../optee-os-tadevkit.bbclass} | 2 +-
>> .../optee-os.bbclass} | 4 +-
>> .../{classes => classes-recipe}/patch.bbclass | 0
>> .../per-kernel.bbclass | 0
>> .../podman-loader.bbclass} | 4 +-
>> .../repository.bbclass | 0
>> .../rootfs-add-files.bbclass | 0
>> .../rootfs.bbclass | 0
>> .../sbuild.bbclass | 0
>> meta/{classes => classes-recipe}/sdk.bbclass | 0
>> .../squashfs.bbclass | 0
>> .../trusted-firmware-a.bbclass} | 12 +-
>> .../u-boot.bbclass} | 3 +-
>> meta/recipes-bsp/barebox/barebox.inc | 60 +---
>> .../optee-client/optee-client-custom.inc | 40 +--
>> meta/recipes-bsp/optee-os/optee-os-custom.inc | 19 +-
>> .../optee-os/optee-os-tadevkit-custom.inc | 25 +-
>> .../trusted-firmware-a-custom.inc | 38 +--
>> meta/recipes-bsp/u-boot/u-boot-custom.inc | 74 +---
>> .../initramfs-fsck-ext4-hook_0.3.bb | 4 +-
>> .../recipes-initramfs/initramfs-hook/hook.inc | 82 +----
>> .../initramfs-tee-ftpm-hook_0.3.bb | 2 +-
>> .../initramfs-tee-supplicant-hook_0.2.bb | 4 +-
>> meta/recipes-kernel/kselftest/kselftest.inc | 52 +--
>> meta/recipes-kernel/linux-module/module.inc | 86 +----
>> meta/recipes-kernel/linux/linux-custom.inc | 317 +-----------------
>> .../container-loader/docker-loader.inc | 13 +-
>> .../container-loader/podman-loader.inc | 13 +-
>> testsuite/citest.py | 2 +-
>> .../unittests/test_image_account_extension.py | 2 +-
>> 100 files changed, 202 insertions(+), 819 deletions(-)
>> rename meta-isar/{classes => classes-recipe}/installer-add-rootfs.bbclass (100%)
>> rename meta-isar/{classes => classes-recipe}/target-bootstrapper.bbclass (100%)
>> rename meta-isar/{classes => classes-recipe}/ubi-ubifs-img.bbclass (100%)
>> rename meta/{classes => classes-global}/base.bbclass (100%)
>> rename meta/{classes => classes-global}/buildstats.bbclass (100%)
>> rename meta/{classes => classes-global}/isar-events.bbclass (100%)
>> rename meta/{classes => classes-global}/lists.bbclass (100%)
>> rename meta/{classes => classes-global}/logging.bbclass (100%)
>> rename meta/{classes => classes-global}/sstate.bbclass (100%)
>> rename meta/{classes => classes-global}/template.bbclass (100%)
>> copy meta/{recipes-bsp/barebox/barebox.inc => classes-recipe/barebox.bbclass} (93%)
>> rename meta/{classes => classes-recipe}/bootstrap.bbclass (100%)
>> rename meta/{classes => classes-recipe}/compat.bbclass (100%)
>> rename meta/{recipes-support/container-loader/container-loader.inc => classes-recipe/container-loader.bbclass} (94%)
>> rename meta/{classes => classes-recipe}/crossvars.bbclass (100%)
>> rename meta/{classes => classes-recipe}/customization-base.bbclass (100%)
>> rename meta/{classes => classes-recipe}/deb-dl-dir.bbclass (100%)
>> rename meta/{classes => classes-recipe}/debianize.bbclass (100%)
>> copy meta/{recipes-support/container-loader/docker-loader.inc => classes-recipe/docker-loader.bbclass} (70%)
>> rename meta/{classes => classes-recipe}/dpkg-base.bbclass (100%)
>> rename meta/{classes => classes-recipe}/dpkg-customization.bbclass (100%)
>> rename meta/{classes => classes-recipe}/dpkg-gbp.bbclass (100%)
>> rename meta/{classes => classes-recipe}/dpkg-prebuilt.bbclass (100%)
>> rename meta/{classes => classes-recipe}/dpkg-raw.bbclass (100%)
>> rename meta/{classes => classes-recipe}/dpkg-source.bbclass (100%)
>> rename meta/{classes => classes-recipe}/dpkg.bbclass (100%)
>> rename meta/{classes => classes-recipe}/essential.bbclass (100%)
>> rename meta/{classes => classes-recipe}/features_check.bbclass (100%)
>> rename meta/{classes => classes-recipe}/image-account-extension.bbclass (100%)
>> rename meta/{classes => classes-recipe}/image-customizations.bbclass (100%)
>> rename meta/{classes => classes-recipe}/image-locales-extension.bbclass (100%)
>> rename meta/{classes => classes-recipe}/image-postproc-extension.bbclass (100%)
>> rename meta/{classes => classes-recipe}/image-tools-extension.bbclass (100%)
>> rename meta/{classes => classes-recipe}/image.bbclass (100%)
>> rename meta/{classes => classes-recipe}/imagetypes.bbclass (100%)
>> rename meta/{classes => classes-recipe}/imagetypes_container.bbclass (100%)
>> rename meta/{classes => classes-recipe}/imagetypes_vm.bbclass (100%)
>> rename meta/{classes => classes-recipe}/imagetypes_wic.bbclass (100%)
>> copy meta/{recipes-initramfs/initramfs-hook/hook.inc => classes-recipe/initramfs-hook.bbclass} (94%)
>> rename meta/{classes => classes-recipe}/initramfs.bbclass (100%)
>> rename meta/{classes => classes-recipe}/kbuildtarget.bbclass (100%)
>> copy meta/{recipes-kernel/kselftest/kselftest.inc => classes-recipe/kselftest.bbclass} (93%)
>> copy meta/{recipes-kernel/linux/linux-custom.inc => classes-recipe/linux-kernel.bbclass} (99%)
>> copy meta/{recipes-kernel/linux-module/module.inc => classes-recipe/linux-module.bbclass} (97%)
>> rename meta/{classes => classes-recipe}/multiarch.bbclass (100%)
>> rename meta/{classes => classes-recipe}/native.bbclass (100%)
>> rename meta/{classes => classes-recipe}/opensbi.bbclass (100%)
>> copy meta/{recipes-bsp/optee-client/optee-client-custom.inc => classes-recipe/optee-client.bbclass} (84%)
>> rename meta/{recipes-bsp/optee-os/optee-os.inc => classes-recipe/optee-os-base.bbclass} (93%)
>> copy meta/{recipes-bsp/optee-os/optee-os-tadevkit-custom.inc => classes-recipe/optee-os-tadevkit.bbclass} (97%)
>> copy meta/{recipes-bsp/optee-os/optee-os-custom.inc => classes-recipe/optee-os.bbclass} (88%)
>> rename meta/{classes => classes-recipe}/patch.bbclass (100%)
>> rename meta/{classes => classes-recipe}/per-kernel.bbclass (100%)
>> copy meta/{recipes-support/container-loader/podman-loader.inc => classes-recipe/podman-loader.bbclass} (68%)
>> rename meta/{classes => classes-recipe}/repository.bbclass (100%)
>> rename meta/{classes => classes-recipe}/rootfs-add-files.bbclass (100%)
>> rename meta/{classes => classes-recipe}/rootfs.bbclass (100%)
>> rename meta/{classes => classes-recipe}/sbuild.bbclass (100%)
>> rename meta/{classes => classes-recipe}/sdk.bbclass (100%)
>> rename meta/{classes => classes-recipe}/squashfs.bbclass (100%)
>> copy meta/{recipes-bsp/trusted-firmware-a/trusted-firmware-a-custom.inc => classes-recipe/trusted-firmware-a.bbclass} (77%)
>> copy meta/{recipes-bsp/u-boot/u-boot-custom.inc => classes-recipe/u-boot.bbclass} (96%)
>>
> Just a reminder that I can post a rebased v3 whenever you would be
> willing to queue it for testing.
>
> Jan
>
I‘ll discuss this with Anton again on Friday since this change is big,
and give you a update next week. The patch series itself has passed CI.
Zhihang
--
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/6b7a474a-d8e8-4205-99ac-817904a36ae6%40ilbers.de.
next prev parent reply other threads:[~2025-11-27 14:54 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-10 7:22 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 01/27] linux-custom: Drop redundant template inheritance 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 02/27] meta: Move INHERIT'ed classes into classes-global 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 03/27] meta: Move recipe-pulled classes into classes-recipe 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 04/27] meta-isar: " 'Jan Kiszka' via isar-users
2025-11-11 15:37 ` Anton Mikanovich
2025-11-11 15:49 ` 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 05/27] linux-custom: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 06/27] meta-isar: Switch to linux-kernel class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 07/27] linux-module: Migrate to a bbclasss 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 08/27] meta-isar: Switch to linux-module class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 09/27] kselftest: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-11 15:45 ` Anton Mikanovich
2025-11-11 15:48 ` 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 10/27] meta-isar: Switch to kselftest class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 11/27] u-boot-custom: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 12/27] meta-isar: Switch to u-boot class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 13/27] optee-os[-tadevkit]-custom: Migrate to bbclass'es 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 14/27] meta-isar: Switch to optee-os[-tadevkit] classes 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 15/27] optee-client: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 16/27] meta-isar: Switch to optee-client class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 17/27] trusted-firmware-a: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 18/27] meta-isar: Switch to trusted-firmware-a class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 19/27] barebox: Add SPDX license identifiers 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 20/27] barebox: Move inherit dpkg into common .inc 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 21/27] barebox: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 22/27] meta-isar: Switch to barebox class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 23/27] initramfs-hook: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 24/27] meta[-isar]: Switch to initramfs-hook class 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 25/27] container-loader: Migrate to bbclass'es 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 26/27] meta-isar: Switch to {docker,podman}-loader classes 'Jan Kiszka' via isar-users
2025-11-10 7:22 ` [PATCH v2 27/27] RECIPES-API-CHANGELOG: Document include to class conversion 'Jan Kiszka' via isar-users
2025-11-27 14:48 ` [PATCH v2 00/27] Use more classes! 'Jan Kiszka' via isar-users
2025-11-27 14:54 ` Zhihang Wei [this message]
2025-11-28 16:20 ` Zhihang Wei
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=6b7a474a-d8e8-4205-99ac-817904a36ae6@ilbers.de \
--to=wzh@ilbers.de \
--cc=amikan@ilbers.de \
--cc=isar-users@googlegroups.com \
--cc=jan.kiszka@siemens.com \
/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