Skip to main content Module builder Copy item path Source use std::any::Any ; π use std::any::type_name ; π use std::cell::Cell ; π use std::cell::RefCell ; π use std::collections::BTreeSet ; π use std::fmt::Debug ; π use std::fmt::Debug ; π use std::fmt::Write ; π use std::hash::Hash ; π use std::hash::Hash ; π use std::ops::Deref ; π use std::path::Path ; π use std::path::PathBuf ; π use std::sync::OnceLock ; π use std::time::Duration ; π use std::time::Instant ; π use std::env ; π use std::env ; π use std::fs ; π use std::iter ; π use clap::ValueEnum; π pub(crate) use self::cargo::Cargo ; π pub(crate) use self::cargo::apply_pgo ; π pub(crate) use self::cargo::cargo_profile_var ; π use crate::core::build_steps::compile::Std ; π use crate::core::build_steps::compile::StdLink ; π use crate::core::build_steps::compile::looks_like_codegen_backend ; π use crate::core::build_steps::llvm::LlvmKind ; π use crate::core::build_steps::llvm::get_llvm_build_status ; π use crate::core::build_steps::tool::RustcPrivateCompilers ; π use crate::core::build_steps::check ; π use crate::core::build_steps::clean ; π use crate::core::build_steps::clippy ; π use crate::core::build_steps::compile ; π use crate::core::build_steps::dist ; π use crate::core::build_steps::doc ; π use crate::core::build_steps::gcc ; π use crate::core::build_steps::install ; π use crate::core::build_steps::llvm ; π use crate::core::build_steps::run ; π use crate::core::build_steps::setup ; π use crate::core::build_steps::test ; π use crate::core::build_steps::tool ; π use crate::core::build_steps::vendor ; π use crate::core::builder::step_stack::StepRecord ; π pub use crate::core::builder::step_stack::StepStack ;use crate::core::compiler::Compiler ; π use crate::core::config::flags::Subcommand ; π use crate::core::config::DryRun ; π use crate::core::config::TargetSelection ; π use crate::core::metadata::Crate ; π use crate::core::session::Session ; π use crate::trace ; π use crate::utils::build_stamp::BuildStamp ; π use crate::utils::cache::Cache ; π use crate::utils::exec::BootstrapCommand ; π use crate::utils::exec::ExecutionContext ; π use crate::utils::exec::command ; π use crate::utils::helpers ; π use crate::utils::helpers::LldThreads ; π use crate::utils::helpers::add_dylib_path ; π use crate::utils::helpers::exe ; π use crate::utils::helpers::libdir ; π use crate::utils::helpers::linker_args ; π use crate::utils::helpers::t ; π use crate::utils::tracing::format_location ; π cargo π cli_paths π Various pieces of code for dealing with βpathsβ passed to bootstrap on the
command-line, extracted from core/builder/mod.rs because that file is
large and hard to navigate. step_stack π Builder π Builds and performs different Self::kind s of stuff and actions, taking
into account build configuration from e.g. bootstrap.toml. CommandLineStepDescription π Libdir π RunConfig ShouldRun Builder that allows steps to register command-line paths/aliases that
should cause those steps to be run. StepMetadata π Metadata that describes an executed step, mostly for testing and tracing. TaskPath Alias Kind PathSet Collection of paths used to match a task rule. AnyDebug This trait is similar to Any, except that it also exposes the underlying
typeβs Debug implementation. CommandLineStep π A Step that can be selected by command-line arguments. Step π A unit of work within bootstrap that is cached to avoid redundant execution.
Steps can be performed via Builder::ensure . crate_description A description of the crates in this set, suitable for passing to builder.info. pretty_print_step π pretty_step_name Return qualified step name, e.g. compile::Rustc. step_debug_args π Renders step using its Debug implementation and extract the field arguments out of it.