|
8 | 8 | # option. This file may not be copied, modified, or distributed
|
9 | 9 | # except according to those terms.
|
10 | 10 |
|
11 |
| -# <help> |
| 11 | +# <help> \(^o^)/ |
12 | 12 | #
|
13 |
| -# # The Rust Build System |
| 13 | +# Greetings, adventurer! The Rust Build System is at your service. |
| 14 | +# |
| 15 | +# Whether you want a genuine copy of `rustc`, access to the latest and |
| 16 | +# most authoritative Rust documentation, or even to investigate the |
| 17 | +# most intimate workings of the compiler itself, you've come to the |
| 18 | +# right place. Let's see what's on the menu. |
| 19 | +# |
| 20 | +# First, start with one of these build targets: |
| 21 | +# |
| 22 | +# * all - The default. Builds a complete, bootstrapped compiler. |
| 23 | +# `rustc` will be in `${target-triple}/stage2/bin/`. Run it |
| 24 | +# directly from the build directory if you like. This also |
| 25 | +# comes with docs in `doc/`. |
| 26 | +# |
| 27 | +# * check - Run the complete test suite |
| 28 | +# |
| 29 | +# * install - Install Rust. Note that installation is not necessary |
| 30 | +# to use the compiler. |
| 31 | +# |
| 32 | +# * uninstall - Uninstall the binaries |
| 33 | +# |
| 34 | +# For hot tips on working with The Rust Build System, just: |
| 35 | +# |
| 36 | +# type `make hot-tips` |
| 37 | +# |
| 38 | +# Otherwise |
| 39 | +# |
| 40 | +# type `make` |
| 41 | +# |
| 42 | +# </help> |
| 43 | +# |
| 44 | +# <hottips> |
| 45 | +# |
| 46 | +# # The Rust Build System Tip Line |
| 47 | +# |
| 48 | +# There are a bazillion different targets you might want to build. Here |
| 49 | +# are a few ideas. |
14 | 50 | #
|
15 |
| -# Start with these these build targets: |
16 |
| -# |
17 |
| -# * all - The default rule. Builds a complete stage2 compiler, std, |
18 |
| -# and extra for all hosts and targets |
19 |
| -# * docs - Generate HTML documentation for the std and extra libraries |
20 |
| -# from source code comments |
21 |
| -# * rustc - The stage 2 compiler for the build platform with standard |
22 |
| -# and extra libraries |
23 |
| -# * install |
24 |
| -# * uninstall |
25 |
| -# * check - Run tests |
26 |
| -# * check-stage1-$(crate) - Run tests for a crate, e.g. `check-stage1-std` |
27 |
| -# * check-stage1-rpass - Run the language tests |
28 |
| -# * check-docs - Run the doc tests |
| 51 | +# * docs - Build gobs of HTML documentation and put it into `doc/` |
| 52 | +# * check-$(crate) - Test a crate, e.g. `check-std` |
| 53 | +# * check-ref - Run the language reference tests |
| 54 | +# * check-docs - Test the documentation examples |
| 55 | +# |
| 56 | +# TODO: Lots more |
29 | 57 | #
|
30 | 58 | # Then mix in some of these environment variables to harness the
|
31 |
| -# ultimate power of Rust Build System. |
32 |
| -# |
33 |
| -# * `VERBOSE=1` - Print all commands. Use this to see what's going on. |
34 |
| -# * `RUSTFLAGS=...` - Add compiler flags to all `rustc` invocations |
35 |
| -# * `CFG_ENABLE_VALGRIND=1` - Run tests under valgrind |
36 |
| -# * `VALGRIND_COMPILE=1` - Run the compiler itself under valgrind |
37 |
| -# (may require `CFG_ENABLE_VALGRIND`) |
38 |
| -# * `NO_REBUILD=1` - Don't rebootstrap when testing std |
39 |
| -# (and possibly other crates) |
40 |
| -# * `NO_MKFILE_DEPS=1` - Don rebuild for modified .mk files |
41 |
| -# * `SAVE_TEMPS=1` - Use `--save-temps` flag on all `rustc` invocations |
42 |
| -# * `ASM_COMMENTS=1` - Use `-Z asm-comments` |
43 |
| -# * `TIME_PASSES=1` - Use `-Z time-passes` |
44 |
| -# * `TIME_LLVM_PASSES=1` - Use `-Z time-llvm-passes` |
45 |
| -# * `TRACE=1` - Use `-Z trace` |
| 59 | +# ultimate power of The Rust Build System. |
| 60 | +# |
| 61 | +# * `VERBOSE=1` - Print all commands. Use this to see what's going on. |
| 62 | +# * `RUSTFLAGS=...` - Add compiler flags to all `rustc` invocations |
| 63 | +# |
| 64 | +# * `TESTNAME=...` - Specify the name of tests to run |
| 65 | +# * `CHECK_IGNORED=1` - Run normally-ignored tests |
| 66 | +# * `NO_BENCH=1` - Don't run crate benchmarks (disable `--bench` flag) |
| 67 | +# |
| 68 | +# * `CFG_ENABLE_VALGRIND=1` - Run tests under valgrind |
| 69 | +# * `VALGRIND_COMPILE=1` - Run the compiler itself under valgrind |
| 70 | +# (may require `CFG_ENABLE_VALGRIND`) |
| 71 | +# |
| 72 | +# * `NO_REBUILD=1` - Don't rebootstrap when testing std |
| 73 | +# (and possibly other crates) |
| 74 | +# * `NO_MKFILE_DEPS=1` - Don rebuild for modified .mk files |
| 75 | +# |
| 76 | +# * `SAVE_TEMPS=1` - Use `--save-temps` flag on all `rustc` invocations |
| 77 | +# * `ASM_COMMENTS=1` - Use `-Z asm-comments` |
| 78 | +# * `TIME_PASSES=1` - Use `-Z time-passes` |
| 79 | +# * `TIME_LLVM_PASSES=1` - Use `-Z time-llvm-passes` |
| 80 | +# * `TRACE=1` - Use `-Z trace` |
46 | 81 | #
|
47 | 82 | # This is hardly all there is to know of The Rust Build System's
|
48 |
| -# mysteries. Your journey continues on the wiki[1][2]. |
| 83 | +# mysteries. The tale continues on the wiki[1][2]. |
49 | 84 | #
|
50 | 85 | # [1]: https://github.com/mozilla/rust/wiki/Note-build-system
|
51 | 86 | # [2]: https://github.com/mozilla/rust/wiki/Note-testsuite
|
52 | 87 | #
|
53 |
| -# </help> |
| 88 | +# Unless you feel like getting your hands dirty, then: |
| 89 | +# |
| 90 | +# don't type `make nitty-gritty` |
| 91 | +# |
| 92 | +# </hottips> |
| 93 | +# |
| 94 | +# <nittygritty> |
| 95 | +# |
| 96 | +# # The Rust Build System |
| 97 | +# |
| 98 | +# Gosh I wish there was something useful here (TODO). |
54 | 99 | #
|
55 | 100 | # # An (old) explanation of how the build is structured:
|
56 | 101 | #
|
57 | 102 | # *Note: Hey, like, this is probably inaccurate, and is definitely
|
58 | 103 | # an outdated and insufficient explanation of the remarkable
|
59 |
| -# and discomfiting Rust Build System.* |
| 104 | +# Rust Build System.* |
60 | 105 | #
|
61 | 106 | # There are multiple build stages (0-3) needed to verify that the
|
62 | 107 | # compiler is properly self-hosting. Each stage is divided between
|
|
99 | 144 | # will just link against the libraries in the target lib directory.
|
100 | 145 | #
|
101 | 146 | # Admittedly this is a little convoluted.
|
| 147 | +# |
| 148 | +# </nittygritty> |
| 149 | +# |
102 | 150 |
|
103 | 151 | ######################################################################
|
104 | 152 | # Primary rules
|
|
0 commit comments