@@ -95,6 +95,13 @@ static LIST_ENVS: &'static [&'static str] = &[
9595 "musl" ,
9696] ;
9797
98+ // Linux hosts don't indicate clib in uname, however binaries only
99+ // run on boxes with the same clib, as expected.
100+ #[ cfg( all( not( windows) , not( target_env = "musl" ) ) ) ]
101+ const TRIPLE_X86_64_UNKNOWN_LINUX : & ' static str = "x86_64-unknown-linux-gnu" ;
102+ #[ cfg( all( not( windows) , target_env = "musl" ) ) ]
103+ const TRIPLE_X86_64_UNKNOWN_LINUX : & ' static str = "x86_64-unknown-linux-musl" ;
104+
98105// MIPS platforms don't indicate endianness in uname, however binaries only
99106// run on boxes with the same endianness, as expected.
100107// Hence we could distinguish between the variants with compile-time cfg()
@@ -175,7 +182,7 @@ impl TargetTriple {
175182 ( _, b"aarch64" ) if cfg ! ( target_os = "android" ) => Some ( "aarch64-linux-android" ) ,
176183 ( _, b"i686" ) if cfg ! ( target_os = "android" ) => Some ( "i686-linux-android" ) ,
177184 ( _, b"x86_64" ) if cfg ! ( target_os = "android" ) => Some ( "x86_64-linux-android" ) ,
178- ( b"Linux" , b"x86_64" ) => Some ( "x86_64-unknown-linux-gnu" ) ,
185+ ( b"Linux" , b"x86_64" ) => Some ( TRIPLE_X86_64_UNKNOWN_LINUX ) ,
179186 ( b"Linux" , b"i686" ) => Some ( "i686-unknown-linux-gnu" ) ,
180187 ( b"Linux" , b"mips" ) => Some ( TRIPLE_MIPS_UNKNOWN_LINUX_GNU ) ,
181188 ( b"Linux" , b"mips64" ) => Some ( TRIPLE_MIPS64_UNKNOWN_LINUX_GNUABI64 ) ,
0 commit comments