* uclibc patch does apply to all mesa versions and adding mesa-dri to FILESPATH in all recipes is worse then adding mesa
Signed-off-by: Martin Jansa <martin.ja...@gmail.com> --- meta/recipes-graphics/mesa/mesa-common.inc | 36 +++++++++++++++++--- meta/recipes-graphics/mesa/mesa-dri.inc | 22 ++++++++++++ meta/recipes-graphics/mesa/mesa-xlib.inc | 1 + .../mesa/{mesa-dri => mesa}/uclibc.patch | 0 4 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 meta/recipes-graphics/mesa/mesa-dri.inc create mode 100644 meta/recipes-graphics/mesa/mesa-xlib.inc rename meta/recipes-graphics/mesa/{mesa-dri => mesa}/uclibc.patch (100%) diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc index d8e800e..85db07a 100644 --- a/meta/recipes-graphics/mesa/mesa-common.inc +++ b/meta/recipes-graphics/mesa/mesa-common.inc @@ -10,25 +10,51 @@ HOMEPAGE = "http://mesa3d.org" BUGTRACKER = "https://bugs.freedesktop.org" SECTION = "x11" LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d" -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 " +INC_PR = "r12" +PE = "2" +PROTO_DEPS = "xf86driproto glproto" +LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes" + +DEPENDS = "makedepend-native ${PROTO_DEPS} ${LIB_DEPS}" + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2" S = "${WORKDIR}/Mesa-${PV}" PROVIDES = "virtual/libgl" +# for mesa-dri and mesa-xlib +FILESEXTRAPATHS_append := "${THISDIR}/mesa:${THISDIR}/mesa-${PV}:" + inherit autotools pkgconfig EXTRA_OECONF = "--enable-glu \ --disable-glw \ --disable-glut \ - --enable-glx-tls" + " + +require glx-use-tls.inc # Multiple virtual/gl providers being built breaks staging EXCLUDE_FROM_WORLD = "1" -PACKAGES =+ "libglu libglu-dev" - +PACKAGES =+ "libegl libegl-dev libegl-dbg libglu libglu-dev libosmesa libosmesa-dev libgl libgl-dev" +FILES_libegl = "${libdir}/libEGL.so.* ${libdir}/egl/*.so" +FILES_libgl = "${libdir}/libGL.so.*" FILES_libglu = "${libdir}/libGLU.so.*" +FILES_libosmesa = "${libdir}/libOSMesa.so.*" + +FILES_libegl-dev = "${libdir}/libEGL.* ${includedir}/EGL" +FILES_libgl-dev = "${libdir}/libGL.* ${includedir}/GL" FILES_libglu-dev = "${libdir}/libGLU.* ${includedir}/GL/glu*.h" +FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_libegl-dbg += "${libdir}/egl/.debug/*" + +do_install_append () { + install -d ${D}/${includedir}/GL + cp -pPr ${S}/include/GL/internal* ${D}/${includedir}/GL +} diff --git a/meta/recipes-graphics/mesa/mesa-dri.inc b/meta/recipes-graphics/mesa/mesa-dri.inc new file mode 100644 index 0000000..ce98228 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri.inc @@ -0,0 +1,22 @@ +DEPENDS += "dri2proto expat libdrm" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +MACHINE_DRI_MODULES ?= "" +PACKAGE_ARCH = "${@['${MACHINE_ARCH}','${TUNE_PKGARCH}'][bb.data.getVar('MACHINE_DRI_MODULES',d,1) == '']}" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium -with-dri-drivers=swrast,${MACHINE_DRI_MODULES}" + +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='') +} + +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" + diff --git a/meta/recipes-graphics/mesa/mesa-xlib.inc b/meta/recipes-graphics/mesa/mesa-xlib.inc new file mode 100644 index 0000000..44e5dc6 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-xlib.inc @@ -0,0 +1 @@ +EXTRA_OECONF += " --with-driver=xlib" diff --git a/meta/recipes-graphics/mesa/mesa-dri/uclibc.patch b/meta/recipes-graphics/mesa/mesa/uclibc.patch similarity index 100% rename from meta/recipes-graphics/mesa/mesa-dri/uclibc.patch rename to meta/recipes-graphics/mesa/mesa/uclibc.patch -- 1.7.7 _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core