From patchwork Sun Sep 2 00:43:40 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: mesa: clean up PACKAGECONFIG Date: Sun, 02 Sep 2012 00:43:40 -0000 From: Zoltan Gaal X-Patchwork-Id: 35623 Message-Id: <5042ABBC.60502@gmail.com> To: openembedded-core@lists.openembedded.org I'm new to oe, and I've seen there was quite a big discussion about the gles support in mesa. Now libgles-omap3 has the mentioned conflict with the mesa-dri as both provides virtual/egl. I think a patch like this would solve the issue: (mesa-dri is required by xserver, and libgles-omap3 is the accelerated gles driver from ti, which also provides egl by nature) +PROVIDES = "virtual/libgl ${PROV_EGL} ${PROV_GLES1} ${PROV_GLES2}" # for mesa-dri and mesa-xlib FILESEXTRAPATHS_append := "${THISDIR}/mesa:" @@ -41,14 +46,20 @@ EXCLUDE_FROM_WORLD = "1" # ie mesa-dri could be empty and mesa-dri-dev RDEPENDS on it ALLOW_EMPTY_${PN} = "1" -PACKAGES =+ "libegl libegl-dev libegl-dbg \ +PACK_EGL = "${@base_contains('DISTRO_FEATURES', 'egl', 'libegl libegl-dev libegl-dbg', '', d)}" +PACK_GLES = "${@base_contains('DISTRO_FEATURES', 'gles', 'libgles1 libgles1-dev libgles2 libgles2-dev', '', d)}" +PACK_GLES1 = "${@base_contains('DISTRO_FEATURES', 'gles1', 'libgles1 libgles1-dev', '', d)}" +PACK_GLES2 = "${@base_contains('DISTRO_FEATURES', 'gles2', 'libgles2 libgles2-dev', '', d)}" + +PACKAGES =+ "${PACK_EGL} \ libglu libglu-dev \ libosmesa libosmesa-dev \ libgl libgl-dev \ libglapi libglapi-dev \ libgbm libgbm-dev \ - libgles1 libgles1-dev \ - libgles2 libgles2-dev \ + ${PACK_GLES} \ + ${PACK_GLES1} \ + ${PACK_GLES2} \ " FILES_libegl = "${libdir}/libEGL.so.* ${libdir}/egl/*.so" diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc index cfe4a37..074dc5e 100644 --- a/meta/recipes-graphics/mesa/mesa-common.inc +++ b/meta/recipes-graphics/mesa/mesa-common.inc @@ -17,7 +17,12 @@ PE = "2" DEPENDS = "libxml2-native makedepend-native flex-native bison-native" -PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl" +PROV_EGL = "${@base_contains('DISTRO_FEATURES', 'egl', 'virtual/libegl', '', d)}" +PROV_GLES = "${@base_contains('DISTRO_FEATURES', 'gles', 'virtual/libgles1 virtual/libgles2', '', d)}" +PROV_GLES1 = "${@base_contains('DISTRO_FEATURES', 'gles1', 'virtual/libgles1', '', d)}" +PROV_GLES2 = "${@base_contains('DISTRO_FEATURES', 'gles2', 'virtual/libgles2', '', d)}" +