Skip to content

Add build support for Apple visionOS #131999

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
colincornaby opened this issue Apr 2, 2025 · 4 comments
Open

Add build support for Apple visionOS #131999

colincornaby opened this issue Apr 2, 2025 · 4 comments
Labels
build The build process and cross-build OS-ios type-feature A feature request or enhancement

Comments

@colincornaby
Copy link

colincornaby commented Apr 2, 2025

Feature or enhancement

Proposal:

I've been using CPython in my iOS app successfully - but I need to bring my app to visionOS.

Happy to try adding support to the build myself - but I don't know the configure scripts very well. I do have hardware and would also be happy to test.

To be clear - not asking for any sort of specific support. Would just be happy to have build output for visionOS similar to tvOS/watchOS.

Has this already been discussed elsewhere?

No response given

Links to previous discussion of this feature:

No response

@colincornaby colincornaby added the type-feature A feature request or enhancement label Apr 2, 2025
@sobolevn sobolevn added build The build process and cross-build OS-ios labels Apr 2, 2025
@sobolevn
Copy link
Member

sobolevn commented Apr 2, 2025

CC @freakboy3742

@freakboy3742
Copy link
Contributor

FWIW - I have a patch adding tvOS and watchOS support. We had a recent contribution of a macCatalyst patch (see beeware/Python-Apple-support#117); that work that got close to being merged, but didn't quite get there before the contributor ran out of time to contribute. I expect the changes needed to add support for visionOS will essentially the same as those patches, substituting macCatalyst platform markers for visionOS/xros as appropriate.

The only additional changes that I would expect might be needed are:

  • a modification to config.sub to correctly identify the visionOS compiler triple (it looks like arm64-apple-xros and arm64-apple-xros-simulator aren't currently supported); and
  • modifications around L5267-5314 of the patched configure.ac that enable/disable features that autoconf can't correctly identify.

I'm happy to act as a core team rep for any of these platforms (i.e., tvOS, watchOS, visionOS or macCatalyst); but I'm unlikely to have the volunteer time to develop the initial patches for visionOS and macCatalyst myself. I can probably find the resources to implement those patches if someone wants to fund the development of those patches; if that's an option you're interested in, reach out by email (my details are in my GitHub profile) and we can see what can be done.

@vstinner vstinner changed the title Add build support for visionOS Add build support for Apple visionOS Apr 2, 2025
@freakboy3742
Copy link
Contributor

FYI - thanks to contributions from @johnzhou721, https://github.com/beeware/Python-Apple-support now has the tooling in place to support building Python.framework for visionOS.

I haven't published any official builds yet, but the main branch is able to build a visionOS support package for CPython 3.14.0a7.

@johnzhou721
Copy link
Contributor

@freakboy3742 But two unit tests are failing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build The build process and cross-build OS-ios type-feature A feature request or enhancement
Projects
None yet
Development

No branches or pull requests

4 participants