pub struct Rustc {
pub target: TargetSelection,
crates: Vec<String>,
override_build_kind: Option<Kind>,
}Fields§
§target: TargetSelection§crates: Vec<String>Whether to build only a subset of crates.
This shouldn’t be used from other steps; see the comment on compile::Rustc.
override_build_kind: Option<Kind>Override Builder::kind on cargo invocations.
By default, Builder::kind is propagated as the subcommand to the cargo invocations.
However, there are cases when this is not desirable. For example, when running x clippy $tool_name,
passing Builder::kind to cargo invocations would run clippy on the entire compiler and library,
which is not useful if we only want to lint a few crates with specific rules.
Implementations§
Source§impl Rustc
impl Rustc
pub fn new(target: TargetSelection, builder: &Builder<'_>) -> Self
pub fn new_with_build_kind( target: TargetSelection, builder: &Builder<'_>, kind: Option<Kind>, ) -> Self
Trait Implementations§
Source§impl Step for Rustc
impl Step for Rustc
Source§fn run(self, builder: &Builder<'_>)
fn run(self, builder: &Builder<'_>)
Builds the compiler.
This will build the compiler for a particular stage of the build using
the compiler targeting the target architecture. The artifacts
created will also be linked into the sysroot directory.
Source§const ONLY_HOSTS: bool = true
const ONLY_HOSTS: bool = true
Source§const DEFAULT: bool = true
const DEFAULT: bool = true
describe
macro in Builder::get_step_descriptions. Read moreSource§fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_>
fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_>
Step should be run when given specific paths (e.g., x build $path).Source§fn make_run(run: RunConfig<'_>)
fn make_run(run: RunConfig<'_>)
Step handler when not triggered indirectly by other Steps using Builder::ensure.
For example, ./x.py test bootstrap runs this for test::Bootstrap. Similarly, ./x.py test runs it for every step
that is listed by the describe macro in Builder::get_step_descriptions.impl Eq for Rustc
impl StructuralPartialEq for Rustc
Auto Trait Implementations§
impl Freeze for Rustc
impl RefUnwindSafe for Rustc
impl Send for Rustc
impl Sync for Rustc
impl Unpin for Rustc
impl UnwindSafe for Rustc
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)§impl<T> Pointable for T
impl<T> Pointable for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 64 bytes