xdg-decoration-unstable-v1 needs xdg-toplevel but does not define it. This leads to a linker failure on at least ppc64. --- wayland-protocols-1.25/tests/meson.build.old 2022-01-28 10:00:40.731421000 -0600 +++ wayland-protocols-1.25/tests/meson.build 2022-07-02 20:09:54.653454716 -0500 @@ -88,32 +88,34 @@ ] # Check that header can be included by a pedantic C99 compiler - test_name = 'test-build-pedantic-@0@'.format(protocol_file.underscorify()) - test_name_source = '@0@.c'.format(test_name) - test_source = custom_target( - test_name_source, - input: 'build-pedantic.c.in', - output: test_name_source, - command: replace_command, - ) - pedantic_test_executable = executable( - test_name, - [ - test_source, - client_header, - server_header, - code - ], - link_args: extra_linker_flags, - dependencies: libwayland, - c_args: [ - '-std=c99', - '-pedantic', - '-Wall', - '-Werror' ], - install: false, - ) - test(test_name, pedantic_test_executable) + if not protocol_file.contains('xdg-decoration-unstable-v1') + test_name = 'test-build-pedantic-@0@'.format(protocol_file.underscorify()) + test_name_source = '@0@.c'.format(test_name) + test_source = custom_target( + test_name_source, + input: 'build-pedantic.c.in', + output: test_name_source, + command: replace_command, + ) + pedantic_test_executable = executable( + test_name, + [ + test_source, + client_header, + server_header, + code + ], + link_args: extra_linker_flags, + dependencies: libwayland, + c_args: [ + '-std=c99', + '-pedantic', + '-Wall', + '-Werror' ], + install: false, + ) + test(test_name, pedantic_test_executable) + endif # Check that the header if not protocol_file.contains('xdg-foreign-unstable-v1')