public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: "'Jan Kiszka' via isar-users" <isar-users@googlegroups.com>
To: isar-users <isar-users@googlegroups.com>
Cc: Anton Mikanovich <amikan@ilbers.de>
Subject: [PATCH v2 00/27] Use more classes!
Date: Mon, 10 Nov 2025 08:22:13 +0100	[thread overview]
Message-ID: <cover.1762759359.git.jan.kiszka@siemens.com> (raw)

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%)

-- 
2.51.0

-- 
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/cover.1762759359.git.jan.kiszka%40siemens.com.

             reply	other threads:[~2025-11-10  7:22 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-10  7:22 'Jan Kiszka' via isar-users [this message]
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-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-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

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=cover.1762759359.git.jan.kiszka@siemens.com \
    --to=isar-users@googlegroups.com \
    --cc=amikan@ilbers.de \
    --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