mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-29 16:05:59 +01:00
756dedae20
Goals: - Extensibility: we need to be able to add new params to the calls to render a texture/rect. For instance we'll need to add fences to the render texture operation for explicit sync purposes. - No implicit state: no more bind_buffer, begin, end. - No matrices: these hurt Pixman and we don't need them. - Clip regions for optimized damage repainting. Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3188
41 lines
960 B
Meson
41 lines
960 B
Meson
renderers = get_option('renderers')
|
|
if 'auto' in renderers and get_option('auto_features').enabled()
|
|
renderers = ['gles2', 'vulkan']
|
|
elif 'auto' in renderers and get_option('auto_features').disabled()
|
|
renderers = []
|
|
endif
|
|
|
|
wlr_files += files(
|
|
'dmabuf.c',
|
|
'drm_format_set.c',
|
|
'pass.c',
|
|
'pixel_format.c',
|
|
'swapchain.c',
|
|
'wlr_renderer.c',
|
|
'wlr_texture.c',
|
|
)
|
|
|
|
if cc.has_header('linux/dma-buf.h') and target_machine.system() == 'linux'
|
|
wlr_files += files('dmabuf_linux.c')
|
|
else
|
|
wlr_files += files('dmabuf_fallback.c')
|
|
endif
|
|
|
|
if 'gles2' in renderers or 'auto' in renderers
|
|
egl = dependency('egl', required: 'gles2' in renderers)
|
|
gbm = dependency('gbm', required: 'gles2' in renderers)
|
|
if egl.found() and gbm.found()
|
|
wlr_deps += [egl, gbm]
|
|
wlr_files += files('egl.c')
|
|
internal_features += { 'egl': true }
|
|
endif
|
|
subdir('gles2')
|
|
endif
|
|
|
|
if 'vulkan' in renderers or 'auto' in renderers
|
|
subdir('vulkan')
|
|
endif
|
|
|
|
subdir('pixman')
|
|
|
|
subdir('allocator')
|