From 0db73b47ea24d4dbd80058eb9e9466a941de5bb4 Mon Sep 17 00:00:00 2001 From: Valentin Popa Date: Mon, 9 Jun 2014 15:18:18 +0100 Subject: mesa: upgrade to 10.1.3 libdricore was removed and replaced with a megadriver with hardlinks from the old driver names. Add PACKAGECONFIG for DRI3 but disable by default as there are currently regressions compared to DRI2. License is unchanged. (From OE-Core rev: 36c6909d4410e5ecb44800aafadd8593978e1b24) Signed-off-by: Valentin Popa Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/recipes-graphics/mesa/mesa.inc | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) (limited to 'meta/recipes-graphics/mesa/mesa.inc') diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 6503c2d7ac..453510ad12 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -10,9 +10,8 @@ HOMEPAGE = "http://mesa3d.org" BUGTRACKER = "https://bugs.freedesktop.org" SECTION = "x11" LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf" +LIC_FILES_CHKSUM = "file://docs/license.html;md5=6a23445982a7a972ac198e93cc1cb3de" -INC_PR = "r9" PE = "2" DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native udev" @@ -39,6 +38,7 @@ DRIDRIVERS = "swrast" DRIDRIVERS_append_x86 = ",radeon,r200,nouveau,i965,i915" DRIDRIVERS_append_x86-64 = ",radeon,r200,nouveau,i965,i915" PACKAGECONFIG[dri] = "--enable-dri --with-dri-drivers=${DRIDRIVERS}, --disable-dri, dri2proto libdrm" +PACKAGECONFIG[dri3] = "--enable-dri3, --disable-dri3, dri3proto presentproto libxshmfence" EXTRA_OECONF += "--enable-gbm" @@ -78,7 +78,6 @@ RDEPENDS_${PN}-dev = "" PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libosmesa libosmesa-dev \ libgl-mesa libgl-mesa-dev \ - libdricore libdricore-dev \ libglapi libglapi-dev \ libgbm libgbm-dev \ libgles1-mesa libgles1-mesa-dev \ @@ -88,6 +87,7 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libegl-gallium libgbm-gallium \ libopenvg libopenvg-dev \ libxvmcsoftpipe libxvmcsoftpipe-dev \ + mesa-megadriver \ " do_install_append () { @@ -130,15 +130,24 @@ python __anonymous() { } python mesa_populate_packages() { - dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri") - pkgs = ['mesa', 'mesa-dev', 'mesa-dbg'] - pkgs += do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-driver-%s', 'Mesa %s DRI driver', extra_depends='') for pkg in pkgs: d.setVar("RPROVIDES_%s" % pkg, pkg.replace("mesa-", "mesa-dri-")) d.setVar("RCONFLICTS_%s" % pkg, pkg.replace("mesa-", "mesa-dri-")) d.setVar("RREPLACES_%s" % pkg, pkg.replace("mesa-", "mesa-dri-")) - + + import re + dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri") + dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root) + lib_name = d.expand("${MLPREFIX}mesa-megadriver") + for p in dri_pkgs: + m = re.match('^(.*)_dri\.so$', p) + if m: + pkg_name = " mesa-driver-%s" % legitimize_package_name(m.group(1)) + d.appendVar("RPROVIDES_%s" % lib_name, pkg_name) + d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name) + d.appendVar("RREPLACES_%s" % lib_name, pkg_name) + pipe_drivers_root = os.path.join(d.getVar('libdir', True), "gallium-pipe") do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$', 'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='') } @@ -148,8 +157,8 @@ PACKAGESPLITFUNCS_prepend = "mesa_populate_packages " PACKAGES_DYNAMIC += "^mesa-driver-.*" FILES_${PN}-dbg += "${libdir}/dri/.debug/*" - -FILES_libdricore = "${sysconfdir}/drirc ${libdir}/libdricore*.so.*" +FILES_${PN} += "${sysconfdir}/drirc" +FILES_mesa-megadriver = "${libdir}/dri/*" FILES_libegl-mesa = "${libdir}/libEGL.so.*" FILES_libgbm = "${libdir}/libgbm.so.*" FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*" @@ -164,7 +173,6 @@ FILES_libopenvg = "${libdir}/libOpenVG.so.*" FILES_libxvmcsoftpipe = "${libdir}/libXvMCsoftpipe.so.*" FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc" -FILES_libdricore-dev = "${libdir}/libdricore*.*" FILES_libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc" FILES_libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" FILES_libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc" -- cgit 1.2.3-korg