pub struct Assemble {
pub target_compiler: Compiler,
}
Expand description
Prepare a compiler sysroot.
The sysroot may contain various things useful for running the compiler, like linkers and linker wrappers (LLD, LLVM bitcode linker, etc.).
This will assemble a compiler in build/$target/stage$stage
.
Fields§
§target_compiler: Compiler
The compiler which we will produce in this step. Assemble itself will take care of ensuring that the necessary prerequisites to do so exist, that is, this can be e.g. a stage2 compiler and Assemble will build the previous stages for you.
Trait Implementations§
Source§impl Step for Assemble
impl Step for Assemble
Source§const IS_HOST: bool = true
const IS_HOST: bool = true
If this value is true, then the values of
run.target
passed to the make_run
function of
this Step will be determined based on the --host
flag.
If this value is false, then they will be determined based on the --target
flag. Read moreSource§fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_>
fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_>
Determines if this
Step
should be run when given specific paths (e.g., x build $path
).Source§fn make_run(run: RunConfig<'_>)
fn make_run(run: RunConfig<'_>)
Called directly by the bootstrap
Step
handler when not triggered indirectly by other Step
s 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
.Source§fn run(self, builder: &Builder<'_>) -> Compiler
fn run(self, builder: &Builder<'_>) -> Compiler
Primary function to implement
Step
logic. Read moreSource§const DEFAULT: bool = false
const DEFAULT: bool = false
Whether this step is run by default as part of its respective phase, as defined by the
describe
macro in Builder::get_step_descriptions
. Read moreSource§fn metadata(&self) -> Option<StepMetadata>
fn metadata(&self) -> Option<StepMetadata>
Returns metadata of the step, for tests
impl Eq for Assemble
impl StructuralPartialEq for Assemble
Auto Trait Implementations§
impl Freeze for Assemble
impl RefUnwindSafe for Assemble
impl Send for Assemble
impl Sync for Assemble
impl Unpin for Assemble
impl UnwindSafe for Assemble
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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: 40 bytes