summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa/mesa-common.inc
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2012-11-19 16:04:54 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-11-20 15:31:54 +0000
commit7e0efe18e538ecfcf191573eb413dba4b228c56f (patch)
tree3cbb2838643c44988f99a1fb5d0cc7aebba9bf9b /meta/recipes-graphics/mesa/mesa-common.inc
parent0ed7c53de9eb44f1f6105361e3639f6ddbeecdc5 (diff)
downloadpoky-7e0efe18e538ecfcf191573eb413dba4b228c56f.tar.gz
mesa: add -mesa suffix to GL packages, RPROVIDE their generic names
When Debian-renaming, all packages that provide GL libraries get renamed to the same name, and it's entirley possible for a feed to have multiple GL libraries in. This obviously creates conflicts. Resolve this for Mesa by forcing the package names to be of the form libgl-mesa, and RPROVIDE libgl. (From OE-Core rev: 64c77bf395310e55b4d8e0ec754fa19e9034ab35) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics/mesa/mesa-common.inc')
-rw-r--r--meta/recipes-graphics/mesa/mesa-common.inc46
1 files changed, 34 insertions, 12 deletions
diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc
index 460877ccfb..8e7137818b 100644
--- a/meta/recipes-graphics/mesa/mesa-common.inc
+++ b/meta/recipes-graphics/mesa/mesa-common.inc
@@ -41,13 +41,13 @@ EXCLUDE_FROM_WORLD = "1"
41# Remove the mesa-dri dependency on mesa-dri-dev, as mesa-dri is empty 41# Remove the mesa-dri dependency on mesa-dri-dev, as mesa-dri is empty
42RDEPENDS_${PN}-dev = "" 42RDEPENDS_${PN}-dev = ""
43 43
44PACKAGES =+ "libegl libegl-dev \ 44PACKAGES =+ "libegl-mesa libegl-mesa-dev \
45 libosmesa libosmesa-dev \ 45 libosmesa libosmesa-dev \
46 libgl libgl-dev \ 46 libgl-mesa libgl-mesa-dev \
47 libglapi libglapi-dev \ 47 libglapi libglapi-dev \
48 libgbm libgbm-dev \ 48 libgbm libgbm-dev \
49 libgles1 libgles1-dev \ 49 libgles1-mesa libgles1-mesa-dev \
50 libgles2 libgles2-dev \ 50 libgles2-mesa libgles2-mesa-dev \
51 " 51 "
52 52
53do_install_append () { 53do_install_append () {
@@ -55,20 +55,42 @@ do_install_append () {
55 rm -f ${D}${includedir}/GL/glu* 55 rm -f ${D}${includedir}/GL/glu*
56} 56}
57 57
58FILES_libegl = "${libdir}/libEGL.so.* ${libdir}/egl/*.so" 58# For the packages that make up the OpenGL interfaces, inject variables so that
59# they don't get Debian-renamed (which would remove the -mesa suffix), and
60# RPROVIDEs/RCONFLICTs on the generic libgl name.
61python __anonymous() {
62 for p in (("libegl", "libegl1"), ("libgl", "libgl1"),
63 ("libgles1", "libglesv1-cm1"), ("libgles2", "libglesv2-2")):
64 fullp = p[0] + "-mesa"
65 pkgs = " ".join(p)
66 d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
67 d.appendVar("RREPLACES_" + fullp, pkgs)
68 d.appendVar("RPROVIDES_" + fullp, pkgs)
69 d.appendVar("RCONFLICTS_" + fullp, pkgs)
70
71 # For -dev, the first element is both the Debian and original name
72 fullp += "-dev"
73 pkgs = p[0]
74 d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
75 d.appendVar("RREPLACES_" + fullp, pkgs)
76 d.appendVar("RPROVIDES_" + fullp, pkgs)
77 d.appendVar("RCONFLICTS_" + fullp, pkgs)
78}
79
80FILES_libegl-mesa = "${libdir}/libEGL.so.* ${libdir}/egl/*.so"
59FILES_libgbm = "${libdir}/libgbm.so.*" 81FILES_libgbm = "${libdir}/libgbm.so.*"
60FILES_libgles1 = "${libdir}/libGLESv1*.so.*" 82FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*"
61FILES_libgles2 = "${libdir}/libGLESv2.so.*" 83FILES_libgles2-mesa = "${libdir}/libGLESv2.so.*"
62FILES_libgl = "${libdir}/libGL.so.*" 84FILES_libgl-mesa = "${libdir}/libGL.so.*"
63FILES_libglapi = "${libdir}/libglapi.so.*" 85FILES_libglapi = "${libdir}/libglapi.so.*"
64FILES_libosmesa = "${libdir}/libOSMesa.so.*" 86FILES_libosmesa = "${libdir}/libOSMesa.so.*"
65 87
66FILES_libegl-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc" 88FILES_libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
67FILES_libgbm-dev = "${libdir}/libgbm* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" 89FILES_libgbm-dev = "${libdir}/libgbm* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
68FILES_libgl-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc" 90FILES_libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc"
69FILES_libglapi-dev = "${libdir}/libglapi.*" 91FILES_libglapi-dev = "${libdir}/libglapi.*"
70FILES_libgles1-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc" 92FILES_libgles1-mesa-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc"
71FILES_libgles2-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc" 93FILES_libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc"
72FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h" 94FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h"
73 95
74FILES_${PN}-dbg += "${libdir}/dri/.debug/* ${libdir}/egl/.debug/*" 96FILES_${PN}-dbg += "${libdir}/dri/.debug/* ${libdir}/egl/.debug/*"