mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 02:48:06 +02:00
meson: allow DRI on darwin to enable Zink + EGL builds
Mesa already sets `with_dri_platform = 'apple'` when the host system is darwin (line 412), but the gating on `with_dri` itself only enables DRI when `system_has_kms_drm` is true (or for the kgsl/Zink combo). Darwin has no KMS/DRM, so DRI ends up disabled and Zink targeting EGL surfaceless cannot be built. Extend the existing `kgsl + zink` exception to also cover darwin: enable DRI on darwin only when zink is the gallium driver in use. This factors the exception under the `with_gallium_zink` umbrella, which leaves the old appledri X11 / GLX path completely untouched on darwin builds that do not enable zink. Validated on macOS 15.2 / Apple Silicon with Mesa 26.x targeting Zink over the KosmicKrisp Vulkan ICD: OpenGL 4.6 surfaceless contexts work end to end. Suggested-by: QwertyChouskie Signed-off-by: Louis Montagne <louis@askem.eu> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41359>
This commit is contained in:
parent
d15e1fd108
commit
04055256ec
1 changed files with 1 additions and 1 deletions
|
|
@ -355,7 +355,7 @@ with_vdrm = [
|
|||
].contains(true)
|
||||
|
||||
with_dri = false
|
||||
if with_gallium and (system_has_kms_drm or (freedreno_kmds.contains('kgsl') and with_gallium_zink))
|
||||
if with_gallium and (system_has_kms_drm or (with_gallium_zink and (freedreno_kmds.contains('kgsl') or host_machine.system() == 'darwin')))
|
||||
_glx = get_option('glx')
|
||||
_egl = get_option('egl')
|
||||
if _glx == 'dri' or _egl.enabled() or (_glx == 'disabled' and _egl.allowed())
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue