Add aarch64-apple-visionos and aarch64-apple-visionos-sim tier 3 targets#121419
Merged
bors merged 12 commits intorust-lang:masterfrom Apr 6, 2024
Merged
Add aarch64-apple-visionos and aarch64-apple-visionos-sim tier 3 targets#121419bors merged 12 commits intorust-lang:masterfrom
bors merged 12 commits intorust-lang:masterfrom
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Introduces
aarch64-apple-visionosandaarch64-apple-visionos-simas tier 3 targets. This allows native development for the Apple Vision Pro's visionOS platform.This work has been tracked in rust-lang/compiler-team#642. There is a corresponding
libcchange rust-lang/libc#3568 that is not required for merge.Ideally we would be able to incorporate this change to the
objectcrate, but the author has stated that a release will not be cut for quite a while. Therefore, the two locations that would reference the xrOS constant fromobjectare hardcoded to their MachO values of 11 and 12, accompanied by TODOs to mark the code as needing change. I am open to suggestions on what to do here to get this checked in.Tier 3 Target Policy
At this tier, the Rust project provides no official support for a target, so we place minimal requirements on the introduction of targets.
See src/doc/rustc/src/platform-support/apple-visionos.md
This naming scheme matches
$ARCH-$VENDOR-$OS-$ABIwhich is matches the iOS Apple Silicon simulator (aarch64-apple-ios-sim) and other Apple targets.This contribution is fully available under the standard Rust license with no additional legal restrictions whatsoever. This PR does not introduce any new dependency less permissive than the Rust license policy.
The new targets do not depend on proprietary libraries.
This new target mirrors the standard library for watchOS and iOS, with minor divergences.
Documentation is provided in src/doc/rustc/src/platform-support/apple-visionos.md
I acknowledge these requirements and intend to ensure that they are met.
This target does not touch any existing tier 2 or tier 1 targets and should not break any other targets.