Message ID | 20220823213124.4185070-1-alejandro@enedino.org |
---|---|
State | Accepted, archived |
Commit | bf083929ecd69a144fedeef5a8725775f632a16c |
Headers | show |
Series | baremetal-image.bbclass: Emulate image.bbclass to handle new classes scope | expand |
On Tue, 2022-08-23 at 15:31 -0600, Alejandro Hernandez Samaniego wrote: > The new classes scope implemented on commit 7bd328f9d > made testimage.bbclass (and perhaps others) stop working > for baremetal-images, the expected way to run testimage > is no longer to use INHERIT but to use IMAGE_CLASSES > instead, however this functionality was not implemented in the > baremetal-image class until now. > > Emulate image.bbclass allowing the baremetal-image class to > use IMAGE_CLASSES to fix this issue. > > Set defaults for IMAGE_FEATURES to allow bitbake checks to > pass properly. > > Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org> > --- > meta/classes-recipe/baremetal-image.bbclass | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/meta/classes-recipe/baremetal-image.bbclass b/meta/classes-recipe/baremetal-image.bbclass > index 3a979f2ed1..d3377a92fa 100644 > --- a/meta/classes-recipe/baremetal-image.bbclass > +++ b/meta/classes-recipe/baremetal-image.bbclass > @@ -15,6 +15,15 @@ > # > # See meta-skeleton for a working example. > > +## Emulate image.bbclass > +# Handle inherits of any of the image classes we need > +IMAGE_CLASSES ??= "" > +IMGCLASSES = " ${IMAGE_CLASSES}" > +inherit ${IMGCLASSES} > +# Set defaults to satisfy IMAGE_FEATURES check > +IMAGE_FEATURES ?= "" > +IMAGE_FEATURES[type] = "list" > +IMAGE_FEATURES[validitems] += "" > > # Toolchain should be baremetal or newlib based. > # TCLIBC="baremetal" or TCLIBC="newlib" I think we're missing a testcase! Cheers, Richard
We are!, however is not that simple since the baremetal helloworld app needs to have the interactive functionality to perform the back and forth communication that testimage is based on. Hopefully I can add such functionality to a newlib-helloworld in this release along with its own test case. Alejandro On Tue, Aug 23, 2022, 4:13 PM Richard Purdie < richard.purdie@linuxfoundation.org> wrote: > On Tue, 2022-08-23 at 15:31 -0600, Alejandro Hernandez Samaniego wrote: > > The new classes scope implemented on commit 7bd328f9d > > made testimage.bbclass (and perhaps others) stop working > > for baremetal-images, the expected way to run testimage > > is no longer to use INHERIT but to use IMAGE_CLASSES > > instead, however this functionality was not implemented in the > > baremetal-image class until now. > > > > Emulate image.bbclass allowing the baremetal-image class to > > use IMAGE_CLASSES to fix this issue. > > > > Set defaults for IMAGE_FEATURES to allow bitbake checks to > > pass properly. > > > > Signed-off-by: Alejandro Enedino Hernandez Samaniego < > alejandro@enedino.org> > > --- > > meta/classes-recipe/baremetal-image.bbclass | 9 +++++++++ > > 1 file changed, 9 insertions(+) > > > > diff --git a/meta/classes-recipe/baremetal-image.bbclass > b/meta/classes-recipe/baremetal-image.bbclass > > index 3a979f2ed1..d3377a92fa 100644 > > --- a/meta/classes-recipe/baremetal-image.bbclass > > +++ b/meta/classes-recipe/baremetal-image.bbclass > > @@ -15,6 +15,15 @@ > > # > > # See meta-skeleton for a working example. > > > > +## Emulate image.bbclass > > +# Handle inherits of any of the image classes we need > > +IMAGE_CLASSES ??= "" > > +IMGCLASSES = " ${IMAGE_CLASSES}" > > +inherit ${IMGCLASSES} > > +# Set defaults to satisfy IMAGE_FEATURES check > > +IMAGE_FEATURES ?= "" > > +IMAGE_FEATURES[type] = "list" > > +IMAGE_FEATURES[validitems] += "" > > > > # Toolchain should be baremetal or newlib based. > > # TCLIBC="baremetal" or TCLIBC="newlib" > > > I think we're missing a testcase! > > Cheers, > > Richard > >
diff --git a/meta/classes-recipe/baremetal-image.bbclass b/meta/classes-recipe/baremetal-image.bbclass index 3a979f2ed1..d3377a92fa 100644 --- a/meta/classes-recipe/baremetal-image.bbclass +++ b/meta/classes-recipe/baremetal-image.bbclass @@ -15,6 +15,15 @@ # # See meta-skeleton for a working example. +## Emulate image.bbclass +# Handle inherits of any of the image classes we need +IMAGE_CLASSES ??= "" +IMGCLASSES = " ${IMAGE_CLASSES}" +inherit ${IMGCLASSES} +# Set defaults to satisfy IMAGE_FEATURES check +IMAGE_FEATURES ?= "" +IMAGE_FEATURES[type] = "list" +IMAGE_FEATURES[validitems] += "" # Toolchain should be baremetal or newlib based. # TCLIBC="baremetal" or TCLIBC="newlib"
The new classes scope implemented on commit 7bd328f9d made testimage.bbclass (and perhaps others) stop working for baremetal-images, the expected way to run testimage is no longer to use INHERIT but to use IMAGE_CLASSES instead, however this functionality was not implemented in the baremetal-image class until now. Emulate image.bbclass allowing the baremetal-image class to use IMAGE_CLASSES to fix this issue. Set defaults for IMAGE_FEATURES to allow bitbake checks to pass properly. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org> --- meta/classes-recipe/baremetal-image.bbclass | 9 +++++++++ 1 file changed, 9 insertions(+)