BLD: Add support for building iOS wheels #28759
Draft
+116
−27
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds iOS as a test and release target for NumPy.
This is currently a "proof of life" PR, showing work in progress (hence the draft status of the PR).
To build, it requires:
cibuildwheel
.With those pre-conditions, a build will complete using:
The build will also work without the
IPHONEOS_DEPLOYMENT_TARGET
, but with an unaccelerated version of blas (this is the analog of theMACOSX_DEPLOYMENT_TARGET=14.0
configuration, except that there isn't a pre-compiled openBLAS for iOS to fall back on).The test suite is also being skipped at present; this is because the test suite makes extensive use of
subprocess
, which isn't available on iOS. I'm still working on getting some version of the test suite to complete; but the wheels pass some simple manual tests (as exercised by the Python-support-testbed project, which BeeWare uses to do basic validation of release assets).