Skip to content

Commit 288cabd

Browse files
authored
Rollup merge of #68609 - Zoxc:lld-msvc, r=alexcrichton
Set lld flavor for MSVC to link.exe This enables linking with LLD on Windows with just `-C linker=rust-lld` instead of needing `-C linker=rust-lld -C linker-flavor=lld-link`.
2 parents 95e7342 + 9150b8e commit 288cabd

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

src/librustc_target/spec/windows_msvc_base.rs

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1-
use crate::spec::{LinkArgs, LinkerFlavor, TargetOptions};
1+
use crate::spec::{LinkArgs, LinkerFlavor, LldFlavor, TargetOptions};
22
use std::default::Default;
33

44
pub fn opts() -> TargetOptions {
5+
let pre_args = vec!["/NOLOGO".to_string(), "/NXCOMPAT".to_string()];
56
let mut args = LinkArgs::new();
6-
args.insert(LinkerFlavor::Msvc, vec!["/NOLOGO".to_string(), "/NXCOMPAT".to_string()]);
7+
args.insert(LinkerFlavor::Msvc, pre_args.clone());
8+
args.insert(LinkerFlavor::Lld(LldFlavor::Link), pre_args);
79

810
TargetOptions {
911
function_sections: true,
@@ -21,6 +23,7 @@ pub fn opts() -> TargetOptions {
2123
// language packs, and avoid generating Non-UTF-8 error
2224
// messages if a link error occurred.
2325
link_env: vec![("VSLANG".to_string(), "1033".to_string())],
26+
lld_flavor: LldFlavor::Link,
2427
pre_link_args: args,
2528
crt_static_allows_dylibs: true,
2629
crt_static_respected: true,

0 commit comments

Comments
 (0)