# # 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.5.1 Release: 1 License: BSD Group: Libraries/Python #Source0Download: https://pypi.org/simple/sympy/ Source0: https://files.pythonhosted.org/packages/source/s/sympy/sympy-%{version}.tar.gz # Source0-md5: b11b310c3e1642bf66e51038cb3c0021 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.5 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: python3-sphinx_math_dollar 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-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.5 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/{_images,_static,modules,pics,special_topics,tutorial,*.html,*.js} doc/_build/cheatsheet/cheatsheet.pdf %endif