File tree 4 files changed +18
-3
lines changed
4 files changed +18
-3
lines changed Original file line number Diff line number Diff line change @@ -112,6 +112,9 @@ fn main() {
112
112
if let Ok ( host_linker) = env:: var ( "RUSTC_HOST_LINKER" ) {
113
113
cmd. arg ( format ! ( "-Clinker={}" , host_linker) ) ;
114
114
}
115
+ if env:: var_os ( "RUSTC_HOST_FUSE_LD_LLD" ) . is_some ( ) {
116
+ cmd. arg ( "-Clink-args=-fuse-ld=lld" ) ;
117
+ }
115
118
116
119
if let Ok ( s) = env:: var ( "RUSTC_HOST_CRT_STATIC" ) {
117
120
if s == "true" {
Original file line number Diff line number Diff line change @@ -42,11 +42,14 @@ fn main() {
42
42
if env:: var_os ( "RUSTC_FORCE_UNSTABLE" ) . is_some ( ) {
43
43
cmd. arg ( "-Z" ) . arg ( "force-unstable-if-unmarked" ) ;
44
44
}
45
- if let Some ( linker) = env:: var_os ( "RUSTC_TARGET_LINKER " ) {
45
+ if let Some ( linker) = env:: var_os ( "RUSTDOC_LINKER " ) {
46
46
let mut arg = OsString :: from ( "-Clinker=" ) ;
47
47
arg. push ( & linker) ;
48
48
cmd. arg ( arg) ;
49
49
}
50
+ if env:: var_os ( "RUSTDOC_FUSE_LD_LLD" ) . is_some ( ) {
51
+ cmd. arg ( "-Clink-args=-fuse-ld=lld" ) ;
52
+ }
50
53
51
54
// Needed to be able to run all rustdoc tests.
52
55
if let Some ( ref x) = env:: var_os ( "RUSTDOC_RESOURCE_SUFFIX" ) {
Original file line number Diff line number Diff line change @@ -756,7 +756,10 @@ impl<'a> Builder<'a> {
756
756
cmd. env_remove ( "MFLAGS" ) ;
757
757
758
758
if let Some ( linker) = self . linker ( compiler. host ) {
759
- cmd. env ( "RUSTC_TARGET_LINKER" , linker) ;
759
+ cmd. env ( "RUSTDOC_LINKER" , linker) ;
760
+ }
761
+ if self . config . use_lld && !compiler. host . contains ( "msvc" ) {
762
+ cmd. env ( "RUSTDOC_FUSE_LD_LLD" , "1" ) ;
760
763
}
761
764
cmd
762
765
}
@@ -1044,6 +1047,9 @@ impl<'a> Builder<'a> {
1044
1047
if let Some ( host_linker) = self . linker ( compiler. host ) {
1045
1048
cargo. env ( "RUSTC_HOST_LINKER" , host_linker) ;
1046
1049
}
1050
+ if self . config . use_lld && !compiler. host . contains ( "msvc" ) {
1051
+ cargo. env ( "RUSTC_HOST_FUSE_LD_LLD" , "1" ) ;
1052
+ }
1047
1053
1048
1054
if let Some ( target_linker) = self . linker ( target) {
1049
1055
let target = crate :: envify ( & target. triple ) ;
Original file line number Diff line number Diff line change @@ -601,7 +601,10 @@ impl Step for RustdocTheme {
601
601
. env ( "RUSTDOC_REAL" , builder. rustdoc ( self . compiler ) )
602
602
. env ( "RUSTC_BOOTSTRAP" , "1" ) ;
603
603
if let Some ( linker) = builder. linker ( self . compiler . host ) {
604
- cmd. env ( "RUSTC_TARGET_LINKER" , linker) ;
604
+ cmd. env ( "RUSTDOC_LINKER" , linker) ;
605
+ }
606
+ if builder. config . use_lld && !self . compiler . host . contains ( "msvc" ) {
607
+ cmd. env ( "RUSTDOC_FUSE_LD_LLD" , "1" ) ;
605
608
}
606
609
try_run ( builder, & mut cmd) ;
607
610
}
You can’t perform that action at this time.
0 commit comments