From 5daa6813ac233da472439447ff4ff0f897bb73fa Mon Sep 17 00:00:00 2001 From: Vasilito Date: Fri, 1 May 2026 00:30:45 +0100 Subject: [PATCH] =?UTF-8?q?docs:=20honest=20virgl=20assessment=20=E2=80=94?= =?UTF-8?q?=20linker=20blocker,=20exact=20root=20cause?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mesa virgl: - All virgl C objects compile successfully - Linker fails: undefined reference to static_assert in virgl_drm_winsys.c - Root cause: Mesa util/macros.h #define static_assert _Static_assert not picked up before Linux drm.h uses static_assert() in include chain - Fix candidates: patch drm.h or add -include util/macros.h to CFLAGS - swrast-only build verified (stable) Achievements this session: - Mesa virgl compilation proven (objects build) - virgl_screen.c disk cache patched for Redox - bits/safamily-t.h provided to toolchain - Linux 7.0 kernel source cached durably - Virtio-gpu display driver confirmed working in redox-drm - Credential syscalls fully implemented --- local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md b/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md index e0d1f988..d3f04fde 100644 --- a/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md +++ b/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md @@ -113,7 +113,7 @@ The kernel handles 35 syscalls explicitly. Remaining gaps: | Component | Status | Detail | |-----------|--------|--------| | mesa | 🟡 Builds | llvmpipe software renderer; EGL=on, GBM=on, GLES2=on | -| mesa virgl (QEMU 3D) | 🔴 WIP | Build attempted — virgl_screen.c int-conversion errors; vtest winsys needs `bits/safamily-t.h`; requires Mesa source patches for Redox target | +| mesa virgl (QEMU 3D) | 🔴 WIP | `-Dgallium-drivers=swrast,virgl` compiles all objects; linker fails with `undefined reference to static_assert` in `virgl_drm_winsys.c` via `libdrm/virtgpu_drm.h` include chain. Root cause: Mesa `util/macros.h` `#define static_assert _Static_assert` not picked up before Linux `drm.h` header uses `static_assert()`. Fix: patch `drm.h` to use `_Static_assert` directly, or add `-include util/macros.h` to CFLAGS for virgl winsys. | | radeonsi (AMD HW) | 🔴 Not built | Not cross-compiled for Redox target | | iris (Intel HW) | 🔴 Not built | Not cross-compiled for Redox target | | OSMesa | 🟢 Builds | Off-screen software rendering |