Skip to content

Commit b801fab

Browse files
authored
Rollup merge of #128285 - lolbinarycat:rustc-custom-targets, r=jieyouxu
rustc book: document how the RUST_TARGET_PATH variable is used based on the module comment in rust/compiler/rustc_target/src/spec/mod.rs Fixes #128280
2 parents 32f6534 + 5eea6d7 commit b801fab

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/doc/rustc/src/targets/custom.md

+13
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,16 @@ rustc +nightly -Z unstable-options --target=wasm32-unknown-unknown --print targe
1515
```
1616

1717
To use a custom target, see the (unstable) [`build-std` feature](../../cargo/reference/unstable.html#build-std) of `cargo`.
18+
19+
## Custom Target Lookup Path
20+
21+
When `rustc` is given an option `--target=TARGET` (where `TARGET` is any string), it uses the following logic:
22+
1. if `TARGET` is the name of a built-in target, use that
23+
2. if `TARGET` is a path to a file, read that file as a json target
24+
3. otherwise, search the colon-seperated list of directories found
25+
in the `RUST_TARGET_PATH` environment variable from left to right
26+
for a file named `TARGET.json`.
27+
28+
These steps are tried in order, so if there are multple potentially valid
29+
interpretations for a target, whichever is found first will take priority.
30+
If none of these methods find a target, an error is thrown.

0 commit comments

Comments
 (0)