public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [PATCH 00/27] Use more classes!
@ 2025-11-03 11:51 'Jan Kiszka' via isar-users
  2025-11-03 11:51 ` [PATCH 01/27] linux-custom: Drop redundant template inheritance 'Jan Kiszka' via isar-users
                   ` (26 more replies)
  0 siblings, 27 replies; 28+ messages in thread
From: 'Jan Kiszka' via isar-users @ 2025-11-03 11:51 UTC (permalink / raw)
  To: isar-users; +Cc: Anton Mikanovich

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.

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}                     |   3 +-
 .../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}               |   3 +-
 .../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   |  85 +----
 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, 190 insertions(+), 815 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} (93%)
 rename meta/{recipes-bsp/optee-os/optee-os.inc => classes-recipe/optee-os-base.bbclass} (92%)
 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} (92%)
 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.1762170735.git.jan.kiszka%40siemens.com.

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2025-11-03 12:05 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-03 11:51 [PATCH 00/27] Use more classes! 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 01/27] linux-custom: Drop redundant template inheritance 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 02/27] meta: Move INHERIT'ed classes into classes-global 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 03/27] meta: Move recipe-pulled classes into classes-recipe 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 04/27] meta-isar: " 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 05/27] linux-custom: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 06/27] meta-isar: Switch to linux-kernel class 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 07/27] linux-module: Migrate to a bbclasss 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 08/27] meta-isar: Switch to linux-module class 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 09/27] kselftest: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 10/27] meta-isar: Switch to kselftest class 'Jan Kiszka' via isar-users
2025-11-03 11:51 ` [PATCH 11/27] u-boot-custom: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 12/27] meta-isar: Switch to u-boot class 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 13/27] optee-os[-tadevkit]-custom: Migrate to bbclass'es 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 14/27] meta-isar: Switch to optee-os[-tadevkit] classes 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 15/27] optee-client: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 16/27] meta-isar: Switch to optee-client class 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 17/27] trusted-firmware-a: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 18/27] meta-isar: Switch to trusted-firmware-a class 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 19/27] barebox: Add SPDX license identifiers 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 20/27] barebox: Move inherit dpkg into common .inc 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 21/27] barebox: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 22/27] meta-isar: Switch to barebox class 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 23/27] initramfs-hook: Migrate to a bbclass 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 24/27] meta[-isar]: Switch to initramfs-hook class 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 25/27] container-loader: Migrate to bbclass'es 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 26/27] meta-isar: Switch to {docker,podman}-loader classes 'Jan Kiszka' via isar-users
2025-11-03 11:52 ` [PATCH 27/27] RECIPES-API-CHANGELOG: Document include to class conversion 'Jan Kiszka' via isar-users

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox