Skip to content

Commit a72d810

Browse files
committed
Add nix flake
1 parent 6a4fe57 commit a72d810

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

flake.nix

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
{
2+
description = "MEMU";
3+
4+
inputs = {
5+
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
6+
flake-utils.url = "github:numtide/flake-utils";
7+
};
8+
9+
outputs = { self, nixpkgs, flake-utils }@inputs:
10+
flake-utils.lib.eachDefaultSystem
11+
(system:
12+
let
13+
pkgs = import nixpkgs { inherit system;};
14+
deps = with pkgs; [
15+
git
16+
gnumake autoconf automake
17+
cmake ninja
18+
pkgsCross.riscv64-embedded.buildPackages.gcc
19+
];
20+
in
21+
{
22+
legacyPackages = pkgs;
23+
devShell = pkgs.mkShell.override { stdenv = pkgs.clangStdenv; } {
24+
buildInputs = deps;
25+
RV64_TOOLCHAIN_ROOT = "${pkgs.pkgsCross.riscv64-embedded.buildPackages.gcc}";
26+
shellHook = ''
27+
export EMU_CC=$RV64_TOOLCHAIN_ROOT/bin/riscv64-none-elf-gcc
28+
export EMU_OBJCOPY=$RV64_TOOLCHAIN_ROOT/bin/riscv64-none-elf-objcopy
29+
make test-img
30+
unset EMU_CC
31+
unset EMU_OBJCOPY
32+
'';
33+
};
34+
}
35+
)
36+
// { inherit inputs;};
37+
}

0 commit comments

Comments
 (0)