1{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, opaline }:
2
3if lib.versionOlder ocaml.version "4.07"
4then throw "lua-ml is not available for OCaml ${ocaml.version}"
5else
6
7stdenv.mkDerivation rec {
8 pname = "lua-ml";
9 name = "ocaml${ocaml.version}-${pname}-${version}";
10 version = "0.9.1";
11
12 src = fetchFromGitHub {
13 owner = "lindig";
14 repo = pname;
15 rev = version;
16 sha256 = "04lv98nxmzanvyn4c0k6k0ax29f5xfdl8qzpf5hwadslq213a044";
17 };
18
19 nativeBuildInputs = [ opaline ocaml findlib ocamlbuild ];
20
21 strictDeps = true;
22
23 buildFlags = [ "lib" ];
24
25 installPhase = ''
26 opaline -prefix $out -libdir $OCAMLFIND_DESTDIR
27 '';
28
29 meta = {
30 description = "An embeddable Lua 2.5 interpreter implemented in OCaml";
31 inherit (src.meta) homepage;
32 inherit (ocaml.meta) platforms;
33 license = lib.licenses.bsd2;
34 maintainers = [ lib.maintainers.vbgl ];
35 };
36}