@ -58,7 +58,7 @@ let
else if ( with targetPlatform ; isArm && isLinux ) then " ${ libc_lib } / l i b / l d - l i n u x * . s o . 3 "
else if targetPlatform . system == " a a r c h 6 4 - l i n u x " then " ${ libc_lib } / l i b / l d - l i n u x - a a r c h 6 4 . s o . 1 "
else if targetPlatform . system == " p o w e r p c - l i n u x " then " ${ libc_lib } / l i b / l d . s o . 1 "
else if targetPlatform . system == " m i p s 6 4 e l - l i n u x " then " ${ libc_lib } / l i b / l d . s o . 1 "
else if targetPlatform . isMips then " ${ libc_lib } / l i b / l d . s o . 1 "
else if targetPlatform . isDarwin then " / u s r / l i b / d y l d "
else if stdenv . lib . hasSuffix " p c - g n u " targetPlatform . config then " l d . s o . 1 "
else null ;
@ -171,13 +171,20 @@ stdenv.mkDerivation {
else if targetPlatform . isWindows then " p e "
else " e l f " + toString targetPlatform . parsed . cpu . bits ;
endianPrefix = if targetPlatform . isBigEndian then " b i g " else " l i t t l e " ;
sep = optionalString ( targetPlatform . isx86 || targetPlatform . isArm ) " - " ;
arch =
/* */ if targetPlatform . isAarch64 then endianPrefix + " a a r c h 6 4 "
else if targetPlatform . isArm then endianPrefix + " a r m "
else if targetPlatform . isx86_64 then " x 8 6 - 6 4 "
else if targetPlatform . isi686 then " i 3 8 6 "
else if targetPlatform . isMips then {
" m i p s " = " b t s m i p n 3 2 " ; # n32 variant
" m i p s e l " = " l t s m i p n 3 2 " ; # n32 variant
" m i p s 6 4 " = " b t s m i p " ;
" m i p s 6 4 e l " = " l t s m i p " ;
} . ${ targetPlatform . parsed . cpu . name }
else throw " u n k n o w n e m u l a t i o n f o r p l a t f o r m : " + targetPlatform . config ;
in targetPlatform . platform . bfdEmulation or ( fmt + " - " + arch ) ;
in targetPlatform . platform . bfdEmulation or ( fmt + sep + arch ) ;
depsTargetTargetPropagated = extraPackages ;