Waffle: Run-Time Selecting GL, Windowing System

Written by Michael Larabel in Free Software on 5 September 2012 at 12:04 PM EDT. 3 Comments
FREE SOFTWARE
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.

Versace's project page for Waffle describes the library as "a cross-platform C library that allows one to defer selection of GL API and of window system until runtime. For example, on Linux, Waffle enables an application to select X11/EGL with an OpenGL 3.3 core profile, Wayland with OpenGL ES2, and other window system / API combinations. Waffle's immediate goal is to enable Piglit, Mesa's OpenGL test suite, to test multiple GL flavors in a cross-platform way. However, Waffle's design does not preclude it from being useful to other projects."

Native platforms for Waffle include GLX, X11/EGL, Wayland, and GBM (tentative) for Linux. On Windows there is MacOS CGL right now with possible MacOS GLX support. Android and Windows support are also being talked about. The OpenGL APIs that can be handled by the tasty library include OpenGL, OpenGL ES 1.0, and OpenGL ES 2.0.

Waffle has been quietly under development going back to early April of this year. There will be a brief presentation about the Waffle library at XDC2012 in two weeks.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week