summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/ppx_tools/default.nix
blob: 33bf180cd7f3786cbeea4e81c651b78503bb68ad (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{ stdenv, fetchFromGitHub, ocaml, findlib }:

let
  version =
  if stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.03" then "5.0+4.03.0" else "5.0+4.02.0";
in
  stdenv.mkDerivation {
    name = "ocaml-ppx_tools-${version}";
    src = fetchFromGitHub {
      owner = "alainfrisch";
      repo = "ppx_tools";
      rev = version;
      sha256 = if version == "5.0+4.03.0"
      then "061v1fl5z7z3ywi4ppryrlcywnvnqbsw83ppq72qmkc7ma4603jg"
      else "16drjk0qafjls8blng69qiv35a84wlafpk16grrg2i3x19p8dlj8"
      ;
    };

    buildInputs = [ ocaml findlib ];

    createFindlibDestdir = true;

    meta = with stdenv.lib; {
      description = "Tools for authors of ppx rewriters";
      homepage = http://www.lexifi.com/ppx_tools;
      license = licenses.mit;
      platforms = ocaml.meta.platforms or [];
      maintainers = with maintainers; [ vbgl ];
    };
  }