python3-maturin: Fix cross compilation issue for armv7l, mips64, ppc

When bitbaking python3-rpds-py it built extension module as:

  site-packages/rpds/rpds.cpython-312-armv7l-linux-gnueabihf.so

Which caused error on target:

  root@qemuarm:~# python3 -c "from rpds import HashTrieMap, HashTrieSet, List"
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/lib/python3.12/site-packages/rpds/__init__.py", line 1, in <module>
      from .rpds import *
  ModuleNotFoundError: No module named 'rpds.rpds'

Where as it should have been:

  site-packages/rpds/rpds.cpython-312-arm-linux-gnueabihf.so

Associated upstream bug report:
https://github.com/PyO3/maturin/issues/2203

Associated upstream pull request:
https://github.com/PyO3/maturin/pull/2204

Note - mitigation has not been tested with musl:
https://github.com/PyO3/maturin/pull/2204#issuecomment-2323952320

(From OE-Core rev: 32a8a7379008cc6e367b7664c5b10b29f0bb8136)

Signed-off-by: Vesa Jääskeläinen <vesa.jaaskelainen@vaisala.com>
Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Niko Mauno
2024-09-05 10:12:38 +00:00
committed by Richard Purdie
parent 3d029dff3e
commit 63055fc4d0
6 changed files with 438 additions and 0 deletions

View File

@@ -6,6 +6,13 @@ LIC_FILES_CHKSUM = "file://license-apache;md5=1836efb2eb779966696f473ee8540542 \
file://license-mit;md5=85fd3b67069cff784d98ebfc7d5c0797"
SRC_URI[sha256sum] = "147754cb3d81177ee12d9baf575d93549e76121dacd3544ad6a50ab718de2b9c"
SRC_URI:append = "\
file://0001-Extract-extension-architecture-name-resolvation-code.patch \
file://0002-Fix-cross-compilation-issue-with-linux-armv7l-archit.patch \
file://0003-Extract-extension-ABI-name-resolvation-code-as-helpe.patch \
file://0004-Fix-cross-compilation-issue-with-linux-ppc-architect.patch \
file://0005-Fix-cross-compilation-issue-with-linux-mips64-archit.patch \
"
S = "${WORKDIR}/maturin-${PV}"