%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname muttest %global packver 0.2.0 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 0.2.0 Release: 1%{?dist}%{?buildtag} Summary: Mutation Testing License: MIT + file LICENSE URL: https://cran.r-project.org/package=%{packname} Source0: %{url}&version=%{packver}#/%{packname}_%{packver}.tar.gz BuildRequires: R-devel >= 4.1.0 Requires: R-core >= 4.1.0 BuildArch: noarch BuildRequires: R-CRAN-checkmate BuildRequires: R-CRAN-cli BuildRequires: R-CRAN-fs BuildRequires: R-CRAN-mirai BuildRequires: R-CRAN-R6 BuildRequires: R-CRAN-rlang BuildRequires: R-CRAN-testthat BuildRequires: R-CRAN-treesitter BuildRequires: R-CRAN-treesitter.r BuildRequires: R-CRAN-withr Requires: R-CRAN-checkmate Requires: R-CRAN-cli Requires: R-CRAN-fs Requires: R-CRAN-mirai Requires: R-CRAN-R6 Requires: R-CRAN-rlang Requires: R-CRAN-testthat Requires: R-CRAN-treesitter Requires: R-CRAN-treesitter.r Requires: R-CRAN-withr %description Measure quality of your tests. 'muttest' introduces small changes (mutations) to your code and runs your tests to check if they catch the changes. If they do, your tests are good. If not, your assertions are not specific enough. 'muttest' gives you percent score of how often your tests catch the changes. %prep %setup -q -c -n %{packname} # fix end of executable files find -type f -executable -exec grep -Iq . {} \; -exec sed -i -e '$a\' {} \; # prevent binary stripping [ -d %{packname}/src ] && find %{packname}/src -type f -exec \ sed -i 's@/usr/bin/strip@/usr/bin/true@g' {} \; || true [ -d %{packname}/src ] && find %{packname}/src/Make* -type f -exec \ sed -i 's@-g0@@g' {} \; || true # don't allow local prefix in executable scripts find -type f -executable -exec sed -Ei 's@#!( )*/usr/local/bin@#!/usr/bin@g' {} \; %build %install mkdir -p %{buildroot}%{rlibdir} %{_bindir}/R CMD INSTALL -l %{buildroot}%{rlibdir} %{packname} test -d %{packname}/src && (cd %{packname}/src; rm -f *.o *.so) rm -f %{buildroot}%{rlibdir}/R.css # remove buildroot from installed files find %{buildroot}%{rlibdir} -type f -exec sed -i "s@%{buildroot}@@g" {} \; %files %{rlibdir}/%{packname}