%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname TSLA %global packver 0.1.2 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 0.1.2 Release: 1%{?dist}%{?buildtag} Summary: Tree-Guided Rare Feature Selection and Logic Aggregation License: GPL-3 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 BuildRequires: R-stats BuildRequires: R-CRAN-Matrix BuildRequires: R-CRAN-Rcpp BuildRequires: R-CRAN-pROC BuildRequires: R-CRAN-PRROC BuildRequires: R-CRAN-ape BuildRequires: R-CRAN-phytools BuildRequires: R-CRAN-data.tree BuildRequires: R-CRAN-RcppArmadillo Requires: R-stats Requires: R-CRAN-Matrix Requires: R-CRAN-Rcpp Requires: R-CRAN-pROC Requires: R-CRAN-PRROC Requires: R-CRAN-ape Requires: R-CRAN-phytools Requires: R-CRAN-data.tree %description Implementation of the tree-guided feature selection and logic aggregation approach introduced in Chen et al. (2024) . The method enables the selection and aggregation of large-scale rare binary features with a known hierarchical structure using a convex, linearly-constrained regularized regression framework. The package facilitates the application of this method to both linear regression and binary classification problems by solving the optimization problem via the smoothing proximal gradient descent algorithm (Chen et al. (2012) ). %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}