The previous version of boost was already rebuilt for Python 3.9 but the
new Boost version needs to be rebuilt now that python3-3.8.3-1.fc33 is
in rawhide.
Boost upstream does not link Boost.Python libraries to libpython, which
matches the advice from Python upstream as well. Drop the Fedora patches
which cause libpython to be linked to. Those patches have been causing
problems for a while anyway.
Now that we only build Boost.Python for one version of Python there is
no benefit to keeping `boost-python3` and `boost-python3-devel` separate
from the main `boost` and `boost-devel` packages.
This change makes `boost` install `boost-python3` (and recommend
`boost-numpy3` if `python3-numpy` is already installed). The
`boost-python3-devel` subpackage is dropped and its contents added to
the main `boost-devel` subpackage instead.
The %build and %install steps still build the py3 pieces separately,
which is no longer necessary now that we don't build both py2 and py3
subpackages.
This patch is supposed to make boost::mpl::print issue a warning with
GCC, but actually it prevents it from warning, whereas the upstream code
does warn.
New library: Boost.Contract
The Python-related shared libraries now carry the full Python version,
eg _python27.so and _python37.so
Drop patches:
deleted: boost-1.66.0-address-model.patch
deleted: boost-1.66.0-compute.patch
deleted: boost-1.66.0-numpy3.patch
deleted: boost-1.66.0-python37.patch
deleted: boost-1.66.0-spirit-abs-overflow.patch
The Fedora OpenMPI and MPICH Flatpaks pose considerable challenges for
rebuilding to use in Flaptaks with prefix=/app - in particular because
of their use of environment-modules. An analysis of all graphical
applications in Fedora that we might want to create Flatpak containers
of shows no apps that use the OpenMPI and MPICH subpackages of boost,
though many other boost packages are used. So simply disabling openmpi
and mpich for Flatpak rebuilds is the simplest approach.