# # Conditional build: %bcond_without doc # HTML and PDF documentation %bcond_without tests # unit tests %bcond_without python2 # CPython 2.x module %bcond_without python3 # CPython 3.x module Summary: Python 2 library for symbolic mathematics Summary(pl.UTF-8): Biblioteka Pythona 2 do matematyki symbolicznej Name: python-sympy Version: 1.4 Release: 1 License: BSD Group: Libraries/Python #Source0Download: https://github.com/sympy/sympy/releases Source0: https://github.com/sympy/sympy/releases/download/sympy-%{version}/sympy-%{version}.tar.gz # Source0-md5: 478072d75b564c9356990e3027d464e6 Patch0: %{name}-nodisplay.patch URL: https://www.sympy.org/ BuildRequires: gettext BuildRequires: graphviz BuildRequires: rpmbuild(macros) >= 1.714 BuildRequires: sed >= 4.0 %if %{with python2} BuildRequires: python-devel >= 1:2.7 BuildRequires: python-setuptools %if %{with tests} BuildRequires: python-devel-tools BuildRequires: python-mpmath >= 0.19 BuildRequires: python-numpy %endif %endif %if %{with python3} BuildRequires: python3-devel >= 1:3.4 BuildRequires: python3-setuptools %if %{with tests} BuildRequires: python3-devel-tools BuildRequires: python3-mpmath >= 0.19 BuildRequires: python3-numpy %endif %endif %if %{with doc} BuildRequires: pydoc3 BuildRequires: python3-matplotlib BuildRequires: python3-mpmath >= 0.19 BuildRequires: sphinx-pdg-3 BuildRequires: texlive-format-pdflatex BuildRequires: texlive-latex BuildRequires: texlive-latex-ams BuildRequires: texlive-latex-pgf %endif Requires: python-matplotlib Requires: python-modules >= 1:2.7 Requires: python-mpmath Requires: python-pyglet BuildArch: noarch BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description SymPy aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries. %description -l pl.UTF-8 SymPy ma być w pełni funkcjonalnym systemem algebry komputerowej (CAS), a jednocześnie mieć jak najprostszy, czytelny i łatwo rozszerzalny kod. Jest pisany całkowicie w Pythonie i nie wymaga żadnych zewnętrznych bibliotek. %package -n python3-sympy Summary: Python 3 library for symbolic mathematics Summary(pl.UTF-8): Biblioteka Pythona 3 do matematyki symbolicznej Group: Libraries/Python Requires: python3-matplotlib Requires: python3-modules >= 1:3.4 Requires: python3-mpmath Requires: python3-pyglet %description -n python3-sympy SymPy aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries. %description -n python3-sympy -l pl.UTF-8 SymPy ma być w pełni funkcjonalnym systemem algebry komputerowej (CAS), a jednocześnie mieć jak najprostszy, czytelny i łatwo rozszerzalny kod. Jest pisany całkowicie w Pythonie i nie wymaga żadnych zewnętrznych bibliotek. %package doc Summary: Documentation for SymPy module Summary(pl.UTF-8): Dokumentacja do SymPy Group: Documentation %description doc HTML documentation for SymPy. %description doc -l pl.UTF-8 Dokumentacja do SymPy w formacie HTML. %prep %setup -q -n sympy-%{version} %patch0 -p1 %build %if %{with python2} %py_build %{?with_tests:test} %endif %if %{with python3} %py3_build %{?with_tests:test} %endif %if %{with doc} pydir=$(pwd)/build-3/lib cd doc PYTHONPATH=$pydir \ %{__make} html \ SPHINXBUILD=sphinx-build-3 %{__make} cheatsheet %endif %install rm -rf $RPM_BUILD_ROOT %if %{with python3} %py3_install %{__mv} $RPM_BUILD_ROOT%{_bindir}/isympy{,3} install -d $RPM_BUILD_ROOT%{_examplesdir}/python3-sympy-%{version} cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/python3-sympy-%{version} find $RPM_BUILD_ROOT%{_examplesdir}/python3-sympy-%{version} -name '*.py' \ | xargs sed -i '1s|^#!.*python\b|#!%{__python3}|' %endif %if %{with python2} %py_install %py_postclean install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} find $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} -name '*.py' \ | xargs sed -i '1s|^#!.*python\b|#!%{__python}|' %endif %clean rm -rf $RPM_BUILD_ROOT %if %{with python2} %files %defattr(644,root,root,755) %doc AUTHORS LICENSE README.rst %attr(755,root,root) %{_bindir}/isympy %{py_sitescriptdir}/isympy.py[co] %{py_sitescriptdir}/sympy %{py_sitescriptdir}/sympy-%{version}-*.egg-info %{_mandir}/man1/isympy.1* %{_examplesdir}/%{name}-%{version} %endif %if %{with python3} %files -n python3-sympy %defattr(644,root,root,755) %doc AUTHORS LICENSE README.rst %attr(755,root,root) %{_bindir}/isympy3 %{py3_sitescriptdir}/isympy.py %{py3_sitescriptdir}/__pycache__/isympy.cpython-*.py[co] %{py3_sitescriptdir}/sympy %{py3_sitescriptdir}/sympy-%{version}-*.egg-info %{_examplesdir}/python3-sympy-%{version} %endif %if %{with doc} %files doc %defattr(644,root,root,755) %doc doc/_build/html/* doc/_build/cheatsheet/cheatsheet.pdf %endif