diff options
author | John Ericson <Ericson2314@yahoo.com> | 2018-02-27 14:01:15 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-27 14:01:15 -0500 |
commit | dfc5d7835d6e248d3cc83430da941277ae5cabaa (patch) | |
tree | 509a78674cab53cf972b63698d622aea5af7250a /pkgs/build-support | |
parent | ac4e65cee77866d3ea501156223f00e15516772e (diff) | |
parent | 9c50ae6898b2d5dccd6e030c80535fb1a32f703d (diff) | |
download | nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.tar nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.tar.gz nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.tar.bz2 nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.tar.lz nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.tar.xz nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.tar.zst nixpkgs-dfc5d7835d6e248d3cc83430da941277ae5cabaa.zip |
Merge pull request #35247 from telent/mips32
lib, treewide: Add missing MIPS arches, and fix existing usage
Diffstat (limited to 'pkgs/build-support')
-rw-r--r-- | pkgs/build-support/bintools-wrapper/default.nix | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix index 48fd8665cb4..98b40114c69 100644 --- a/pkgs/build-support/bintools-wrapper/default.nix +++ b/pkgs/build-support/bintools-wrapper/default.nix @@ -58,7 +58,7 @@ let else if (with targetPlatform; isArm && isLinux) then "${libc_lib}/lib/ld-linux*.so.3" else if targetPlatform.system == "aarch64-linux" then "${libc_lib}/lib/ld-linux-aarch64.so.1" else if targetPlatform.system == "powerpc-linux" then "${libc_lib}/lib/ld.so.1" - else if targetPlatform.system == "mips64el-linux" then "${libc_lib}/lib/ld.so.1" + else if targetPlatform.isMips then "${libc_lib}/lib/ld.so.1" else if targetPlatform.isDarwin then "/usr/lib/dyld" else if stdenv.lib.hasSuffix "pc-gnu" targetPlatform.config then "ld.so.1" else null; @@ -171,13 +171,20 @@ stdenv.mkDerivation { else if targetPlatform.isWindows then "pe" else "elf" + toString targetPlatform.parsed.cpu.bits; endianPrefix = if targetPlatform.isBigEndian then "big" else "little"; + sep = optionalString (targetPlatform.isx86 || targetPlatform.isArm) "-"; arch = /**/ if targetPlatform.isAarch64 then endianPrefix + "aarch64" else if targetPlatform.isArm then endianPrefix + "arm" else if targetPlatform.isx86_64 then "x86-64" else if targetPlatform.isi686 then "i386" + else if targetPlatform.isMips then { + "mips" = "btsmipn32"; # n32 variant + "mipsel" = "ltsmipn32"; # n32 variant + "mips64" = "btsmip"; + "mips64el" = "ltsmip"; + }.${targetPlatform.parsed.cpu.name} else throw "unknown emulation for platform: " + targetPlatform.config; - in targetPlatform.platform.bfdEmulation or (fmt + "-" + arch); + in targetPlatform.platform.bfdEmulation or (fmt + sep + arch); depsTargetTargetPropagated = extraPackages; |