Skip to content

Commit 41de2f2

Browse files
authored
Rollup merge of rust-lang#152021 - madsmtm:tvos-visionos-watchos-tier-2, r=shepmaster
Bump tvOS, visionOS and watchOS Aarch64 targets to tier 2 Promote the following targets to Tier 2 without host tools: - `aarch64-apple-tvos`. - `aarch64-apple-tvos-sim`. - `aarch64-apple-watchos`. - `aarch64-apple-watchos-sim`. - `aarch64-apple-visionos`. - `aarch64-apple-visionos-sim`. This implements MCP rust-lang/compiler-team#918. Fixes rust-lang#151705. r? shepmaster
2 parents 6971a75 + 4fa388c commit 41de2f2

11 files changed

Lines changed: 61 additions & 44 deletions

File tree

compiler/rustc_target/src/spec/targets/aarch64_apple_tvos.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
llvm_target,
88
metadata: TargetMetadata {
99
description: Some("ARM64 Apple tvOS".into()),
10-
tier: Some(3),
10+
tier: Some(2),
1111
host_tools: Some(false),
1212
std: Some(true),
1313
},

compiler/rustc_target/src/spec/targets/aarch64_apple_tvos_sim.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
llvm_target,
88
metadata: TargetMetadata {
99
description: Some("ARM64 Apple tvOS Simulator".into()),
10-
tier: Some(3),
10+
tier: Some(2),
1111
host_tools: Some(false),
1212
std: Some(true),
1313
},

compiler/rustc_target/src/spec/targets/aarch64_apple_visionos.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
llvm_target,
88
metadata: TargetMetadata {
99
description: Some("ARM64 Apple visionOS".into()),
10-
tier: Some(3),
10+
tier: Some(2),
1111
host_tools: Some(false),
1212
std: Some(true),
1313
},

compiler/rustc_target/src/spec/targets/aarch64_apple_visionos_sim.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
llvm_target,
88
metadata: TargetMetadata {
99
description: Some("ARM64 Apple visionOS simulator".into()),
10-
tier: Some(3),
10+
tier: Some(2),
1111
host_tools: Some(false),
1212
std: Some(true),
1313
},

compiler/rustc_target/src/spec/targets/aarch64_apple_watchos.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
llvm_target,
88
metadata: TargetMetadata {
99
description: Some("ARM64 Apple watchOS".into()),
10-
tier: Some(3),
10+
tier: Some(2),
1111
host_tools: Some(false),
1212
std: Some(true),
1313
},

compiler/rustc_target/src/spec/targets/aarch64_apple_watchos_sim.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
llvm_target,
88
metadata: TargetMetadata {
99
description: Some("ARM64 Apple watchOS Simulator".into()),
10-
tier: Some(3),
10+
tier: Some(2),
1111
host_tools: Some(false),
1212
std: Some(true),
1313
},

src/ci/github-actions/jobs.yml

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -466,10 +466,34 @@ auto:
466466

467467
- name: dist-apple-various
468468
env:
469-
SCRIPT: ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim,aarch64-apple-ios-macabi,x86_64-apple-ios-macabi
469+
# Build and distribute the standard library for these targets.
470+
TARGETS: "aarch64-apple-ios,\
471+
aarch64-apple-ios-sim,\
472+
x86_64-apple-ios,\
473+
aarch64-apple-ios-macabi,\
474+
x86_64-apple-ios-macabi,\
475+
aarch64-apple-tvos,\
476+
aarch64-apple-tvos-sim,\
477+
aarch64-apple-visionos,\
478+
aarch64-apple-visionos-sim,\
479+
aarch64-apple-watchos,\
480+
aarch64-apple-watchos-sim"
481+
SCRIPT: ./x.py dist bootstrap --include-default-paths --host='' --target=$TARGETS
470482
# Mac Catalyst cannot currently compile the sanitizer:
471483
# https://github.com/rust-lang/rust/issues/129069
472-
RUST_CONFIGURE_ARGS: --enable-sanitizers --enable-profiler --set rust.jemalloc --set target.aarch64-apple-ios-macabi.sanitizers=false --set target.x86_64-apple-ios-macabi.sanitizers=false
484+
#
485+
# And tvOS and watchOS don't currently support the profiler runtime:
486+
# https://github.com/rust-lang/rust/issues/152426
487+
RUST_CONFIGURE_ARGS: >-
488+
--enable-sanitizers
489+
--enable-profiler
490+
--set rust.jemalloc
491+
--set target.aarch64-apple-ios-macabi.sanitizers=false
492+
--set target.x86_64-apple-ios-macabi.sanitizers=false
493+
--set target.aarch64-apple-tvos.profiler=false
494+
--set target.aarch64-apple-tvos-sim.profiler=false
495+
--set target.aarch64-apple-watchos.profiler=false
496+
--set target.aarch64-apple-watchos-sim.profiler=false
473497
# Ensure that host tooling is built to support our minimum support macOS version.
474498
# FIXME(madsmtm): This might be redundant, as we're not building host tooling here (?)
475499
MACOSX_DEPLOYMENT_TARGET: 10.12

