[PATCH] weston: Use libepoxy for GLESv2 functions.
Pekka Paalanen
ppaalanen at gmail.com
Mon Sep 12 12:15:21 UTC 2016
On Mon, 12 Sep 2016 13:56:30 +0200
Armin Krezović <krezovic.armin at gmail.com> wrote:
> Khronos has decided to hide the GLESv2 function prototypes
> in GLESv2 headers and the code has landed in latest mesa git.
>
> Without this change, weston is unusable when built with
> headers from mesa git.
>
> Suggestion by Pekka to use libepoxy. Note that libepoxy
> isn't maintained that much recently, and it pulls some
> X11 dependencies.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97773
> Signed-off-by: Armin Krezović <krezovic.armin at gmail.com>
> ---
> Makefile.am | 2 +-
> clients/simple-egl.c | 2 +-
> clients/subsurfaces.c | 2 +-
> configure.ac | 3 ++-
> libweston/gl-renderer.c | 3 +--
> 5 files changed, 6 insertions(+), 6 deletions(-)
Hi,
yeah, just repeating the irc commentary:
if the situation with the headers remains, this is probably the
preferred solution. However, I'm hesitant to introduce a dependency to
libepoxy until it can be built without X11 components.
Let's keep this patch in mind and see what happens.
Thanks,
pq
>
> diff --git a/Makefile.am b/Makefile.am
> index 1e63a58..3cd3497 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -305,7 +305,7 @@ endif
> if ENABLE_EGL
> libweston_module_LTLIBRARIES += gl-renderer.la
> gl_renderer_la_LDFLAGS = -module -avoid-version
> -gl_renderer_la_LIBADD = $(COMPOSITOR_LIBS) $(EGL_LIBS)
> +gl_renderer_la_LIBADD = $(COMPOSITOR_LIBS) $(EGL_LIBS) $(EPOXY_LIBS)
> gl_renderer_la_CFLAGS = \
> $(COMPOSITOR_CFLAGS) \
> $(EGL_CFLAGS) \
> diff --git a/clients/simple-egl.c b/clients/simple-egl.c
> index 9d401f9..5430245 100644
> --- a/clients/simple-egl.c
> +++ b/clients/simple-egl.c
> @@ -38,7 +38,7 @@
> #include <wayland-egl.h>
> #include <wayland-cursor.h>
>
> -#include <GLES2/gl2.h>
> +#include <epoxy/gl.h>
> #include <EGL/egl.h>
> #include <EGL/eglext.h>
>
> diff --git a/clients/subsurfaces.c b/clients/subsurfaces.c
> index 45801a8..f1461ca 100644
> --- a/clients/subsurfaces.c
> +++ b/clients/subsurfaces.c
> @@ -37,7 +37,7 @@
> #include <wayland-client.h>
>
> #include <wayland-egl.h>
> -#include <GLES2/gl2.h>
> +#include <epoxy/gl.h>
> #include <EGL/egl.h>
> #include <EGL/eglext.h>
>
> diff --git a/configure.ac b/configure.ac
> index 076b336..31b323f 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -130,6 +130,7 @@ AC_ARG_ENABLE(egl, [ --disable-egl],,
> AM_CONDITIONAL(ENABLE_EGL, test x$enable_egl = xyes)
> if test x$enable_egl = xyes; then
> AC_DEFINE([ENABLE_EGL], [1], [Build Weston with EGL support])
> + PKG_CHECK_MODULES(EPOXY, [epoxy])
> PKG_CHECK_MODULES(EGL, [egl glesv2])
> PKG_CHECK_MODULES([EGL_TESTS], [egl glesv2 wayland-client wayland-egl])
> PKG_CHECK_MODULES([GL_RENDERER], [libdrm])
> @@ -380,7 +381,7 @@ AC_ARG_ENABLE(simple-egl-clients,
> AM_CONDITIONAL(BUILD_SIMPLE_EGL_CLIENTS, test "x$enable_simple_egl_clients" = "xyes")
> if test x$enable_simple_egl_clients = xyes; then
> PKG_CHECK_MODULES(SIMPLE_EGL_CLIENT,
> - [egl glesv2 wayland-client wayland-egl wayland-cursor])
> + [epoxy egl glesv2 wayland-client wayland-egl wayland-cursor])
> fi
>
> AC_ARG_ENABLE(simple-dmabuf-intel-client,
> diff --git a/libweston/gl-renderer.c b/libweston/gl-renderer.c
> index 031576b..50e3ff3 100644
> --- a/libweston/gl-renderer.c
> +++ b/libweston/gl-renderer.c
> @@ -26,8 +26,7 @@
>
> #include "config.h"
>
> -#include <GLES2/gl2.h>
> -#include <GLES2/gl2ext.h>
> +#include <epoxy/gl.h>
>
> #include <stdbool.h>
> #include <stdint.h>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 811 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20160912/6970f824/attachment.sig>
More information about the wayland-devel
mailing list