python-hatchling/python-hatchling.spec
2022-03-07 14:19:30 -05:00

76 lines
1.9 KiB
RPMSpec
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Name: python-hatchling
Version: 0.20.1
Release: %autorelease
Summary: The build backend used by Hatch
License: MIT
URL: https://pypi.org/project/hatchling
Source0: %{pypi_source hatchling}
# Man page in groff_man(7) format, hand-written for Fedora based on package
# metadata and --help output
Source1: hatchling.1
BuildArch: noarch
BuildRequires: python3-devel
%global common_description %{expand:
This is the extensible, standards compliant build backend used by Hatch.}
%description %{common_description}
%package -n python3-hatchling
Summary: %{summary}
%description -n python3-hatchling %{common_description}
%prep
%autosetup -n hatchling-%{version}
%generate_buildrequires
# Cannot use -r (the default) with hatchling: “ValueError: build backend cannot
# provide build metadata (incl. runtime requirements) before build”. We work
# around this by writing the dependencies from src/hatchling/ourobororos.py
# into a text file.
PYTHONPATH="${PWD}/src" '%{python3}' <<EOF
from hatchling.ouroboros import CONFIG
deps = CONFIG['project']['dependencies']
with open('requirements.ouroboros.txt', 'w') as reqfile:
reqfile.writelines(f'{dep}\n' for dep in deps)
EOF
%pyproject_buildrequires -R requirements.ouroboros.txt
%build
%pyproject_wheel
%install
%pyproject_install
%pyproject_save_files hatchling
install -t '%{buildroot}/%{_mandir}/man1' -D -p -m 0644 '%{SOURCE1}'
%check
# Its not yet clear how, or if, we can run the upstream tests.
# https://github.com/ofek/hatch/issues/120
%pyproject_check_import
%files -n python3-hatchling -f %{pyproject_files}
# The license file is installed in an unusual subdirectory:
%dir %{python3_sitelib}/hatchling-%{version}.dist-info/license_files
%license %{python3_sitelib}/hatchling-%{version}.dist-info/license_files/LICENSE.txt
%doc README.md
%{_bindir}/hatchling
%{_mandir}/man1/hatchling.1*
%changelog
%autochangelog