Convert to pyproject-rpm-macros

This commit is contained in:
Miro Hrončok 2021-12-15 19:20:12 +01:00
parent 7faf670b11
commit 2c2417a04b

View File

@ -30,20 +30,10 @@ Source0: %{pypi_source pytest %{base_version}%{?prerelease}}
%bcond_without docs
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-setuptools_scm
# Those are also runtime deps, needed for tests and docs
# We keep them unconditionality, so we don't accidentally build pytest
# before them and get broken dependencies
BuildRequires: python3-attrs >= 19.2
BuildRequires: python3-iniconfig
BuildRequires: python3-packaging
BuildRequires: python3-pluggy >= 0.12
BuildRequires: python3-py >= 1.8.2
BuildRequires: python3-tomli >= 1
BuildRequires: pyproject-rpm-macros >= 0-51
%if %{with tests}
# we avoid using %%pyproject_buildrequires -x testing as it mixes optional and non-optional deps
BuildRequires: python3-hypothesis >= 3.56
BuildRequires: python3-pygments >= 2.7.2
BuildRequires: python3-xmlschema
@ -92,23 +82,32 @@ Provides: pytest = %{version}-%{release}
The pytest framework makes it easy to write small tests, yet scales to support
complex functional testing for applications and libraries.
%prep
%autosetup -p1 -n %{name}-%{base_version}%{?prerelease}
%generate_buildrequires
%pyproject_buildrequires -r
%build
%py3_build
%pyproject_wheel
%if %{with docs}
for l in doc/* ; do
make -C $l html PYTHONPATH=$(pwd)/src SPHINXBUILD=%{_bindir}/sphinx-build-3
%make_build -C $l html PYTHONPATH=%{pyproject_build_lib}
done
for f in README CHANGELOG CONTRIBUTING ; do
rst2html ${f}.rst > ${f}.html
done
%endif
%install
%py3_install
%pyproject_install
%pyproject_save_files _pytest pytest
mv %{buildroot}%{_bindir}/pytest %{buildroot}%{_bindir}/pytest-%{python3_version}
ln -snf pytest-%{python3_version} %{buildroot}%{_bindir}/pytest-3
mv %{buildroot}%{_bindir}/py.test %{buildroot}%{_bindir}/py.test-%{python3_version}
@ -132,6 +131,7 @@ find %{buildroot}%{python3_sitelib} \
-name '*.py' \
-exec sed -i -e '1{/^#!/d}' {} \;
%if %{with tests}
%check
%global __pytest %{buildroot}%{_bindir}/pytest
@ -139,23 +139,21 @@ find %{buildroot}%{python3_sitelib} \
%pytest testing %{?with_timeout:--timeout=30} -rs -k "not test_errors_in_xfail_skip_expressions"
%endif
%files -n python3-%{name}
%files -n python3-%{name} -f %{pyproject_files}
%if %{with docs}
%doc CHANGELOG.html
%doc README.html
%doc CONTRIBUTING.html
%doc _htmldocs/html
%endif
%license LICENSE
%{_bindir}/pytest
%{_bindir}/pytest-3
%{_bindir}/pytest-%{python3_version}
%{_bindir}/py.test
%{_bindir}/py.test-3
%{_bindir}/py.test-%{python3_version}
%{python3_sitelib}/pytest-*.egg-info/
%{python3_sitelib}/_pytest/
%{python3_sitelib}/pytest/
%changelog
* Fri Jan 21 2022 Miro Hrončok <mhroncok@redhat.com> - 7.0.0~rc1-1