-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathrust-toolchain.toml
More file actions
72 lines (71 loc) · 3.13 KB
/
Copy pathrust-toolchain.toml
File metadata and controls
72 lines (71 loc) · 3.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# Toolchain-Pinning.
#
# Bootstrap- und Proof-Era: stable Rust 1.88.0, siehe
# 04_safety_by_architecture.md §5.
# In Expansion-Era (Track B) wird dies auf einen Ferrocene-Channel
# umgestellt. Der Switch ist als 1-Zeilen-Config-Aenderung in dieser
# Datei isoliert.
#
# ### Warum 1.88.0?
#
# 1.88.0 ist die rustc-Version, auf der **Ferrocene 25.08.0** basiert
# (qualifiziert ISO 26262 ASIL-D / IEC 61508 SIL-3 / IEC 62304). Damit
# bleibt der Track-B-Switch eine 1-Zeilen-Aenderung; keine
# MSRV-rueckwaerts-Migration noetig.
#
# Vorgaenger-Pinning war 1.85 (vor Ferrocene-25.05-Release gewaehlt) —
# upstream-Crates (`home@0.5.12`, `icu_*@2.2.0`) haben MSRV inzwischen
# auf 1.86/1.88 angehoben, daher Bump auf den naechstgelegenen
# Ferrocene-aligned-Channel.
#
# ### Ferrocene Release-Map (Stand 2026-05)
#
# Quelle: https://public-docs.ferrocene.dev/main/release-notes/
#
# | Ferrocene | rustc | Status |
# |-----------|----------------|-------------------------|
# | 26.02.0 | 1.91 + 1.92 | qualifiziert (latest) |
# | 25.11.0 | 1.89 + 1.90 | qualifiziert |
# | 25.08.0 | 1.87 + **1.88**| qualifiziert ← uns |
# | 25.05.0 | 1.86 | qualifiziert |
# | 25.02.0 | 1.82 + 1.83 | qualifiziert |
# | 24.11.0 | aelter | qualifiziert (LTS-style)|
#
# ### Ferrocene 25.08.0 — qualifizierte Compilation-Targets
#
# Quelle: https://public-docs.ferrocene.dev/main/user-manual/targets/
#
# **Qualified (ISO 26262 ASIL-D / IEC 61508 SIL-3 / IEC 62304):**
# * `aarch64-unknown-none` — Armv8-A bare-metal hard-float
# * `aarch64-unknown-linux-gnu` — Armv8-A Linux glibc (Host)
# * `aarch64-rhivos2-linux-gnu` — Armv8-A RHIVOS 2 Linux glibc
# * `aarch64-unknown-nto-qnx710` — Armv8-A QNX Neutrino 7.1
# * `thumbv7em-none-eabi` — Armv7E-M bare-metal soft-float
# * `thumbv7em-none-eabihf` — Armv7E-M bare-metal hard-float
# * `x86_64-unknown-linux-gnu` — x86-64 Linux glibc (Host)
# * `x86_64-pc-nto-qnx710` — x86-64 QNX Neutrino 7.1
#
# **Quality Managed (host-only, nicht safety-zertifiziert):**
# * `aarch64-apple-darwin` — Apple Silicon macOS (Dev-Hosts)
#
# ZeroDDS-Targets-Liste unten enthaelt nur die, gegen die wir aktiv
# bauen / testen. `rt-linux`-Crate (RT-Scheduler) wird auf x86_64+aarch64
# Linux gebaut, `no-std`-Smoke auf thumbv7em-none-eabihf, der
# Workspace-Default ist x86_64-unknown-linux-gnu.
[toolchain]
channel = "1.88.0"
components = ["rustfmt", "clippy", "rust-src", "llvm-tools-preview"]
targets = [
# Qualified Linux hosts (Ferrocene 25.08.0).
"x86_64-unknown-linux-gnu",
"aarch64-unknown-linux-gnu",
# Qualified Embedded — no-std-Smoke + zukuenftige Embedded-Builds.
"thumbv7em-none-eabihf",
]
# Minimal-Profil — keine rust-docs/rust-analyzer/etc. mit-syncen.
# Spart in der CI ~30 s pro Job (das Image preinstalled exakt diese
# Toolchain mit identischem Profile, daher kein rustup-Resync mehr
# beim ersten `rustc --version`-Call). Lokale Dev-Setups, die
# rust-docs offline brauchen, koennen sie per
# `rustup component add rust-docs` nachladen.
profile = "minimal"