mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-29 16:05:59 +01:00
8e34692250
This new renderer is implemented with the existing wlr_renderer API (which is known to be sub-optimal for some operations). It's not used by default, but users can opt-in by setting WLR_RENDERER=vulkan. The renderer depends on VK_EXT_image_drm_format_modifier and VK_EXT_physical_device_drm. Co-authored-by: Simon Ser <contact@emersion.fr> Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
38 lines
733 B
Meson
38 lines
733 B
Meson
msg = []
|
|
if 'vulkan' in renderers
|
|
msg += 'Install "@0@" or pass "-Dvulkan=disabled" to disable it.'
|
|
else
|
|
msg += 'Required for vulkan renderer support.'
|
|
endif
|
|
|
|
dep_vulkan = dependency('vulkan',
|
|
version: '>=1.2.182',
|
|
required: 'vulkan' in renderers,
|
|
not_found_message: '\n'.join(msg).format('vulkan')
|
|
)
|
|
|
|
if not dep_vulkan.found()
|
|
subdir_done()
|
|
endif
|
|
|
|
glslang = find_program('glslangValidator', native: true, required: false)
|
|
if not glslang.found()
|
|
if 'vulkan' in renderers
|
|
error('\n'.join(msg).format('glslang'))
|
|
else
|
|
subdir_done()
|
|
endif
|
|
endif
|
|
|
|
wlr_files += files(
|
|
'renderer.c',
|
|
'texture.c',
|
|
'vulkan.c',
|
|
'util.c',
|
|
'pixel_format.c',
|
|
)
|
|
|
|
wlr_deps += dep_vulkan
|
|
features += { 'vulkan-renderer': true }
|
|
|
|
subdir('shaders')
|