diff --git a/_multibuild b/_multibuild index fcc7b97..d0dc7ba 100644 --- a/_multibuild +++ b/_multibuild @@ -1,3 +1,4 @@ test + primary diff --git a/python-packaging.changes b/python-packaging.changes index 3726171..78ce345 100644 --- a/python-packaging.changes +++ b/python-packaging.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Jul 15 12:30:44 UTC 2022 - Ben Greiner + +- Split primary flavor in multibuild for possible inclusion into + Ring0 + ------------------------------------------------------------------- Thu Jul 14 13:13:54 UTC 2022 - Ben Greiner diff --git a/python-packaging.spec b/python-packaging.spec index 951da53..4ae41f7 100644 --- a/python-packaging.spec +++ b/python-packaging.spec @@ -16,19 +16,42 @@ # -%{?!python_module:%define python_module() python3-%{**}} -%global flavor @BUILD_FLAVOR@%{nil} -%if "%{flavor}" == "test" -%define psuffix -test -%bcond_without test +%define modname packaging +# this must be hardcoded until obs can read it from a prjconf definition +%if 0%{suse_version} >= 1550 +%define primary_python python310 %else -%define psuffix %{nil} -%bcond_with test +%define primary_python python3 %endif # in order to avoid rewriting for subpackage generator %define mypython python -%define skip_python2 1 -Name: python-packaging%{psuffix} +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "primary" +# this one is built in Ring0 +%define pprefix %{primary_python} +%define pythons %{primary_python} +%endif +%if "%{flavor}" == "" +# The rest is in Ring1 +%define pprefix python +%if 0%{suse_version} >= 1550 || 0%{?sle_version} == 150500 +%{expand:%%define skip_%{primary_python} 1} +BuildRequires: python3-base >= 3.6 +%else +# no non-primary python in <=15.4 +ExclusiveArch: do-not-build +%define python_module() no-build-without-multibuild-flavor +%endif +%endif +%if "%{flavor}" == "test" +%define pprefix python +%define psuffix -test +%bcond_without test +%else +%bcond_with test +%endif +%{?!python_module:%define python_module() python3-%{**}} +Name: %{pprefix}-packaging%{?psuffix} Version: 21.3 Release: 0 Summary: Core utilities for Python packages @@ -42,9 +65,9 @@ BuildRequires: %{python_module base} BuildRequires: fdupes BuildRequires: python-rpm-macros #!BuildIgnore: post-build-checks-malwarescan +#!BuildIgnore: python3-packaging # ! Do not add setuptools build dependency here, so that we can get this into Ring0 ! # ! Also make sure all runtime dependencies don't require setuptools. ! -Requires: python-pyparsing >= 2.0.2 BuildArch: noarch %if %{with test} BuildRequires: %{python_module pretend} @@ -52,9 +75,14 @@ BuildRequires: %{python_module pyparsing >= 2.0.2} BuildRequires: %{python_module pytest} %endif # See boo#1186870, we can't provide ourselves to pythondistdeps.py -Provides: %{mypython}%{python_version}dist(packaging) = %{version}-%{release} +Provides: %{mypython}%{python_version}dist(%{modname}) = %{version}-%{release} %if "%{python_flavor}" == "python3" || "%{python_provides}" == "python3" -Provides: %{mypython}3dist(packaging) = %{version}-%{release} +Provides: %{mypython}3dist(%{modname}) = %{version}-%{release} +Provides: %{mypython}3-%{modname} = %{version}-%{release} +Obsoletes: %{mypython}3-%{modname} < %{version}-%{release} +Requires: python3-pyparsing >= 2.0.2 +%else +Requires: python-pyparsing >= 2.0.2 %endif %python_subpackages