On Thu, May 26, 2022 at 1:07 PM Miro Hrončok <mhroncok@redhat.com> wrote:
On 26. 05. 22 17:13, Owen Taylor wrote:

> A pip with a backported patch (or a rebase) + this approach sounds most
> maintainable for Fedora 36. But if we think that the --prefix %{_prefix}
> approach actually works, then perhaps we can either:
>
>   A) Just update python-rpm-macros and pygobject-rpm-macros in F36
>   B) Build a stream-branch (or even the f37 branch) in the flatpak-runtime
> module for F36 and reconverge for F37 - I'm less worried about carrying a
> stream branch for macros packages, since they are unlikely to have security fixes.
>
> What do you think?

Definitively A. There is no reason to fork the macros, the change should be
perfectly backwards compatible.

The lines are:

https://src.fedoraproject.org/rpms/python-rpm-macros/blob/f36/f/macros.python#_61
https://src.fedoraproject.org/rpms/python-rpm-macros/blob/f36/f/macros.python3#_59
https://src.fedoraproject.org/rpms/pyproject-rpm-macros/blob/rawhide/f/macros.pyproject#_57
 
OK, I'll work on coming up with some patches. Do you have an opinion about whether it makes sense to make the %_prefix support complete with something like:

- %python3_sitelib %(RPM_BUILD_ROOT= %{__python3} -Ic "import sysconfig; print(sysconfig.get_path('purelib'))")
+%python3_sitelib %(RPM_BUILD_ROOT= %{__python3} -Ic "import sysconfig; print(sysconfig.get_path('purelib', sysconfig.get_default_scheme(), {'platbase': '%{_prefix}', 'base': '%{_prefix}')})

Without that, the --prefix %{_prefix} additions won't work in isolation, and will require something else to redefine python3_sitelib/python3_sitearch.

Thanks!
Owen