summary refs log tree commit diff
path: root/pkgs/development/libraries/science/math/openblas/0.2.2.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/science/math/openblas/0.2.2.nix')
-rw-r--r--pkgs/development/libraries/science/math/openblas/0.2.2.nix37
1 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/development/libraries/science/math/openblas/0.2.2.nix b/pkgs/development/libraries/science/math/openblas/0.2.2.nix
new file mode 100644
index 00000000000..c476dac955a
--- /dev/null
+++ b/pkgs/development/libraries/science/math/openblas/0.2.2.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, gfortran, perl, liblapack, config }:
+
+let local = config.openblas.preferLocalBuild or false;
+    localTarget = config.openblas.target or "";
+in
+stdenv.mkDerivation rec {
+  version = "0.2.2";
+
+  name = "openblas-${version}";
+  src = fetchurl {
+    url = "https://github.com/xianyi/OpenBLAS/tarball/v${version}";
+    sha256 = "13kdx3knff5ajnmgn419g0dnh83plin07p7akwamr3v7z5qfrzqr";
+    name = "openblas-${version}.tar.gz";
+  };
+
+  preBuild = "cp ${liblapack.src} lapack-${liblapack.meta.version}.tgz";
+
+  buildInputs = [gfortran perl];
+
+  cpu = builtins.head (stdenv.lib.splitString "-" stdenv.system);
+
+  target = if local then localTarget else
+    if cpu == "i686" then "P2" else
+    if cpu == "x86_64" then "CORE2" else
+     # allow autodetect
+      "";
+
+  makeFlags = "${if target != "" then "TARGET=" else ""}${target} FC=gfortran CC=cc PREFIX=\"\$(out)\"";
+
+  meta = with stdenv.lib; {
+    description = "Basic Linear Algebra Subprograms";
+    license = licenses.bsd3;
+    homepage = "https://github.com/xianyi/OpenBLAS";
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ ttuegel ];
+  };
+}