Skip to content

compat.glfw: the Win32 backend requires mcpp:kernel-abi=windows - #748

Merged
Sunrisepeak merged 1 commit into
mainfrom
feat/glfw-windows-ucrt
Nov 11, 2026
Merged

Sunrisepeak merged 1 commit into
mainfrom
feat/glfw-windows-ucrt

Conversation

@Sunrisepeak

@Sunrisepeak Sunrisepeak commented Nov 10, 2026 •

Copy link
Copy Markdown
Member

The Win32 backend of compat.glfw calls the Windows system interface directly (<windows.h>, user32, gdi32). The Windows row states it as a requirement on the kernel-abi layer, as the Linux row states glibc:

requires = { "mcpp:kernel-abi=windows" },

The payload's kernel-abi is the target's system, so the MSVC row, the MinGW-w64 payload and the mingw-w64-sysroot base answer windows under every mcpp the index admits. A requirement on c-abi=ucrt would refuse the package on MSVC under mcpp 2026.11.3.1 to 2026.11.10.1, which answer msvc there.

Measured with mcpp 2026.11.10.2 against this branch as the compat index:

Target Route Result
x86_64-windows-gnu MinGW-w64 payload (Linux host) builds
x86_64-windows-gnu builtin:mingw-llvm (llvm + mingw-w64-sysroot) builds; under wine prints glfw 3.4.0 Win32 WGL ... MinGW-w64
x86_64-windows-musl openkal-musl over openkal-windows (kernel-abi openkal) refused at resolution: glfw@3.4 requires the kernel-abi to be windows

This PR's validate run pins mcpp 2026.11.7.2, so its Windows default (MSVC) leg measures the requirement on an engine older than 2026.11.10.2.

…mcpp:kernel-abi=windows)

As the Linux row states glibc. The MSVC row, the MinGW-w64 payload and the
mingw-w64-sysroot base answer it under every mcpp the index admits, since the
payload's kernel-abi is the target's system. A Windows identity whose system
interface is openkal (openkal-musl over openkal-windows) has no window system
and is refused at resolution, naming the requirement, instead of failing in
<windows.h>. A requirement on c-abi=ucrt would refuse this package on MSVC
under mcpp 2026.11.3.1 to 2026.11.10.1, which answer msvc there.
@Sunrisepeak
Sunrisepeak force-pushed the feat/glfw-windows-ucrt branch from 24c32dc to 9a8c5ee Compare November 11, 2026 00:20
@Sunrisepeak Sunrisepeak changed the title compat.glfw: the Win32 backend requires mcpp:c-abi=ucrt compat.glfw: the Win32 backend requires mcpp:kernel-abi=windows Nov 11, 2026
@Sunrisepeak
Sunrisepeak merged commit 6f7540f into main Nov 11, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant