%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname sourcoise %global packver 0.6.2 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 0.6.2 Release: 1%{?dist}%{?buildtag} Summary: Source a Script and Cache 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-fs BuildRequires: R-CRAN-qs2 BuildRequires: R-CRAN-cli BuildRequires: R-CRAN-purrr BuildRequires: R-CRAN-digest BuildRequires: R-CRAN-dplyr BuildRequires: R-CRAN-lubridate BuildRequires: R-CRAN-tibble BuildRequires: R-CRAN-jsonlite BuildRequires: R-CRAN-lobstr BuildRequires: R-CRAN-stringr BuildRequires: R-CRAN-glue BuildRequires: R-CRAN-rprojroot BuildRequires: R-CRAN-rlang BuildRequires: R-CRAN-scales BuildRequires: R-CRAN-logger Requires: R-CRAN-fs Requires: R-CRAN-qs2 Requires: R-CRAN-cli Requires: R-CRAN-purrr Requires: R-CRAN-digest Requires: R-CRAN-dplyr Requires: R-CRAN-lubridate Requires: R-CRAN-tibble Requires: R-CRAN-jsonlite Requires: R-CRAN-lobstr Requires: R-CRAN-stringr Requires: R-CRAN-glue Requires: R-CRAN-rprojroot Requires: R-CRAN-rlang Requires: R-CRAN-scales Requires: R-CRAN-logger %description Provides a function that behaves nearly as base::source() but implements a caching mechanism on disk, project based. It allows to quasi source() R scripts that gather data but can fail or consume to much time to respond even if nothing new is expected. It comes with tools to check and execute on demand or when cache is invalid the script. %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}