%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname tinytest2JUnit %global packver 1.1.2 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 1.1.2 Release: 1%{?dist}%{?buildtag} Summary: Convert 'tinytest' Output to JUnit XML License: GPL-3 URL: https://cran.r-project.org/package=%{packname} Source0: %{url}&version=%{packver}#/%{packname}_%{packver}.tar.gz BuildRequires: R-devel Requires: R-core BuildArch: noarch BuildRequires: R-tools BuildRequires: R-parallel BuildRequires: R-utils BuildRequires: R-CRAN-tinytest Requires: R-tools Requires: R-parallel Requires: R-utils Requires: R-CRAN-tinytest %description Unit testing is a solid component of automated CI/CD pipelines. 'tinytest' - a lightweight, zero-dependency alternative to 'testthat' was developed. To be able to integrate 'tinytests' results into common CI/CD systems the test results from tinytest need to be caputred and converted to JUnit XML format. 'tinytest2JUnit' enables this conversion while staying also lightweight and only have 'tinytest' as its dependency. %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}