Multi bbappend linux-toradex with different machines

Hi,
I have a question similar to this but a bit different.
I would like to build images for both imx6ull and imx8x in the same oe-core, with different image recipes.

Let say that all needed recipes are in common between machines.

I can use the BBMULTICONFIG way or just export MACHINE and then call bitbake.

But, I’m in a situation where I have to append two different linux-toradex_%.bbappend mainly because device trees (or defconfigs).

I know that a possibile solution could be to have these two bbappends in two different layers and change the priority according to the machine I have to build, but I wonder if there is another more flexible way.

Adding COMPATIBLE_MACHINE to the bbappend like

COMPATIBLE_MACHINE = "(colibri-imx6ull)"

in order to address bitbake correctly to the right recipe, seems to be not useful.

I was thinking about creating two BSP layers for that, but I don’t want to redefine Toradex’s BSPs, instead ‘bbappend’ it.

The question can be simplified in the following: how to make two different linux_toradex_%.bbappend coexist?

Many Thanks

Colibri iMX8 QuadXPlus 2GB Wi-Fi / Bluetooth IT
Colibri iMX6ULL 512MB Wi-Fi / Bluetooth IT
Colibri Evaluation Board
Linux BSP 5

Hi @pennywise ,

Welcome to the Toradex community, feel free to browse around.

So from what we understand, the easiest solution would still be the way that max.tx explained in the other community post that you linked. Instead of setting the compatible machine, you could use overrides in your bbappend, so the variables will be customized based on which machine you are building against.

If this is not a solution for you, then I guess we did not fully understand how your request is different from the other one.

Best Regards
Kevin

Hi @pennywise :balloon:,

Could you solve your issue? Do you need extra help with that?

Best regards,
Hiago.

Hi.

Yes I could.
In order to use the same linux-toradex_%.bbappend with different machines, it is just needed to append the machine string to the statements involved. As example:

KMACHINE_genericx86-64 ?= “common-pc-64”
KMACHINE_beaglebone-yocto ?= “beaglebone”

or

KBUILD_DEFCONFIG_machine1 = “dl-config”
KBUILD_DEFCONFIG_machine2 = “dl-config”

In this regard I found very interesting the BSP developer’s guide of Yocto Project.

Thank you and
Best Regards,
:balloon:

2 Likes

Hi @pennywise,

I’m glad you solved your issue. Thanks for sharing this link with us.
Since it’s solved, I will close this thread.

Best regards,
Hiago.
:balloon: :balloon: :balloon: