Priority: P2: Important
Affects Version/s: None
Fix Version/s: 6.3.0
During the development of PySide 2, for 5.12+ versions, the main goal was to get rid of most of the flaws, and raise PySide's level so people could rely on the module both for just-for-fun and commercial projects.
After a couple of releases, the focus was moved forward Qt 6 compatibility, and with 6.0 out, and 6.1 almost around the corner, it makes sense to focus on the next steps for 6.2+.
The goal of this Epic is to improve the build infrastructure of PySide and Shiboken, to be able to cross compile the project for different targets, focusing mainly on embedded systems with ARM and aarch64 architectures. The decision of the architectures comes from the many requests specifically for Raspberry Pi devices, and also linux-based aarch64 devices like the Pinebook, and Pinephone.
- Re-structure the cmake configuration to build libshiboken, and shiboken gen, so the tools can be build for the host and target, using the host binary for the cross compilation of the target, and the target binaries for distribution.
- It's important to notice that when building shiboken, the process follows the order: ApiExtractor, libshiboken, Shiboken generator, and Shiboken Module (Python).
- Shiboken generator, depends on both ApiExtractor
- Shiboken module (Python), depends on libshiboken
- Introduce command lines options related to this process for the setup.py build method, so it's easy to package and distribute.
This task was raised before by Alexandr Zarubkin, but was later transform into an EPIC:
There is https://www.piwheels.org/ site which aims to provide wheels for Python packages built for Raspberry Pi. Unfortunately, there is no PySide2 package there.
As the maintainer of the site said (https://github.com/bennuttall/piwheels/issues/84), he needs either source package (.tar.gz) to build the wheel from, or ready wheel prebuilt by you.
It would be great to see PySide2 supported by Raspberry Pi!