Its more funny to migrate the old setup.py process to the pyproject.toml and an rpm specfile. with an setup.py you can say something like "python3 setup.py install -root=$builddir"
It's not great, but it's also not terrible.
E.g. https://github.com/cbarrick/efiboot/blob/2ca46a7c27c837adf23...
> We will clobber any previously installed version of this package, even if it breaks whatever else is installed. It's the user's job to make sure that is all sorted out ahead of time.
But this is a `make install` recipe, and I think this is generally expected behavior when running that command. Typically, this would be run in a chroot when building a package.
I traced the discussion to [1], which is an interesting read, but it seems that progress on this died out in April, at least on the Python side.
[1]: https://discuss.python.org/t/linux-distro-patches-to-sysconf...