%bcond_with dotests %global __tar /opt/freeware/bin/tar %global py_major 3.9 %global py_minor 16 %global python_major python%{py_major} %global pkgname cherrypy %global src_name CherryPy %global meta_package python3-%{pkgname} %global python3_sitearch %(%{python_major} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(0))") Name: %{python_major}-%{pkgname} Version: 18.5.0 Release: 2 Summary: Pythonic, object-oriented web development framework License: MIT URL: https://pypi.python.org/pypi/%{pkgname} Source0: https://files.pythonhosted.org/packages/source/c/%{pkgname}/%{src_name}-%{version}.tar.gz BuildArch: noarch BuildRequires: %{python_major}-devel >= %{py_major}.%{py_minor} BuildRequires: %{python_major}-setuptools >= 65.2.0 Requires: %{python_major} >= %{py_major}.%{py_minor} Requires: %{python_major}-cheroot >= 8.2.1 Requires: %{python_major}-jaraco.collections >= 3.0.0 Requires: %{python_major}-more-itertools >= 7.2.0 Requires: %{python_major}-portend >= 2.6 Requires: %{python_major}-zc.lockfile >= 2.0 %description CherryPy allows developers to build web applications in much the same way they would build any other object-oriented Python program. This usually results in smaller source code developed in less time. %package -n %{meta_package} Summary: Meta-package for %{name} Requires: python3 >= %{py_major}.%{py_minor} Requires: %{name} = %{version}-%{release} Requires: python3-cheroot >= 8.2.1 Requires: python3-jaraco.collections >= 3.0.0 Requires: python3-more-itertools >= 7.2.0 Requires: python3-portend >= 2.6 Requires: python3-zc.lockfile >= 2.0 %description -n %{meta_package} This is a Meta-package for %{name} package. %prep %autosetup -n %{src_name}-%{version} %build export PATH=/opt/freeware/bin:$PATH %{python_major} setup.py build %install [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} %{python_major} setup.py install --root %{buildroot} #renaming the files in bindir to avoid conflict with python-cheroot cd ${RPM_BUILD_ROOT}/%{_bindir} for file in *; do mv $file $file-3.9 ln -sf $file-3.9 $file done %check %if %{with dotests} #python3 -m venv python_venv #. ./python_venv/bin/activate #pip3 install pytest #pip3 install hypothesis #ulimit -d unlimited #ulimit -n unlimited #ulimit -m unlimited # ulimit -f unlimited #( python runtests.py -m 'full' -v || true ) #deactivate %endif %clean [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,system,-) %doc README.rst %doc cherrypy/tutorial %{_bindir}/cherryd-%{py_major} %{python3_sitearch}/* %files -n %{meta_package} %defattr(-,root,system,-) %{_bindir}/cherryd %changelog * Wed Mar 15 2023 Raghu N Arava - 18.5.0-2 - cherrypy for python3.9