2020-03-04 17:12:14 +00:00
|
|
|
{ lib, fetchurl, buildDunePackage, ocaml
|
2018-12-05 09:31:47 +00:00
|
|
|
, ounit, ppx_deriving, ppx_tools_versioned
|
2018-09-10 06:45:15 +01:00
|
|
|
}:
|
2016-11-03 16:34:36 +00:00
|
|
|
|
2018-12-05 09:31:47 +00:00
|
|
|
if !lib.versionAtLeast ocaml.version "4.04"
|
2018-09-10 06:45:15 +01:00
|
|
|
then throw "ppx_import is not available for OCaml ${ocaml.version}"
|
|
|
|
else
|
2016-11-03 16:34:36 +00:00
|
|
|
|
2018-12-05 09:31:47 +00:00
|
|
|
buildDunePackage rec {
|
|
|
|
pname = "ppx_import";
|
2020-03-04 17:12:14 +00:00
|
|
|
version = "1.7.1";
|
2016-11-03 16:34:36 +00:00
|
|
|
|
2020-03-04 17:12:14 +00:00
|
|
|
src = fetchurl {
|
|
|
|
url = "https://github.com/ocaml-ppx/ppx_import/releases/download/v${version}/ppx_import-v${version}.tbz";
|
|
|
|
sha256 = "16dyxfb7syz659rqa7yq36ny5vzl7gkqd7f4m6qm2zkjc1gc8j4v";
|
2016-11-03 16:34:36 +00:00
|
|
|
};
|
|
|
|
|
2018-12-05 09:31:47 +00:00
|
|
|
buildInputs = [ ounit ppx_deriving ];
|
|
|
|
propagatedBuildInputs = [ ppx_tools_versioned ];
|
2016-11-03 16:34:36 +00:00
|
|
|
|
|
|
|
doCheck = true;
|
|
|
|
|
2018-12-05 09:31:47 +00:00
|
|
|
meta = {
|
2016-11-03 16:34:36 +00:00
|
|
|
description = "A syntax extension that allows to pull in types or signatures from other compiled interface files";
|
2018-12-05 09:31:47 +00:00
|
|
|
license = lib.licenses.mit;
|
2020-03-04 17:12:14 +00:00
|
|
|
homepage = "https://github.com/ocaml-ppx/ppx_import";
|
2016-11-03 16:34:36 +00:00
|
|
|
};
|
2017-11-26 20:08:53 +00:00
|
|
|
}
|