%global srcname compreffor
%global forgeurl https://github.com/googlefonts/%{srcname}
%global tag %{version}
Name: python-%{srcname}
Version: 0.5.1
%forgemeta
Release: %autorelease
Summary: CFF table subroutinizer for FontTools
License: ASL 2.0
URL: %{forgeurl}
Source0: %{forgesource}
# Downstream man page
Source1: %{srcname}.1
# Fix collections.abc import for Python 3.9 (#142)
# https://github.com/googlefonts/compreffor/pull/142
Patch0: %{forgeurl}/commit/1ddd8416cd2e998d783def2ba392cea9c9fce346.patch
BuildRequires: python3-devel
BuildRequires: pyproject-rpm-macros
BuildRequires: make
BuildRequires: gcc-c++
# From setup.py: cython_min_version = '0.29.21'
BuildRequires: %{py3_dist Cython} >= 0.29.21
%global common_description %{expand:
A CFF (Compact Font Format) table subroutinizer for FontTools.}
%description %{common_description}
%package -n python3-%{srcname}
Summary: %{summary}
%description -n python3-%{srcname} %{common_description}
%prep
%forgeautosetup -p1
cp -vp '%{SOURCE1}' .
# Allow newer fonttools:
sed -r -i 's/==/>=/' requirements.txt
# Remove shebangs from modules:
grep -Elr '^#!' src | xargs -r sed -r -i '1{/^#!/d}'
# Remove Cython-generated sources; we must ensure they are regenerated.
find src/cython -type f -name '*.c*' -print -delete
%generate_buildrequires
%pyproject_buildrequires -t
%build
%pyproject_wheel
%install
%pyproject_install
%pyproject_save_files %{srcname}
install -t '%{buildroot}%{_mandir}/man1' -p -m 0644 -D '%{srcname}.1'
%check
%tox
%files -n python3-%{srcname} -f %{pyproject_files}
%license LICENSE
%doc README.rst
%{_bindir}/%{srcname}
%{_mandir}/man1/%{srcname}.1*
%changelog
%autochangelog