pysimdjson icon indicating copy to clipboard operation
pysimdjson copied to clipboard

FreeBSD & Windows ARM Binary Packages Tracking Issue

Open TkTech opened this issue 5 years ago • 5 comments

Time to start supporting ARM. Unfortunately we can't use self-hosted runners for ARM because we accept public PRs and I don't feel like having my AWS runner hijacked! We'll be using something other than GitHub actions for Ci on ARM platforms.

  • [x] Linux
    • [x] CPython
    • [x] PyPy3 (currently not available on travis.ci for ARM)
  • [ ] FreeBSD (no manylinux equivalent, can we even do this? #40)
    • [ ] CPython
  • [ ] Windows ARM
    • [ ] CPython
  • [x] OS X
    • [x] CPython

Windows ARM support is a bit of an exotic stretch goal. The development ecosystem for Windows ARM is very, very new. Likewise, OS X ARM support is likely to appear sometime late this year. It's likely Apple will release a new toolchain long before they start shipping hardware.

TkTech avatar Jul 20 '20 13:07 TkTech

You can use Drone.io or TravisCI for the ARM build. Or you can use Docker+QEMU on any CI service: https://medium.com/@martin.grigorov/building-linux-packages-for-different-cpu-architectures-with-docker-and-qemu-d29e4ebc9fa5

martin-g avatar Jul 20 '20 15:07 martin-g

Reference this scipy PR as an example of arm64 CI setup: https://github.com/scipy/scipy/pull/11867

vielmetti avatar Jul 20 '20 15:07 vielmetti

~PyPy3 for ARM needs to be built from source on travis, missing from package repos for bionic.~ Doesn't matter, PyPy provides their own manylinux image.

TkTech avatar Jul 20 '20 17:07 TkTech

CPython linux wheels now available for 3.5-3.8 on ARM64 as of v2.4.

TkTech avatar Jul 20 '20 19:07 TkTech

Both Windows and OS X arm builds are doable (and can be built cross-target from existing Ci). FreeBSD is a no-go until the standard for platform compatibility tags is expanded. See https://packaging.python.org/specifications/platform-compatibility-tags/.

TkTech avatar Jul 21 '20 13:07 TkTech

cibuildwheel now supports Widnows ARM as an experimental target. BSD support is unlikely to come in the next few years.

TkTech avatar Jun 25 '23 20:06 TkTech