%global __brp_check_rpaths %{nil}
%global __requires_exclude ^libmpi
%global packname qsimulatR
%global packver 1.1.1
%global rlibdir /usr/local/lib/R/library
Name: R-CRAN-%{packname}
Version: 1.1.1
Release: 1%{?dist}%{?buildtag}
Summary: A Quantum Computer Simulator
License: GPL-3
URL: https://cran.r-project.org/package=%{packname}
Source0: %{url}&version=%{packver}#/%{packname}_%{packver}.tar.gz
BuildRequires: R-devel
Requires: R-core
BuildArch: noarch
BuildRequires: R-methods
BuildRequires: R-stats
Requires: R-methods
Requires: R-stats
%description
A quantum computer simulator framework with up to 24 qubits. It allows to
define general single qubit gates and general controlled single qubit
gates. For convenience, it currently provides the most common gates (X, Y,
Z, H, Z, S, T, Rx, Ry, Rz, CNOT, SWAP, Toffoli or CCNOT, Fredkin or
CSWAP). 'qsimulatR' also implements noise models. 'qsimulatR' supports
plotting of circuits and is able to export circuits to 'Qiskit'
, a python package which can be used to run on IBM's
hardware .
%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}