xwayland: remove find_program() fallback when dep is not found

The dep allows us to check dep variables to discover supported
features. With the binary we assume none of the features are
supported. If a user forgets to install the pkg-config file (e.g.
because it's in a split package) we end up incorrectly disabling
all features. Instead let's error out.
Simon Ser 3 years ago
parent 037b21647b
commit 1ed5137720

@ -15,7 +15,7 @@ packages:
- xcb-util-image-dev - xcb-util-image-dev
- xcb-util-renderutil-dev - xcb-util-renderutil-dev
- xcb-util-wm-dev - xcb-util-wm-dev
- xwayland - xwayland-dev
- libseat-dev - libseat-dev
- hwdata - hwdata
sources: sources:

@ -22,7 +22,7 @@ packages:
- x11/xcb-util-errors - x11/xcb-util-errors
- x11/xcb-util-renderutil - x11/xcb-util-renderutil
- x11/xcb-util-wm - x11/xcb-util-wm
- x11-servers/xwayland - x11-servers/xwayland-devel
- sysutils/seatd - sysutils/seatd
- gmake - gmake
- hwdata - hwdata

@ -19,17 +19,9 @@ if not get_option('xwayland').disabled()
msg += 'Required for Xwayland support.' msg += 'Required for Xwayland support.'
endif endif
xwayland = dependency('xwayland', required: false) xwayland = dependency('xwayland', required: get_option('xwayland'))
if not xwayland.found() if not xwayland.found()
# There's no Xwayland release with the pkg-config file shipped yet. subdir_done()
xwayland_prog = find_program('Xwayland', required: false)
if not xwayland_prog.found()
if get_option('xwayland').enabled()
error('\n'.join(msg).format('xwayland'))
else
subdir_done()
endif
endif
endif endif
foreach lib : xwayland_required foreach lib : xwayland_required
@ -69,22 +61,9 @@ xwayland_feature_names = [
'terminate_delay', 'terminate_delay',
] ]
xwayland_features = {} internal_config.set_quoted('XWAYLAND_PATH', xwayland.get_variable('xwayland'))
if xwayland.found() foreach name : xwayland_feature_names
xwayland_path = xwayland.get_variable('xwayland') have = xwayland.get_variable('have_' + name, default_value: 'false') == 'true'
foreach name : xwayland_feature_names
have = xwayland.get_variable('have_' + name, default_value: 'false') == 'true'
xwayland_features += { name: have }
endforeach
else
xwayland_path = xwayland_prog.full_path()
foreach name : xwayland_feature_names
xwayland_features += { name: false }
endforeach
endif
internal_config.set_quoted('XWAYLAND_PATH', xwayland_path)
foreach name, have : xwayland_features
internal_config.set10('HAVE_XWAYLAND_' + name.to_upper(), have) internal_config.set10('HAVE_XWAYLAND_' + name.to_upper(), have)
endforeach endforeach

Loading…
Cancel
Save