diff options
Diffstat (limited to 'lib/systems')
-rw-r--r-- | lib/systems/default.nix | 3 | ||||
-rw-r--r-- | lib/systems/examples.nix | 23 | ||||
-rw-r--r-- | lib/systems/flake-systems.nix | 4 | ||||
-rw-r--r-- | lib/systems/parse.nix | 1 | ||||
-rw-r--r-- | lib/systems/platforms.nix | 4 |
5 files changed, 21 insertions, 14 deletions
diff --git a/lib/systems/default.nix b/lib/systems/default.nix index 7e9aadeef72e5..0981122388bb1 100644 --- a/lib/systems/default.nix +++ b/lib/systems/default.nix @@ -81,6 +81,8 @@ let && final.parsed.kernel == platform.parsed.kernel; isCompatible = _: throw "2022-05-23: isCompatible has been removed in favor of canExecute, refer to the 22.11 changelog for details"; # Derived meta-data + useLLVM = final.isFreeBSD || final.isOpenBSD; + libc = /**/ if final.isDarwin then "libSystem" else if final.isMinGW then "msvcrt" @@ -91,6 +93,7 @@ let else if final.isAndroid then "bionic" else if final.isLinux /* default */ then "glibc" else if final.isFreeBSD then "fblibc" + else if final.isOpenBSD then "oblibc" else if final.isNetBSD then "nblibc" else if final.isAvr then "avrlibc" else if final.isGhcjs then null diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix index 8a3726f369682..7e50266748434 100644 --- a/lib/systems/examples.nix +++ b/lib/systems/examples.nix @@ -59,24 +59,24 @@ rec { armv7a-android-prebuilt = { config = "armv7a-unknown-linux-androideabi"; - rustc.config = "armv7-linux-androideabi"; - sdkVer = "28"; - ndkVer = "24"; + rust.rustcTarget = "armv7-linux-androideabi"; + sdkVer = "33"; + ndkVer = "26"; useAndroidPrebuilt = true; } // platforms.armv7a-android; aarch64-android-prebuilt = { config = "aarch64-unknown-linux-android"; - rustc.config = "aarch64-linux-android"; - sdkVer = "28"; - ndkVer = "24"; + rust.rustcTarget = "aarch64-linux-android"; + sdkVer = "33"; + ndkVer = "26"; useAndroidPrebuilt = true; }; aarch64-android = { config = "aarch64-unknown-linux-android"; - sdkVer = "30"; - ndkVer = "24"; + sdkVer = "33"; + ndkVer = "26"; libc = "bionic"; useAndroidPrebuilt = false; useLLVM = true; @@ -207,7 +207,7 @@ rec { aarch64-embedded = { config = "aarch64-none-elf"; libc = "newlib"; - rustc.config = "aarch64-unknown-none"; + rust.rustcTarget = "aarch64-unknown-none"; }; aarch64be-embedded = { @@ -342,6 +342,11 @@ rec { useLLVM = true; }; + x86_64-openbsd = { + config = "x86_64-unknown-openbsd"; + useLLVM = true; + }; + # # WASM # diff --git a/lib/systems/flake-systems.nix b/lib/systems/flake-systems.nix index b1988c6a4fbb0..a68580ff1407b 100644 --- a/lib/systems/flake-systems.nix +++ b/lib/systems/flake-systems.nix @@ -16,12 +16,12 @@ "armv6l-linux" "armv7l-linux" "i686-linux" - "mipsel-linux" + # "mipsel-linux" is excluded because it is not bootstrapped # Other platforms with sufficient support in stdenv which is not formally # mandated by their platform tier. "aarch64-darwin" - "armv5tel-linux" + # "armv5tel-linux" is excluded because it is not bootstrapped "powerpc64le-linux" "riscv64-linux" diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 4890912d7fed4..1d7c95943a794 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -469,6 +469,7 @@ rec { elem (elemAt l 2) [ "wasi" "redox" "mmixware" "ghcjs" "mingw32" ] || hasPrefix "freebsd" (elemAt l 2) || hasPrefix "netbsd" (elemAt l 2) || + hasPrefix "openbsd" (elemAt l 2) || hasPrefix "genode" (elemAt l 2) then { cpu = elemAt l 0; diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix index d2e8f77bec03e..403ffc028f0be 100644 --- a/lib/systems/platforms.nix +++ b/lib/systems/platforms.nix @@ -535,11 +535,9 @@ rec { name = "riscv-multiplatform"; target = "Image"; autoModules = true; + preferBuiltin = true; baseConfig = "defconfig"; DTB = true; - extraConfig = '' - SERIAL_OF_PLATFORM y - ''; }; }; |