mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-17 01:13:11 +00:00
Rollup merge of #127866 - alexcrichton:disable-wasm-component-ld-by-default, r=onur-ozkan
Conditionally build `wasm-component-ld` This commit updates the support for the `wasm-component-ld` tool from #126967 to conditionally build rather than unconditionally building it when LLD is enabled. This support is disabled by default and can be enabled by one of two means: * the `extended` field in `config.toml` which dist builders use to build a complete set of tools for each host platform. * a `"wasm-component-ld"` entry in the `tools` section of `config.toml`. Neither of these are enabled by default meaning that most local builds will likely not have this new tool built. Dist builders should still, however, build the tool.
This commit is contained in:
commit
4f20ee51e1
@ -333,6 +333,7 @@
|
||||
# "rust-analyzer-proc-macro-srv",
|
||||
# "analysis",
|
||||
# "src",
|
||||
# "wasm-component-ld",
|
||||
#]
|
||||
|
||||
# Verbosity level: 0 == not verbose, 1 == verbose, 2 == very verbose, 3 == print environment variables on each rustc invocation
|
||||
|
@ -1820,12 +1820,14 @@ impl Step for Assemble {
|
||||
&self_contained_lld_dir.join(exe(name, target_compiler.host)),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// In addition to `rust-lld` also install `wasm-component-ld` when
|
||||
// LLD is enabled. This is a relatively small binary that primarily
|
||||
// delegates to the `rust-lld` binary for linking and then runs
|
||||
// logic to create the final binary. This is used by the
|
||||
// `wasm32-wasip2` target of Rust.
|
||||
// In addition to `rust-lld` also install `wasm-component-ld` when
|
||||
// LLD is enabled. This is a relatively small binary that primarily
|
||||
// delegates to the `rust-lld` binary for linking and then runs
|
||||
// logic to create the final binary. This is used by the
|
||||
// `wasm32-wasip2` target of Rust.
|
||||
if builder.build_wasm_component_ld() {
|
||||
let wasm_component_ld_exe =
|
||||
builder.ensure(crate::core::build_steps::tool::WasmComponentLd {
|
||||
compiler: build_compiler,
|
||||
|
@ -1414,6 +1414,19 @@ Executed at: {executed_at}"#,
|
||||
None
|
||||
}
|
||||
|
||||
/// Returns whether it's requested that `wasm-component-ld` is built as part
|
||||
/// of the sysroot. This is done either with the `extended` key in
|
||||
/// `config.toml` or with the `tools` set.
|
||||
fn build_wasm_component_ld(&self) -> bool {
|
||||
if self.config.extended {
|
||||
return true;
|
||||
}
|
||||
match &self.config.tools {
|
||||
Some(set) => set.contains("wasm-component-ld"),
|
||||
None => false,
|
||||
}
|
||||
}
|
||||
|
||||
/// Returns the root of the "rootfs" image that this target will be using,
|
||||
/// if one was configured.
|
||||
///
|
||||
|
@ -205,4 +205,9 @@ pub const CONFIG_CHANGE_HISTORY: &[ChangeInfo] = &[
|
||||
severity: ChangeSeverity::Warning,
|
||||
summary: "`debug-logging` option has been removed from the default `tools` profile.",
|
||||
},
|
||||
ChangeInfo {
|
||||
change_id: 127866,
|
||||
severity: ChangeSeverity::Info,
|
||||
summary: "the `wasm-component-ld` tool is now built as part of `build.extended` and can be a member of `build.tools`",
|
||||
},
|
||||
];
|
||||
|
Loading…
Reference in New Issue
Block a user