From 36c6909d4410e5ecb44800aafadd8593978e1b24 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. Signed-off-by: Valentin Popa Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb | 11 +++++++++++ meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb | 11 ----------- meta/recipes-graphics/mesa/mesa.inc | 28 ++++++++++++++++++---------- meta/recipes-graphics/mesa/mesa_10.1.3.bb | 19 +++++++++++++++++++ meta/recipes-graphics/mesa/mesa_9.2.5.bb | 19 ------------------- meta/recipes-graphics/mesa/mesa_git.bb | 4 ++-- 6 files changed, 50 insertions(+), 42 deletions(-) create mode 100644 meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb delete mode 100644 meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb create mode 100644 meta/recipes-graphics/mesa/mesa_10.1.3.bb delete mode 100644 meta/recipes-graphics/mesa/mesa_9.2.5.bb (limited to 'meta/recipes-graphics/mesa') diff --git a/meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb b/meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb new file mode 100644 index 0000000000..2acc21dce5 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-gl_10.1.3.bb @@ -0,0 +1,11 @@ +require mesa_${PV}.bb + +SUMMARY += " (OpenGL only, no EGL/GLES)" + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/mesa:" + +PROVIDES = "virtual/libgl virtual/mesa" + +PACKAGECONFIG ??= "dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" + +EXCLUDE_FROM_WORLD = "1" diff --git a/meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb b/meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb deleted file mode 100644 index 2acc21dce5..0000000000 --- a/meta/recipes-graphics/mesa/mesa-gl_9.2.5.bb +++ /dev/null @@ -1,11 +0,0 @@ -require mesa_${PV}.bb - -SUMMARY += " (OpenGL only, no EGL/GLES)" - -FILESEXTRAPATHS =. "${FILE_DIRNAME}/mesa:" - -PROVIDES = "virtual/libgl virtual/mesa" - -PACKAGECONFIG ??= "dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" - -EXCLUDE_FROM_WORLD = "1" 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" diff --git a/meta/recipes-graphics/mesa/mesa_10.1.3.bb b/meta/recipes-graphics/mesa/mesa_10.1.3.bb new file mode 100644 index 0000000000..abc450a9c5 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa_10.1.3.bb @@ -0,0 +1,19 @@ +require ${BPN}.inc + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ + file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \ + file://0006-fix-out-of-tree-egl.patch \ + " + +SRC_URI[md5sum] = "ba6dbe2b9cab0b4de840c996b9b6a3ad" +SRC_URI[sha256sum] = "b2615e236ef25d0fb94b8420bdd2e2a520b7dd5ca2d4b93306154f7fd4adecc3" + +S = "${WORKDIR}/Mesa-${PV}" + +#because we cannot rely on the fact that all apps will use pkgconfig, +#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER +do_install_append() { + if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then + sed -i -e 's/^#ifdef MESA_EGL_NO_X11_HEADERS/#if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h + fi +} diff --git a/meta/recipes-graphics/mesa/mesa_9.2.5.bb b/meta/recipes-graphics/mesa/mesa_9.2.5.bb deleted file mode 100644 index 02ecd463e6..0000000000 --- a/meta/recipes-graphics/mesa/mesa_9.2.5.bb +++ /dev/null @@ -1,19 +0,0 @@ -require ${BPN}.inc - -SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ - file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \ - file://0006-fix-out-of-tree-egl.patch \ - " - -SRC_URI[md5sum] = "9fb4de29ca1d9cfd03cbdefa123ba336" -SRC_URI[sha256sum] = "b46ab9efed176df0591993397594d712ada9da6a47fd31bbe75050fe28eb6bf0" - -S = "${WORKDIR}/Mesa-${PV}" - -#because we cannot rely on the fact that all apps will use pkgconfig, -#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER -do_install_append() { - if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then - sed -i -e 's/^#ifdef MESA_EGL_NO_X11_HEADERS/#if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h - fi -} diff --git a/meta/recipes-graphics/mesa/mesa_git.bb b/meta/recipes-graphics/mesa/mesa_git.bb index 1e6fdb5cf0..59b0d1cdeb 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 \ -- cgit 1.2.3-korg