backend/session: make udev dependency optional

udev is now optional at build-time but will fail at runtime because
we don't have an alternative implementation yet.
This commit is contained in:
Simon Ser 2026-05-24 13:54:23 +02:00
parent e8b81b3d4a
commit 905ebaa89a
5 changed files with 31 additions and 10 deletions

View file

@ -1,17 +1,22 @@
msg = 'Required for session support.'
udev = dependency('libudev', required: session_required, not_found_message: msg)
libseat = dependency(
'libseat',
version: '>=0.2.0',
fallback: 'seatd',
default_options: ['server=disabled', 'man-pages=disabled', 'examples=disabled'],
required: session_required,
not_found_message: msg,
not_found_message: 'Required for session support.',
)
if not (udev.found() and libseat.found())
if not libseat.found()
subdir_done()
endif
wlr_files += files('session.c', 'udev.c')
wlr_deps += [udev, libseat]
wlr_files += files('session.c')
wlr_deps += [libseat]
features += { 'session': true }
udev = dependency('libudev', required: get_option('udev'))
if udev.found()
wlr_files += files('udev.c')
wlr_deps += [udev]
internal_features += { 'udev': true }
endif