]> code.ossystems Code Review - meta-freescale.git/commitdiff
gpu-viv-bin-mx6q, mesa: fix virtual/libgl dependencies
authorSimon Braunschmidt <sb@emlix.com>
Thu, 18 Jul 2013 13:19:25 +0000 (13:19 +0000)
committerOtavio Salvador <otavio@ossystems.com.br>
Thu, 18 Jul 2013 19:41:25 +0000 (16:41 -0300)
Fixes [YOCTO #4850]

findings:
* meta-fsl-arm/recipes-graphics/mesa/mesa_9.1.3.bbappend is used to
  delete libGL.* after compilation of mesa

* ./recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q_3.0.35-4.0.0.bb, via
  gpu-viv-bin-mx6q.inc, provides its own version of libGL

* gpu-viv-bin-mx6q does not advertise "virtual/libgl" in "PROVIDES +="

* but mesa (via mesa.inc) does:
  PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl"

* so the statement in imx-base.inc
   PREFERRED_PROVIDER_virtual/libgl_mx6 ?= "gpu-viv-bin-mx6q"
  does not have effect, because mesa is still the only provider
  of virtual/libgl

* packages depending on virtual/libgl only get mesa, which will not contain
  the libGL library

* in fact, we still use the gl headers from mesa, but the binary blob library
  from gpu-viv-bin-mx6q (gpu-viv-bin-mx6q does not provide the headers),
  so a package compiling against GL needs both mesa and gpu-viv-bin-mx6q

conclusion:
* so i suggest having gpu-viv-bin-mx6q depend on mesa to draw in the
  gl header package, advertising "virtual/libgl" for gpu-viv-bin-mx6q
  via "PROVIDES +=" and not advertising virtual/libgl for mesa via the
  .bbappend file

Signed-off-by: Simon Braunschmidt <sb@emlix.com>
meta-fsl-arm/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
meta-fsl-arm/recipes-graphics/mesa/mesa_9.1.3.bbappend

index b0070790ab917a8ae333fed4ab557d74ae6e5e09..3354854654f35603968f42569fe5da691ca519ea 100644 (file)
@@ -6,8 +6,8 @@ DESCRIPTION = "GPU driver and apps for imx6"
 SECTION = "libs"
 LICENSE = "Proprietary"
 LIC_FILES_CHKSUM = "file://usr/include/gc_vdk.h;endline=11;md5=19f5925343fa3da65596eeaa4ddb5fd3"
-DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxdamage libxext libxfixes', '', d)}"
-PROVIDES += "virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2"
+DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxdamage libxext libxfixes', '', d)} mesa"
+PROVIDES += "virtual/libgl virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2"
 
 INC_PR = "r5"
 
index b0535a743e91e3fd7c27c2fc1c68791152d3d71e..9308952eee8b4f804a53095b5fd96d26a418d6e4 100644 (file)
@@ -23,7 +23,7 @@ python __anonymous () {
 
         # Remove itens from provides
         provides = d.getVar('PROVIDES', True).split()
-        take_out = ['virtual/libgles1', 'virtual/libgles2', 'virtual/egl']
+        take_out = ['virtual/libgles1', 'virtual/libgles2', 'virtual/egl', 'virtual/libgl']
         new_provides = []
         for i in provides:
             if i not in take_out: