mesa/include
Emil Velikov c85b34ffd0 mesa_glinterop: allow building without X and related headers
This commit effectively reverts c10dcb2ce8
and 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>
2016-10-14 11:08:59 +01:00
..
CL
D3D9 Introduce .editorconfig 2016-08-31 17:06:54 -07:00
EGL egl: Update eglext.h (v2) 2016-09-14 11:45:58 -04:00
GL mesa_glinterop: allow building without X and related headers 2016-10-14 11:08:59 +01:00
GLES
GLES2 Remove GL_GLEXT_PROTOTYPES guards from non-ext headers. 2016-09-12 16:52:43 +01:00
GLES3 Remove GL_GLEXT_PROTOTYPES guards from non-ext headers. 2016-09-12 16:52:43 +01:00
HaikuGL
KHR egl: import platform headers from registry (v2) 2015-06-05 19:44:33 +02:00
c11 Introduce .editorconfig 2016-08-31 17:06:54 -07:00
d3dadapter Introduce .editorconfig 2016-08-31 17:06:54 -07:00
pci_ids i965: Removing PCI IDs that are no longer listed as Kabylake. 2016-06-29 11:14:19 -07:00
vulkan Introduce .editorconfig 2016-08-31 17:06:54 -07:00
c99_alloca.h c99_alloca.h: Also use <alloca.h> for cygwin 2015-03-07 18:18:32 +00:00
c99_compat.h include: Require MSVC 2013 Update 4. 2016-06-23 15:07:19 +01:00
c99_math.h math: Import isinf and others to global namespace 2016-04-18 11:10:25 +01:00
no_extern_c.h