tree d24d963f3254d9f60b04210ef2a1f358538c6b95
parent 12d8663bc71687f9c8bb6e3c7c7cd460cba1b98e
author Kyle Brenneman <kbrenneman@users.noreply.github.com> 1629740812 -0600
committer GitHub <noreply@github.com> 1629740812 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJhI98MCRBK7hj4Ov3rIwAAEe4IABPyhlomT3PXcfLmAs+7NdcT
 utV+jc72pcW1KqBEeonvlmRpr180KHJ9woomnUp0Dbh/ORbbSerGeq+vXz3gF5H3
 1CvV0RFrE3CmLqmPIkZoEc98E7ZPvLEQ4q6VSjhBGbkDfnOiRLMc8lwJuHfP4qnO
 1DiPU82b6VIUzVDgVnEp6zAAqaMeNCJniyFDCUOsQKWjBdxi0kHcEb80TiTj4jt4
 49H4gWoEsa7PY589INDq5AiE9CR4Qk/XY5m0lnz3dTK7suTZ8HmcGKmdH+wUSRi5
 J7ddJerklXLXgezTdo90frTYum75yifLI1M11x8gONFrJlokbyCJedUocz6Yj1c=
 =pPu+
 -----END PGP SIGNATURE-----
 

Don't use Xlib headers by default. (#130)

Conceptually, defining EGLNativeDisplayType to Display* is simply incorrect,
because it's not always going to be an Xlib display.

In practice, more and more programs and libraries are being built with EGL but
without Xlib, and end up breaking when the Xlib headers are missing.

Rather than requiring every such program to define EGL_NO_X11, use the (void*)
typedef by default. The existing USE_X11 header can still preserve the current
behavior.

The change to EGLNativeDisplayType will be fine for eglGetDisplay, since you
can always pass a (Display *) as a (void *) parameter.

The EGLNativePixmapType and EGLNativeWindowType types don't change, because
khronos_uintptr_t and XID are both typedefs to unsigned long.

The only things that might break are calls to eglQueryNativeDisplayNV, or
programs that do need the Xlib headers and expect egl.h to include them. Both
of those cases would be trivial to fix.