Skip to content

tinywl: Add xdg-shell server as a dependency.#182

Open
Zeckmathederg wants to merge 2 commits intowlrfx:mainfrom
Zeckmathederg:tinywl-xdg
Open

tinywl: Add xdg-shell server as a dependency.#182
Zeckmathederg wants to merge 2 commits intowlrfx:mainfrom
Zeckmathederg:tinywl-xdg

Conversation

@Zeckmathederg
Copy link
Copy Markdown

Under some configurations when -D examples=true is passed to meson, ninja will fail to build the tinywl/tinywl.p/tinywl.c.o target because protocols_server_header['xdg-shell'] wasn't added as a source. tinywl/tinywl.p/tinywl.c includes xdg-shell-protocol.h which is generated from protocols_server_header['xdg-shell'], but if parallelism is too high, or when using samurai, since the dependency information is incomplete, the protocol server header won't generate before tinywl/tinywl.p/tinywl.c.o is attempted to be built, and will then proceed to fail.

This commit/PR fixes the issue for all configurations.

@WillPower3309
Copy link
Copy Markdown
Member

Thanks for the PR! it looks good, but since upstream no longer contains those lines I think it's best to follow their path and remove them too.

@Zeckmathederg
Copy link
Copy Markdown
Author

The server header will still be necessary, unless changed with wlroots-0.20.0. However, the client header shouldn't be necessary anymore, even with 0.19.x. So a simple replace with client to server will suffice here.

Because wayland-protocols now ships a client header for xdg-shell, it no
longer needs to be generated. However, the server header must be
generated since the server header is not provided.
@Zeckmathederg
Copy link
Copy Markdown
Author

I double checked with wlroots-0.20. Specifically, /usr/include/wlroots-0.19/wlr/types/wlr_xdg_shell.h includes xdg-shell-protocol.h which is expected to be generated by each build system individually. However, Wayland-Protocols now provides enum headers for most of the protocols. In the case of xdg-shell, this would be xdg-shell-enum.h. wlroots-0.20.x's wlr_xdg_shell.h now includes the enum header, which doesn't need to be generated by build systems.

So for now, I would recommend merging anyway, but this should be changed when wlroots-0.20 compatibility comes in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants