@@ -2301,7 +2301,8 @@ impl Build {
2301
2301
if target. contains ( "msvc" ) {
2302
2302
msvc. to_string ( )
2303
2303
} else {
2304
- format ! ( "{}.exe" , gnu)
2304
+ let cc = if target. contains ( "llvm" ) { clang } else { gnu } ;
2305
+ format ! ( "{}.exe" , cc)
2305
2306
}
2306
2307
} else if target. contains ( "apple-ios" ) {
2307
2308
clang. to_string ( )
@@ -2329,7 +2330,10 @@ impl Build {
2329
2330
} else if self . get_host ( ) ? != target {
2330
2331
let prefix = self . prefix_for_target ( & target) ;
2331
2332
match prefix {
2332
- Some ( prefix) => format ! ( "{}-{}" , prefix, gnu) ,
2333
+ Some ( prefix) => {
2334
+ let cc = if target. contains ( "llvm" ) { clang } else { gnu } ;
2335
+ format ! ( "{}-{}" , prefix, cc)
2336
+ }
2333
2337
None => default. to_string ( ) ,
2334
2338
}
2335
2339
} else {
@@ -2634,7 +2638,8 @@ impl Build {
2634
2638
let cc_env = self . getenv ( "CROSS_COMPILE" ) ;
2635
2639
let cross_compile = cc_env. as_ref ( ) . map ( |s| s. trim_end_matches ( '-' ) . to_owned ( ) ) ;
2636
2640
cross_compile. or ( match & target[ ..] {
2637
- "aarch64-pc-windows-gnu" => Some ( "aarch64-w64-mingw32" ) ,
2641
+ // Note: there is no `aarch64-pc-windows-gnu` target, only `-gnullvm`
2642
+ "aarch64-pc-windows-gnullvm" => Some ( "aarch64-w64-mingw32" ) ,
2638
2643
"aarch64-uwp-windows-gnu" => Some ( "aarch64-w64-mingw32" ) ,
2639
2644
"aarch64-unknown-linux-gnu" => Some ( "aarch64-linux-gnu" ) ,
2640
2645
"aarch64-unknown-linux-musl" => Some ( "aarch64-linux-musl" ) ,
@@ -2737,6 +2742,7 @@ impl Build {
2737
2742
"thumbv8m.main-none-eabi" => Some ( "arm-none-eabi" ) ,
2738
2743
"thumbv8m.main-none-eabihf" => Some ( "arm-none-eabi" ) ,
2739
2744
"x86_64-pc-windows-gnu" => Some ( "x86_64-w64-mingw32" ) ,
2745
+ "x86_64-pc-windows-gnullvm" => Some ( "x86_64-w64-mingw32" ) ,
2740
2746
"x86_64-uwp-windows-gnu" => Some ( "x86_64-w64-mingw32" ) ,
2741
2747
"x86_64-rumprun-netbsd" => Some ( "x86_64-rumprun-netbsd" ) ,
2742
2748
"x86_64-unknown-linux-gnu" => self . find_working_gnu_prefix ( & [
0 commit comments