src/doc/rustc/src/platform-support.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,12 @@ target | std | notes
148148
[`aarch64-apple-ios`](platform-support/apple-ios.md) | ✓ | ARM64 iOS
149149
[`aarch64-apple-ios-macabi`](platform-support/apple-ios-macabi.md) | ✓ | Mac Catalyst on ARM64
150150
[`aarch64-apple-ios-sim`](platform-support/apple-ios.md) | ✓ | Apple iOS Simulator on ARM64
151+
[`aarch64-apple-tvos`](platform-support/apple-tvos.md) | ✓ | ARM64 tvOS
152+
[`aarch64-apple-tvos-sim`](platform-support/apple-tvos.md) | ✓ | ARM64 tvOS Simulator
153+
[`aarch64-apple-visionos`](platform-support/apple-visionos.md) | ✓ | ARM64 Apple visionOS
154+
[`aarch64-apple-visionos-sim`](platform-support/apple-visionos.md) | ✓ | ARM64 Apple visionOS Simulator
155+
[`aarch64-apple-watchos`](platform-support/apple-watchos.md) | ✓ | ARM64 Apple WatchOS
156+
[`aarch64-apple-watchos-sim`](platform-support/apple-watchos.md) | ✓ | ARM64 Apple WatchOS Simulator
151157
[`aarch64-linux-android`](platform-support/android.md) | ✓ | ARM64 Android
152158
[`aarch64-unknown-fuchsia`](platform-support/fuchsia.md) | ✓ | ARM64 Fuchsia
153159
[`aarch64-unknown-none`](platform-support/aarch64-unknown-none.md) | * | Bare ARM64, hardfloat
@@ -250,12 +256,6 @@ host tools.
250256

251257
target | std | host | notes
252258
-------|:---:|:----:|-------
253-
[`aarch64-apple-tvos`](platform-support/apple-tvos.md) | ✓ | | ARM64 tvOS
254-
[`aarch64-apple-tvos-sim`](platform-support/apple-tvos.md) | ✓ | | ARM64 tvOS Simulator
255-
[`aarch64-apple-visionos`](platform-support/apple-visionos.md) | ✓ | | ARM64 Apple visionOS
256-
[`aarch64-apple-visionos-sim`](platform-support/apple-visionos.md) | ✓ | | ARM64 Apple visionOS Simulator
257-
[`aarch64-apple-watchos`](platform-support/apple-watchos.md) | ✓ | | ARM64 Apple WatchOS
258-
[`aarch64-apple-watchos-sim`](platform-support/apple-watchos.md) | ✓ | | ARM64 Apple WatchOS Simulator
259259
[`aarch64-kmc-solid_asp3`](platform-support/kmc-solid.md) | ✓ | | ARM64 SOLID with TOPPERS/ASP3
260260
[`aarch64-nintendo-switch-freestanding`](platform-support/aarch64-nintendo-switch-freestanding.md) | * | | ARM64 Nintendo Switch, Horizon
261261
[`aarch64-unknown-freebsd`](platform-support/freebsd.md) | ✓ | ✓ | ARM64 FreeBSD

src/doc/rustc/src/platform-support/apple-tvos.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22

33
Apple tvOS targets.
44

5-
**Tier: 3**
5+
**Tier: 2 (without Host Tools)**
66

77
- `aarch64-apple-tvos`: Apple tvOS on ARM64.
88
- `aarch64-apple-tvos-sim`: Apple tvOS Simulator on ARM64.
9+
10+
**Tier: 3**
11+
912
- `x86_64-apple-tvos`: Apple tvOS Simulator on x86_64.
1013

1114
## Target maintainers
@@ -52,16 +55,13 @@ The following APIs are currently known to have missing or incomplete support:
5255

5356
## Building the target
5457

55-
The targets can be built by enabling them for a `rustc` build in
56-
`bootstrap.toml`, by adding, for example:
57-
58-
```toml
59-
[build]
60-
build-stage = 1
61-
target = ["aarch64-apple-tvos", "aarch64-apple-tvos-sim"]
58+
The tier 2 targets are distributed through `rustup`, and can be installed using one of:
59+
```console
60+
$ rustup target add aarch64-apple-tvos
61+
$ rustup target add aarch64-apple-tvos-sim
6262
```
6363

64-
Using the unstable `-Zbuild-std` with a nightly Cargo may also work.
64+
See [the instructions for iOS](./apple-ios.md#building-the-target) for how to build the tier 3 target.
6565

6666
## Building Rust programs
6767

src/doc/rustc/src/platform-support/apple-visionos.md

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Apple visionOS / xrOS targets.
44

5-
**Tier: 3**
5+
**Tier: 2 (without Host Tools)**
66

77
- `aarch64-apple-visionos`: Apple visionOS on arm64.
88
- `aarch64-apple-visionos-sim`: Apple visionOS Simulator on arm64.
@@ -31,19 +31,12 @@ case `XROS_DEPLOYMENT_TARGET`.
3131

3232
## Building the target
3333

34-
The targets can be built by enabling them for a `rustc` build in
35-
`bootstrap.toml`, by adding, for example:
36-
37-
```toml
38-
[build]
39-
target = ["aarch64-apple-visionos", "aarch64-apple-visionos-sim"]
34+
The targets are distributed through `rustup`, and can be installed using one of:
35+
```console
36+
$ rustup target add aarch64-apple-visionos
37+
$ rustup target add aarch64-apple-visionos-sim
4038
```
4139

42-
Using the unstable `-Zbuild-std` with a nightly Cargo may also work.
43-
44-
Note: Currently, a newer version of `libc` and `cc` may be required, this will
45-
be fixed in [#124560](https://github.com/rust-lang/rust/pull/124560).
46-
4740
## Building Rust programs
4841

4942
See [the instructions for iOS](./apple-ios.md#building-rust-programs).

0 commit comments

Comments
 (0)