diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2020-11-16 09:01:53 +0100 |
---|---|---|
committer | Frederik Rietdijk <fridh@fridh.nl> | 2020-11-16 09:01:53 +0100 |
commit | 986c2d36da97856f392dd66d265b7646b32fa3b9 (patch) | |
tree | caac503026c928b9dacd517c229e234dc66d47f6 /lib/systems | |
parent | da6239dab3d712aa335fd0928c4e64f9599fef73 (diff) | |
parent | 300846f3c982ffc3e54775fa99b4ec01d56adf65 (diff) | |
download | nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.tar nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.tar.gz nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.tar.bz2 nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.tar.lz nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.tar.xz nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.tar.zst nixpkgs-986c2d36da97856f392dd66d265b7646b32fa3b9.zip |
Merge master into staging-next
Diffstat (limited to 'lib/systems')
-rw-r--r-- | lib/systems/doubles.nix | 3 | ||||
-rw-r--r-- | lib/systems/examples.nix | 5 | ||||
-rw-r--r-- | lib/systems/inspect.nix | 1 | ||||
-rw-r--r-- | lib/systems/parse.nix | 33 |
4 files changed, 28 insertions, 14 deletions
diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix index 5cd203efc4a..b0bc7dd1188 100644 --- a/lib/systems/doubles.nix +++ b/lib/systems/doubles.nix @@ -37,6 +37,8 @@ let "vc4-none" "or1k-none" + "mmix-mmixware" + "js-ghcjs" "aarch64-genode" "i686-genode" "x86_64-genode" @@ -57,6 +59,7 @@ in { i686 = filterDoubles predicates.isi686; x86_64 = filterDoubles predicates.isx86_64; mips = filterDoubles predicates.isMips; + mmix = filterDoubles predicates.isMmix; riscv = filterDoubles predicates.isRiscV; vc4 = filterDoubles predicates.isVc4; or1k = filterDoubles predicates.isOr1k; diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix index 9a813b14cc2..b824bea6c20 100644 --- a/lib/systems/examples.nix +++ b/lib/systems/examples.nix @@ -109,6 +109,11 @@ rec { platform = platforms.riscv-multiplatform "32"; }; + mmix = { + config = "mmix-unknown-mmixware"; + libc = "newlib"; + }; + msp430 = { config = "msp430-elf"; libc = "newlib"; diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix index ac483941dd2..d2b7271210c 100644 --- a/lib/systems/inspect.nix +++ b/lib/systems/inspect.nix @@ -17,6 +17,7 @@ rec { isAarch32 = { cpu = { family = "arm"; bits = 32; }; }; isAarch64 = { cpu = { family = "arm"; bits = 64; }; }; isMips = { cpu = { family = "mips"; }; }; + isMmix = { cpu = { family = "mmix"; }; }; isRiscV = { cpu = { family = "riscv"; }; }; isSparc = { cpu = { family = "sparc"; }; }; isWasm = { cpu = { family = "wasm"; }; }; diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index eadeb38c723..a06ac0d11f7 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -93,6 +93,8 @@ rec { mips64 = { bits = 64; significantByte = bigEndian; family = "mips"; }; mips64el = { bits = 64; significantByte = littleEndian; family = "mips"; }; + mmix = { bits = 64; significantByte = bigEndian; family = "mmix"; }; + powerpc = { bits = 32; significantByte = bigEndian; family = "power"; }; powerpc64 = { bits = 64; significantByte = bigEndian; family = "power"; }; powerpc64le = { bits = 64; significantByte = littleEndian; family = "power"; }; @@ -270,19 +272,20 @@ rec { kernels = with execFormats; with kernelFamilies; setTypes types.openKernel { # TODO(@Ericson2314): Don't want to mass-rebuild yet to keeping 'darwin' as # the nnormalized name for macOS. - macos = { execFormat = macho; families = { inherit darwin; }; name = "darwin"; }; - ios = { execFormat = macho; families = { inherit darwin; }; }; - freebsd = { execFormat = elf; families = { inherit bsd; }; }; - linux = { execFormat = elf; families = { }; }; - netbsd = { execFormat = elf; families = { inherit bsd; }; }; - none = { execFormat = unknown; families = { }; }; - openbsd = { execFormat = elf; families = { inherit bsd; }; }; - solaris = { execFormat = elf; families = { }; }; - wasi = { execFormat = wasm; families = { }; }; - redox = { execFormat = elf; families = { }; }; - windows = { execFormat = pe; families = { }; }; - ghcjs = { execFormat = unknown; families = { }; }; - genode = { execFormat = elf; families = { }; }; + macos = { execFormat = macho; families = { inherit darwin; }; name = "darwin"; }; + ios = { execFormat = macho; families = { inherit darwin; }; }; + freebsd = { execFormat = elf; families = { inherit bsd; }; }; + linux = { execFormat = elf; families = { }; }; + netbsd = { execFormat = elf; families = { inherit bsd; }; }; + none = { execFormat = unknown; families = { }; }; + openbsd = { execFormat = elf; families = { inherit bsd; }; }; + solaris = { execFormat = elf; families = { }; }; + wasi = { execFormat = wasm; families = { }; }; + redox = { execFormat = elf; families = { }; }; + windows = { execFormat = pe; families = { }; }; + ghcjs = { execFormat = unknown; families = { }; }; + genode = { execFormat = elf; families = { }; }; + mmixware = { execFormat = unknown; families = { }; }; } // { # aliases # 'darwin' is the kernel for all of them. We choose macOS by default. darwin = kernels.macos; @@ -384,7 +387,7 @@ rec { else if (elemAt l 1) == "elf" then { cpu = elemAt l 0; vendor = "unknown"; kernel = "none"; abi = elemAt l 1; } else { cpu = elemAt l 0; kernel = elemAt l 1; }; - "3" = # Awkwards hacks, beware! + "3" = # Awkward hacks, beware! if elemAt l 1 == "apple" then { cpu = elemAt l 0; vendor = "apple"; kernel = elemAt l 2; } else if (elemAt l 1 == "linux") || (elemAt l 2 == "gnu") @@ -395,6 +398,8 @@ rec { then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = "wasi"; } else if (elemAt l 2 == "redox") then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = "redox"; } + else if (elemAt l 2 == "mmixware") + then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = "mmixware"; } else if hasPrefix "netbsd" (elemAt l 2) then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = elemAt l 2; } else if (elem (elemAt l 2) ["eabi" "eabihf" "elf"]) |