Phoronix: Waffle: Run-Time Selecting GL, Windowing System
Chad Versace of Intel has been working on a cross-platform C library that defers selection of the OpenGL API and windowing system until run-time. This makes it easier switching OpenGL back-end targets as well as going from X.Org to Wayland...
The cancer that is wayland is infecting the Intel minds....
Not really. One of the issues we're running into is that, since Piglit uses GLUT, almost all of our tests only run with GLX. Only the few tests explicitly written to test EGL actually end up running on EGL, which means that EGL doesn't get nearly as well tested as GLX.
Even in an X-centric world, EGL is useful. It's presently the only viable option for applications using GLES instead of desktop OpenGL...and ultimately, is just a nicer, more modern API to work with (in my opinion). Waffle closes this testing gap by allowing us to select either GLX or EGL at runtime.
Work is also being done on a GBM backend for Waffle, which would allow programs to run off-screen without the need for X or Wayland. This should make it feasible to run OpenGL tests on completely headless machines, which is useful for testing lab setups. Or, on our development laptops, it should allow us to run our nearly 10,000 Piglit tests without it popping up an X window for each one, interrupting our workflow.
With that in mind, one could see the ability to run on Wayland, or even Android, as a nice added perk.