aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-02-16 13:55:34 +0900
committerOphestra <cat@gensokyo.uk>2026-02-16 13:55:34 +0900
commit1809b53e522c58986fc58d44a01b542b9d748595 (patch)
treedc79174239805caee9ca5743dfc68a312402e5a5
parent67b2914c94de1d35f72fc43a8051056afc8d53e9 (diff)
internal/rosa/wayland: build-only tests patch
This patch last had any discussion eight months ago and is still not merged. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--internal/rosa/wayland.go66
1 files changed, 58 insertions, 8 deletions
diff --git a/internal/rosa/wayland.go b/internal/rosa/wayland.go
index f0d0c777..063c71b0 100644
--- a/internal/rosa/wayland.go
+++ b/internal/rosa/wayland.go
@@ -40,14 +40,64 @@ func (t Toolchain) newWaylandProtocols() pkg.Artifact {
version = "1.47"
checksum = "B_NodZ7AQfCstcx7kgbaVjpkYOzbAQq0a4NOk-SA8bQixAE20FY3p1-6gsbPgHn9"
)
- return t.NewViaMeson("wayland-protocols", version, pkg.NewHTTPGetTar(
- nil, "https://gitlab.freedesktop.org/wayland/wayland-protocols/"+
- "-/archive/"+version+"/wayland-protocols-"+version+".tar.bz2",
- mustDecode(checksum),
- pkg.TarBzip2,
- ), &MesonAttr{
- SkipCheck: true,
- },
+ return t.NewViaMeson("wayland-protocols", version, t.NewPatchedSource(
+ "wayland-protocols", version, pkg.NewHTTPGetTar(
+ nil, "https://gitlab.freedesktop.org/wayland/wayland-protocols/"+
+ "-/archive/"+version+"/wayland-protocols-"+version+".tar.bz2",
+ mustDecode(checksum),
+ pkg.TarBzip2,
+ ), false, [2]string{"build-only", `From 8b4c76275fa1b6e0a99a53494151d9a2c907144d Mon Sep 17 00:00:00 2001
+From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
+Date: Fri, 8 Nov 2024 11:27:25 -0600
+Subject: [PATCH] tests: Make build-only tests actually build-only
+
+The goal behind the pedantic compiler tests are to ensure that the code
+that wayland-scanner is generating can be compiled in pedantic mode by
+the system C compiler.
+
+Trying to execute the built tests may fail because of undefined symbols.
+This affects certain platforms more than others; Linux/musl and Darwin
+are examples of platforms that cannot execute binaries with undefined
+symbols. This meant tests needlessly failed on these platforms.
+
+Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com>
+Closes: #48, #228
+---
+ tests/meson.build | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/tests/meson.build b/tests/meson.build
+index aa216ec2..5a93bb36 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -1,4 +1,5 @@
+ prog_scan_sh = find_program('scan.sh')
++prog_true = find_program('true')
+
+ libwayland = [
+ dependency('wayland-client'),
+@@ -100,7 +101,7 @@ foreach protocol_file : protocol_files
+ test_source,
+ client_header,
+ server_header,
+- code
++ code,
+ ],
+ link_args: extra_linker_flags,
+ dependencies: libwayland,
+@@ -111,7 +112,7 @@ foreach protocol_file : protocol_files
+ '-Werror' ],
+ install: false,
+ )
+- test(test_name, pedantic_test_executable)
++ test(test_name, prog_true, depends : [pedantic_test_executable])
+
+ # Check that the header
+ if not protocol_file.contains('xdg-foreign-unstable-v1')
+--
+GitLab
+`},
+ ), nil,
t.Load(Wayland),
t.Load(Libffi),
t.Load(Libexpat),