mcpp index

freedesktop.egl

import

libEGL — GLVND's vendor-neutral EGL dispatch, built from source, with a C++23 module

import khronos.egl;

Module name read from the upstream `export module` declaration in src/egl.cppm.

mcpp add freedesktop.egl@1.7.0

Usage

From this repository's own test project — built and run by CI, not written for the website.

// freedesktop.egl — behavioral test, runnable with no GPU and no display.
//
// Every FUNCTION and TYPE below comes from `import khronos.egl;`. <EGL/egl.h> is
// included for the EGL_* CONSTANTS only: they are macros, and no module can
// export a macro. So the file compiling is itself the first assertion — the
// module's export list has to cover everything used here — and the file
// linking is the second.
//
// ─────────────────────────────────────────────────────────────────────────
// EVERY ASSERTION HOLDS WITH ZERO VENDOR DRIVERS INSTALLED.
//
// libEGL is a DISPATCH: with no vendor it can answer questions about itself
// and nothing else. Upstream returns the empty string outright when the vendor
// list is empty (`libegl.c:928`), so an "it lists some EGL_EXT_ extension"
// check measures whether the MACHINE has a driver, not whether this package
// built libEGL. Vendor-dependent facts are reported below, or asserted only
// once their precondition is visibly met.
//
// ─────────────────────────────────────────────────────────────────────────
// THE PART THAT IS EASY TO GET FALSELY GREEN
//
// The ecosystem payload `xim:libglvnd` carries its own `libEGL.so.1` with the
// …

tests/examples/egl/tests/egl.cpp · project tests/examples/egl

Build · upstream manifest

modules
khronos.egl
targets
EGL (shared), egl (lib)
language
c++23
manifest version
1.7.0
dependencies
freedesktop
source
https://raw.githubusercontent.com/mcpplibs/libglvnd/v1.7.0/mcpp/egl/mcpp.toml

Versions

VersionPlatforms Mirrorssha256
1.7.0 latest Linux GLOBAL CN 11347b0ffffb…