[Mesa-dev] [PATCH] include/GL: fix the interop header for a --disable-glx build
Marek Olšák
maraeo at gmail.com
Wed Apr 20 16:47:26 UTC 2016
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Marek
On Wed, Apr 20, 2016 at 5:52 PM, Mircea Gherzan
<mircea.gherzan at intel.com> wrote:
> This header should not blindly include the GLX and should also
> conditionally define functions that use GLX parameters. The
> MESA_EGL_NO_X11_HEADERS macro is used to check if we're building without
> GLX support.
>
> Signed-off-by: Mircea Gherzan <mircea.gherzan at intel.com>
> ---
> include/GL/mesa_glinterop.h | 37 ++++++++++++++++++++-----------------
> 1 file changed, 20 insertions(+), 17 deletions(-)
>
> diff --git a/include/GL/mesa_glinterop.h b/include/GL/mesa_glinterop.h
> index 814064d..cd3151f 100644
> --- a/include/GL/mesa_glinterop.h
> +++ b/include/GL/mesa_glinterop.h
> @@ -50,7 +50,12 @@
> #ifndef MESA_GLINTEROP_H
> #define MESA_GLINTEROP_H
>
> +#ifdef MESA_EGL_NO_X11_HEADERS
> +#include <GL/gl.h>
> +#else
> #include <GL/glx.h>
> +#endif
> +
> #include <EGL/egl.h>
>
> #ifdef __cplusplus
> @@ -219,6 +224,7 @@ typedef struct _mesa_glinterop_export_out {
> } mesa_glinterop_export_out;
>
>
> +#ifndef MESA_EGL_NO_X11_HEADERS
> /**
> * Query device information.
> *
> @@ -232,16 +238,6 @@ GLAPI int GLAPIENTRY
> MesaGLInteropGLXQueryDeviceInfo(Display *dpy, GLXContext context,
> mesa_glinterop_device_info *out);
>
> -
> -/**
> - * Same as MesaGLInteropGLXQueryDeviceInfo except that it accepts EGLDisplay
> - * and EGLContext.
> - */
> -GLAPI int GLAPIENTRY
> -MesaGLInteropEGLQueryDeviceInfo(EGLDisplay dpy, EGLContext context,
> - mesa_glinterop_device_info *out);
> -
> -
> /**
> * Create and return a DMABUF handle corresponding to the given OpenGL
> * object, and return other parameters about the OpenGL object.
> @@ -258,6 +254,20 @@ MesaGLInteropGLXExportObject(Display *dpy, GLXContext context,
> const mesa_glinterop_export_in *in,
> mesa_glinterop_export_out *out);
>
> +typedef int (APIENTRYP PFNMESAGLINTEROPGLXQUERYDEVICEINFOPROC)(Display *dpy, GLXContext context,
> + mesa_glinterop_device_info *out);
> +typedef int (APIENTRYP PFNMESAGLINTEROPGLXEXPORTOBJECTPROC)(Display *dpy, GLXContext context,
> + const mesa_glinterop_export_in *in,
> + mesa_glinterop_export_out *out);
> +#endif /* MESA_EGL_NO_X11_HEADERS */
> +
> +/**
> + * Same as MesaGLInteropGLXQueryDeviceInfo except that it accepts EGLDisplay
> + * and EGLContext.
> + */
> +GLAPI int GLAPIENTRY
> +MesaGLInteropEGLQueryDeviceInfo(EGLDisplay dpy, EGLContext context,
> + mesa_glinterop_device_info *out);
>
> /**
> * Same as MesaGLInteropGLXExportObject except that it accepts
> @@ -268,18 +278,11 @@ MesaGLInteropEGLExportObject(EGLDisplay dpy, EGLContext context,
> const mesa_glinterop_export_in *in,
> mesa_glinterop_export_out *out);
>
> -
> -typedef int (APIENTRYP PFNMESAGLINTEROPGLXQUERYDEVICEINFOPROC)(Display *dpy, GLXContext context,
> - mesa_glinterop_device_info *out);
> typedef int (APIENTRYP PFNMESAGLINTEROPEGLQUERYDEVICEINFOPROC)(EGLDisplay dpy, EGLContext context,
> mesa_glinterop_device_info *out);
> -typedef int (APIENTRYP PFNMESAGLINTEROPGLXEXPORTOBJECTPROC)(Display *dpy, GLXContext context,
> - const mesa_glinterop_export_in *in,
> - mesa_glinterop_export_out *out);
> typedef int (APIENTRYP PFNMESAGLINTEROPEGLEXPORTOBJECTPROC)(EGLDisplay dpy, EGLContext context,
> const mesa_glinterop_export_in *in,
> mesa_glinterop_export_out *out);
> -
> #ifdef __cplusplus
> }
> #endif
> --
> 2.5.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list