As incremental compilation gets closer to working, I was thinking we should make it easier to take advantage of it from rustbuild. Under the current setup, we would get some advantage building the stage1 rustc, however, that rustc would then be used to rebuild the libs, and since incremental is not designed to reuse results across rustc compiler versions we would not see many benefits there.
In practice though, unless you are changing the libs, you can reuse your old libs, no problem. Similarly, if you are hacking on the libs, you could probably re-use your stage1 and just rebuild the libs with it. (Or maybe you just want to rebuild the libs with stage0?)
I’m actually not sure what is the best design here.
@arielb1 had some notes on internals with an idea about “rustbuild lock” to kind of declare more persistently that you want to leave something untouched: Brainstorming improvements for new rustc devs
I remember @brson had an idea for defining the current “role”.
Anyway, I am opening this thread to talk about it.