@@ -108,7 +108,8 @@ root.
108108There are large number of options accepted by this script to alter the
109109configuration used later in the build process. Some options to note:
110110
111- - ` --enable-debug ` - Build a debug version of the compiler (disables optimizations)
111+ - ` --enable-debug ` - Build a debug version of the compiler (disables optimizations,
112+ which speeds up compilation of stage1 rustc)
112113- ` --enable-optimize ` - Enable optimizations (can be used with ` --enable-debug `
113114 to make a debug build with optimizations)
114115- ` --disable-valgrind-rpass ` - Don't run tests with valgrind
@@ -128,6 +129,12 @@ Some common make targets are:
128129 cases we don't need to build the stage2 compiler, so we can save time by not
129130 building it. The stage1 compiler is a fully functioning compiler and
130131 (probably) will be enough to determine if your change works as expected.
132+ - ` make $host/stage1/bin/rustc ` - Where $host is a target triple like x86_64-unknown-linux-gnu.
133+ This will build just rustc, without libstd. This is the fastest way to recompile after
134+ you changed only rustc source code. Note however that the resulting rustc binary
135+ won't have a stdlib to link against by default. You can build libstd once with
136+ ` make rustc-stage1 ` , rustc will pick it up afterwards. libstd is only guaranteed to
137+ work if recompiled, so if there are any issues recompile it.
131138- ` make check ` - build the full compiler & run all tests (takes a while). This
132139 is what gets run by the continuous integration system against your pull
133140 request. You should run this before submitting to make sure your tests pass
0 commit comments