Blob Blame History Raw
# The pytest-xdist package is not available when bootstrapping or for EL builds
%bcond xdist %{undefined rhel}

# Package the placeholder rpm-macros (moved to redhat-rpm-config in F40)
%if ! (0%{?fedora} >= 40 || 0%{?rhel} >= 10)
%bcond rpmmacropkg 1
%bcond rpmmacropkg 0

# Appease old Poetry versions (<1.2.0a2)
%if ! 0%{?fedora}%{?rhel} || 0%{?fedora} >= 38 || 0%{?rhel} >= 10
%bcond oldpoetry 0
%bcond oldpoetry 1

%global srcname rpmautospec

Name: python-%{srcname}
Version: 0.6.3
Release: %autorelease
Summary: Package and CLI tool to generate release fields and changelogs
License: MIT

BuildArch: noarch
BuildRequires: git
# the langpacks are needed for tests
BuildRequires: glibc-langpack-de
BuildRequires: glibc-langpack-en
BuildRequires: python3-devel >= 3.9.0
# The dependencies needed for testing don’t get auto-generated.
BuildRequires: python3dist(pytest)
%if %{with xdist}
BuildRequires: python3dist(pytest-xdist)
BuildRequires: python3dist(pyyaml)
BuildRequires: sed

%global _description %{expand:
A package and CLI tool to generate RPM release fields and changelogs.}

%description %_description

%package -n python3-%{srcname}
Summary: %{summary}
%{?python_provide:%python_provide python3-%{srcname}}

%description -n python3-%{srcname} %_description

%package -n %{srcname}
Summary:  CLI tool for generating RPM releases and changelogs
Requires: python3-%{srcname} = %{version}-%{release}

%description -n %{srcname}
CLI tool for generating RPM releases and changelogs

%if %{with rpmmacropkg}
%package -n rpmautospec-rpm-macros
Summary: Rpmautospec RPM macros for local rpmbuild
Requires: rpm

%description -n rpmautospec-rpm-macros
This package contains RPM macros with placeholders for building rpmautospec
enabled packages locally.


%autosetup -n %{srcname}-%{version}
%if %{with oldpoetry}
sed -i \
    -e 's/\[tool\.poetry\.group\.dev\.dependencies\]/[]/g' \

sed -i -e '/pytest-cov/d; /addopts.*--cov/d' pyproject.toml


%pyproject_save_files %{srcname}
# Work around poetry not listing license files as such in package metadata.
sed -i -e 's|^\(.*/LICENSE\)|%%license \1|g' %{pyproject_files}

%if %{with rpmmacropkg}
mkdir -p %{buildroot}%{rpmmacrodir}
install -m 644  rpm/macros.d/macros.rpmautospec %{buildroot}%{rpmmacrodir}/

%pytest -v \
%if %{with xdist}

%files -n python3-%{srcname} -f %{pyproject_files}
%doc README.rst

%files -n %{srcname}

%if %{with rpmmacropkg}
%files -n rpmautospec-rpm-macros