On 30. 01. 20 16:32, Orion Poplawski wrote:
Looks like RHEL 8.2 will have python 3.8 in addition to python 3.6. From
the 8.2 beta:
Red Hat Enterprise Linux 8 for x86_64 - AppStream Beta (RPMs)
Name Stream Profiles Summary
python27 2.7 [d][e] common [d] Python programming
language, version 2.7
python36 3.6 [d][e] build, common [d] Python programming
language, version 3.6
python38 3.8 [d][e] build, common [d] Python programming
language, version 3.8
Currently, %python_pkgversion is set to 3 in
/usr/lib/rpm/macros.d/macros.python-srpm from python-srpm-macros.
python3-devel is still provided only by python36-devel, so presumably all
EPEL8 python packages will continue to be built against python 3.6. But I
imagine that people will soon be asking for python 3.8 versions of EPEL
packages. How can we provide those? Does this have to be done in some
modular fashion - which seems to come back to the discussion of whether or not
every package has to become its own module or whether to group them together
somehow. Or since both python modules are "default" modules and we can
install both python36-devel and python38-devel at the same time, perhaps we
can define the python3_other* macros again for python38 and just go that way?
The idea is that the versions fo stuff we build in RHEL for different python
versions is different and I'd like to keep that idea in EPEL as well. Building a
python38-foo package from it's own spec should work as follows:
BR python38-bar etc...
Regular specfile follows.
You can even have a single specfile that build for different Python version
based on local override of %python_pkgversion in the buildroot.
Building both versions from single spec file---single build would require a new
set of macros, yes (or hardcoding stuff). However I'd not call them
python3_other* unless you want to end up with python3_other_other* the next time