efl/src/wayland_protocol/meson.build

72 lines
2.0 KiB
Meson

wayland_scanner_bin = find_program('wayland-scanner')
#make it typo proof
_wayland_protocols = dependency('wayland-protocols')
wayland_client = dependency('wayland-client')
wl_protocol_local = [
'efl-aux-hints.xml',
'efl-hints.xml',
'session-recovery.xml'
]
wl_unstable_protocol_sys = [
join_paths('xdg-shell', 'xdg-shell-unstable-v6.xml'),
join_paths('linux-dmabuf', 'linux-dmabuf-unstable-v1.xml'),
join_paths('text-input', 'text-input-unstable-v1.xml'),
]
wl_stable_protocol_sys = [
join_paths('xdg-shell', 'xdg-shell.xml'),
]
foreach sys_protocol : wl_unstable_protocol_sys
wl_protocol_local += [
join_paths(_wayland_protocols.get_pkgconfig_variable('pkgdatadir'), 'unstable',
sys_protocol)]
endforeach
foreach sys_protocol : wl_stable_protocol_sys
wl_protocol_local += [
join_paths(_wayland_protocols.get_pkgconfig_variable('pkgdatadir'), 'stable',
sys_protocol)]
endforeach
gen_obj_c = []
gen_obj_header = []
foreach item : wl_protocol_local
gen_obj_c += custom_target('wl_code_'+item.underscorify(),
input: item,
output : ['@BASENAME@-protocol.c'],
command: [wayland_scanner_bin, ['private-code','@INPUT@','@OUTPUT@']]
)
gen_obj_header += custom_target('wl_client_header_'+item.underscorify(),
input: item,
output : ['@BASENAME@-client-protocol.h'],
command: [wayland_scanner_bin, ['client-header','@INPUT@','@OUTPUT@']]
)
gen_obj_header += custom_target('wl_server_header_'+item.underscorify(),
input: item,
output : ['@BASENAME@-server-protocol.h'],
command: [wayland_scanner_bin, ['server-header','@INPUT@','@OUTPUT@']]
)
endforeach
wayland_protocol_lib = static_library('wayland_protocol',
gen_obj_c + gen_obj_header,
)
wayland_protocol = declare_dependency(
include_directories: include_directories('.'),
link_with: wayland_protocol_lib,
sources: gen_obj_header,
dependencies : [wayland_client]
)
wayland_protocol_simple = declare_dependency(
include_directories: include_directories('.'),
sources: gen_obj_header,
)