diff --git a/pkgs/development/ocaml-modules/mlgmpidl/default.nix b/pkgs/development/ocaml-modules/mlgmpidl/default.nix new file mode 100644 index 000000000000..7e12abe386b8 --- /dev/null +++ b/pkgs/development/ocaml-modules/mlgmpidl/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchFromGitHub, ocaml, findlib, camlidl, gmp, mpfr }: + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-mlgmpidl-${version}"; + version = "1.2.4"; + src = fetchFromGitHub { + owner = "nberth"; + repo = "mlgmpidl"; + rev = version; + sha256 = "09f9rk2bavhb7cdwjpibjf8bcjk59z85ac9dr8nvks1s842dp65s"; + }; + + buildInputs = [ gmp mpfr ocaml findlib camlidl ]; + + configurePhase = '' + cp Makefile.config.model Makefile.config + sed -i Makefile.config \ + -e 's|^MLGMPIDL_PREFIX.*$|MLGMPIDL_PREFIX = $out|' \ + -e 's|^GMP_PREFIX.*$|GMP_PREFIX = ${gmp.dev}|' \ + -e 's|^MPFR_PREFIX.*$|MPFR_PREFIX = ${mpfr.dev}|' \ + -e 's|^CAMLIDL_DIR.*$|CAMLIDL_DIR = ${camlidl}/lib/ocaml/${ocaml.version}/site-lib/camlidl|' + echo HAS_NATIVE_PLUGINS = 1 >> Makefile.config + sed -i Makefile \ + -e 's|^ /bin/rm | rm |' + ''; + + createFindlibDestdir = true; + + meta = { + description = "OCaml interface to the GMP library"; + homepage = https://www.inrialpes.fr/pop-art/people/bjeannet/mlxxxidl-forge/mlgmpidl/; + license = stdenv.lib.licenses.lgpl21; + inherit (ocaml.meta) platforms; + maintainers = [ stdenv.lib.maintainers.vbgl ]; + }; +} diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 91e349eede99..c66bd2e518f0 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -263,6 +263,8 @@ let mlgmp = callPackage ../development/ocaml-modules/mlgmp { }; + mlgmpidl = callPackage ../development/ocaml-modules/mlgmpidl { }; + nocrypto = callPackage ../development/ocaml-modules/nocrypto { lwt = ocaml_lwt; };