2022-06-03 15:39:50 +00:00
|
|
|
wl_protocol_dir = wayland['deps'][2].get_variable(pkgconfig: 'pkgdatadir', internal: 'pkgdatadir')
|
2022-05-18 14:35:53 +00:00
|
|
|
protocols = [[wl_protocol_dir, 'stable/presentation-time/presentation-time.xml'],
|
|
|
|
[wl_protocol_dir, 'stable/viewporter/viewporter.xml'],
|
|
|
|
[wl_protocol_dir, 'stable/xdg-shell/xdg-shell.xml'],
|
2021-11-07 19:28:16 +00:00
|
|
|
[wl_protocol_dir, 'unstable/idle-inhibit/idle-inhibit-unstable-v1.xml'],
|
2022-05-18 14:35:53 +00:00
|
|
|
[wl_protocol_dir, 'unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml'],
|
2024-07-05 15:35:57 +00:00
|
|
|
[wl_protocol_dir, 'unstable/xdg-decoration/xdg-decoration-unstable-v1.xml'],
|
|
|
|
[wl_protocol_dir, 'staging/content-type/content-type-v1.xml'],
|
2024-09-26 22:28:35 +00:00
|
|
|
[wl_protocol_dir, 'staging/fractional-scale/fractional-scale-v1.xml'],
|
2024-07-05 15:35:57 +00:00
|
|
|
[wl_protocol_dir, 'staging/single-pixel-buffer/single-pixel-buffer-v1.xml'],
|
2024-09-26 22:28:35 +00:00
|
|
|
['protocols', 'xx-color-management-v4.xml']]
|
2021-11-07 19:28:16 +00:00
|
|
|
wl_protocols_source = []
|
|
|
|
wl_protocols_headers = []
|
|
|
|
|
2024-07-05 15:35:57 +00:00
|
|
|
foreach v: ['1.32']
|
2023-08-20 20:40:58 +00:00
|
|
|
features += {'wayland-protocols-' + v.replace('.', '-'):
|
|
|
|
wayland['deps'][2].version().version_compare('>=' + v)}
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
if features['wayland-protocols-1-32']
|
2023-05-19 22:07:25 +00:00
|
|
|
protocols += [[wl_protocol_dir, 'staging/cursor-shape/cursor-shape-v1.xml'],
|
|
|
|
[wl_protocol_dir, 'unstable/tablet/tablet-unstable-v2.xml']] # required by cursor-shape
|
|
|
|
endif
|
|
|
|
|
2021-11-07 19:28:16 +00:00
|
|
|
foreach p: protocols
|
|
|
|
xml = join_paths(p)
|
|
|
|
wl_protocols_source += custom_target(xml.underscorify() + '_c',
|
|
|
|
input: xml,
|
|
|
|
output: '@BASENAME@.c',
|
|
|
|
command: [wayland['scanner'], 'private-code', '@INPUT@', '@OUTPUT@'],
|
|
|
|
)
|
|
|
|
wl_protocols_headers += custom_target(xml.underscorify() + '_h',
|
|
|
|
input: xml,
|
|
|
|
output: '@BASENAME@.h',
|
|
|
|
command: [wayland['scanner'], 'client-header', '@INPUT@', '@OUTPUT@'],
|
|
|
|
)
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
lib_client_protocols = static_library('protocols',
|
|
|
|
wl_protocols_source + wl_protocols_headers,
|
|
|
|
dependencies: wayland['deps'][0])
|
|
|
|
|
|
|
|
client_protocols = declare_dependency(link_with: lib_client_protocols,
|
|
|
|
sources: wl_protocols_headers)
|
|
|
|
|
|
|
|
dependencies += [client_protocols, wayland['deps']]
|
|
|
|
|
2023-07-23 22:54:35 +00:00
|
|
|
sources += files('wayland_common.c')
|