Just thought I should mention that since Krogoth, BBMASK is actually a list of regular expressions, so your example below is better written as:
BBMASK += "${@bb.utils.contains('MACHINE', '<rockchip>', '', '/meta-rockchip/recipes-.*', d)}" (including changing base_conditional() to bb.utils.contains(), and correcting the regular expression). //Peter From: yocto-boun...@yoctoproject.org [mailto:yocto-boun...@yoctoproject.org] On Behalf Of Ulf Samuelsson Sent: den 7 juni 2018 17:27 To: Iván Castell <icast...@nayarsystems.com> Cc: Yocto Project <yocto@yoctoproject.org> Subject: Re: [yocto] Issue when integrating different bsp-layers on a single bblayers.conf Maybe something similar to this in local.conf BBMASK .= "${@base_conditional('MACHINE', '<rockchip>', '','|meta-rockchip/recipes-*', d)}" (did not test) If there are multiple machines in the meta-rockchip layer, you have to look for a unique variable which is true only if a machine in the meta-rockchip layer is used. Best Regards, Ulf Samuelsson 7 juni 2018 kl. 16:39 skrev Iván Castell <icast...@nayarsystems.com<mailto:icast...@nayarsystems.com>>: Hello forum. I am trying to integrate several BSP-layers for different platforms on a single Yocto repository to build a Linux Yocto-based distro for all those platforms easily. The idea is maintaining a single bblayers.conf with all the layers available, set PLATFORM and DISTRO on local.conf, call bitbake <image> and get the final image for that platform. When setting the "build" directory with a bblayers.conf customized for a single platform, each platform builds the image recipe properly. However, when I have integrated all bsp-layers in a single bblayers.conf, the compilation of some platforms has been broken. The specific problem is this: one bsp layer (meta-rockchip + meta-rockchip-extra) defines a recipes-graphics/mesa/mesa_%.bbappend with this content inside: PROVIDES_remove = "virtual/libgles1 virtual/libgles2 virtual/egl virtual/libwayland-egl" That alters gstreamer recipe on the poky layer, getting this error when building for a meta-intel platform: ERROR: Nothing PROVIDES 'virtual/egl' (but /data/yocto/yocto/sources/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.12.2.bb<http://gstreamer1.0-vaapi_1.12.2.bb>, /data/yocto/yocto/sources/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.2.bb<http://gstreamer1.0-plugins-bad_1.12.2.bb> DEPENDS on or otherwise requires it) My questions: - Is a good practice to define a custom bblayers.conf depending on the choosen PLATFORM? - Is there some any other way to disable a BSP-layer completely when building for a different one? - Can you suggest a fix to solve this issue? Thanks a lot in advance! :) Kind regards. -- Ivan -- _______________________________________________ yocto mailing list yocto@yoctoproject.org<mailto:yocto@yoctoproject.org> https://lists.yoctoproject.org/listinfo/yocto
-- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto