%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname future.tests %global packver 0.7.0 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 0.7.0 Release: 1%{?dist}%{?buildtag} Summary: Test Suite for 'Future API' Backends License: LGPL (>= 2.1) 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-CRAN-future >= 1.22.1 BuildRequires: R-CRAN-cli BuildRequires: R-CRAN-crayon BuildRequires: R-CRAN-prettyunits BuildRequires: R-CRAN-sessioninfo Requires: R-CRAN-future >= 1.22.1 Requires: R-CRAN-cli Requires: R-CRAN-crayon Requires: R-CRAN-prettyunits Requires: R-CRAN-sessioninfo %description Backends implementing the 'Future' API, as defined by the 'future' package, should use the tests provided by this package to validate that they meet the minimal requirements of the 'Future' API. The tests can be performed easily from within R or from outside of R from the command line making it straightforward to include them in package tests and in Continuous Integration (CI) pipelines. %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}