Special-case VK_KHR_portability_subset drivers
Vulkan-Loader 1.3.211.x no longer includes drivers in enumeration if they have the new is_portability_driver
flag in their JSON manifest. That flag is an "anti-capability" indicating that the driver is a not-fully-spec-compliant implementation of the Vulkan API. For example, MoltenVK implements a subset of Vulkan on macOS using Apple's Metal API.
We should teach steam-runtime-tools and pressure-vessel to:
- read that flag from the manifest into memory
- if that flag is true in memory, set it when writing out a new manifest
- if that flag is true in memory, set the manifest version to 1.0.1 rather than 1.0.0
Nice to have:
- if that flag is set, report it as a new
SRT_LOADABLE_ISSUES_API_SUBSET
or similar.
/cc @denittis - perhaps you can take this one?