Skip to content

Guard raw Vulkan platform declarations by registry flags - #50

Merged
antono3 merged 2 commits into
masterfrom
fix/platform-extension-guards
Sep 22, 2026
Merged

antono3 merged 2 commits into
masterfrom
fix/platform-extension-guards

Conversation

@antono3

@antono3 antono3 commented Sep 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

Regenerate the v1.4.363 raw Vulkan binding so platform-specific types, commands, and function-pointer aliases are selected by explicit V flags such as -d vulkan_xlib. Each flag also enables the matching VK_USE_PLATFORM_* C header macro. Extension name and spec-version constants remain available without the flag.

This fixes V3's unconditional C typedef emission for platform types absent from the active Vulkan headers. The generator change is tracked in antono2/v_vulkan_bindings#15. Nested generated declarations account for most of this PR's formatting diff; diff -w isolates the semantic changes to platform guards and constant placement.

Verification

  • Released V 0.5.2 GCC and TCC ergonomic tests: 4/4 each.
  • Released V 0.5.2 GCC binding smoke test passes with and without -d vulkan_xlib.
  • Pinned V3 frontend checks pass with and without -d vulkan_xlib.
  • CI adds Linux GCC/TCC Xlib C compilation, retains Windows/macOS coverage, and keeps full V3 C compilation advisory until verified.

The local full V3 C build hit the compiler's 10 GiB memory limit before reaching the C compiler. This is separate from the platform declaration guards and remains visible in the advisory CI lane.

Compatibility

Consumers using raw platform-specific declarations must pass the corresponding -d vulkan_<platform> flag and install the native headers. The README documents the flags. A version bump and release will be prepared after this PR and the generator PR pass CI.

@antono3
antono3 merged commit 92f4a93 into master Sep 22, 2026
8 checks passed
@antono3
antono3 deleted the fix/platform-extension-guards branch September 22, 2026 22:05
@antono3 antono3 mentioned this pull request Sep 22, 2026
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.

2 participants