diff options
author | Alex Martens <alex@thinglab.org> | 2022-10-07 07:35:29 -0700 |
---|---|---|
committer | Alex Martens <alex@thinglab.org> | 2022-10-07 07:35:29 -0700 |
commit | bac7ee3208209cca6d8c58ade2f25e3f91053848 (patch) | |
tree | d6fbfa6d24bf5c4373af68af0961d896f712f611 /pkgs/build-support | |
parent | 8e9a77e2b52fe5dda0121594b6e15d970cf60723 (diff) |
rustc: fix build for no_std targets
Diffstat (limited to 'pkgs/build-support')
-rw-r--r-- | pkgs/build-support/rust/lib/default.nix | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/pkgs/build-support/rust/lib/default.nix b/pkgs/build-support/rust/lib/default.nix index 2be0c25678798..5eac208cc31ca 100644 --- a/pkgs/build-support/rust/lib/default.nix +++ b/pkgs/build-support/rust/lib/default.nix @@ -38,4 +38,9 @@ rec { if platform ? rustc.platform then builtins.toFile (toRustTarget platform + ".json") (builtins.toJSON platform.rustc.platform) else toRustTarget platform; + + # Returns true if the target is no_std + # https://github.com/rust-lang/rust/blob/2e44c17c12cec45b6a682b1e53a04ac5b5fcc9d2/src/bootstrap/config.rs#L415-L421 + IsNoStdTarget = platform: let rustTarget = toRustTarget platform; in + builtins.any (t: lib.hasInfix t rustTarget) ["-none" "nvptx" "switch" "-uefi"]; } |