about summary refs log tree commit diff
path: root/bootstrap.example.toml
diff options
context:
space:
mode:
authorJakub Beránek <berykubik@gmail.com>2025-08-01 17:48:53 +0200
committerJakub Beránek <berykubik@gmail.com>2025-08-08 11:35:10 +0200
commitca6e367e19a96726d36876670b3a2c326046a56d (patch)
tree9079829842b8d76848df5b4fb544bc0da696ffa6 /bootstrap.example.toml
parent929b3bb4c3dead8dffef42c3541b552cfb014d22 (diff)
downloadrust-ca6e367e19a96726d36876670b3a2c326046a56d.tar.gz
rust-ca6e367e19a96726d36876670b3a2c326046a56d.zip
Clarify the behavior of `rust.codegen-backends`
Diffstat (limited to 'bootstrap.example.toml')
-rw-r--r--bootstrap.example.toml18
1 files changed, 13 insertions, 5 deletions
diff --git a/bootstrap.example.toml b/bootstrap.example.toml
index 31966af3301..89da6eeb531 100644
--- a/bootstrap.example.toml
+++ b/bootstrap.example.toml
@@ -740,11 +740,19 @@
 # result (broken, compiling, testing) into this JSON file.
 #rust.save-toolstates = <none> (path)
 
-# This is an array of the codegen backends that will be compiled for the rustc
-# that's being compiled. The default is to only build the LLVM codegen backend,
-# and currently the only standard options supported are `"llvm"`, `"cranelift"`
-# and `"gcc"`. The first backend in this list will be used as default by rustc
-# when no explicit backend is specified.
+# This array serves three distinct purposes:
+# - Backends in this list will be automatically compiled and included in the sysroot of each
+# rustc compiled by bootstrap.
+# - The first backend in this list will be configured as the **default codegen backend** by each
+# rustc compiled by bootstrap. In other words, if the first backend is e.g. cranelift, then when
+# we build a stage 1 rustc, it will by default compile Rust programs using the Cranelift backend.
+# This also means that stage 2 rustc would get built by the Cranelift backend.
+# - Running `x dist` (without additional arguments, or with `--include-default-paths`) will produce
+# a dist component/tarball for the Cranelift backend if it is included in this array.
+#
+# Note that the LLVM codegen backend is special and will always be built and distributed.
+#
+# Currently, the only standard options supported here are `"llvm"`, `"cranelift"` and `"gcc"`.
 #rust.codegen-backends = ["llvm"]
 
 # Indicates whether LLD will be compiled and made available in the sysroot for rustc to execute, and