From f7475de5fcd1f2d3a44592c9c1392714b1a5c7bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 8 Jul 2019 11:44:23 +0200 Subject: [PATCH] Add %python_provide provides This allows easier compatibility back and forth once (and if) https://fedoraproject.org/wiki/Changes/Python_means_Python3 happens. This is not the full implementation of the change, as the python-unversioned package still needs to be added. This is currently a no-op as %python_provide does nothing for python3. --- python3.spec | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/python3.spec b/python3.spec index cd07949..83d47eb 100644 --- a/python3.spec +++ b/python3.spec @@ -197,6 +197,9 @@ BuildRequires: /usr/bin/dtrace # workaround http://bugs.python.org/issue19804 (test_uuid requires ifconfig) BuildRequires: /usr/sbin/ifconfig +# For %%python_provide +BuildRequires: python-rpm-macros + %if %{with rpmwheels} BuildRequires: python-setuptools-wheel BuildRequires: python-pip-wheel @@ -379,6 +382,8 @@ Provides: bundled(python3-pip) = 19.0.3 Provides: bundled(python3-setuptools) = 40.8.0 %endif +%{?python_provide:%python_provide python3-libs} + # There are files in the standard library that have python shebang. # We've filtered the automatic requirement out so libs are installable without # the main package. This however makes it pulled in by default. @@ -405,6 +410,8 @@ Requires: python-rpm-macros Requires: python3-rpm-macros Requires: python3-rpm-generators +%{?python_provide:%python_provide python3-devel} + # This is not "API" (packages that need setuptools should still BuildRequire it) # However some packages apparently can build both with and without setuptools # producing egg-info as file or directory (depending on setuptools presence). @@ -442,6 +449,8 @@ Provides: %{name}-tools = %{version}-%{release} Provides: %{name}-tools%{?_isa} = %{version}-%{release} Obsoletes: %{name}-tools < %{version}-%{release} +%{?python_provide:%python_provide python3-idle} + # Shall be removed in Fedora 31 Obsoletes: platform-python-tools < %{platpyver} @@ -462,6 +471,8 @@ configuration, browsers, and other dialogs. Summary: A GUI toolkit for Python Requires: %{name} = %{version}-%{release} +%{?python_provide:%python_provide python3-tkinter} + # Shall be removed in Fedora 31 Obsoletes: platform-python-tkinter < %{platpyver} @@ -475,6 +486,8 @@ Summary: The self-test suite for the main python3 package Requires: %{name} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release} +%{?python_provide:%python_provide python3-test} + # Shall be removed in Fedora 31 Obsoletes: platform-python-test < %{platpyver} @@ -500,6 +513,8 @@ Requires: %{name}-test%{?_isa} = %{version}-%{release} Requires: %{name}-tkinter%{?_isa} = %{version}-%{release} Requires: %{name}-idle%{?_isa} = %{version}-%{release} +%{?python_provide:%python_provide python3-debug} + %description debug python3-debug provides a version of the Python runtime with numerous debugging features enabled, aimed at advanced Python users such as developers of Python