Created attachment 116577 [details]
Compile fails with EGL_SCREEN_BIT_MESA
Mesa commit 7a58262e58d removed all the EGL_MESA_screen_surface definitions as it was never implemented (according to it).
Seems like mesa-demos doesn't have the necessary compile guards. Something like the following should fix things
// code using the extension
Feel free to wrap up a patch and send it to mesa-dev ML.
I'm afraid that's beyond me - I've tried compiling without the egl utilities and now get:
Created attachment 116585 [details]
Build log without EGL
Created attachment 117106 [details] [review]
Fix build against EGL implementations that don't support the EGL_MESA_screen_surface extension
There is a patch by Frank Binns (posted on mesa-dev) since 2012 on this... It worked for me, so I'm attaching it here
(In reply to George Diamantopoulos from comment #4)
> Created attachment 117106 [details] [review] [review]
> Fix build against EGL implementations that don't support the
> EGL_MESA_screen_surface extension
> There is a patch by Frank Binns (posted on mesa-dev) since 2012 on this...
> It worked for me, so I'm attaching it here
While this should work and has been the approach used so far in mesa-demos, I'm having second doubts how wise of an idea it is.
In this particular example, this will result in a "empty" demo/program which won't do anything when run on a EGL_MESA_screen_surface capable driver.
I.e. even if your system is perfectly fine, the binary build by your distro/elsewhere with the missing definition will be useless.
May I suggest that we add the relevant defines, after including the *GL headers. This way the binary will work on compatible systems, and (should) bail out if the extension is not supported.
One could also fix the other similar cases, while at it ;-) Git grep shows some ~120 lines :-P
*** This bug has been marked as a duplicate of bug 91643 ***