Using validation layers produces erros (and potentially segfaults) for valid usage when using GLFW.
Error that results:
VUID_Undefined(ERROR / SPEC): msgNum: 0 - Instance Extension VK_KHR_xcb_surface is not supported by this layer. Using this extension may adversely affect validation results and/or produce undefined behavior.
 0, type: 0, name: NULL
VUID-vkGetPhysicalDeviceSurfaceSupportKHR-surface-parameter(ERROR / SPEC): msgNum: 0 - Invalid SurfaceKHR Object 0x80098b020. The Vulkan spec states: surface must be a valid VkSurfaceKHR handle (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceSurfaceSupportKHR-surface-parameter)
Removing the CMAKE_OFF settings got X11 and XCB and providing options copied from the graphics/vulkan-loader seems to provide a least suprising solution (defaulting these 2 options to off leaves behaviour as before).
This has been tested for compiling for all 4 option combinations also.
(I'm sure the wayland option could also be transferred but testing that is outside my configuration)
Created attachment 214380 [details]