Patchwork cogl: GL/GLX feature cleanup

login
register
mail settings
Submitter Ross Burton
Date Aug. 12, 2013, 2:09 p.m.
Message ID <1376316560-10880-1-git-send-email-ross.burton@intel.com>
Download mbox | patch
Permalink /patch/55475/
State New
Headers show

Comments

Ross Burton - Aug. 12, 2013, 2:09 p.m.
Separate GL and GLX flags don't make sense, as on Linux GL means GLX and GLX
means GL.

So, default to GLESv2 and GLX if X11 is enabled.  EGL on X11 doesn't have
feature parity yet so leave it disabled by default.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/recipes-graphics/cogl/cogl-1.0.inc |   17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)
Saul Wold - Aug. 12, 2013, 5:52 p.m.
On 08/12/2013 07:09 AM, Ross Burton wrote:
> Separate GL and GLX flags don't make sense, as on Linux GL means GLX and GLX
> means GL.
>
> So, default to GLESv2 and GLX if X11 is enabled.  EGL on X11 doesn't have
> feature parity yet so leave it disabled by default.
>
> Signed-off-by: Ross Burton <ross.burton@intel.com>
> ---
>   meta/recipes-graphics/cogl/cogl-1.0.inc |   17 +++++++++--------
>   1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/meta/recipes-graphics/cogl/cogl-1.0.inc b/meta/recipes-graphics/cogl/cogl-1.0.inc
> index c0d410e..c189e95 100644
> --- a/meta/recipes-graphics/cogl/cogl-1.0.inc
> +++ b/meta/recipes-graphics/cogl/cogl-1.0.inc
> @@ -28,16 +28,17 @@ EDEPENDS_WAYLAND = "wayland"
>   ERDEPENDS_GL    = "libgl"
>   ERDEPENDS_GLES2 = "libgles2"
>
> ++# GLESv1 is rarely tested, so disable it

Seems to be a patch issue here with the ++

Sau!


>   EXTRA_OECONF += "--disable-introspection	\
>   	       	 --enable-examples-install	\
>   	       	 --enable-debug		 	\
>   	       	 --disable-gles1		\
>   	    	"
>
> -PACKAGECONFIG[cogl-pango] = "--enable-cogl-pango,--disable-cogl-pango,pango"
> +# OpenGL/GLX
> +PACKAGECONFIG[glx] = "--enable-gl --enable-glx,--disable-gl --disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11},${ERDEPENDS_GL}"
>
> -# GL flavours
> -PACKAGECONFIG[gl] = "--enable-gl,--disable-gl,${EDEPENDS_GL},${ERDEPENDS_GL}"
> +# GLESv2
>   PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,${EDEPENDS_GLES2}, ${ERDEPENDS_GLES2}"
>
>   # EGL backends
> @@ -46,15 +47,15 @@ PACKAGECONFIG[egl-null] = "--enable-null-egl-platform,--disable-null-egl-platfor
>   PACKAGECONFIG[egl-x11] = "--enable-xlib-egl-platform,--disable-xlib-egl-platform,${EDEPENDS_X11}"
>   PACKAGECONFIG[egl-wayland] = "--enable-wayland-egl-platform,--disable-wayland-egl-platform,${EDEPENDS_WAYLAND}"
>
> -# GLX
> -PACKAGECONFIG[glx] = "--enable-glx,--disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11}"
> -
> -# Wayland server-side
> +# Wayland (server-side)
>   PACKAGECONFIG[wayland-server] = "--enable-wayland-egl-server,--disable-wayland-egl-server,${EDEPENDS_WAYLAND}"
>
> +# Support rendering text directly with Pango
> +PACKAGECONFIG[cogl-pango] = "--enable-cogl-pango,--disable-cogl-pango,pango"
> +
>   # Respect the DISTRO_FEATURES to pull in GLX or Wayland as appropriate by
>   # default.
> -PACKAGECONFIG ??= "cogl-pango gl \
> +PACKAGECONFIG ??= "cogl-pango gles2 \
>                      ${@base_contains('DISTRO_FEATURES', 'wayland', 'egl-wayland', '', d)} \
>                      ${@base_contains('DISTRO_FEATURES', 'x11', 'glx', '', d)}"
>
>

Patch

diff --git a/meta/recipes-graphics/cogl/cogl-1.0.inc b/meta/recipes-graphics/cogl/cogl-1.0.inc
index c0d410e..c189e95 100644
--- a/meta/recipes-graphics/cogl/cogl-1.0.inc
+++ b/meta/recipes-graphics/cogl/cogl-1.0.inc
@@ -28,16 +28,17 @@  EDEPENDS_WAYLAND = "wayland"
 ERDEPENDS_GL    = "libgl"
 ERDEPENDS_GLES2 = "libgles2"
 
++# GLESv1 is rarely tested, so disable it
 EXTRA_OECONF += "--disable-introspection	\
 	       	 --enable-examples-install	\
 	       	 --enable-debug		 	\
 	       	 --disable-gles1		\
 	    	"
 
-PACKAGECONFIG[cogl-pango] = "--enable-cogl-pango,--disable-cogl-pango,pango"
+# OpenGL/GLX
+PACKAGECONFIG[glx] = "--enable-gl --enable-glx,--disable-gl --disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11},${ERDEPENDS_GL}"
 
-# GL flavours
-PACKAGECONFIG[gl] = "--enable-gl,--disable-gl,${EDEPENDS_GL},${ERDEPENDS_GL}"
+# GLESv2
 PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,${EDEPENDS_GLES2}, ${ERDEPENDS_GLES2}"
 
 # EGL backends
@@ -46,15 +47,15 @@  PACKAGECONFIG[egl-null] = "--enable-null-egl-platform,--disable-null-egl-platfor
 PACKAGECONFIG[egl-x11] = "--enable-xlib-egl-platform,--disable-xlib-egl-platform,${EDEPENDS_X11}"
 PACKAGECONFIG[egl-wayland] = "--enable-wayland-egl-platform,--disable-wayland-egl-platform,${EDEPENDS_WAYLAND}"
 
-# GLX
-PACKAGECONFIG[glx] = "--enable-glx,--disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11}"
-
-# Wayland server-side
+# Wayland (server-side)
 PACKAGECONFIG[wayland-server] = "--enable-wayland-egl-server,--disable-wayland-egl-server,${EDEPENDS_WAYLAND}"
 
+# Support rendering text directly with Pango
+PACKAGECONFIG[cogl-pango] = "--enable-cogl-pango,--disable-cogl-pango,pango"
+
 # Respect the DISTRO_FEATURES to pull in GLX or Wayland as appropriate by
 # default.
-PACKAGECONFIG ??= "cogl-pango gl \
+PACKAGECONFIG ??= "cogl-pango gles2 \
                    ${@base_contains('DISTRO_FEATURES', 'wayland', 'egl-wayland', '', d)} \
                    ${@base_contains('DISTRO_FEATURES', 'x11', 'glx', '', d)}"