diff --git a/pkgs/development/ocaml-modules/owl-base/default.nix b/pkgs/development/ocaml-modules/owl-base/default.nix new file mode 100644 index 000000000000..b2546f3e93ce --- /dev/null +++ b/pkgs/development/ocaml-modules/owl-base/default.nix @@ -0,0 +1,25 @@ +{ stdenv, buildDunePackage, fetchFromGitHub, integers, stdlib-shims }: + +buildDunePackage rec { + pname = "owl-base"; + version = "0.7.1"; + + src = fetchFromGitHub { + owner = "owlbarn"; + repo = "owl"; + rev = version; + sha256 = "1v4jfn3w18zq188f9gskx9ffja3xx59j2mgrw6azp8lsbqixg5xk"; + }; + + propagatedBuildInputs = [ stdlib-shims ]; + + minimumOCamlVersion = "4.06"; + + meta = with stdenv.lib; { + description = "Numerical computing library for Ocaml"; + homepage = "https://ocaml.xyz"; + platforms = platforms.x86_64; + maintainers = [ maintainers.bcdarwin ]; + license = licenses.mit; + }; +} diff --git a/pkgs/development/ocaml-modules/owl/default.nix b/pkgs/development/ocaml-modules/owl/default.nix new file mode 100644 index 000000000000..95d4f6da704c --- /dev/null +++ b/pkgs/development/ocaml-modules/owl/default.nix @@ -0,0 +1,15 @@ +{ stdenv, buildDunePackage, fetchFromGitHub, alcotest +, eigen, stdio, stdlib-shims, openblasCompat, owl-base +}: + +buildDunePackage rec { + pname = "owl"; + + inherit (owl-base) version src meta; + + buildInputs = [ eigen ]; + checkInputs = [ alcotest ]; + propagatedBuildInputs = [ stdio stdlib-shims openblasCompat owl-base ]; + + # tests not enabled for now due to owlbarn/owl/issues/460 +} diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 4bef7965750c..7e5aa6598c17 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -605,6 +605,10 @@ let owee = callPackage ../development/ocaml-modules/owee { }; + owl-base = callPackage ../development/ocaml-modules/owl-base { }; + + owl = callPackage ../development/ocaml-modules/owl { }; + ounit = callPackage ../development/ocaml-modules/ounit { }; pgsolver = callPackage ../development/ocaml-modules/pgsolver { };