diff --git a/wlcs.spec b/wlcs.spec index a6fbbed..7dca8f9 100644 --- a/wlcs.spec +++ b/wlcs.spec @@ -1,14 +1,14 @@ -# 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). +# Lists copied from gcc.spec +# Current as of 16.0.1 (lines 83, 103, and 93, respectively). # Note that asan and ubsan are available on all Fedora primary architectures; -# tsan is missing on i686 and s390x. -%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 +# 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 +%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 +%ifarch x86_64 ppc64 ppc64le aarch64 s390x riscv64 %global arch_has_tsan 1 %endif @@ -83,12 +83,22 @@ SourceLicense: %{shrink: URL: https://github.com/MirServer/wlcs Source: %{url}/archive/v%{version}/wlcs-%{version}.tar.gz +BuildSystem: cmake +# WLCS_FATAL_COMPILE_WARNINGS: makes sense for upstream CI, but too strict for +# downstream packaging +BuildOption(conf): %{shrink: + -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 + } +# 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. + BuildRequires: gcc BuildRequires: gcc-c++ -BuildRequires: cmake -BuildRequires: ninja-build - BuildRequires: boost-devel BuildRequires: cmake(GTest) BuildRequires: gmock-devel @@ -135,31 +145,6 @@ The wlcs-devel package contains libraries and header files for developing Wayland compositor tests that use wlcs. -%prep -%autosetup - - -%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 - - -%install -%cmake_install - - -# 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 %license COPYING.* %doc README.rst