aboutsummaryrefslogtreecommitdiff
path: root/devShells/nuttx.nix
blob: 0105fe560a5f5632381bc746e69a6c4163572e3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{ system, nixpkgs
, default, c
, arch, fpu ? null
}:
with nixpkgs.lib;
let
  pkgs = nixpkgs.legacyPackages.${system};
  pkgs-cross = import nixpkgs.outPath {
    localSystem = system;
    crossSystem = {
      config = "arm-none-eabi" + (optionalString (fpu != null) "hf");
      libc = "newlib";
      gcc = {
        arch = arch;
      } // (optionalAttrs (fpu != null) { fpu = fpu; });
    };
  };

in pkgs.mkShell {
  packages = (with pkgs; [
    kconfig-frontends genromfs xxd
    openocd
  ]) ++ (with pkgs-cross.buildPackages; [
    gcc gdb
  ]);
  inputsFrom = [ default c ];
  meta.platforms = nixpkgs.lib.platforms.linux;
}