summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-01-25 16:30:03 -0500
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-01-26 12:44:05 -0500
commitd1478c91c34287a7c9a94c6027b88b81eb1117f5 (patch)
treea08946097ff4f73f54255a836ca8e5f4b3e647da
parent931a0b8be80661902baefb3e7d55403be893e0e6 (diff)
downloadnixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.tar
nixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.tar.gz
nixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.tar.bz2
nixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.tar.lz
nixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.tar.xz
nixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.tar.zst
nixpkgs-d1478c91c34287a7c9a94c6027b88b81eb1117f5.zip
lib: Allow parsing platform configs with arch of `{riscv,wasm}{32,64}`
Also add `isRiscv` and `isWasm` predicates.
-rw-r--r--lib/systems/inspect.nix7
-rw-r--r--lib/systems/parse.nix4
2 files changed, 9 insertions, 2 deletions
diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index a4fa9af4e0a..3f0335a0adf 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -5,8 +5,6 @@ with lib.lists;
 
 rec {
   patterns = rec {
-    "32bit"      = { cpu = { bits = 32; }; };
-    "64bit"      = { cpu = { bits = 64; }; };
     i686         = { cpu = cpuTypes.i686; };
     x86_64       = { cpu = cpuTypes.x86_64; };
     PowerPC      = { cpu = cpuTypes.powerpc; };
@@ -14,6 +12,11 @@ rec {
     Arm          = { cpu = { family = "arm"; }; };
     Aarch64      = { cpu = { family = "aarch64"; }; };
     Mips         = { cpu = { family = "mips"; }; };
+    RiscV        = { cpu = { family = "riscv"; }; };
+    Wasm         = { cpu = { family = "wasm"; }; };
+
+    "32bit"      = { cpu = { bits = 32; }; };
+    "64bit"      = { cpu = { bits = 64; }; };
     BigEndian    = { cpu = { significantByte = significantBytes.bigEndian; }; };
     LittleEndian = { cpu = { significantByte = significantBytes.littleEndian; }; };
 
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
index d14ca04bfb9..f59549ec2f3 100644
--- a/lib/systems/parse.nix
+++ b/lib/systems/parse.nix
@@ -44,6 +44,10 @@ rec {
     x86_64   = { bits = 64; significantByte = littleEndian; family = "x86"; };
     mips64el = { bits = 32; significantByte = littleEndian; family = "mips"; };
     powerpc  = { bits = 32; significantByte = bigEndian;    family = "power"; };
+    riscv32  = { bits = 32; significantByte = littleEndian; family = "riscv"; };
+    riscv64  = { bits = 64; significantByte = littleEndian; family = "riscv"; };
+    wasm32   = { bits = 32; significantByte = littleEndian; family = "wasm"; };
+    wasm64   = { bits = 64; significantByte = littleEndian; family = "wasm"; };
   };
 
   isVendor = isType "vendor";