@@ -1158,13 +1158,19 @@ impl Step for Compiletest {
11581158 cmd. arg ( "--quiet" ) ;
11591159 }
11601160
1161+ let mut llvm_components_passed = false ;
1162+ let mut copts_passed = false ;
11611163 if builder. config . llvm_enabled ( ) {
11621164 let llvm_config = builder. ensure ( native:: Llvm { target : builder. config . build } ) ;
11631165 if !builder. config . dry_run {
11641166 let llvm_version = output ( Command :: new ( & llvm_config) . arg ( "--version" ) ) ;
1167+ let llvm_components = output ( Command :: new ( & llvm_config) . arg ( "--components" ) ) ;
11651168 // Remove trailing newline from llvm-config output.
1166- let llvm_version = llvm_version. trim_end ( ) ;
1167- cmd. arg ( "--llvm-version" ) . arg ( llvm_version) ;
1169+ cmd. arg ( "--llvm-version" )
1170+ . arg ( llvm_version. trim ( ) )
1171+ . arg ( "--llvm-components" )
1172+ . arg ( llvm_components. trim ( ) ) ;
1173+ llvm_components_passed = true ;
11681174 }
11691175 if !builder. is_rust_llvm ( target) {
11701176 cmd. arg ( "--system-llvm" ) ;
@@ -1182,15 +1188,13 @@ impl Step for Compiletest {
11821188 // Only pass correct values for these flags for the `run-make` suite as it
11831189 // requires that a C++ compiler was configured which isn't always the case.
11841190 if !builder. config . dry_run && suite == "run-make-fulldeps" {
1185- let llvm_components = output ( Command :: new ( & llvm_config) . arg ( "--components" ) ) ;
11861191 cmd. arg ( "--cc" )
11871192 . arg ( builder. cc ( target) )
11881193 . arg ( "--cxx" )
11891194 . arg ( builder. cxx ( target) . unwrap ( ) )
11901195 . arg ( "--cflags" )
1191- . arg ( builder. cflags ( target, GitRepo :: Rustc ) . join ( " " ) )
1192- . arg ( "--llvm-components" )
1193- . arg ( llvm_components. trim ( ) ) ;
1196+ . arg ( builder. cflags ( target, GitRepo :: Rustc ) . join ( " " ) ) ;
1197+ copts_passed = true ;
11941198 if let Some ( ar) = builder. ar ( target) {
11951199 cmd. arg ( "--ar" ) . arg ( ar) ;
11961200 }
@@ -1220,15 +1224,11 @@ impl Step for Compiletest {
12201224 }
12211225 }
12221226
1223- if suite != "run-make-fulldeps" {
1224- cmd. arg ( "--cc" )
1225- . arg ( "" )
1226- . arg ( "--cxx" )
1227- . arg ( "" )
1228- . arg ( "--cflags" )
1229- . arg ( "" )
1230- . arg ( "--llvm-components" )
1231- . arg ( "" ) ;
1227+ if !llvm_components_passed {
1228+ cmd. arg ( "--llvm-components" ) . arg ( "" ) ;
1229+ }
1230+ if !copts_passed {
1231+ cmd. arg ( "--cc" ) . arg ( "" ) . arg ( "--cxx" ) . arg ( "" ) . arg ( "--cflags" ) . arg ( "" ) ;
12321232 }
12331233
12341234 if builder. remote_tested ( target) {
0 commit comments