waffle_dl, waffle_dl_can_open, waffle_dl_sym — platform-independent interface to dynamic libraries
#include <waffle.h>
bool waffle_dl_can_open( |
int32_t dl) ; |
void* waffle_dl_sym( |
int32_t dl, |
const char* symbol) ; |
The waffle_dl functions provide a platform-independent interface for dynamic OpenGL libraries. For each function,
the parameter dl
must be one of:
WAFFLE_DL_OPENGL |
WAFFLE_DL_OPENGL_ES1 |
WAFFLE_DL_OPENGL_ES2 |
WAFFLE_DL_OPENGL_ES3 |
For example, on Linux, the WAFFLE_DL_*
enums map to
libGL.so.1
,
libGLESv1_CM.so.1
,
libGLESv2.so.2
, and
libGLESv2.so.2
, respectively.
waffle_dl_can_open()
Test if a dynamic library can be opened.
waffle_dl_sym()
Get a symbol
from a dynamic library.
Functions whose return type is bool return true on success and false on failure. Functions whose return
type is a pointer return NULL
on failure. Use
waffle_error_get_info(3) to get
information about any errors.
If waffle fails to find the requested library on the system, then
WAFFLE_ERROR_UNSUPPORTED_ON_PLATFORM
is emitted.
See waffle_error(3) for the complete list of waffle's error codes.
Please report bugs or and feature requests to https://gitlab.freedesktop.org/mesa/waffle/issues.