On 05/22/2014 04:23 PM, Martin Jansa wrote:
On Thu, May 22, 2014 at 03:26:12PM +0300, Valentin Popa wrote:
On 05/21/2014 09:33 PM, Martin Jansa wrote:
On Wed, May 21, 2014 at 07:50:01PM +0300, Valentin Popa wrote:
(*) libdricore was removed.
(*) added libmesa-megadriver that includes
      all the hardlinks to the mesa megadriver.
Why not call it mesa-drivers to be more consistent with kernel-modules
or gst-plugins-good, etc "meta" packages?
      I can call it mesa-megadriver (I still need to keep "megadriver",
because inside the package is only on driver (multiple hardlinks to it,
with the proper names)).
Sorry, I fail to parse this sentence. Where do you have hardlinks?

At build time, mesa creates a big dri driver that contains all the dri drivers (a megadriver). Then makes hardlinks to it with the name of each dri driver (i915, i965, etc). Then deletes that initial big driver (at install time). The package will contain those hardlinks.


Signed-off-by: Valentin Popa <[email protected]>
---
   .../mesa/{mesa-gl_9.2.5.bb => mesa-gl_10.1.3.bb}   |  0
   meta/recipes-graphics/mesa/mesa.inc                | 36 
++++++++++++++--------
   .../mesa/{mesa_9.2.5.bb => mesa_10.1.3.bb}         |  4 +--
   meta/recipes-graphics/mesa/mesa_git.bb             |  4 +--
   4 files changed, 28 insertions(+), 16 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 a33b7b5..f7ee7c1 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -10,11 +10,11 @@ HOMEPAGE = "http://mesa3d.org";
   BUGTRACKER = "https://bugs.freedesktop.org";
   SECTION = "x11"
   LICENSE = "MIT"
-LIC_FILES_CHKSUM = 
"file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf"
-INC_PR = "r9"
   PE = "2"
+LIC_FILES_CHKSUM = "file://docs/license.html;md5=6a23445982a7a972ac198e93cc1cb3de"
+
   DEPENDS = "expat makedepend-native flex-native bison-native udev"
PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa"
@@ -39,6 +39,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 +79,7 @@ RDEPENDS_${PN}-dev = ""
   PACKAGES =+ "libegl-mesa libegl-mesa-dev \
                libosmesa libosmesa-dev \
                libgl-mesa libgl-mesa-dev \
-             libdricore libdricore-dev \
+             libmesa-megadriver \
                libglapi libglapi-dev \
                libgbm libgbm-dev \
                libgles1-mesa libgles1-mesa-dev \
@@ -96,7 +97,7 @@ do_install_append () {
       rm -f ${D}${libdir}/egl/*.la
       rm -f ${D}${libdir}/gallium-pipe/*.la
       rm -f ${D}${libdir}/gbm/*.la
-
+
       # it was packaged in libdricore9.1.3-1 and preventing upgrades when 
debian.bbclass was used
       rm -f ${D}${sysconfdir}/drirc
   }
@@ -119,7 +120,7 @@ python __anonymous() {
           d.appendVar("RREPLACES_" + fullp, pkgs)
           d.appendVar("RPROVIDES_" + fullp, pkgs)
           d.appendVar("RCONFLICTS_" + fullp, pkgs)
-
+
           # For -dev, the first element is both the Debian and original name
           fullp += "-dev"
           pkgs = p[1] + "-dev"
@@ -130,15 +131,27 @@ 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 = "libmesa-megadriver"
+    mlprefix = d.getVar('MLPREFIX', True)
+    if mlprefix:
+       lib_name = "%s%s" % (mlprefix, lib_name)
+    for p in sorted(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 +161,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_libmesa-megadriver = "${libdir}/dri/*"
   FILES_libegl-mesa = "${libdir}/libEGL.so.*"
   FILES_libgbm = "${libdir}/libgbm.so.*"
   FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*"
@@ -164,7 +177,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.9.1

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to