Python script to build installers and wheels for all platforms and Python versions
-
A Python script is added to build the installers and Python wheels for all platforms (Linux, MacOS, Windows) and all Python versions (3.8–3.11), and automatically produce the artifacts; see
devtools/deploy/multipy/build_multipy.py
.The script is tested successfully on all platforms, and should be only executed via a pipeline trigger mechanism, as the build process is very resource-consuming.
As the script has all the details of the build mechanism, it is possible to use the script instead of the statements in the GitLab-CI YAML file
.gitlab-ci.yml
to avoid duplication. Such a decision deserves some discussion. -
The Linux shell script,
devtools/deploy/linux/my_pypack_linux.sh
, is extended to 'repair' the Python wheel and produce a 'manylinux' wheel according to PEP 599 using theauditwheel
package. The paths for artifacts are corrected accordingly. -
Some build scripts are slightly improved.
Related to #223, #598 (closed) and #157