All of lore.kernel.org
 help / color / mirror / Atom feed
* Issue when integrating different bsp-layers on a single bblayers.conf
@ 2018-06-07 14:39 Iván Castell
  2018-06-07 15:09 ` Ulf Samuelsson
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Iván Castell @ 2018-06-07 14:39 UTC (permalink / raw)
  To: Yocto Project

[-- Attachment #1: Type: text/plain, Size: 1627 bytes --]

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,
/data/yocto/yocto/sources/poky/meta/recipes-multimedia/gstreamer/
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

[-- Attachment #2: Type: text/html, Size: 3099 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: Issue when integrating different bsp-layers on a single bblayers.conf
@ 2018-06-14 20:50 Peter Kjellerstedt
  0 siblings, 0 replies; 6+ messages in thread
From: Peter Kjellerstedt @ 2018-06-14 20:50 UTC (permalink / raw)
  To: Ulf Samuelsson, Iván Castell; +Cc: Yocto Project

[-- Attachment #1: Type: text/plain, Size: 3026 bytes --]

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-bounces@yoctoproject.org [mailto:yocto-bounces@yoctoproject.org] On Behalf Of Ulf Samuelsson
Sent: den 7 juni 2018 17:27
To: Iván Castell <icastell@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 <icastell@nayarsystems.com<mailto:icastell@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

[-- Attachment #2: Type: text/html, Size: 10304 bytes --]

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

end of thread, other threads:[~2018-06-14 20:50 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-07 14:39 Issue when integrating different bsp-layers on a single bblayers.conf Iván Castell
2018-06-07 15:09 ` Ulf Samuelsson
2018-06-07 15:27 ` Ulf Samuelsson
2018-06-07 16:47 ` Trevor Woerner
2018-06-08  7:22   ` Iván Castell
2018-06-14 20:50 Peter Kjellerstedt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.