[OE-core] [PATCH 09/11] mesa: respect x11 DISTRO_FEATURE

Martin Jansa martin.jansa at gmail.com
Wed Aug 1 21:28:35 UTC 2012


On Wed, Aug 01, 2012 at 04:36:36PM +0100, Ross Burton wrote:
> Patch originally by Damien Lespiau <damien.lespiau at intel.com>.
> 
> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
>  meta/recipes-graphics/mesa/mesa-8.0.4.inc          |    1 +
>  meta/recipes-graphics/mesa/mesa-common.inc         |   16 ++++++-----
>  meta/recipes-graphics/mesa/mesa-dri.inc            |    4 +--
>  meta/recipes-graphics/mesa/mesa-git.inc            |    2 ++
>  ...-gross-hack-to-prevent-from-install-libgl.patch |   29 ++++++++++++++++++++
>  5 files changed, 43 insertions(+), 9 deletions(-)
>  create mode 100644 meta/recipes-graphics/mesa/mesa/0004-gross-hack-to-prevent-from-install-libgl.patch
> 
> diff --git a/meta/recipes-graphics/mesa/mesa-8.0.4.inc b/meta/recipes-graphics/mesa/mesa-8.0.4.inc
> index d9d17bb..9afb35d 100644
> --- a/meta/recipes-graphics/mesa/mesa-8.0.4.inc
> +++ b/meta/recipes-graphics/mesa/mesa-8.0.4.inc
> @@ -5,6 +5,7 @@ SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
>             file://0002-cross-compile.patch \
>             file://0003-fix-for-x32.patch \
>             "
> +SRC_URI += "${@base_contains('DISTRO_FEATURES', 'x11', '', 'file://0004-gross-hack-to-prevent-from-install-libgl.patch', d)}"
>  
>  S = "${WORKDIR}/Mesa-${PV}"
>  
> diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc
> index e5eb28c..661e76e 100644
> --- a/meta/recipes-graphics/mesa/mesa-common.inc
> +++ b/meta/recipes-graphics/mesa/mesa-common.inc
> @@ -12,14 +12,10 @@ SECTION = "x11"
>  LICENSE = "MIT"
>  LIC_FILES_CHKSUM = "file://docs/license.html;md5=03ccdc4c379c4289aecfb8892c546f67"
>  
> -INC_PR = "r2"
> +INC_PR = "r3"
>  PE = "2"
>  
> -
> -PROTO_DEPS = "xf86driproto glproto"
> -LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes libxml2-native"
> -
> -DEPENDS = "makedepend-native python-native flex-native bison-native ${PROTO_DEPS} ${LIB_DEPS}"
> +DEPENDS = "libxml2-native makedepend-native python-native flex-native bison-native"
>  
>  PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl"
>  
> @@ -31,8 +27,14 @@ inherit autotools pkgconfig pythonnative
>  EXTRA_OECONF = "--enable-glu \
>                  --disable-glw \
>                  --disable-glut \
> -                --enable-glx-tls \
>                  --enable-shared-glapi"
> +EXTRA_OECONF += "${@base_contains('DISTRO_FEATURES', 'x11', '--enable-glx-tls', '--disable-glx', d)}"

^ this line was replaced by PACKAGECONFIG

> +
> +PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'egl', 'egl', '', d)} \
> +                   ${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
> +
> +X11_DEPS = "xf86driproto glproto virtual/libx11 libxext libxxf86vm libxdamage libxfixes"
> +PACKAGECONFIG[x11] = "--enable-glx-tls,--disable-glx,${X11_DEPS}"
>  
>  # Multiple virtual/gl providers being built breaks staging
>  EXCLUDE_FROM_WORLD = "1"
> diff --git a/meta/recipes-graphics/mesa/mesa-dri.inc b/meta/recipes-graphics/mesa/mesa-dri.inc
> index d558f06..35d17a4 100644
> --- a/meta/recipes-graphics/mesa/mesa-dri.inc
> +++ b/meta/recipes-graphics/mesa/mesa-dri.inc
> @@ -8,14 +8,14 @@ DRIDRIVERS = "swrast"
>  DRIDRIVERS_append_x86 = ",i915,i965"
>  DRIDRIVERS_append_x86-64 = ",i915,i965"
>  
> -EGL_PLATFORMS  = "drm,x11"
> +EGL_PLATFORMS  = "drm"
> +EGL_PLATFORMS .="${@base_contains('DISTRO_FEATURES', 'x11', ',x11', '', d)}"
>  
>  EXTRA_OECONF += "--disable-gallium --without-gallium-drivers"
>  EXTRA_OECONF += "--enable-dri --with-dri-drivers=${DRIDRIVERS}"
>  EXTRA_OECONF += "--enable-gles1 --enable-gles2"
>  EXTRA_OECONF += "--enable-gbm"
>  
> -PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'egl', 'egl', '', d)}"

Maybe swap order of x11 DISTRO_FEATURE patch and egl patch for easier review.

>  PACKAGECONFIG[egl] = "--enable-egl --with-egl-platforms=${EGL_PLATFORMS}", "--disable-egl"
>  
>  python populate_packages_prepend() {
> diff --git a/meta/recipes-graphics/mesa/mesa-git.inc b/meta/recipes-graphics/mesa/mesa-git.inc
> index 32b1d96..7910eb6 100644
> --- a/meta/recipes-graphics/mesa/mesa-git.inc
> +++ b/meta/recipes-graphics/mesa/mesa-git.inc
> @@ -11,6 +11,8 @@ SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa;protocol=git \
>             file://0002-cross-compile.patch \
>             file://0003-fix-for-x32.patch \
>             "
> +SRC_URI += "${@base_contains('DISTRO_FEATURES', 'x11', '', 'file://0004-gross-hack-to-prevent-from-install-libgl.patch', d)}"
> +
>  S = "${WORKDIR}/git"
>  
>  do_configure_prepend() {
> diff --git a/meta/recipes-graphics/mesa/mesa/0004-gross-hack-to-prevent-from-install-libgl.patch b/meta/recipes-graphics/mesa/mesa/0004-gross-hack-to-prevent-from-install-libgl.patch
> new file mode 100644
> index 0000000..cf9dee2
> --- /dev/null
> +++ b/meta/recipes-graphics/mesa/mesa/0004-gross-hack-to-prevent-from-install-libgl.patch
> @@ -0,0 +1,29 @@
> +gross hack to prevent from install libgl
> +
> +This patch is not suitable for upstream. This is only needed for the 8.0.x
> +branch, master (8.1.x) has a largely different build system (using automake)
> +and does not need it. It is fully expected to drop the patch with the next bump
> +to a stable version based on 8.1.x.
> +
> +Upstream-Status: Inappropriate
> +
> +---
> + src/mesa/Makefile |    2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/src/mesa/Makefile b/src/mesa/Makefile
> +index 0e15d61..a0a2cb5 100644
> +--- a/src/mesa/Makefile
> ++++ b/src/mesa/Makefile
> +@@ -166,7 +166,7 @@ install: default $(DRICORE_INSTALL_TARGET)
> + 	            else \
> + 	              $(MAKE) install-osmesa || exit 1 ; \
> + 	            fi ;; \
> +-	    dri)    $(MAKE) install-libgl install-dri || exit 1 ;; \
> ++	    dri)    $(MAKE) install-dri || exit 1 ;; \
> + 	    *)      $(MAKE) install-libgl || exit 1 ;; \
> + 	  esac ; \
> + 	done
> +-- 
> +1.7.10.4
> +
> -- 
> 1.7.10
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20120801/99a61ee5/attachment-0002.sig>


More information about the Openembedded-core mailing list