%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname potions %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: Easy Options Management License: MPL-2.0 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-jsonlite BuildRequires: R-CRAN-lobstr BuildRequires: R-CRAN-purrr BuildRequires: R-CRAN-rrapply BuildRequires: R-CRAN-rlang BuildRequires: R-CRAN-stringi BuildRequires: R-CRAN-yaml Requires: R-CRAN-jsonlite Requires: R-CRAN-lobstr Requires: R-CRAN-purrr Requires: R-CRAN-rrapply Requires: R-CRAN-rlang Requires: R-CRAN-stringi Requires: R-CRAN-yaml %description Store and retrieve data from options() using syntax derived from the 'here' package. 'potions' makes it straightforward to update and retrieve options, either in the workspace or during package development, without overwriting global options. %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}