On Mon, 2024-09-02 at 22:31 +0200, Adrian Freihofer via lists.openembedded.org 
wrote:
> From: Adrian Freihofer <[email protected]>
> 
> How to reproduce:
> - UBOOT_CONFIG must be used. With UBOOT_MACHINE it works fine.
>   A simple example based on oe-core is to modify the
>   beaglebone-yocto.conf file like this:
>   -UBOOT_MACHINE = "am335x_evm_defconfig"
>   +UBOOT_CONFIG = "foo"
>   +UBOOT_CONFIG[foo] = "am335x_evm_defconfig"
> - A build configuration which inherits the kernel-fitimage.bbclass is
>   needed. For example:
>   MACHINE = "beaglebone-yocto"
>   KERNEL_IMAGETYPE = "Image"
>   KERNEL_IMAGETYPES += " fitImage "
>   KERNEL_CLASSES = " kernel-fitimage "
> 
> devtool modify linux-yocto
> devtool build linux-yocto
> ...
> > cp: cannot stat '.../linux-yocto-6.6.21+git/am335x_evm_defconfig/.config':
>   No such file or directory
> > WARNING: .../linux-yocto/6.6.21+git/temp/run.do_configure.2081673:172 exit 1
>   from 'cp .../linux-yocto-6.6.21+git/am335x_evm_defconfig/.config
>   .../build/workspace/sources/linux-yocto/.config.baseline'
> 
> The reason for this problem is that the uboot-config.bbclass sets the
> variable KCONFIG_CONFIG_ROOTDIR to a path that makes sense for u-boot,
> but not for other recipes. However, the kernel-fitimage.bbclasse, for
> example, inherits the uboot-config.bbclass, which brings the
> u-boot-specific path into the kernel build context.
> 
> This change removes the uboot-specific KCONFIG_CONFIG_ROOTDIR path from
> recipes other than u-boot itself.
> 
> Signed-off-by: Adrian Freihofer <[email protected]>
> ---
>  meta/classes-recipe/uboot-config.bbclass | 15 +++++++++------
>  1 file changed, 9 insertions(+), 6 deletions(-)
> 
> diff --git a/meta/classes-recipe/uboot-config.bbclass 
> b/meta/classes-recipe/uboot-config.bbclass
> index e55fc38b7c7..09001997d3d 100644
> --- a/meta/classes-recipe/uboot-config.bbclass
> +++ b/meta/classes-recipe/uboot-config.bbclass
> @@ -101,9 +101,9 @@ python () {
>      # The "doc" varflag is special, we don't want to see it here
>      ubootconfigflags.pop('doc', None)
>      ubootconfig = (d.getVar('UBOOT_CONFIG') or "").split()
> +    PN = d.getVar("PN")

Convention says uppercase strings are constants in python. I'd prefer
this to be something like recipename, particularly as the access isn't
immediately around the variable definition. This is mainly to try and
retain code consistency.


Cheers,

Richard
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#204127): 
https://lists.openembedded.org/g/openembedded-core/message/204127
Mute This Topic: https://lists.openembedded.org/mt/108234037/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to