I'm opening this up as a tracking issue for all work that needs to happen to get rustbuild, our new build system, turned on by default. The end goal here is to completely jettison our thousands of lines of makefiles and configure scripts for tons and tons of Rust code! Initial support has landed in #31123, but we've still got quite aways to go!
Here's a list of items left that need to be implemented, and help is always appreciated when tackling these! If you want any clarifications or any help on any of these, feel free to reach out to me (acrichto) on IRC.
Documentation
work in progress
Testing
Porting
These should all be verified to work and then ideally we'd add a builder verifying they continue to work!
configure script
Misc
make install + make dist
These are pretty huge portions of the make files, they may take quite some time to migrate over, and it's probably fine to keep them around for now. @brson's plans with multirust-rs and reusable library components may become relevant here as well.
This may be subdivided into a bunch of smaller tasks over time!
Far future (not required)
I'm opening this up as a tracking issue for all work that needs to happen to get rustbuild, our new build system, turned on by default. The end goal here is to completely jettison our thousands of lines of makefiles and configure scripts for tons and tons of Rust code! Initial support has landed in #31123, but we've still got quite aways to go!
Here's a list of items left that need to be implemented, and help is always appreciated when tackling these! If you want any clarifications or any help on any of these, feel free to reach out to me (acrichto) on IRC.
Documentation
work in progress
Testing
Porting
These should all be verified to work and then ideally we'd add a builder verifying they continue to work!
configurescriptMisc
--enable-rustbuild, but not run tests - Add auto builders for rustbuild build system rust-lang-deprecated/rust-buildbot#61make clean- Addmake cleansupport to rustbuild #31591make install+make distThese are pretty huge portions of the make files, they may take quite some time to migrate over, and it's probably fine to keep them around for now. @brson's plans with
multirust-rsand reusable library components may become relevant here as well.This may be subdivided into a bunch of smaller tasks over time!
make dist- rustbuild: Implementmake dist#32237Far future (not required)
src/bootstrap/bootstrap.pybeing called directly (e.g. on MSVC wheremakeisn't available)rustcfor architectures that can themselves not be run. For example a x86_64 host should be able to build an arm compiler (e.g. a full installation tarball) - Enable bootstrapping non-build-machine targets #31884