@@ -21,6 +21,15 @@ const SKIPPED_TARGETS: &[&str] = &[
21
21
"csky-unknown-linux-gnuabiv2hf" ,
22
22
] ;
23
23
24
+ const MAPPED_TARGETS : & [ ( & str , & str ) ] = & [
25
+ ( "armv5te-unknown-linux-uclibcgnueabi" , "armv5te-unknown-linux" ) ,
26
+ ( "mips-unknown-linux-uclibc" , "mips-unknown-linux" ) ,
27
+ ( "mipsel-unknown-linux-uclibc" , "mips-unknown-linux" ) ,
28
+ ( "powerpc-unknown-linux-gnuspe" , "powerpc-unknown-linux-gnu" ) ,
29
+ ( "powerpc-unknown-linux-muslspe" , "powerpc-unknown-linux-musl" ) ,
30
+ ( "x86_64-unknown-l4re-uclibc" , "x86_64-unknown-l4re" ) ,
31
+ ] ;
32
+
24
33
fn main ( ) {
25
34
let minicore_path = run_make_support:: source_root ( ) . join ( "tests/auxiliary/minicore.rs" ) ;
26
35
@@ -39,9 +48,17 @@ fn main() {
39
48
continue ;
40
49
}
41
50
51
+ // Create a new variable to hold either the mapped target or original llvm_target
52
+ let target_to_use = MAPPED_TARGETS
53
+ . iter ( )
54
+ . find ( |& & ( from, _) | from == * llvm_target)
55
+ . map ( |& ( _, to) | to)
56
+ . unwrap_or ( llvm_target) ;
57
+
58
+
42
59
// Run Clang's preprocessor for the relevant target, printing default macro definitions.
43
60
let clang_output =
44
- clang ( ) . args ( & [ "-E" , "-dM" , "-x" , "c" , "/dev/null" , "-target" , & llvm_target ] ) . run ( ) ;
61
+ clang ( ) . args ( & [ "-E" , "-dM" , "-x" , "c" , "/dev/null" , "-target" , & target_to_use ] ) . run ( ) ;
45
62
46
63
let defines = String :: from_utf8 ( clang_output. stdout ( ) ) . expect ( "Invalid UTF-8" ) ;
47
64
0 commit comments