%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname SVEMnet %global packver 1.3.0 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 1.3.0 Release: 1%{?dist}%{?buildtag} Summary: Self-Validated Ensemble Models with Elastic Net Regression License: GPL-2 | GPL-3 URL: https://cran.r-project.org/package=%{packname} Source0: %{url}&version=%{packver}#/%{packname}_%{packver}.tar.gz BuildRequires: R-devel >= 3.5.0 Requires: R-core >= 3.5.0 BuildArch: noarch BuildRequires: R-CRAN-glmnet BuildRequires: R-stats BuildRequires: R-CRAN-gamlss BuildRequires: R-CRAN-gamlss.dist BuildRequires: R-CRAN-ggplot2 BuildRequires: R-CRAN-lhs BuildRequires: R-CRAN-doParallel BuildRequires: R-parallel BuildRequires: R-CRAN-foreach Requires: R-CRAN-glmnet Requires: R-stats Requires: R-CRAN-gamlss Requires: R-CRAN-gamlss.dist Requires: R-CRAN-ggplot2 Requires: R-CRAN-lhs Requires: R-CRAN-doParallel Requires: R-parallel Requires: R-CRAN-foreach %description Implements Self-Validated Ensemble Models (SVEM, Lemkus et al. (2021) ) using Elastic Net regression via 'glmnet' (Friedman et al. ). SVEM averages predictions from multiple models fitted to fractionally weighted bootstraps of the data, tuned with anti-correlated validation weights. Also implements the randomized permutation whole model test for SVEM (Karl (2024) ). \Code for the whole model test was taken from the supplementary material of Karl (2024). Development of this package was assisted by 'GPT o1-preview' for code structure and documentation. %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}