diff options
-rw-r--r-- | meta/conf/distro/include/preferred-xorg-versions.inc | 2 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-common.inc | 4 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb | 59 |
3 files changed, 62 insertions, 3 deletions
diff --git a/meta/conf/distro/include/preferred-xorg-versions.inc b/meta/conf/distro/include/preferred-xorg-versions.inc index 4d4a47534..19dd34003 100644 --- a/meta/conf/distro/include/preferred-xorg-versions.inc +++ b/meta/conf/distro/include/preferred-xorg-versions.inc @@ -136,7 +136,7 @@ PREFERRED_VERSION_xtrans-native ?= "1.2.6" PREFERRED_VERSION_xtrans-nativesdk ?= "1.2.6" PREFERRED_VERSION_xvinfo ?= "1.0.2" PREFERRED_VERSION_xwininfo ?= "1.1.1" -PREFERRED_VERSION_mesa-dri ?= "7.9" +PREFERRED_VERSION_mesa-dri ?= "7.8.2" PREFERRED_VERSION_libdrm ?= "2.4.23" PREFERRED_VERSION_xcb-proto ?= "1.6" PREFERRED_VERSION_libxcb ?= "1.7" diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc index f029d3d6e..0294c8fc5 100644 --- a/meta/recipes-graphics/mesa/mesa-common.inc +++ b/meta/recipes-graphics/mesa/mesa-common.inc @@ -4,8 +4,8 @@ BUGTRACKER = "https://bugs.freedesktop.org" SECTION = "x11" LICENSE = "MIT" -SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ - ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaDemos-${PV}.tar.bz2 " +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2;name=mesalib \ + ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaDemos-${PV}.tar.bz2;name=mesademos " S = "${WORKDIR}/Mesa-${PV}" diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb new file mode 100644 index 000000000..60edddf64 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb @@ -0,0 +1,59 @@ +include mesa-common.inc + +LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} mesa-dri-glsl-native" + +PR = "r2" + +SRC_URI += "file://crossfix.patch" + +SRC_URI[mesalib.md5sum] = "6be2d343a0089bfd395ce02aaf8adb57" +SRC_URI[mesalib.sha256sum] = "505bf418dceba05837f4ea1b1972b9620c35f8cb94bc4d1e6d573c15f562576d" + +SRC_URI[mesademos.md5sum] = "757d9e2e06f48b1a52848be9b0307ced" +SRC_URI[mesademos.sha256sum] = "ea7b9ebfb7a80de2b275c0c9124c8a505382ec48411a2794ab82542f9885ac3c" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Atom PCs have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_atom-pc = "1" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +# We need glsl-compile built for buildhost arch instead of target (is provided by mesa-dri-glsl-native)" +do_configure_prepend() { + sed -i "s#^GLSL_CL = .*\$#GLSL_CL = ${STAGING_BINDIR_NATIVE}/glsl-compile#g" ${S}/src/mesa/shader/slang/library/Makefile +} + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +# +# Header generated by i586-poky-linux-gcc gen_matypes.c -o gen_matypes -I ../../../include/GL -I ../../../include -I .. -I ../main/ -I ../math -I ../glapi/ -I ../tnl +# then run gen_matypes > matypes.h on device +# |