mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-04 09:10:12 +01:00
Revert "mesa_glinterop: remove inclusion of GLX header"
This reverts commit8472045b16. Conflicts: include/GL/mesa_glinterop.h This patch fixes this build error with GCC 4.4. Compiling src/glx/dri_common_interop.c ... In file included from src/glx/dri_common_interop.c:33: include/GL/mesa_glinterop.h:62: error: redefinition of typedef ‘GLXContext’ include/GL/glx.h:165: note: previous declaration of ‘GLXContext’ was here Fixes:8472045b16("mesa_glinterop: remove inclusion of GLX header") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96770 Signed-off-by: Vinson Lee <vlee@freedesktop.org> (cherry picked from commitc10dcb2ce8) Squashed with commit: mesa_glinterop: allow building without X and related headers This commit effectively revertsc10dcb2ce8and fixes the typedef redefinition which inspired it. In order to prevent requiring X packages at build time earlier commit forward declared the required X/GLX typedefs. Since that approach introduced typedef redefinition (a C11 feature) it was reverted. To avoid the redefinition while _not_ mandating X and related headers forward declare the structs and use those through the header. As anyone uses the mesa interop header they ensure that the X (or others in terms of EGL) headers are included, which ensures that everything is resolved within the compilation unit. Cc: Vinson Lee <vlee@freedesktop.org> Cc: "12.0" <mesa-stable@lists.freedesktop.org> Cc: Tapani Pälli <tapani.palli@intel.com> Cc: Chih-Wei Huang <cwhuang@android-x86.org> Fixes:c10dcb2ce8("Revert "mesa_glinterop: remove inclusion of GLX header"") Fixes:8472045b16("mesa_glinterop: remove inclusion of GLX header") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96770 Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Tested-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> (cherry picked from commitc85b34ffd0)
This commit is contained in:
parent
50afa72f3c
commit
eb9236e275
1 changed files with 6 additions and 6 deletions
|
|
@ -58,8 +58,8 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
/* Forward declarations to avoid inclusion of GL/glx.h */
|
||||
typedef struct _XDisplay Display;
|
||||
typedef struct __GLXcontextRec *GLXContext;
|
||||
struct _XDisplay;
|
||||
struct __GLXcontextRec;
|
||||
|
||||
/* Forward declarations to avoid inclusion of EGL/egl.h */
|
||||
typedef void *EGLDisplay;
|
||||
|
|
@ -246,7 +246,7 @@ struct mesa_glinterop_export_out {
|
|||
* \return MESA_GLINTEROP_SUCCESS or MESA_GLINTEROP_* != 0 on error
|
||||
*/
|
||||
int
|
||||
MesaGLInteropGLXQueryDeviceInfo(Display *dpy, GLXContext context,
|
||||
MesaGLInteropGLXQueryDeviceInfo(struct _XDisplay *dpy, struct __GLXcontextRec *context,
|
||||
struct mesa_glinterop_device_info *out);
|
||||
|
||||
|
||||
|
|
@ -271,7 +271,7 @@ MesaGLInteropEGLQueryDeviceInfo(EGLDisplay dpy, EGLContext context,
|
|||
* \return MESA_GLINTEROP_SUCCESS or MESA_GLINTEROP_* != 0 on error
|
||||
*/
|
||||
int
|
||||
MesaGLInteropGLXExportObject(Display *dpy, GLXContext context,
|
||||
MesaGLInteropGLXExportObject(struct _XDisplay *dpy, struct __GLXcontextRec *context,
|
||||
struct mesa_glinterop_export_in *in,
|
||||
struct mesa_glinterop_export_out *out);
|
||||
|
||||
|
|
@ -286,11 +286,11 @@ MesaGLInteropEGLExportObject(EGLDisplay dpy, EGLContext context,
|
|||
struct mesa_glinterop_export_out *out);
|
||||
|
||||
|
||||
typedef int (PFNMESAGLINTEROPGLXQUERYDEVICEINFOPROC)(Display *dpy, GLXContext context,
|
||||
typedef int (PFNMESAGLINTEROPGLXQUERYDEVICEINFOPROC)(struct _XDisplay *dpy, struct __GLXcontextRec *context,
|
||||
struct mesa_glinterop_device_info *out);
|
||||
typedef int (PFNMESAGLINTEROPEGLQUERYDEVICEINFOPROC)(EGLDisplay dpy, EGLContext context,
|
||||
struct mesa_glinterop_device_info *out);
|
||||
typedef int (PFNMESAGLINTEROPGLXEXPORTOBJECTPROC)(Display *dpy, GLXContext context,
|
||||
typedef int (PFNMESAGLINTEROPGLXEXPORTOBJECTPROC)(struct _XDisplay *dpy, struct __GLXcontextRec *context,
|
||||
struct mesa_glinterop_export_in *in,
|
||||
struct mesa_glinterop_export_out *out);
|
||||
typedef int (PFNMESAGLINTEROPEGLEXPORTOBJECTPROC)(EGLDisplay dpy, EGLContext context,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue