nix-config/pkgs/havm/default.nix
Bruno BELANYI e438b7b5f5 pkgs: add havm
This is a dependency for Tiger Compiler [1].

[1]: https://assignments.lrde.epita.fr/
2021-04-25 12:39:17 +00:00

31 lines
876 B
Nix

{ fetchurl, ghc, lib, 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;
};
}