summary refs log tree commit diff
path: root/pkgs/build-support/bintools-wrapper
diff options
context:
space:
mode:
authorCrystalGamma <github@crystalgamma.de>2018-08-21 21:31:34 +0200
committerJohn Ericson <mail@JohnEricson.me>2018-08-21 15:31:34 -0400
commit72d161f548701a2a8dab334dee76b63bccc0f07c (patch)
treeb7e2e8d922684bd5b7c3d269454a0a8145a44e46 /pkgs/build-support/bintools-wrapper
parentcb44c3ff4cf2c15c7e870df482126bd09ce46588 (diff)
downloadnixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.tar
nixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.tar.gz
nixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.tar.bz2
nixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.tar.lz
nixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.tar.xz
nixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.tar.zst
nixpkgs-72d161f548701a2a8dab334dee76b63bccc0f07c.zip
[RFC] ppc64le enablement (#45340)
* ppc64le enablement

* gcc, glibc: properly handle __float128

* lib/systems, stdenv: syntax cleanup

* gcc7: remove ugly hack

* gcc: add/update __float128 flags

* stdenv: add another pair of quotes for consistency

* gcc: move __float128 flag for ppc64le-glibc into common/platform-flags.nix
Diffstat (limited to 'pkgs/build-support/bintools-wrapper')
-rw-r--r--pkgs/build-support/bintools-wrapper/default.nix4
1 files changed, 2 insertions, 2 deletions
diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix
index 3635b0ef046..7948f726c62 100644
--- a/pkgs/build-support/bintools-wrapper/default.nix
+++ b/pkgs/build-support/bintools-wrapper/default.nix
@@ -171,7 +171,7 @@ 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.isMips) "-";
+    sep = optionalString (!targetPlatform.isMips && !targetPlatform.isPower) "-";
     arch =
       /**/ if targetPlatform.isAarch64 then endianPrefix + "aarch64"
       else if targetPlatform.isAarch32     then endianPrefix + "arm"
@@ -183,7 +183,7 @@ stdenv.mkDerivation {
           "mips64"   = "btsmip";
           "mips64el" = "ltsmip";
         }.${targetPlatform.parsed.cpu.name}
-      else if targetPlatform.isPowerPC then "powerpc"
+      else if targetPlatform.isPower then if targetPlatform.isBigEndian then "ppc" else "lppc"
       else if targetPlatform.isSparc then "sparc"
       else throw "unknown emulation for platform: " + targetPlatform.config;
     in targetPlatform.platform.bfdEmulation or (fmt + sep + arch);