cage/meson.build
Jente Hidskes 95372f3f37
Switch to Meson
This makes it easier to extend in the future. Also, it will make it
easier to add (un)install targets and eventually, distribute files such
as systemd services.
2018-12-25 20:29:23 +01:00

68 lines
1.3 KiB
Meson

project('cage', 'c',
version: '0.0.1',
license: 'MIT',
default_options: [
'c_std=c11',
'warning_level=3',
'werror=true',
],
)
add_project_arguments(
[
'-DWLR_USE_UNSTABLE',
'-Wall',
'-Werror',
'-Wundef',
'-Wno-unused-parameter',
],
language: 'c',
)
if get_option('buildtype').startswith('debug')
add_project_arguments('-DDEBUG', language : 'c')
endif
wlroots = dependency('wlroots')
wayland_protos = dependency('wayland-protocols', version: '>=1.14')
wayland_server = dependency('wayland-server')
xkbcommon = dependency('xkbcommon')
wl_protocol_dir = wayland_protos.get_pkgconfig_variable('pkgdatadir')
wayland_scanner = find_program('wayland-scanner')
wayland_scanner_server = generator(
wayland_scanner,
output: '@BASENAME@-protocol.h',
arguments: ['server-header', '@INPUT@', '@OUTPUT@'],
)
server_protocols = [
[wl_protocol_dir, 'stable/xdg-shell/xdg-shell.xml'],
]
server_protos_headers = []
foreach p : server_protocols
xml = join_paths(p)
server_protos_headers += wayland_scanner_server.process(xml)
endforeach
server_protos = declare_dependency(
sources: server_protos_headers,
)
cage_sources = [
'cage.c'
]
executable(
meson.project_name(),
cage_sources,
dependencies: [
server_protos,
wayland_server,
wlroots,
xkbcommon,
],
install: true,
)