summary refs log tree commit diff
path: root/pkgs/development/libraries/science
diff options
context:
space:
mode:
authorDavid Guibert <david.guibert@gmail.com>2010-07-09 13:15:56 +0000
committerDavid Guibert <david.guibert@gmail.com>2010-07-09 13:15:56 +0000
commit35631946374900c7c86b1ea3349ae54da84ddc6d (patch)
treea6a7cc9e3046cdec4376adae0b36de8789a01f41 /pkgs/development/libraries/science
parent9e8da1fa0c9e28d9b11583b6044f81fe361ce4f0 (diff)
downloadnixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.tar
nixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.tar.gz
nixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.tar.bz2
nixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.tar.lz
nixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.tar.xz
nixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.tar.zst
nixpkgs-35631946374900c7c86b1ea3349ae54da84ddc6d.zip
compile static libraries for blas and lapack
svn path=/nixpkgs/trunk/; revision=22549
Diffstat (limited to 'pkgs/development/libraries/science')
-rw-r--r--pkgs/development/libraries/science/math/blas/default.nix10
-rw-r--r--pkgs/development/libraries/science/math/liblapack/blas-link.patch4
-rw-r--r--pkgs/development/libraries/science/math/liblapack/default.nix20
3 files changed, 32 insertions, 2 deletions
diff --git a/pkgs/development/libraries/science/math/blas/default.nix b/pkgs/development/libraries/science/math/blas/default.nix
index eeaf28aec3c..55654586edd 100644
--- a/pkgs/development/libraries/science/math/blas/default.nix
+++ b/pkgs/development/libraries/science/math/blas/default.nix
@@ -24,7 +24,17 @@ stdenv.mkDerivation {
     echo >>make.inc "BLASLIB = libblas.so.3.0.3"
   '';
 
+  buildPhase = ''
+    make
+    echo >>make.inc "ARCHFLAGS = "
+    echo >>make.inc "BLASLIB = libblas.a"
+    echo >>make.inc "ARCH = ar rcs"
+    echo >>make.inc "RANLIB = ranlib"
+    make
+  '';
+ 
   installPhase = ''
+    install -D -m755 libblas.a "$out/lib/libblas.a"
     install -D -m755 libblas.so.3.0.3 "$out/lib/libblas.so.3.0.3"
     ln -s libblas.so.3.0.3 "$out/lib/libblas.so.3"
     ln -s libblas.so.3.0.3 "$out/lib/libblas.so"
diff --git a/pkgs/development/libraries/science/math/liblapack/blas-link.patch b/pkgs/development/libraries/science/math/liblapack/blas-link.patch
index 7770142be77..e1ff853a291 100644
--- a/pkgs/development/libraries/science/math/liblapack/blas-link.patch
+++ b/pkgs/development/libraries/science/math/liblapack/blas-link.patch
@@ -6,7 +6,7 @@ diff -Naur lapack-3.2.old/SRC/Makefile lapack-3.2/SRC/Makefile
  
  ../$(LAPACKLIB): $(ALLOBJ) $(ALLXOBJ)
 -	$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) $(ALLXOBJ)
-+	$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) $(ALLXOBJ) -lblas
++	$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) $(ALLXOBJ) ${BLASLIB}
  	$(RANLIB) $@
  
  single: $(SLASRC) $(ALLAUX) $(SCLAUX) 
@@ -18,7 +18,7 @@ diff -Naur lapack-3.2.old/TESTING/MATGEN/Makefile lapack-3.2/TESTING/MATGEN/Make
  ../../$(TMGLIB): $(SMATGEN) $(CMATGEN) $(SCATGEN) $(DMATGEN)	\
  		$(ZMATGEN) $(DZATGEN)
 -	$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ)
-+	$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) -lblas
++	$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) ${BLASLIB}
  	$(RANLIB) $@
  
  single: $(SMATGEN) $(SCATGEN)
diff --git a/pkgs/development/libraries/science/math/liblapack/default.nix b/pkgs/development/libraries/science/math/liblapack/default.nix
index 240d13105f8..a731360be56 100644
--- a/pkgs/development/libraries/science/math/liblapack/default.nix
+++ b/pkgs/development/libraries/science/math/liblapack/default.nix
@@ -33,10 +33,30 @@ stdenv.mkDerivation {
   buildPhase = ''
     make clean
     make lib
+    echo >make.inc  "SHELL = ${stdenv.shell}"
+    echo >>make.inc "PLAT ="
+    echo >>make.inc "FORTRAN = gfortran"
+    echo >>make.inc "OPTS = -O2 -fPIC"
+    echo >>make.inc "DRVOPTS = \$(OPTS)"
+    echo >>make.inc "NOOPT = -O0 -fPIC"
+    echo >>make.inc "LOADER = gfortran"
+    echo >>make.inc "LOADOPTS = "
+    echo >>make.inc "TIMER = INT_ETIME"
+    echo >>make.inc "ARCH = ar rcs"
+    echo >>make.inc "RANLIB = ranlib"
+    echo >>make.inc "BLASLIB = "
+    echo >>make.inc "ARCHFLAGS ="
+    echo >>make.inc "LAPACKLIB    = liblapack.a"
+    echo >>make.inc "TMGLIB       = tmglib.a"
+    echo >>make.inc "EIGSRCLIB    = eigsrc.a"
+    echo >>make.inc "LINSRCLIB    = linsrc.a"
+    make clean
+    make lib
   '';
 
   installPhase = ''
     ensureDir "$out/lib"
+    install -m755 *.a* "$out/lib"
     install -m755 *.so* "$out/lib"
     ln -sf liblapack.so.3 "$out/lib/liblapack.so"
     ln -sf libtmglib.so.3 "$out/lib/libtmglib.so"