summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMarkus Kowalewski <markus.kowalewski@gmail.com>2018-10-27 01:06:07 +0200
committerMarkus Kowalewski <markus.kowalewski@gmail.com>2018-10-27 01:06:07 +0200
commit41a579aa68a58bd496b852dd6380fa81f9cf0a7f (patch)
tree5c29e84f3b8bc1968a0532a283aac883553a46a5 /pkgs
parent145627391b10d32496f2900b1b05146c0b303e95 (diff)
downloadnixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.tar
nixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.tar.gz
nixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.tar.bz2
nixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.tar.lz
nixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.tar.xz
nixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.tar.zst
nixlib-41a579aa68a58bd496b852dd6380fa81f9cf0a7f.zip
scalapack: switch to openblas + add test
* change from blas,lapack to openblas
* add check phase
* enable parallel building
* fix license
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/libraries/science/math/scalapack/default.nix42
1 files changed, 32 insertions, 10 deletions
diff --git a/pkgs/development/libraries/science/math/scalapack/default.nix b/pkgs/development/libraries/science/math/scalapack/default.nix
index 83e177c66c18..3961374a9b11 100644
--- a/pkgs/development/libraries/science/math/scalapack/default.nix
+++ b/pkgs/development/libraries/science/math/scalapack/default.nix
@@ -1,11 +1,7 @@
-{ stdenv
-, fetchurl
-, gfortran
-, cmake
-, blas
-, liblapack
-, mpi
-}:
+{ stdenv, fetchurl, cmake, openssh
+, gfortran, mpi, openblasCompat
+} :
+
 
 stdenv.mkDerivation rec {
   name = "scalapack-${version}";
@@ -16,12 +12,38 @@ stdenv.mkDerivation rec {
     sha256 = "0p1r61ss1fq0bs8ynnx7xq4wwsdvs32ljvwjnx6yxr8gd6pawx0c";
   };
 
-  buildInputs = [ cmake mpi liblapack blas gfortran ];
+  nativeBuildInputs = [ cmake openssh ];
+  buildInputs = [ mpi gfortran openblasCompat ];
+
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
+  preConfigure = ''
+    cmakeFlagsArray+=(
+      -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF
+      -DLAPACK_LIBRARIES="-lopenblas"
+      -DBLAS_LIBRARIES="-lopenblas"
+      )
+  '';
+
+  checkPhase = ''
+    # make sure the test starts even if we have less than 4 cores
+    export OMPI_MCA_rmaps_base_oversubscribe=1
+
+    # Run single threaded
+    export OMP_NUM_THREADS=1
+
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/lib
+    export CTEST_OUTPUT_ON_FAILURE=1
+
+    make test
+  '';
 
   meta = with stdenv.lib; {
     homepage = http://www.netlib.org/scalapack/;
     description = "Library of high-performance linear algebra routines for parallel distributed memory machines";
-    license = licenses.bsdOriginal;
+    license = licenses.bsd3;
     platforms = platforms.all;
     maintainers = [ maintainers.costrouc ];
   };