50 lines
766 B
Nix
50 lines
766 B
Nix
|
{ pkgs,
|
||
|
lib,
|
||
|
stdenv
|
||
|
}:
|
||
|
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "nemu";
|
||
|
version = "2024-03-02";
|
||
|
|
||
|
src = ./.;
|
||
|
|
||
|
NEMU_HOME = "/build/nemu";
|
||
|
nativeBuildInputs = with pkgs; [
|
||
|
gnumake
|
||
|
flex
|
||
|
bison
|
||
|
];
|
||
|
|
||
|
buildInputs = with pkgs; [
|
||
|
check
|
||
|
readline
|
||
|
libllvm
|
||
|
];
|
||
|
|
||
|
configurePhase = ''
|
||
|
echo pwd=$(pwd)
|
||
|
make alldefconfig
|
||
|
'';
|
||
|
|
||
|
buildPhase = ''
|
||
|
make
|
||
|
'';
|
||
|
|
||
|
checkPhase = ''
|
||
|
make test
|
||
|
'';
|
||
|
|
||
|
installPhase = ''
|
||
|
mkdir -p $out/bin
|
||
|
make PREFIX=$out install
|
||
|
'';
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "NJU EMUlator, a full system x86/mips32/riscv32/riscv64 emulator for teaching";
|
||
|
homepage = "https://github.com/NJU-ProjectN/nemu.git";
|
||
|
license = with licenses; [ ];
|
||
|
maintainers = with maintainers; [ ];
|
||
|
};
|
||
|
}
|