File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -11,18 +11,22 @@ pub(crate) fn get_toolchain_binary(sess: &Session, tool: &str) -> PathBuf {
1111 let linker_file_name =
1212 linker. file_name ( ) . unwrap ( ) . to_str ( ) . expect ( "linker filename should be valid UTF-8" ) ;
1313
14- if linker_file_name == "ld.lld" {
15- if tool != "ld" {
16- linker. set_file_name ( tool)
17- }
14+ let tool_file_name = if linker_file_name == "ld.lld" {
15+ if tool == "ld" { "ld.lld" . to_owned ( ) } else { tool. to_owned ( ) }
16+ } else if let Some ( prefix) = linker_file_name. strip_suffix ( "gcc" ) {
17+ format ! ( "{prefix}{tool}" )
18+ } else if let Some ( prefix) = linker_file_name. strip_suffix ( "clang" ) {
19+ format ! ( "{prefix}{tool}" )
20+ } else if let Some ( prefix) = linker_file_name. strip_suffix ( "cc" ) {
21+ format ! ( "{prefix}{tool}" )
22+ } else if let Some ( prefix) = linker_file_name. strip_suffix ( "ld" ) {
23+ format ! ( "{prefix}{tool}" )
1824 } else {
19- let tool_file_name = linker_file_name
20- . replace ( "ld" , tool)
21- . replace ( "gcc" , tool)
22- . replace ( "clang" , tool)
23- . replace ( "cc" , tool) ;
25+ linker_file_name. to_owned ( )
26+ } ;
2427
25- linker. set_file_name ( tool_file_name)
28+ if tool_file_name != linker_file_name {
29+ linker. set_file_name ( tool_file_name) ;
2630 }
2731
2832 linker
You can’t perform that action at this time.
0 commit comments