summary refs log tree commit diff
path: root/pkgs/development/libraries/science/math/liblapack
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2012-04-05 12:18:56 +0000
committerMichael Raskin <7c6f434c@mail.ru>2012-04-05 12:18:56 +0000
commit3c69bcf348e1c6f13e79241ce54dad47d8533bdd (patch)
treec2c3069732bd6e17120cb76f569234e0d4e48ecb /pkgs/development/libraries/science/math/liblapack
parent2f97078c96c36dd041690c65a74a6ebc482f2c37 (diff)
downloadnixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.tar
nixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.tar.gz
nixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.tar.bz2
nixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.tar.lz
nixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.tar.xz
nixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.tar.zst
nixpkgs-3c69bcf348e1c6f13e79241ce54dad47d8533bdd.zip
Support shared library build; tests do not currently work for shared build.
svn path=/nixpkgs/trunk/; revision=33613
Diffstat (limited to 'pkgs/development/libraries/science/math/liblapack')
-rw-r--r--pkgs/development/libraries/science/math/liblapack/default.nix19
1 files changed, 12 insertions, 7 deletions
diff --git a/pkgs/development/libraries/science/math/liblapack/default.nix b/pkgs/development/libraries/science/math/liblapack/default.nix
index 28bfa4df801..e2b43b6b053 100644
--- a/pkgs/development/libraries/science/math/liblapack/default.nix
+++ b/pkgs/development/libraries/science/math/liblapack/default.nix
@@ -1,5 +1,8 @@
-{ stdenv, fetchurl, gfortran, atlas, cmake, python }:
-
+{ stdenv, fetchurl, gfortran, atlas, cmake, python, shared ? false }:
+let 
+  atlasMaybeShared = if shared then atlas.override {shared=true;} else atlas;
+  usedLibExtension = if shared then ".so" else ".a";
+in
 stdenv.mkDerivation {
   name = "liblapack-3.4.0";
   src = fetchurl {
@@ -7,18 +10,20 @@ stdenv.mkDerivation {
     sha256 = "1sf30v1ps5icg67dvw5sbx5yhypx13am470gqg2f7l04f3wrw4x7";
   };
 
-  propagatedBuildInputs = [ atlas ];
+  propagatedBuildInputs = [ atlasMaybeShared ];
   buildInputs = [ gfortran cmake ];
   buildNativeInputs = [ python ];
 
   cmakeFlags = [
     "-DUSE_OPTIMIZED_BLAS=ON"
-    "-DBLAS_ATLAS_f77blas_LIBRARY=${atlas}/lib/libf77blas.a"
-    "-DBLAS_ATLAS_atlas_LIBRARY=${atlas}/lib/libatlas.a"
+    "-DBLAS_ATLAS_f77blas_LIBRARY=${atlasMaybeShared}/lib/libf77blas${usedLibExtension}"
+    "-DBLAS_ATLAS_atlas_LIBRARY=${atlasMaybeShared}/lib/libatlas${usedLibExtension}"
     "-DCMAKE_Fortran_FLAGS=-fPIC"
-  ];
+  ]
+  ++ (stdenv.lib.optional shared "-DBUILD_SHARED_LIBS=ON")
+  ;
 
-  doCheck = true;
+  doCheck = ! shared;
 
   checkPhase = "
     sed -i 's,^#!.*,#!${python}/bin/python,' lapack_testing.py