From e2873bc614e50d19f1b8aa939514c83933b10136 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Thu, 10 Mar 2022 00:08:36 -0500 Subject: [PATCH] meson: use proper handling of wayland-protocols dependency Ensure that resolution of the subproject occurs via the dependency interface, not the "poke at subprojects manually" interface, and make that actually work via --wrap-mode=forcefallback. There's no need to mark it as not-required and then manually invoke subproject(), since fallback should work correctly and it is always needed. However, if fallback was performed (or forced) it would error out since get_variable() was instructed to only use pkg-config while the relevant variable was exported by the subproject as an internal fallback dependency. --- meson.build | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/meson.build b/meson.build index 63b4d73bfe..17fdb1cfe7 100644 --- a/meson.build +++ b/meson.build @@ -517,15 +517,11 @@ if wayland_enabled wlclientdep = dependency('wayland-client', version: wayland_req, fallback: 'wayland', default_options: ['documentation=false']) - wlprotocolsdep = dependency('wayland-protocols', version: wayland_proto_req, required: false) + wlprotocolsdep = dependency('wayland-protocols', version: wayland_proto_req) wlegldep = dependency('wayland-egl', fallback: 'wayland') - if not wlprotocolsdep.found() - wlproto_dir = subproject('wayland-protocols').get_variable('wayland_protocols_srcdir') - else - wlproto_dir = wlprotocolsdep.get_variable(pkgconfig: 'pkgdatadir') - endif + wlproto_dir = wlprotocolsdep.get_variable('pkgdatadir') wayland_pkgs = [ 'wayland-client @0@'.format(wayland_req), -- 2.30.2