summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/lacaml/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules/lacaml/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/lacaml/default.nix30
1 files changed, 30 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/lacaml/default.nix b/pkgs/development/ocaml-modules/lacaml/default.nix
new file mode 100644
index 00000000000..b316540e3d0
--- /dev/null
+++ b/pkgs/development/ocaml-modules/lacaml/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, darwin, ocaml, findlib, dune, base, stdio, liblapack, blas }:
+
+assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.05.0";
+
+stdenv.mkDerivation rec {
+  pname = "ocaml${ocaml.version}-lacaml";
+  version = "11.0.3";
+
+  src = fetchFromGitHub {
+    owner = "mmottl";
+    repo = "lacaml";
+    rev = "${version}";
+    sha256 = "1aflg07cc9ak9mg1cr0qr368c9s141glwlarl5nhalf6hhq7ibcb";
+  };
+
+  buildInputs =
+    [ ocaml findlib dune base stdio liblapack blas ] ++
+    stdenv.lib.optionals stdenv.isDarwin
+      [ darwin.apple_sdk.frameworks.Accelerate ];
+
+  inherit (dune) installPhase;
+
+  meta = with stdenv.lib; {
+    homepage = http://mmottl.github.io/lacaml;
+    description = "OCaml bindings for BLAS and LAPACK";
+    license = licenses.lgpl21Plus;
+    platforms = ocaml.meta.platforms or [];
+    maintainers = [ maintainers.rixed ];
+  };
+}