at 22.05-pre 40 lines 996 B view raw
1{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, camlp4 }: 2 3let 4 pname = "ulex"; 5 param = 6 if lib.versionAtLeast ocaml.version "4.02" then { 7 version = "1.2"; 8 sha256 = "08yf2x9a52l2y4savjqfjd2xy4pjd1rpla2ylrr9qrz1drpfw4ic"; 9 } else { 10 version = "1.1"; 11 sha256 = "0cmscxcmcxhlshh4jd0lzw5ffzns12x3bj7h27smbc8waxkwffhl"; 12 }; 13in 14 15stdenv.mkDerivation rec { 16 name = "ocaml${ocaml.version}-${pname}-${version}"; 17 inherit (param) version; 18 19 src = fetchFromGitHub { 20 owner = "whitequark"; 21 repo = pname; 22 rev = "v${version}"; 23 inherit (param) sha256; 24 }; 25 26 createFindlibDestdir = true; 27 28 buildInputs = [ ocaml findlib ocamlbuild ]; 29 propagatedBuildInputs = [ camlp4 ]; 30 31 buildFlags = [ "all" "all.opt" ]; 32 33 meta = { 34 inherit (src.meta) homepage; 35 description = "A lexer generator for Unicode and OCaml"; 36 license = lib.licenses.mit; 37 platforms = ocaml.meta.platforms or []; 38 maintainers = [ lib.maintainers.roconnor ]; 39 }; 40}