xrWaitFrame() doesn't block at all, will only predict the time for the next frame.
Once the compositor is multithreaded, this wait should be moved to the compositor thread
and xrWaitFrame should be the function to block until the compositor finished rendering the frame.
```txt
Conditional jump or move depends on uninitialised value(s)
at 0x6A5A7A0: vk_select_physical_device (comp_vk.c:847)
by 0x6A5AAF9: vk_create_device (comp_vk.c:916)
by 0x6A5CD82: compositor_check_vulkan_caps (comp_compositor.c:401)
by 0x6A5D659: comp_compositor_create (comp_compositor.c:656)
by 0x6A5F99B: xrt_gfx_vk_provider_create (comp_glue_vk.c:57)
by 0x6A78197: oxr_session_populate_vk (oxr_session_vk.c:32)
by 0x6A77E59: oxr_session_create_impl (oxr_session.c:536)
by 0x6A77F53: oxr_session_create (oxr_session.c:567)
by 0x6A6EA74: oxr_xrCreateSession (oxr_api_session.c:44)
by 0x2632A8: xrCreateSession (in hello_xr)
by 0x239F0D: (anonymous namespace)::OpenXrProgram::InitializeSession() (in hello_xr)
by 0x22ED25: main (in hello_xr)
Uninitialised value was created by a stack allocation
at 0x6A5CB05: compositor_check_vulkan_caps (comp_compositor.c:349)
```
For enabling Vulkan validation during runtime.
Add CMake option to disable Vulkan validation at build time.
By default the DEBUG extension is enabled but the validation layers
are not when the ENV variable is not set to true.