Add docs for x.py setup

This commit is contained in:
Joshua Nelson 2020-09-26 16:05:06 -04:00 committed by Tshepang Lekhonkhobe
parent 3ac6fc75ef
commit edc31ef0bc
1 changed files with 20 additions and 13 deletions

View File

@ -126,22 +126,29 @@ this chapter for more info][config].
In the top level of the repo: In the top level of the repo:
```sh ```sh
cp config.toml.example config.toml $ x.py setup
``` ```
Then, edit `config.toml`. You may want to search for, uncomment, and update This will walk you through an interactive setup for x.py that looks like this:
the following settings:
- `debug = true`: enables debug symbols and `debug!` logging, takes a bit longer to compile. ```
- `incremental = true`: enables incremental compilation of the compiler itself, $ x.py setup
which can significantly speed things up. This is turned off by default Welcome to the Rust project! What do you want to do with x.py?
because it's technically unsound; sometimes it will cause weird crashes. a) Contribute to the standard library
Also, it can consume a lot of disk space. This has the same effect as the b) Contribute to the compiler
`-i` or `--incremental` flags. c) Contribute to the compiler, and also modify LLVM or codegen
- `llvm-config`: enables building with system LLVM. [See this chapter][sysllvm] d) Install Rust from source
for more info. This avoids building LLVM, which can take a while (45 minutes Please choose one (a/b/c/d): a
on my laptop; others have reported 15 minutes or faster with incremental `x.py` will now use the configuration at /home/joshua/rustc2/src/bootstrap/defaults/config.toml.library
compilation). To get started, try one of the following commands:
- `x.py check`
- `x.py build`
- `x.py test library/std`
- `x.py doc`
For more suggestions, see https://rustc-dev-guide.rust-lang.org/building/suggested.html
```
You may also want to set up [system LLVM][sysllvm] to avoid building LLVM from source.
[sysllvm]: ./building/suggested.html#building-with-system-llvm [sysllvm]: ./building/suggested.html#building-with-system-llvm