waffle — a library for selecting an OpenGL API and window system at runtime
#include <waffle.h> Link with -lwaffle-1.
Waffle is a cross-platform library that allows one to defer selection of an OpenGL 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 OpenGL flavors in a cross-platform way, and to allow each Piglit test to choose its OpenGL API and window system at runtime. A future goal is to enable the ability to record, with another tool such as APITrace, an application's OpenGL calls on one operating system or window system, and then replay that trace on a different system.
Your distribution should have installed
example source code that demonstrates how to use waffle at
You can also find
in Waffle's source repository.
Please report bugs or and feature requests to https://gitlab.freedesktop.org/mesa/waffle/issues.