Description
Our build directory contains too many files. Somebody who builds Rust for the first time is probably going to be interested in running rustc
, but where to find it? Let's make it super simple.
This is about the directory structure of our build artifacts, not the source.
First we move the distracting "llvm", "rt", "rustllvm", "tmp" from the top of the build structure to under each target triple. We already build most of these things per target; they have just use a different directory structure than our Rust projects. Now only "config.mk", "config.stamp", "dl", "doc", "Makefile", and the target-triple-named output directories are at the top of the build structure.
Second we create a symlink called "out" that links to $(HOST_TRIPLE)/stage2
. Now after you do a build you just type out/bin/rustc
instead of x86_64-unknown-linux/stage2/bin/rustc
.