@@ -14,7 +14,7 @@ It must have been written in a different language. In Rust's case it was
14
14
only way to build a modern version of rustc is a slightly less modern
15
15
version.
16
16
17
- This is exactly how ` x.py ` works: it downloads the current ` beta ` release of
17
+ This is exactly how ` x.py ` works: it downloads the current beta release of
18
18
rustc, then uses it to compile the new compiler.
19
19
20
20
## Stages of bootstrapping
@@ -134,10 +134,16 @@ The convention `x.py` uses is that:
134
134
- The "stage (N+1) compiler" is assembled from "stage N artifacts". This
135
135
process is called _ uplifting_ .
136
136
137
- For example, ` x.py build --stage 0 ` means to build with the beta ` rustc ` , and
138
- ` test --stage 0 ` isn't really meaningful (it's not running tests on your changes,
139
- but on ` beta ` , so it always fails). Similarly, ` doc --stage 0 ` means to
140
- document using the beta ` rustdoc ` .
137
+ #### Examples
138
+
139
+ - ` x.py build --stage 0 ` means to build with the beta ` rustc ` .
140
+ - ` x.py doc --stage 0 ` means to document using the beta ` rustdoc ` .
141
+ - ` x.py test --stage 0 library/std ` means to run tests on the standard library
142
+ without building ` rustc ` from source ('build with stage 0, then test the artifacts').
143
+ - ` x.py test --stage 0 src/test/ui ` is not meaningful: it runs tests on the
144
+ _ beta_ compiler and doesn't build ` rustc ` from source.
145
+
146
+ ### Building vs. Running
141
147
142
148
Note that this implies the stage N compiler is _ not_ the same as the compiler
143
149
built by ` build --stage N compiler/rustc ` -- that's 'stage N artifacts'
0 commit comments