File R-OptCirClust.spec of Package R-OptCirClust
# Automatically generated by CRAN2OBS
#
# Spec file for package OptCirClust
# This file is auto-generated using information in the package source,
# esp. Description and Summary. Improvements in that area should be
# discussed with upstream.
#
# Copyright (c) 2026 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global packname OptCirClust
%global rlibdir %{_libdir}/R/library
Name: R-%{packname}
Version: 0.0.4
Release: 0
Summary: Circular, Periodic, or Framed Data Clustering: Fast, Optimal, and Reproducible
Group: Development/Libraries/Other
License: LGPL (>= 3)
URL: http://cran.r-project.org/web/packages/%{packname}
Source: OptCirClust_0.0.4.tar.gz
Requires: R-base
Requires: R-Ckmeans.1d.dp
Requires: R-plotrix
Requires: R-Rcpp
Requires: R-Rdpack
Requires: R-reshape2
Requires: R-rbibutils
Requires: R-plyr
Requires: R-stringr
Requires: R-cli
Requires: R-glue
Requires: R-lifecycle
Requires: R-magrittr
Requires: R-rlang
Requires: R-stringi
Requires: R-vctrs
# %%if 0%%{?sle_version} > 120400 || 0%%{?is_opensuse}
# # Three others commonly needed
# BuildRequires: tex(ae.sty)
# BuildRequires: tex(fancyvrb.sty)
# BuildRequires: tex(inconsolata.sty)
# BuildRequires: tex(natbib.sty)
# %else
# BuildRequires: texlive
# %endif
# BuildRequires: texinfo
BuildRequires: fdupes
BuildRequires: R-base
BuildRequires: R-Ckmeans.1d.dp
BuildRequires: R-plotrix
BuildRequires: R-Rcpp-devel
BuildRequires: R-Rdpack
BuildRequires: R-reshape2
BuildRequires: R-rbibutils
BuildRequires: R-plyr
BuildRequires: R-stringr
BuildRequires: R-cli
BuildRequires: R-glue
BuildRequires: R-lifecycle
BuildRequires: R-magrittr
BuildRequires: R-rlang
BuildRequires: R-stringi
BuildRequires: R-vctrs
BuildRequires: gcc gcc-c++ gcc-fortran
Suggests: R-ape
Suggests: R-ggplot2
Suggests: R-knitr
Suggests: R-rmarkdown
Suggests: R-testthat
%description
Fast, optimal, and reproducible clustering algorithms for circular,
periodic, or framed data. The algorithms introduced here are based on a
core algorithm for optimal framed clustering the authors have developed
(Debnath & Song 2021) <doi:10.1109/TCBB.2021.3077573>. The runtime of
these algorithms is O(K N log^2 N), where K is the number of clusters
and N is the number of circular data points. On a desktop computer
using a single processor core, millions of data points can be grouped
into a few clusters within seconds. One can apply the algorithms to
characterize events along circular DNA molecules, circular RNA
molecules, and circular genomes of bacteria, chloroplast, and
mitochondria. One can also cluster climate data along any given
longitude or latitude. Periodic data clustering can be formulated as
circular clustering. The algorithms offer a general high-performance
solution to circular, periodic, or framed data clustering.
%prep
%setup -q -c -n %{packname}
# the next line is needed, because we build without --clean in between two packages
rm -rf ~/.R
%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
%fdupes -s %{buildroot}%{rlibdir}
#%%check
#%%{_bindir}/R CMD check %%{packname}
%files
%dir %{rlibdir}/%{packname}
%{rlibdir}/%{packname}/CITATION
%doc %{rlibdir}/%{packname}/DESCRIPTION
%{rlibdir}/%{packname}/INDEX
%{rlibdir}/%{packname}/Meta
%{rlibdir}/%{packname}/NAMESPACE
%doc %{rlibdir}/%{packname}/NEWS.md
%{rlibdir}/%{packname}/R
%{rlibdir}/%{packname}/REFERENCES.bib
%{rlibdir}/%{packname}/doc
%{rlibdir}/%{packname}/extdata
%doc %{rlibdir}/%{packname}/help
%doc %{rlibdir}/%{packname}/html
%{rlibdir}/%{packname}/libs
%changelog