Compare commits

..

No commits in common. "d98fa1a8a4a86be94f10040e3b2fa85f2950f662" and "a8a1efd5b58d3961c814feb34164c72486dac5ad" have entirely different histories.

3 changed files with 60 additions and 96 deletions

Binary file not shown.

BIN
python-mpmath-1.2.0.tar.gz Normal file

Binary file not shown.

View File

@ -1,53 +1,59 @@
%global _empty_manifest_terminate_build 0
Name: python-mpmath
Version: 1.3.0
Release: 3
Summary: Python library for arbitrary-precision floating-point arithmetic
License: BSD-3-Clause
URL: http://github.com/fredrik-johansson/mpmath
Source0: https://github.com/fredrik-johansson/mpmath/archive/%{version}/mpmath-%{version}.tar.gz
BuildArch: noarch
Name: python-mpmath
Version: 1.2.0
Release: 1
Summary: A pure Python library for multiprecision floating-point arithmetic
License: BSD
URL: https://mpmath.org
# Source code
Source0: https://github.com/fredrik-johansson/mpmath/archive/%{version}/%{name}-%{version}.tar.gz
%description
A Python library for arbitrary-precision floating-point arithmetic.
BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-setuptools
BuildRequires: python3-setuptools_scm
BuildRequires: python3-pytest
BuildRequires: python3-sphinx
BuildRequires: xorg-x11-server-Xvfb
# For building documentation
BuildRequires: dvipng
BuildRequires: tex(latex)
BuildArch: noarch
%global _description %{expand:
Mpmath is a pure-Python library for multiprecision floating-point
arithmetic. It provides an extensive set of transcendental functions,
unlimited exponent sizes, complex numbers, interval arithmetic,
numerical integration and differentiation, root-finding, linear
algebra, and much more. Almost any calculation can be performed just
as well at 10-digit or 1000-digit precision, and in many cases mpmath
implements asymptotically fast algorithms that scale well for
extremely high precision work. If available, mpmath will (optionally)
use gmpy to speed up high precision operations.}
%description %_description
%package -n python3-mpmath
Summary: Python library for arbitrary-precision floating-point arithmetic
Provides: python-mpmath
Recommends: python3-matplotlib
BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-setuptools
BuildRequires: python3-setuptools_scm
BuildRequires: python3-pytest
BuildRequires: python3-pytest-cov
BuildRequires: python3-pycodestyle
BuildRequires: python3-codecov
BuildRequires: python3-wheel
BuildRequires: xorg-x11-server-Xvfb
%description -n python3-mpmath
A Python library for arbitrary-precision floating-point arithmetic.
Summary: A pure Python library for multiprecision floating-point arithmetic
Recommends: python3-matplotlib
%{?python_provide:%python_provide python3-mpmath}
%description -n python3-mpmath %_description
If you require plotting capabilities in mpmath, install python3-matplotlib.
%package help
Summary: Development documents and examples for mpmath
Provides: python3-mpmath-doc
BuildRequires: python3-sphinx
BuildRequires: dvipng
BuildRequires: latexmk
BuildRequires: tex(latex)
BuildRequires: tex(framed.sty)
BuildRequires: tex(fncychap.sty)
BuildRequires: tex(wrapfig.sty)
BuildRequires: tex(capt-of.sty)
BuildRequires: tex(upquote.sty)
BuildRequires: tex(needspace.sty)
BuildRequires: tex(tabulary.sty)
%description help
A Python library for arbitrary-precision floating-point arithmetic.
%package doc
Summary: HTML documentation for %{name}
Requires: python3-mpmath = %{version}-%{release}
%description doc
This package contains the HTML documentation for %{name}.
%prep
%autosetup -n mpmath-%{version} -p1
%setup -q -n mpmath-%{version}
# Convert line encodings
for doc in CHANGES LICENSE README.rst TODO mpmath/tests/runtests.py; do
@ -55,7 +61,7 @@ for doc in CHANGES LICENSE README.rst TODO mpmath/tests/runtests.py; do
touch -r $doc $doc.new && \
mv $doc.new $doc
done
find docs -name *.txt -exec sed -i "s|\r||g" {} \;
find doc -name *.txt -exec sed -i "s|\r||g" {} \;
shebangs="mpmath/matrices/eigen.py mpmath/matrices/eigen_symmetric.py mpmath/tests/runtests.py mpmath/tests/test_eigen.py mpmath/tests/test_eigen_symmetric.py mpmath/tests/test_levin.py"
# Get rid of unnecessary shebangs
@ -70,68 +76,26 @@ sed -i -r 's/use_scm_version=True/version="%{version}"/' setup.py
%build
%py3_build
export PYTHONPATH=build/lib
# Build documentation
# sphinx's setuptools integration is deprecated since v5.0
# https://github.com/mpmath/mpmath/commit/52a6a70d3c3979ccee48d9c4432579f1609be508
sphinx-build --color -W --keep-going -b html docs build/sphinx/html
sphinx-build --color -W --keep-going -b latex docs build/sphinx/latex
make -C build/sphinx/latex all-pdf
cd doc
%{__python3} build.py
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%check
cd build/lib/mpmath/tests/
xvfb-run -a pytest-3 -v
%files -n python3-mpmath -f filelist.lst
%dir %{python3_sitelib}/*
%files -n python3-mpmath
%license LICENSE
%doc CHANGES README.rst TODO
%{python3_sitelib}/mpmath/
%{python3_sitelib}/mpmath-%{version}-*.egg-info
%files help -f doclist.lst
%{_docdir}/*
%files doc
%doc doc/build/*
%changelog
* Tue Sep 12 2023 wangkai <13474090681@163.com> - 1.3.0-3
- Modify buildrequires to fix local self-compilation
* Wed Aug 02 2023 yaoxin <yao_xin001@hoperun.com> - 1.3.0-2
- Fix build failure caused by python-sphinx update to 7.0.1
* Wed Apr 26 2023 wangkai <13474090681@163.com> - 1.3.0-1
- Upgrade package to version 1.3.0
* Wed Sep 28 2022 guozhengxin <guozhengxin@kylinos.cn> - 1.2.1-1
- Upgrade package to version 1.2.1
* Tue May 10 2022 xigaoxinyan <xigaoxinyan@h-partners.com> - 1.2.0-2
- License compliance rectification
* Thu Jul 08 2021 liuliang <liuliang1@kylinos.cn> - 1.2.0-1
* Wed Jul 08 2021 liuliang <liuliang1@kylinos.cn> - 1.2.0-1
- Package init