pkgs: add havm
This is a dependency for Tiger Compiler [1]. [1]: https://assignments.lrde.epita.fr/
This commit is contained in:
parent
9a9ec81204
commit
e438b7b5f5
|
@ -1,5 +1,7 @@
|
||||||
{ pkgs }:
|
{ pkgs }:
|
||||||
{
|
{
|
||||||
|
havm = pkgs.callPackage ./havm { };
|
||||||
|
|
||||||
lohr = pkgs.callPackage ./lohr { };
|
lohr = pkgs.callPackage ./lohr { };
|
||||||
|
|
||||||
nolimips = pkgs.callPackage ./nolimips { };
|
nolimips = pkgs.callPackage ./nolimips { };
|
||||||
|
|
30
pkgs/havm/default.nix
Normal file
30
pkgs/havm/default.nix
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
{ 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;
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue