Expand description
This module handles building and managing various tools in bootstrap build system.
What It Does
- Defines how tools are built, configured and installed.
- Manages tool dependencies and build steps.
- Copies built tool binaries to the correct locations.
Each Rust tool MUST utilize ToolBuild
inside their Step
logic,
return ToolBuildResult
and should never prepare cargo
invocations manually.
Macrosยง
- bootstrap_
tool ๐ - tool_
extended ๐
Structsยง
- Build
Manifest - Bump
Stage0 - Cargo
- Cargo
Clippy - Cargo
Miri - Cargo
Test - Cargofmt
- Clippy
- Collect
License Metadata - Compiletest
- Coverage
Dump - Error
Index - Features
Status Dump - Generate
Copyright - Generate
Windows Sys - Html
Checker - Json
DocCk - Json
DocLint - Libcxx
Version Tool - Linkchecker
- Lint
Docs - LldWrapper
- Llvm
Bitcode Linker - Miri
- Optimized
Dist - Remote
Test Client - Remote
Test Server - Replace
Version Placeholder - RunMake
Support - Rust
Analyzer - Rust
Analyzer Proc Macro Srv - Rust
Installer - Rustbook
- Rustc
Perf - The rustc-perf benchmark suite, which is added
as a submodule at
src/tools/rustc-perf
. - Rustdoc
- RustdocGUI
Test - Rustdoc
Theme - Rustfmt
- Suggest
Tests - Test
Float Parse - Tidy
- Tool
Build ๐ - Tool
Build Result - Result of the tool build process. Each
Step
in this module is responsible for using this type astype Output = ToolBuildResult;
- Unicode
Table Generator - Unstable
Book Gen - Wasm
Component Ld
Enumsยง
Staticsยง
- SUBMODULES_
FOR_ RUSTBOOK - These are the submodules that are required for rustbook to work due to depending on mdbook plugins.
Functionsยง
- copy_
link_ ๐tool_ bin - Links a built tool binary with the given
name
from the build directory to the tools directory. - get_
tool_ ๐rustc_ compiler - Handle stage-off logic for
ToolRustc
tools when necessary. - prepare_
tool_ cargo - run_
tool_ ๐build_ step - should_
run_ ๐tool_ build_ step