Created attachment 225307 [details]
DEFAULT_VERSIONS+= gl=libglvnd,mesa-devel and stuff
OPTIONS_UNSET+= X11 XCB XLIB and stuff
Starting x11-wm/sway results in assert "wlr_egl_is_current" being tripped.
Removing said assert (patch) results in a working sway session with working desktop GL (tested via glmark2 patched to load libOpenGL.so.0 instead of libGL).
No idea if it is related to how things are with FreeBSD ports or an upstream bug.
Note that starting wayfire without this patch works and results in default gray desktop with a cursor.
Currently ENOTIME to dig into that assert, leaving the bug so it is searchable.
Note: this is with libglvnd 1.3.3 (updated locally). 1.3.2 has the same issue, I updated it to 1.3.3 to see if updating libglvnd alone can fix this.
Can you reproduce using https://github.com/freebsd/freebsd-ports/compare/main...jbeich:wlroots-0.14 ?
Alternatively, try reproducing using unmodified upstream sources:
$ git clone https://github.com/swaywm/sway
$ git clone https://github.com/swaywm/wlroots sway/subprojects/wlroots
$ meson setup \
$ meson compile -C sway_build
$ sway_build/sway/sway -c /path/to/test-sway.conf
I couldn't reproduce myself with GL_DEFAULT=libglvnd,mesa-libs (mesa-devel uses libmap.conf) but only tested sway+wlroots without X11.
This issue was in cairo. I was hesitant to upgrade it to 1.7.4 after seeing the GLX PR and reverted that commit locally, but the new version has the required fixes.
1.7.4 is regressed and can't build with the Desktop GL as before, but GLESV2 is OK:
Thanks for how-to about building wlroots from git with the debug symbols; I'm sure this will help in future, and sorry for the noise.