mirror of
https://github.com/labwc/labwc.git
synced 2026-04-03 07:15:34 -04:00
Make labnag a meson feature flag
Add a 'labnag' meson option (default: auto) to allow disabling the labnag notification daemon at build time. This is useful for embedded/headless deployments (e.g. Android) where labnag is not needed, and avoids building its wayland-client dependencies. Disable with: meson setup build -Dlabnag=disabled
This commit is contained in:
parent
3128f50a25
commit
862d230ff9
2 changed files with 55 additions and 52 deletions
|
|
@ -1,59 +1,61 @@
|
|||
wayland_client = dependency('wayland-client')
|
||||
wayland_cursor = dependency('wayland-cursor')
|
||||
if get_option('labnag').allowed()
|
||||
wayland_client = dependency('wayland-client')
|
||||
wayland_cursor = dependency('wayland-cursor')
|
||||
|
||||
nag_sources = files(
|
||||
'labnag.c',
|
||||
'pool-buffer.c',
|
||||
)
|
||||
|
||||
wl_protocol_dir = wayland_protos.get_variable('pkgdatadir')
|
||||
|
||||
protocols = [
|
||||
wl_protocol_dir / 'stable/tablet/tablet-v2.xml',
|
||||
wl_protocol_dir / 'stable/xdg-shell/xdg-shell.xml',
|
||||
wl_protocol_dir / 'staging/cursor-shape/cursor-shape-v1.xml',
|
||||
'../protocols/wlr-layer-shell-unstable-v1.xml',
|
||||
]
|
||||
|
||||
foreach xml : protocols
|
||||
nag_sources += custom_target(
|
||||
xml.underscorify() + '_c',
|
||||
input: xml,
|
||||
output: '@BASENAME@-protocol.c',
|
||||
command: [wayland_scanner, 'private-code', '@INPUT@', '@OUTPUT@'],
|
||||
nag_sources = files(
|
||||
'labnag.c',
|
||||
'pool-buffer.c',
|
||||
)
|
||||
nag_sources += custom_target(
|
||||
xml.underscorify() + '_client_h',
|
||||
input: xml,
|
||||
output: '@BASENAME@-client-protocol.h',
|
||||
command: [wayland_scanner, 'client-header', '@INPUT@', '@OUTPUT@'],
|
||||
)
|
||||
endforeach
|
||||
|
||||
if host_machine.system() in ['freebsd', 'openbsd']
|
||||
# For signalfd()
|
||||
epoll_dep = dependency('epoll-shim')
|
||||
else
|
||||
epoll_dep = []
|
||||
wl_protocol_dir = wayland_protos.get_variable('pkgdatadir')
|
||||
|
||||
protocols = [
|
||||
wl_protocol_dir / 'stable/tablet/tablet-v2.xml',
|
||||
wl_protocol_dir / 'stable/xdg-shell/xdg-shell.xml',
|
||||
wl_protocol_dir / 'staging/cursor-shape/cursor-shape-v1.xml',
|
||||
'../protocols/wlr-layer-shell-unstable-v1.xml',
|
||||
]
|
||||
|
||||
foreach xml : protocols
|
||||
nag_sources += custom_target(
|
||||
xml.underscorify() + '_c',
|
||||
input: xml,
|
||||
output: '@BASENAME@-protocol.c',
|
||||
command: [wayland_scanner, 'private-code', '@INPUT@', '@OUTPUT@'],
|
||||
)
|
||||
nag_sources += custom_target(
|
||||
xml.underscorify() + '_client_h',
|
||||
input: xml,
|
||||
output: '@BASENAME@-client-protocol.h',
|
||||
command: [wayland_scanner, 'client-header', '@INPUT@', '@OUTPUT@'],
|
||||
)
|
||||
endforeach
|
||||
|
||||
if host_machine.system() in ['freebsd', 'openbsd']
|
||||
# For signalfd()
|
||||
epoll_dep = dependency('epoll-shim')
|
||||
else
|
||||
epoll_dep = []
|
||||
endif
|
||||
|
||||
executable(
|
||||
'labnag',
|
||||
nag_sources,
|
||||
dependencies: [
|
||||
cairo,
|
||||
pangocairo,
|
||||
glib,
|
||||
wayland_client,
|
||||
wayland_cursor,
|
||||
wlroots,
|
||||
server_protos,
|
||||
epoll_dep,
|
||||
xkbcommon,
|
||||
],
|
||||
include_directories: [labwc_inc],
|
||||
install: true,
|
||||
)
|
||||
endif
|
||||
|
||||
executable(
|
||||
'labnag',
|
||||
nag_sources,
|
||||
dependencies: [
|
||||
cairo,
|
||||
pangocairo,
|
||||
glib,
|
||||
wayland_client,
|
||||
wayland_cursor,
|
||||
wlroots,
|
||||
server_protos,
|
||||
epoll_dep,
|
||||
xkbcommon,
|
||||
],
|
||||
include_directories: [labwc_inc],
|
||||
install: true,
|
||||
)
|
||||
|
||||
clients = files('lab-sensible-terminal')
|
||||
install_data(clients, install_dir: get_option('bindir'))
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ option('man-pages', type: 'feature', value: 'auto', description: 'Generate and i
|
|||
option('xwayland', type: 'feature', value: 'auto', description: 'Enable support for X11 applications')
|
||||
option('svg', type: 'feature', value: 'enabled', description: 'Enable svg window buttons')
|
||||
option('icon', type: 'feature', value: 'enabled', description: 'Enable window icons')
|
||||
option('labnag', type: 'feature', value: 'auto', description: 'Build labnag notification daemon')
|
||||
option('nls', type: 'feature', value: 'auto', description: 'Enable native language support')
|
||||
option('static_analyzer', type: 'feature', value: 'disabled', description: 'Run gcc static analyzer')
|
||||
option('test', type: 'feature', value: 'disabled', description: 'Run tests')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue