Blob Blame History Raw
%global packname  igraph
%global rlibdir  %{_libdir}/R/library

# Some loops; some unavailable yet.
%global with_suggests 0
# Examples use the network.
%bcond_with network

Name:             R-%{packname}
Version:          1.2.1
Release:          1%{?dist}
Summary:          Network Analysis and Visualization

# Main: GPLv2+; html_library.tcl: TCL
License:          GPLv2+ and TCL
URL:              https://cran.r-project.org/web/packages/%{packname}/index.html
Source0:          https://cran.r-project.org/src/contrib/%{packname}_%{version}.tar.gz
# Unbundle some things:
Patch0001:        0001-Unbundle-uuid.patch
Patch0002:        0002-Unbundle-arpack.patch
Patch0003:        0003-Increase-tolerances-to-work-everywhere.patch

# Here's the R view of the dependencies world:
# Depends:   R-methods
# Imports:   R-graphics, R-grDevices, R-magrittr, R-Matrix, R-pkgconfig >= 2.0.0, R-stats, R-utils
# Suggests:  R-ape, R-graph, R-igraphdata, R-rgl, R-scales, R-stats4, R-tcltk, R-testthat
# LinkingTo:
# Enhances:

Requires:         R-methods
Requires:         R-graphics
Requires:         R-grDevices
Requires:         R-magrittr
Requires:         R-Matrix
Requires:         R-pkgconfig >= 2.0.0
Requires:         R-stats
Requires:         R-utils
Suggests:         R-ape
Suggests:         R-graph
Suggests:         R-rgl
Suggests:         R-stats4
Suggests:         R-tcltk
Suggests:         R-testthat
BuildRequires:    R-devel
BuildRequires:    tex(latex)
BuildRequires:    R-methods
BuildRequires:    R-graphics
BuildRequires:    R-grDevices
BuildRequires:    R-magrittr
BuildRequires:    R-Matrix
BuildRequires:    R-pkgconfig >= 2.0.0
BuildRequires:    R-stats
BuildRequires:    R-utils
BuildRequires:    R-ape
BuildRequires:    R-stats4
BuildRequires:    R-tcltk
BuildRequires:    R-testthat
%if %{with_suggests}
BuildRequires:    R-graph
BuildRequires:    R-igraphdata
BuildRequires:    R-rgl
BuildRequires:    R-scales
%endif
BuildRequires:    arpack-devel
BuildRequires:    glpk-devel
BuildRequires:    gmp-devel
BuildRequires:    libuuid-devel
BuildRequires:    libxml2-devel
BuildRequires:    openblas-devel

# https://github.com/igraph/rigraph/issues/268
# Not a released version.
Provides: bundled(igraph) = 9acfa54fa6b3d182fe458434a497f4e9b5c39955

%description
Routines for simple graphs and network analysis. It can handle large
graphs very well and provides functions for generating random and regular
graphs, graph visualization, centrality methods and much more.


%prep
%setup -q -c -n %{packname}

pushd %{packname}
# Remove bundled bits.
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1

# Fix executable files.
chmod -x src/simpleraytracer/*.*
popd


%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


%check
%if !%{with network}
ARGS=--no-examples
%endif
%if %{with_suggests}
%{_bindir}/R CMD check %{packname} $ARGS
%else
_R_CHECK_FORCE_SUGGESTS_=0 %{_bindir}/R CMD check %{packname} $ARGS
%endif


%files
%dir %{rlibdir}/%{packname}
%doc %{rlibdir}/%{packname}/html
%{rlibdir}/%{packname}/DESCRIPTION
%doc %{rlibdir}/%{packname}/NEWS.md
%doc %{rlibdir}/%{packname}/AUTHORS
%doc %{rlibdir}/%{packname}/CITATION
%doc %{rlibdir}/%{packname}/README.md
%{rlibdir}/%{packname}/INDEX
%{rlibdir}/%{packname}/NAMESPACE
%{rlibdir}/%{packname}/Meta
%{rlibdir}/%{packname}/R
%{rlibdir}/%{packname}/help
%{rlibdir}/%{packname}/benchmarks
%{rlibdir}/%{packname}/demo
%{rlibdir}/%{packname}/html_library.tcl
%license %{rlibdir}/%{packname}/html_library.license.terms
%{rlibdir}/%{packname}/igraph.gif
%{rlibdir}/%{packname}/igraph2.gif
%dir %{rlibdir}/%{packname}/libs
%{rlibdir}/%{packname}/libs/%{packname}.so
%{rlibdir}/%{packname}/my_html_library.tcl
%{rlibdir}/%{packname}/tkigraph_help


%changelog
* Mon Jul 23 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.2.1-1
- initial package for Fedora