Add armv6 and armv7 to multiarch CI and fix build issues#2779
Conversation
300d8a7 to
638d580
Compare
b87a028 to
e536372
Compare
e536372 to
bcf2f8d
Compare
e64b23c to
6ed6020
Compare
7a82be1 to
7e49dc1
Compare
|
This PR is now done from my side. I have edited the opening comment in this PR to describe the PR in more detail |
- bumps the multiarch action - bumps to bookworm - armv6 and armv7 testing added (image based on raspbian) - also adds the ability to test an armv7 built wheel on armv6
7e49dc1 to
f6d5a9d
Compare
Starbuck5
left a comment
There was a problem hiding this comment.
CI stuff is cool but a little over my head.
Meson change makes sense.
Code changes make sense.
After this PR does it mean people on Pi will get NEON acceleration by default?
Basically whichever pi has NEON support in hardware will have NEON acceleration by default (so like all pi except pi 1 and older pi zero). And whichever pi doesn't, runtime detection that we have ensures that the NEON instructions won't be invoked (which will crash with illegal instruction error). It was a long standing speculation that this wouldn't work, but now this PR has tests that pass and therefore show that this approach works. |
Very nice! This does sound like something it would be to good to verify with a tester after our next dev release though, just to be sure. |
This PR mainly does
32 thingsFixes arm32 specific warnings across the codebaseHas been moved out to be done in a later PRsse2neon.hare only passed to the files that need it. Therefore, I made it so that only the files that require thesse2neon.hheader include it. If any file that shouldn't be including it tries to include it, the compilation fails.pygame-cewheels over at https://www.piwheels.org/project/pygame-ce/