* [PATCH 0/3] Mesa and DRI fixes
@ 2014-06-09 14:18 Ross Burton
2014-06-09 14:18 ` [PATCH 1/3] mesa: add build-dependency on libxml2-native Ross Burton
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Ross Burton @ 2014-06-09 14:18 UTC (permalink / raw)
To: openembedded-core
Hi,
This series is mostly based on Valentin's Mesa upgrade with some tweaks to the
Python, a build fix, and changing DRI3 to be disabled rather than enabled. I
spoke to a few colleagues who work on the graphics system and the conclusion was
that DRI3 isn't ready to replace DRI2 just yet.
Ross
The following changes since commit 66d5be204fd339cc84a0ae92d3923a8c1e6f1389:
bitbake: bitbake: show wildcard appends for bitbake-layers (2014-06-06 10:33:19 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib ross/mesa
for you to fetch changes up to 521c60cab274b7833562f18907efe4bf51bd5d42:
xorg-xserver: disable DRI3 by default (2014-06-09 13:49:38 +0100)
----------------------------------------------------------------
Ross Burton (2):
mesa: add build-dependency on libxml2-native
xorg-xserver: disable DRI3 by default
Valentin Popa (1):
mesa: upgrade to 10.1.3
.../mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb} | 0
meta/recipes-graphics/mesa/mesa.inc | 30 +++++++++++++-------
.../mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb} | 4 +--
meta/recipes-graphics/mesa/mesa_git.bb | 4 +--
.../recipes-graphics/xorg-xserver/xserver-xorg.inc | 1 +
5 files changed, 24 insertions(+), 15 deletions(-)
rename meta/recipes-graphics/mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb} (100%)
rename meta/recipes-graphics/mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb} (82%)
Ross Burton (2):
mesa: add build-dependency on libxml2-native
xorg-xserver: disable DRI3 by default
Valentin Popa (1):
mesa: upgrade to 10.1.3
.../mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb} | 0
meta/recipes-graphics/mesa/mesa.inc | 30 +++++++++++++-------
.../mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb} | 4 +--
meta/recipes-graphics/mesa/mesa_git.bb | 4 +--
.../recipes-graphics/xorg-xserver/xserver-xorg.inc | 1 +
5 files changed, 24 insertions(+), 15 deletions(-)
rename meta/recipes-graphics/mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb} (100%)
rename meta/recipes-graphics/mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb} (82%)
--
1.7.10.4
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/3] mesa: add build-dependency on libxml2-native
2014-06-09 14:18 [PATCH 0/3] Mesa and DRI fixes Ross Burton
@ 2014-06-09 14:18 ` Ross Burton
2014-06-09 14:18 ` [PATCH 2/3] mesa: upgrade to 10.1.3 Ross Burton
2014-06-09 14:18 ` [PATCH 3/3] xorg-xserver: disable DRI3 by default Ross Burton
2 siblings, 0 replies; 4+ messages in thread
From: Ross Burton @ 2014-06-09 14:18 UTC (permalink / raw)
To: openembedded-core
glapi/gen needs the libxml2 Python module, but this isn't listed as a build
dependency.
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
meta/recipes-graphics/mesa/mesa.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index a33b7b5..6503c2d 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -15,7 +15,7 @@ LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eac
INC_PR = "r9"
PE = "2"
-DEPENDS = "expat makedepend-native flex-native bison-native udev"
+DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native udev"
PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/3] mesa: upgrade to 10.1.3
2014-06-09 14:18 [PATCH 0/3] Mesa and DRI fixes Ross Burton
2014-06-09 14:18 ` [PATCH 1/3] mesa: add build-dependency on libxml2-native Ross Burton
@ 2014-06-09 14:18 ` Ross Burton
2014-06-09 14:18 ` [PATCH 3/3] xorg-xserver: disable DRI3 by default Ross Burton
2 siblings, 0 replies; 4+ messages in thread
From: Ross Burton @ 2014-06-09 14:18 UTC (permalink / raw)
To: openembedded-core
From: Valentin Popa <valentin.popa@intel.com>
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.
Signed-off-by: Valentin Popa <valentin.popa@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
.../mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb} | 0
meta/recipes-graphics/mesa/mesa.inc | 28 +++++++++++++-------
.../mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb} | 4 +--
meta/recipes-graphics/mesa/mesa_git.bb | 4 +--
4 files changed, 22 insertions(+), 14 deletions(-)
rename meta/recipes-graphics/mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb} (100%)
rename meta/recipes-graphics/mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb} (82%)
diff --git a/meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb b/meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb
similarity index 100%
rename from meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb
rename to meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 6503c2d..453510a 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"
diff --git a/meta/recipes-graphics/mesa/mesa_9.2.5.bb b/meta/recipes-graphics/mesa/mesa_10.1.3.bb
similarity index 82%
rename from meta/recipes-graphics/mesa/mesa_9.2.5.bb
rename to meta/recipes-graphics/mesa/mesa_10.1.3.bb
index 02ecd46..abc450a 100644
--- a/meta/recipes-graphics/mesa/mesa_9.2.5.bb
+++ b/meta/recipes-graphics/mesa/mesa_10.1.3.bb
@@ -5,8 +5,8 @@ SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
file://0006-fix-out-of-tree-egl.patch \
"
-SRC_URI[md5sum] = "9fb4de29ca1d9cfd03cbdefa123ba336"
-SRC_URI[sha256sum] = "b46ab9efed176df0591993397594d712ada9da6a47fd31bbe75050fe28eb6bf0"
+SRC_URI[md5sum] = "ba6dbe2b9cab0b4de840c996b9b6a3ad"
+SRC_URI[sha256sum] = "b2615e236ef25d0fb94b8420bdd2e2a520b7dd5ca2d4b93306154f7fd4adecc3"
S = "${WORKDIR}/Mesa-${PV}"
diff --git a/meta/recipes-graphics/mesa/mesa_git.bb b/meta/recipes-graphics/mesa/mesa_git.bb
index 1e6fdb5..59b0d1c 100644
--- a/meta/recipes-graphics/mesa/mesa_git.bb
+++ b/meta/recipes-graphics/mesa/mesa_git.bb
@@ -5,8 +5,8 @@ DEFAULT_PREFERENCE = "-1"
LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf"
PR = "${INC_PR}.0"
-SRCREV = "4636e87191fddd492ed8c61ba61faf4b2d89b2e4"
-PV = "9.2.5+git${SRCPV}"
+SRCREV = "0028eb1083e6adc110a23a5f02c993cda217067a"
+PV = "10.1.3+git${SRCPV}"
SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa \
file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 3/3] xorg-xserver: disable DRI3 by default
2014-06-09 14:18 [PATCH 0/3] Mesa and DRI fixes Ross Burton
2014-06-09 14:18 ` [PATCH 1/3] mesa: add build-dependency on libxml2-native Ross Burton
2014-06-09 14:18 ` [PATCH 2/3] mesa: upgrade to 10.1.3 Ross Burton
@ 2014-06-09 14:18 ` Ross Burton
2 siblings, 0 replies; 4+ messages in thread
From: Ross Burton @ 2014-06-09 14:18 UTC (permalink / raw)
To: openembedded-core
Add a PACKAGECONFIG for DRI3 but don't enable it yet.
Based on a patch by Valentin Popa <valentin.popa@intel.com>.
[YOCTO #6402]
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
meta/recipes-graphics/xorg-xserver/xserver-xorg.inc | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc
index 2e83d53..b9b9ac4 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc
@@ -120,6 +120,7 @@ PACKAGECONFIG ??= "udev ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'dri d
PACKAGECONFIG[udev] = "--enable-config-udev,--disable-config-udev,udev"
PACKAGECONFIG[dri] = "--enable-dri,--disable-dri,glproto virtual/mesa xf86driproto"
PACKAGECONFIG[dri2] = "--enable-dri2,--disable-dri2,dri2proto"
+PACKAGECONFIG[dri3] = "--enable-dri3,--disable-dri3,dri3proto libxshmfence"
PACKAGECONFIG[glx] = "--enable-glx --enable-glx-tls,--disable-glx,glproto virtual/libgl virtual/libx11"
do_install_append () {
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-06-09 14:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-09 14:18 [PATCH 0/3] Mesa and DRI fixes Ross Burton
2014-06-09 14:18 ` [PATCH 1/3] mesa: add build-dependency on libxml2-native Ross Burton
2014-06-09 14:18 ` [PATCH 2/3] mesa: upgrade to 10.1.3 Ross Burton
2014-06-09 14:18 ` [PATCH 3/3] xorg-xserver: disable DRI3 by default Ross Burton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox