Upgrade wlroots to v0.20

Breaking changes:
 - https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5230
This commit is contained in:
Sungjoon Moon 2026-02-27 23:51:32 +09:00 committed by Simon Ser
parent a1e5bf3789
commit b5c3e71b02
4 changed files with 5 additions and 30 deletions

View file

@ -6,7 +6,7 @@ on:
branches: [ master ]
env:
WLROOTS_VERSION: 0.19
WLROOTS_VERSION: "0.20"
jobs:
compile:

View file

@ -21,7 +21,7 @@ All releases are published on [GitHub](https://github.com/cage-kiosk/cage/releas
You can build Cage with the [meson](https://mesonbuild.com/) build system. It
requires wayland, wlroots, and xkbcommon to be installed. Optionally, install
scdoc for manual pages. Cage is currently based on branch 0.18 of wlroots.
scdoc for manual pages. Cage is currently based on branch 0.20 of wlroots.
Simply execute the following steps to build Cage:

4
cage.c
View file

@ -588,8 +588,8 @@ main(int argc, char *argv[])
struct wlr_xcursor *xcursor = wlr_xcursor_manager_get_xcursor(xcursor_manager, DEFAULT_XCURSOR, 1);
if (xcursor) {
struct wlr_xcursor_image *image = xcursor->images[0];
wlr_xwayland_set_cursor(xwayland, image->buffer, image->width * 4, image->width, image->height,
image->hotspot_x, image->hotspot_y);
wlr_xwayland_set_cursor(xwayland, wlr_xcursor_image_get_buffer(image), image->hotspot_x,
image->hotspot_y);
}
}
#endif

View file

@ -35,35 +35,11 @@ if is_freebsd
)
endif
wlroots = dependency('wlroots-0.19', fallback: ['wlroots', 'wlroots'])
wayland_protos = dependency('wayland-protocols', version: '>=1.14')
wlroots = dependency('wlroots-0.20', fallback: ['wlroots', 'wlroots'])
wayland_server = dependency('wayland-server')
xkbcommon = dependency('xkbcommon')
math = cc.find_library('m')
wl_protocol_dir = wayland_protos.get_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,
)
have_xwayland = wlroots.get_variable(pkgconfig: 'have_xwayland', internal: 'have_xwayland') == 'true'
version = '@0@'.format(meson.project_version())
@ -140,7 +116,6 @@ executable(
meson.project_name(),
cage_sources + cage_headers,
dependencies: [
server_protos,
wayland_server,
wlroots,
xkbcommon,