1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 00:20:08 +00:00

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)

(From OE-Core rev: d2f73e3840c21997b918d1f1cfae965c618c1076)

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>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Niko Mauno
2024-09-06 09:01:51 +00:00
committed by Steve Sakoman
parent 585bd3edba
commit c5126983d9
6 changed files with 438 additions and 0 deletions
@@ -7,6 +7,13 @@ LIC_FILES_CHKSUM = "file://license-apache;md5=1836efb2eb779966696f473ee8540542 \
SRC_URI += "file://0001-Add-32-bit-RISC-V-support.patch"
SRC_URI[sha256sum] = "ed12e1768094a7adeafc3a74ebdb8dc2201fa64c4e7e31f14cfc70378bf93790"
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}"