[OE-core] Including machine specific mesa-driver

Richard Purdie richard.purdie at linuxfoundation.org
Thu Sep 24 06:50:55 UTC 2015


On Wed, 2015-09-23 at 22:38 -0700, Nicolas Dechesne wrote:
> in the qemu reference machine we see this pattern:
>
> XSERVER = "xserver-xorg
> \                                                                                                                                                                             
>            ${@bb.utils.contains('DISTRO_FEATURES', 'opengl',
> 'mesa-driver-swrast', '', d)}
> \                                                                                                          
>
> Which is what I had done for my BSP layer as well. However this
> doesn't take into account non X11 based graphics config, such as when
> building a wayland/weston image. The mesa-driver should be
> conditionally pulled when 'mesa' is pulled in.
>
> I cannot find a satisfying way of specifying this better to take both
> cases into account.
>
> we could move 
> ${@bb.utils.contains('DISTRO_FEATURES', 'opengl',
> 'mesa-driver-swrast', '', d)} 
>
> into MACHINE_RRDEPENS, but that's not quite right, since that driver
> is only needed when any of the mesa binary packages is in the image,
> and non graphics image wouldnt' need that.
>
> Since mesa produces a lot of binary packages , using RDEPENDS_xxx for
> all of them doesn't seem very nice neither..
>
> What would you recommend we do? I think we need to fix the qemu images
> anyways.

The idea was that the machine config can nominate the "X11" config it
needs by indicating the drivers that make sense for this piece of
hardware. The XSERVER variable is then used to decide which pieces of X
to pull in and pulling in the right mesa pieces at the same time made
sense then.

We could split the mesa pieces out into a separate MESADRIVERS variable
and the wayland/weston could just pull those in? Ultimately its still
the machine config which has the knowledge of which drivers make sense
for a given platform. Exactly which piece of the system would pull in
MESADRIVERS is a good question but I've not looked at the metadata just
thinking out loud.

Cheers,

Richard








More information about the Openembedded-core mailing list