From 6b646ed180655a120f00870440c662f4e3df6c26 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 14 Jan 2022 13:35:12 -0500 Subject: [PATCH 01/20] Build without libasan/libubsan, since these vanished from EPEL9 --- wlcs.spec | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 04d12c5..40fdba0 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -1,20 +1,6 @@ -# List copied from gcc.spec -# Current as of 11.2.1 (line 59) -# Note that this covers all Fedora primary architectures. -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 -%bcond_without asan -%else +# Unavailable in EPEL9: %bcond_with asan -%endif - -# List copied from gcc.spec -# Current as of 11.2.1 (line 74) -# Note that this covers all Fedora primary architectures. -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 -%bcond_without ubsan -%else -%bcond_with ubsan -%endif +%bcond_with uban # List copied from gcc.spec # Current as of 11.2.1 (line 64) From 961525eeb9ffcffc237540dccfb65c03c1312f3c Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sat, 19 Mar 2022 09:06:07 -0400 Subject: [PATCH 02/20] Update to 1.4.0 (close RHBZ#2065815) --- .gitignore | 1 + 215.patch | 26 ---------- ...93f7b7db154b7899f415ec67677e6ddd7ff5.patch | 49 ------------------- sources | 2 +- wlcs.spec | 19 ++----- 5 files changed, 7 insertions(+), 90 deletions(-) delete mode 100644 215.patch delete mode 100644 f6ff93f7b7db154b7899f415ec67677e6ddd7ff5.patch diff --git a/.gitignore b/.gitignore index f2ea7d9..09c567f 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /wlcs-1.1.0.tar.xz /wlcs-1.2.0.tar.xz /wlcs-1.3.0.tar.xz +/wlcs-1.4.0.tar.xz diff --git a/215.patch b/215.patch deleted file mode 100644 index 6dfbf93..0000000 --- a/215.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 6aa1becb3cee328f715af76d16de544974b6646e Mon Sep 17 00:00:00 2001 -From: "Benjamin A. Beasley" -Date: Tue, 2 Nov 2021 13:40:07 -0400 -Subject: [PATCH] =?UTF-8?q?Fix=20a=20trivial=20typo=20(=E2=80=9Caid?= - =?UTF-8?q?=E2=80=9D=20for=20=E2=80=9Cand=E2=80=9D)=20in=20README.rst?= -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - ---- - README.rst | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/README.rst b/README.rst -index 50f8ec1f..7656dc30 100644 ---- a/README.rst -+++ b/README.rst -@@ -25,7 +25,7 @@ happens-before ordering available. - - Instead, ``wlcs`` relies on compositors providing an integration module, - providing ``wlcs`` with API hooks to start a compositor, connect a client, --move a window, and so on. This makes both writing aid debugging tests easier - -+move a window, and so on. This makes both writing and debugging tests easier - - the tests are (generally) in the same address space as the compositor, so there - is a consistent global clock available, it's easier to poke around in - compositor internals, and standard debugging tools can follow control flow from diff --git a/f6ff93f7b7db154b7899f415ec67677e6ddd7ff5.patch b/f6ff93f7b7db154b7899f415ec67677e6ddd7ff5.patch deleted file mode 100644 index 31981c6..0000000 --- a/f6ff93f7b7db154b7899f415ec67677e6ddd7ff5.patch +++ /dev/null @@ -1,49 +0,0 @@ -From f6ff93f7b7db154b7899f415ec67677e6ddd7ff5 Mon Sep 17 00:00:00 2001 -From: Victor Berger -Date: Thu, 8 Jul 2021 19:39:30 +0200 -Subject: [PATCH] Fix build when using GTest-1.11 - -Some change in GTest 1.11 headers caused a conflict on the name -`Pointer`. Removing the unconditional import of namespace `testing` -in favor of individual imports of the used items fixes it. - -cc #205 ---- - tests/pointer_constraints.cpp | 6 +++++- - tests/relative_pointer.cpp | 6 +++++- - 2 files changed, 10 insertions(+), 2 deletions(-) - -diff --git a/tests/pointer_constraints.cpp b/tests/pointer_constraints.cpp -index d306710..6ee856f 100644 ---- a/tests/pointer_constraints.cpp -+++ b/tests/pointer_constraints.cpp -@@ -24,7 +24,11 @@ - - #include - --using namespace testing; -+using testing::AnyNumber; -+using testing::Eq; -+using testing::Ne; -+using testing::NotNull; -+ - using namespace wlcs; - - namespace -diff --git a/tests/relative_pointer.cpp b/tests/relative_pointer.cpp -index c33316c..c5c5358 100644 ---- a/tests/relative_pointer.cpp -+++ b/tests/relative_pointer.cpp -@@ -22,7 +22,11 @@ - - #include - --using namespace testing; -+using testing::AnyNumber; -+using testing::IsTrue; -+using testing::NotNull; -+using testing::_; -+ - using namespace wlcs; - - namespace diff --git a/sources b/sources index 483acbf..b90c256 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wlcs-1.3.0.tar.xz) = 3c4ffd9fa1a087fe58912792f0747884bc42bb344be07e937079d399d2bf85c0e9e445880d8e503bad0028c48ffbf2338174c3c74faee5057bf62ff7f121f0de +SHA512 (wlcs-1.4.0.tar.xz) = a6707f730b499cb1927ad9b3acbdb561e0788f201ffde472fafd7d427b8ee7195b9b0adc14b7c621c87afc0c13056e3ed69d53dd347178e302dc58b9bbb87b6e diff --git a/wlcs.spec b/wlcs.spec index 40fdba0..6e6ae84 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -3,7 +3,7 @@ %bcond_with uban # List copied from gcc.spec -# Current as of 11.2.1 (line 64) +# Current as of 12.0.1 (line 65) %ifarch x86_64 ppc64 ppc64le aarch64 %bcond_without tsan %else @@ -11,7 +11,7 @@ %endif Name: wlcs -Version: 1.3.0 +Version: 1.4.0 Release: %autorelease Summary: Wayland Conformance Test Suite @@ -46,6 +46,7 @@ Summary: Wayland Conformance Test Suite # - src/protocol/xdg-shell.xml # - tests/test_bad_buffer.cpp # - tests/test_surface_events.cpp +# - tests/text_input_v3_with_input_method_v2.cpp # - tests/xdg_popup_v6.cpp # - tests/xdg_surface_stable.cpp # - tests/xdg_surface_v6.cpp @@ -61,17 +62,6 @@ Summary: Wayland Conformance Test Suite License: GPLv3 URL: https://github.com/MirServer/wlcs Source0: %{url}/releases/download/v%{version}/wlcs-%{version}.tar.xz -# Backport upstream commit f6ff93f7b7db154b7899f415ec67677e6ddd7ff5: -# -# Fix build when using GTest-1.11 -# -# Some change in GTest 1.11 headers caused a conflict on the name -# `Pointer`. Removing the unconditional import of namespace `testing` -# in favor of individual imports of the used items fixes it. -Patch0: %{url}/commit/f6ff93f7b7db154b7899f415ec67677e6ddd7ff5.patch -# Fix a trivial typo (“aid” for “and”) in README.rst -# https://github.com/MirServer/wlcs/pull/215 -Patch1: %{url}/pull/215.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -112,6 +102,7 @@ clock available, it’s easier to poke around in compositor internals, and standard debugging tools can follow control flow from the test client to the compositor and back again. + %package devel Summary: Development files for wlcs Requires: wlcs%{?_isa} = %{version}-%{release} @@ -125,7 +116,7 @@ Wayland compositor tests that use wlcs. %prep -%autosetup -p1 +%autosetup # -Werror makes sense for upstream CI, but is too strict for packaging sed -r -i 's/-Werror //' CMakeLists.txt From 2d8c8c42a83713087b103a534e6b1865e9554f7c Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Tue, 29 Nov 2022 14:22:25 -0500 Subject: [PATCH 03/20] Re-enable support for libasan and libubsan --- wlcs.spec | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 6e6ae84..1b44a76 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -1,9 +1,21 @@ -# Unavailable in EPEL9: +# List copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec +# Current as of 11.3.1 (line 56) +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 +%bcond_without asan +%else %bcond_with asan -%bcond_with uban +%endif -# List copied from gcc.spec -# Current as of 12.0.1 (line 65) +# List copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec +# Current as of 11.3.1 (line 71) +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 +%bcond_without ubsan +%else +%bcond_with ubsan +%endif + +# List copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec +# Current as of 11.3.1 (line 61) %ifarch x86_64 ppc64 ppc64le aarch64 %bcond_without tsan %else From 8850afeeb9e16f011a103b151e17fbec3dbd6c98 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Tue, 29 Nov 2022 14:27:57 -0500 Subject: [PATCH 04/20] Update License to SPDX --- wlcs.spec | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 1b44a76..c8ebaff 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -27,21 +27,21 @@ Version: 1.4.0 Release: %autorelease Summary: Wayland Conformance Test Suite -# The entire source is GPLv3, except: +# The entire source is GPL-3.0-only, except: # -# (GPLv2 or GPLv3): +# (GPL-2.0-only OR GPL-3.0-only): # - CMakeLists.txt # > Build system file that does not contribute to the licenses of the binary # RPMs # -# (LGPLv2 or LGPLv3): +# (LGPL-2.0-only OR LGPL-3.0-only): # - include/mutex.h # - include/shared_library.h # - src/helpers.cpp # - src/shared_library.cpp # > Since (L)GPLv2-only code is not compatible with (L)GPLv3 or (L)GPLv3+ code, # and these sources are combined with GPLv3 code, the LGPLv3 option is used -# in this package. +# in this package. However, we encode both options in the SPDX expression. # # GPLv2+: # - debian/* @@ -68,10 +68,7 @@ Summary: Wayland Conformance Test Suite # contribute to the licenses of the binary RPMs). Files in src/protocol/ are # used as inputs to “wayland-scanner” to generate C source files and headers, # and are not directly included in the binary RPMs. -# -# Thus, files under GPLv3 and (LGPLv2 or LGPLv3) licenses contribute to the -# installed binaries, and the effective license remains GPLv3. -License: GPLv3 +License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) URL: https://github.com/MirServer/wlcs Source0: %{url}/releases/download/v%{version}/wlcs-%{version}.tar.xz From 971061fb5c0db0d37673675e63c0a246871a81fb Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Thu, 22 Dec 2022 12:45:40 -0500 Subject: [PATCH 05/20] Indicate dirs. in files list with trailing slashes --- wlcs.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wlcs.spec b/wlcs.spec index c8ebaff..ce0b1e4 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -152,7 +152,7 @@ sed -r -i 's/-Werror //' CMakeLists.txt %files devel %doc README.rst -%doc example +%doc example/ %{_includedir}/wlcs/ %{_libdir}/pkgconfig/wlcs.pc From 356171bd95a3f109e1bd02b1ec735f082e3c965c Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 20 Jan 2023 13:16:32 -0500 Subject: [PATCH 06/20] Update to 1.5.0 (close RHBZ#2162721) --- .gitignore | 1 + sources | 2 +- wlcs.spec | 10 ++++++++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 09c567f..555c23d 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /wlcs-1.2.0.tar.xz /wlcs-1.3.0.tar.xz /wlcs-1.4.0.tar.xz +/wlcs-1.5.0.tar.gz diff --git a/sources b/sources index b90c256..0527ac4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wlcs-1.4.0.tar.xz) = a6707f730b499cb1927ad9b3acbdb561e0788f201ffde472fafd7d427b8ee7195b9b0adc14b7c621c87afc0c13056e3ed69d53dd347178e302dc58b9bbb87b6e +SHA512 (wlcs-1.5.0.tar.gz) = 2d05f62ccfbbd0c4300556e7713b086663678b2ee87fe8297cb7c81a482d23fa7948034da494f91609b954c11e350d4e52837217fbafeaba2a694de7828480b6 diff --git a/wlcs.spec b/wlcs.spec index ce0b1e4..594aef5 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -23,7 +23,7 @@ %endif Name: wlcs -Version: 1.4.0 +Version: 1.5.0 Release: %autorelease Summary: Wayland Conformance Test Suite @@ -53,12 +53,14 @@ Summary: Wayland Conformance Test Suite # - src/protocol/primary-selection-unstable-v1.xml # - src/protocol/relative-pointer-unstable-v1.xml # - src/protocol/wayland.xml +# - src/protocol/wlr-virtual-pointer-unstable-v1.xml # - src/protocol/xdg-output-unstable-v1.xml # - src/protocol/xdg-shell-unstable-v6.xml # - src/protocol/xdg-shell.xml # - tests/test_bad_buffer.cpp # - tests/test_surface_events.cpp # - tests/text_input_v3_with_input_method_v2.cpp +# - tests/wlr_virtual_pointer_v1.cpp # - tests/xdg_popup_v6.cpp # - tests/xdg_surface_stable.cpp # - tests/xdg_surface_v6.cpp @@ -70,7 +72,7 @@ Summary: Wayland Conformance Test Suite # and are not directly included in the binary RPMs. License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) URL: https://github.com/MirServer/wlcs -Source0: %{url}/releases/download/v%{version}/wlcs-%{version}.tar.xz +Source0: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz BuildRequires: gcc BuildRequires: gcc-c++ @@ -143,6 +145,10 @@ sed -r -i 's/-Werror //' CMakeLists.txt %cmake_install +%check +%ctest + + %files %license COPYING.* %doc README.rst From 7ef59351af0d8769474c9a800083cb41071cf965 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 19 Jul 2023 08:51:23 -0400 Subject: [PATCH 07/20] Update to 1.6.0 (close RHBZ#2223843) --- .gitignore | 1 + sources | 2 +- wlcs.spec | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 555c23d..0aa0e0e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /wlcs-1.3.0.tar.xz /wlcs-1.4.0.tar.xz /wlcs-1.5.0.tar.gz +/wlcs-1.6.0.tar.gz diff --git a/sources b/sources index 0527ac4..f6b8ddc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wlcs-1.5.0.tar.gz) = 2d05f62ccfbbd0c4300556e7713b086663678b2ee87fe8297cb7c81a482d23fa7948034da494f91609b954c11e350d4e52837217fbafeaba2a694de7828480b6 +SHA512 (wlcs-1.6.0.tar.gz) = ae6d83e20d7bd08123936ca5c0ac7d8d8c531240f17084a3d8610dec5708c9bd32b6a667c914b6ba2117e187baaef58e02f95d919ea46de5f01ad4dfd10a4f83 diff --git a/wlcs.spec b/wlcs.spec index 594aef5..a006d71 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -23,7 +23,7 @@ %endif Name: wlcs -Version: 1.5.0 +Version: 1.6.0 Release: %autorelease Summary: Wayland Conformance Test Suite @@ -35,6 +35,7 @@ Summary: Wayland Conformance Test Suite # RPMs # # (LGPL-2.0-only OR LGPL-3.0-only): +# - include/geometry/* # - include/mutex.h # - include/shared_library.h # - src/helpers.cpp From aa3ced99808636db7f03ce85caaff62439b3cdc6 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Tue, 17 Oct 2023 12:33:13 -0400 Subject: [PATCH 08/20] Update to 1.6.1 (close RHBZ#2243684) --- .gitignore | 1 + sources | 2 +- wlcs.spec | 9 ++++++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 0aa0e0e..7e441d1 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /wlcs-1.4.0.tar.xz /wlcs-1.5.0.tar.gz /wlcs-1.6.0.tar.gz +/wlcs-1.6.1.tar.gz diff --git a/sources b/sources index f6b8ddc..dbf128a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wlcs-1.6.0.tar.gz) = ae6d83e20d7bd08123936ca5c0ac7d8d8c531240f17084a3d8610dec5708c9bd32b6a667c914b6ba2117e187baaef58e02f95d919ea46de5f01ad4dfd10a4f83 +SHA512 (wlcs-1.6.1.tar.gz) = 136bee6ac1d55e55cbeb65e20cc6e6b1912c5b050bef63d16a869dc90b6e287dddb21d8861f3847811aa804d1e5edbe1de0616ebef888fce335399e249f60bce diff --git a/wlcs.spec b/wlcs.spec index a006d71..c855e07 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -23,7 +23,7 @@ %endif Name: wlcs -Version: 1.6.0 +Version: 1.6.1 Release: %autorelease Summary: Wayland Conformance Test Suite @@ -50,6 +50,7 @@ Summary: Wayland Conformance Test Suite # # MIT: # - src/protocol/gtk-primary-selection.xml +# - src/protocol/input-method-unstable-v1.xml # - src/protocol/pointer-constraints-unstable-v1.xml # - src/protocol/primary-selection-unstable-v1.xml # - src/protocol/relative-pointer-unstable-v1.xml @@ -71,6 +72,12 @@ Summary: Wayland Conformance Test Suite # contribute to the licenses of the binary RPMs). Files in src/protocol/ are # used as inputs to “wayland-scanner” to generate C source files and headers, # and are not directly included in the binary RPMs. +# +# HPND-sell-variant: +# - src/protocol/text-input-unstable-v2.xml +# > Files in src/protocol/ are used as inputs to “wayland-scanner” to generate +# C source files and headers, and are not directly included in the binary +# RPMs. License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) URL: https://github.com/MirServer/wlcs Source0: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz From b54da98908655aa2f755c791ede5420693157a5f Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 20 Dec 2023 10:54:05 -0500 Subject: [PATCH 09/20] Update to 1.7.0 (close RHBZ#2254812) --- .gitignore | 1 + sources | 2 +- wlcs.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7e441d1..a6ba4d9 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /wlcs-1.5.0.tar.gz /wlcs-1.6.0.tar.gz /wlcs-1.6.1.tar.gz +/wlcs-1.7.0.tar.gz diff --git a/sources b/sources index dbf128a..f483246 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wlcs-1.6.1.tar.gz) = 136bee6ac1d55e55cbeb65e20cc6e6b1912c5b050bef63d16a869dc90b6e287dddb21d8861f3847811aa804d1e5edbe1de0616ebef888fce335399e249f60bce +SHA512 (wlcs-1.7.0.tar.gz) = e45a93819ad37b2594e4bde6a784fda6f96e427fa9d125f606433b3ad9d816dfd2f7adacaf93238909de117e7af37779ad7d3ade8c0535ca81fdd629de026057 diff --git a/wlcs.spec b/wlcs.spec index c855e07..6feb9f0 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -23,7 +23,7 @@ %endif Name: wlcs -Version: 1.6.1 +Version: 1.7.0 Release: %autorelease Summary: Wayland Conformance Test Suite From 09e6a552ae2c0ff6e53b32c99d887e64d2a012c9 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 5 Apr 2024 10:26:38 -0400 Subject: [PATCH 10/20] Add an rpmlintrc file [skip changelog] --- wlcs.rpmlintrc | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 wlcs.rpmlintrc diff --git a/wlcs.rpmlintrc b/wlcs.rpmlintrc new file mode 100644 index 0000000..499c66f --- /dev/null +++ b/wlcs.rpmlintrc @@ -0,0 +1,2 @@ +# Not a real spelling error: +addFilter(r" spelling-error \('(implementors?)',") From 741f0d8343ee4b928e868fd8a445e71911da1fe4 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sun, 15 Dec 2024 11:33:21 -0500 Subject: [PATCH 11/20] Add a SourceLicense field --- wlcs.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/wlcs.spec b/wlcs.spec index 6feb9f0..08bd26a 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -44,7 +44,7 @@ Summary: Wayland Conformance Test Suite # and these sources are combined with GPLv3 code, the LGPLv3 option is used # in this package. However, we encode both options in the SPDX expression. # -# GPLv2+: +# GPL-2.0-or-later # - debian/* # > Not used in this package # @@ -79,6 +79,13 @@ Summary: Wayland Conformance Test Suite # C source files and headers, and are not directly included in the binary # RPMs. License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) +SourceLicense: %{shrink: + %{license} AND + (GPL-2.0-only OR GPL-3.0-only) AND + GPL-2.0-or-later AND + HPND-sell-variant AND + MIT + } URL: https://github.com/MirServer/wlcs Source0: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz From 7df412499c8e00b9abfefce9b748dee06a13d25d Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 5 Mar 2025 10:52:18 -0500 Subject: [PATCH 12/20] Update architectures for asan/tsan/ubsan tests based on GCC 15 - Adds riscv64 to supported architectures for all three kinds of tsts --- wlcs.spec | 37 ++++++++++++++++--------------------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 08bd26a..5fe7b26 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -1,26 +1,21 @@ -# List copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec -# Current as of 11.3.1 (line 56) -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 -%bcond_without asan -%else -%bcond_with asan +# Lists copied from gcc.spec +# Current as of 15.0.1 (lines 68, 88, and 78, respectively). +# Note that asan and ubsan are available on all Fedora primary architectures; +# tsan is missing on i686 only. +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 riscv64 +%global arch_has_asan 1 +%endif +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 riscv64 +%global arch_has_ubsan 1 +%endif +%ifarch x86_64 ppc64 ppc64le aarch64 s390x riscv64 +%global arch_has_tsan 1 %endif -# List copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec -# Current as of 11.3.1 (line 71) -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 -%bcond_without ubsan -%else -%bcond_with ubsan -%endif - -# List copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec -# Current as of 11.3.1 (line 61) -%ifarch x86_64 ppc64 ppc64le aarch64 -%bcond_without tsan -%else -%bcond_with tsan -%endif +# By default, enable sanitizers whenever they are available on the architecture. +%bcond asan 0%{?arch_has_asan:1} +%bcond ubsan 0%{?arch_has_ubsan:1} +%bcond tsan 0%{?arch_has_tsan:1} Name: wlcs Version: 1.7.0 From b50f12e7fe266cd1781d812b34900634b9bc1707 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 15 Aug 2025 15:55:39 -0400 Subject: [PATCH 13/20] Do not number the sole Source --- wlcs.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wlcs.spec b/wlcs.spec index 5fe7b26..9875543 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -82,7 +82,7 @@ SourceLicense: %{shrink: MIT } URL: https://github.com/MirServer/wlcs -Source0: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz +Source: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz BuildRequires: gcc BuildRequires: gcc-c++ From c7fb5aac0b2cb21733dcfca6441a25c0c9289229 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sun, 11 May 2025 08:56:14 -0400 Subject: [PATCH 14/20] Update .rpmlintrc file for current rpmlint --- wlcs.rpmlintrc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/wlcs.rpmlintrc b/wlcs.rpmlintrc index 499c66f..99ea686 100644 --- a/wlcs.rpmlintrc +++ b/wlcs.rpmlintrc @@ -1,2 +1,6 @@ # Not a real spelling error: addFilter(r" spelling-error \('(implementors?)',") +# Use the latest GPLv2 license text +# https://github.com/canonical/wlcs/pull/352 +# We will not patch this until/unless upstream merges the PR. +addFilter(r" incorrect-fsf-address ") From d81af9b577e5ba731e944713fdf07f128281d671 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 15 Aug 2025 07:19:57 -0400 Subject: [PATCH 15/20] Update to 1.8.1 (close RHBZ#2388540) --- .gitignore | 1 + sources | 2 +- wlcs.spec | 9 +++++---- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index a6ba4d9..86df98c 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /wlcs-1.6.0.tar.gz /wlcs-1.6.1.tar.gz /wlcs-1.7.0.tar.gz +/wlcs-1.8.1.tar.gz diff --git a/sources b/sources index f483246..cb94fbc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wlcs-1.7.0.tar.gz) = e45a93819ad37b2594e4bde6a784fda6f96e427fa9d125f606433b3ad9d816dfd2f7adacaf93238909de117e7af37779ad7d3ade8c0535ca81fdd629de026057 +SHA512 (wlcs-1.8.1.tar.gz) = 5a76c9a5b88ab0627300bd9a3cb63ceaf68824a15b79a605aa5fd3a9b12e2877489a7150a21da68bda21434bd947e4f0d1ecc8b6d81ab9a1faf84ee75e6d1ca2 diff --git a/wlcs.spec b/wlcs.spec index 9875543..36adf37 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -1,5 +1,5 @@ # Lists copied from gcc.spec -# Current as of 15.0.1 (lines 68, 88, and 78, respectively). +# Current as of 15.2.1 (lines 74, 94, and 84, respectively). # Note that asan and ubsan are available on all Fedora primary architectures; # tsan is missing on i686 only. %ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 riscv64 @@ -18,7 +18,7 @@ %bcond tsan 0%{?arch_has_tsan:1} Name: wlcs -Version: 1.7.0 +Version: 1.8.1 Release: %autorelease Summary: Wayland Conformance Test Suite @@ -138,15 +138,16 @@ Wayland compositor tests that use wlcs. %prep %autosetup -# -Werror makes sense for upstream CI, but is too strict for packaging -sed -r -i 's/-Werror //' CMakeLists.txt %build +# WLCS_FATAL_COMPILE_WARNINGS: makes sense for upstream CI, but too strict for +# downstream packaging %cmake \ -DWLCS_BUILD_ASAN=%{?with_asan:ON}%{?!with_asan:OFF} \ -DWLCS_BUILD_TSAN=%{?with_tsan:ON}%{?!with_tsan:OFF} \ -DWLCS_BUILD_UBSAN=%{?with_ubsan:ON}%{?!with_ubsan:OFF} \ + -DWLCS_FATAL_COMPILE_WARNINGS:BOOL=OFF \ -GNinja %cmake_build From a8819514aecd62faa246f6381a4ef134baac89c4 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sat, 16 Aug 2025 06:18:17 -0400 Subject: [PATCH 16/20] Fix sanitizer architectures for EL9 --- wlcs.spec | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 36adf37..38c311a 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -1,14 +1,14 @@ -# Lists copied from gcc.spec -# Current as of 15.2.1 (lines 74, 94, and 84, respectively). +# Lists copied from https://git.centos.org/rpms/gcc/blob/c9/f/SPECS/gcc.spec +# Current as of 11.3.1 (lines 56, 71, and 61, respectively). # Note that asan and ubsan are available on all Fedora primary architectures; -# tsan is missing on i686 only. -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 riscv64 +# tsan is missing on i686 and s390x. +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %global arch_has_asan 1 %endif -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 riscv64 +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %global arch_has_ubsan 1 %endif -%ifarch x86_64 ppc64 ppc64le aarch64 s390x riscv64 +%ifarch x86_64 ppc64 ppc64le aarch64 %global arch_has_tsan 1 %endif From 26e9bc8267c6414aaf85897af470f01044a2d27c Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sun, 11 Jan 2026 00:03:14 +0000 Subject: [PATCH 17/20] Update .rpmlintrc file [skip changelog] --- wlcs.rpmlintrc | 4 ---- 1 file changed, 4 deletions(-) diff --git a/wlcs.rpmlintrc b/wlcs.rpmlintrc index 99ea686..499c66f 100644 --- a/wlcs.rpmlintrc +++ b/wlcs.rpmlintrc @@ -1,6 +1,2 @@ # Not a real spelling error: addFilter(r" spelling-error \('(implementors?)',") -# Use the latest GPLv2 license text -# https://github.com/canonical/wlcs/pull/352 -# We will not patch this until/unless upstream merges the PR. -addFilter(r" incorrect-fsf-address ") From f024d1c09bb2ef664f2fb6ed351b54dcbb4c7388 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 20 May 2026 07:49:40 +0100 Subject: [PATCH 18/20] Trivial spec-file typo fix [skip changelog] --- wlcs.spec | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 38c311a..46b2f5a 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -75,12 +75,12 @@ Summary: Wayland Conformance Test Suite # RPMs. License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) SourceLicense: %{shrink: - %{license} AND - (GPL-2.0-only OR GPL-3.0-only) AND - GPL-2.0-or-later AND - HPND-sell-variant AND - MIT - } + %{license} AND + (GPL-2.0-only OR GPL-3.0-only) AND + GPL-2.0-or-later AND + HPND-sell-variant AND + MIT + } URL: https://github.com/MirServer/wlcs Source: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz From daa65fc39bc41cc68f934b4637581459d7cf4afd Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 20 May 2026 14:03:42 +0100 Subject: [PATCH 19/20] Be more clear that we have no tests of our own --- wlcs.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 46b2f5a..762b9f5 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -156,8 +156,9 @@ Wayland compositor tests that use wlcs. %cmake_install -%check -%ctest +# We have built a test suite for compositors, but we have no tests for the test +# suite, i.e., %%ctest would find no tests and there is nothing useful we could +# do in %%check. %files From 602839bbbf5aa2e3e0c641d298634204f7fe2bf9 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 20 May 2026 14:54:06 +0100 Subject: [PATCH 20/20] Fix License field (add MIT term) --- wlcs.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/wlcs.spec b/wlcs.spec index 762b9f5..a6fbbed 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -63,8 +63,8 @@ Summary: Wayland Conformance Test Suite # - tests/xdg_surface_v6.cpp # - tests/xdg_toplevel_stable.cpp # - tests/xdg_toplevel_v6.cpp -# > Files in tests/ are all test code that is not installed (so does not -# contribute to the licenses of the binary RPMs). Files in src/protocol/ are +# > Files in tests/ are included in the test-suite executables and do +# contribute to the licenses of the binary RPMs. Files in src/protocol/ are # used as inputs to “wayland-scanner” to generate C source files and headers, # and are not directly included in the binary RPMs. # @@ -73,13 +73,12 @@ Summary: Wayland Conformance Test Suite # > Files in src/protocol/ are used as inputs to “wayland-scanner” to generate # C source files and headers, and are not directly included in the binary # RPMs. -License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) +License: GPL-3.0-only AND (LGPL-2.0-only OR LGPL-3.0-only) AND MIT SourceLicense: %{shrink: %{license} AND (GPL-2.0-only OR GPL-3.0-only) AND GPL-2.0-or-later AND - HPND-sell-variant AND - MIT + HPND-sell-variant } URL: https://github.com/MirServer/wlcs Source: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz