nix-config/pkgs/havm/default.nix

32 lines
927 B
Nix

{ lib, fetchurl, ghc, stdenv, which }:
stdenv.mkDerivation rec {
pname = "havm";
version = "0.28";
src = fetchurl {
url = "https://www.lrde.epita.fr/~tiger/download/${pname}-${version}.tar.gz";
sha256 = "sha256-FDi4FZ8rjGqRkFlROtcJsv+mks7MmIXQGV4bZrwkQrA=";
};
buildInputs = [
ghc
which # Used by tests
];
doCheck = true;
meta = with lib; {
description = "A simple virtual machine to execute Andrew Appel's HIR/LIR";
longDescription = ''
HAVM is a virtual machine designed to execute simple register based high
level intermediate code. It is based on the intermediate representations
("canonicalized" or not) defined by Andrew Appel in his "Modern Compiler
Implementation".
'';
homepage = "https://www.lrde.epita.fr/wiki/Havm";
license = licenses.gpl2Plus;
platforms = platforms.all;
maintainers = with maintainers; [ ambroisie ];
};
}