about summary refs log tree commit diff
path: root/pkgs/development/libraries/science/math
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/science/math')
-rw-r--r--pkgs/development/libraries/science/math/cudnn/8.0-5.1/default.nix40
-rw-r--r--pkgs/development/libraries/science/math/ipopt/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix7
3 files changed, 47 insertions, 4 deletions
diff --git a/pkgs/development/libraries/science/math/cudnn/8.0-5.1/default.nix b/pkgs/development/libraries/science/math/cudnn/8.0-5.1/default.nix
new file mode 100644
index 000000000000..0820897b81db
--- /dev/null
+++ b/pkgs/development/libraries/science/math/cudnn/8.0-5.1/default.nix
@@ -0,0 +1,40 @@
+{ stdenv
+, requireFile
+, cudatoolkit
+, fetchurl
+}:
+
+stdenv.mkDerivation rec {
+  version = "5.1";
+  cudatoolkit_version = "8.0";
+
+  name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}";
+
+  src = fetchurl {
+    url = "http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz";
+    sha256 = "a87cb2df2e5e7cc0a05e266734e679ee1a2fadad6f06af82a76ed81a23b102c8";
+  };
+
+  installPhase = ''
+    function fixRunPath {
+      p=$(patchelf --print-rpath $1)
+      patchelf --set-rpath "$p:${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}" $1
+    }
+    fixRunPath lib64/libcudnn.so
+
+    mkdir -p $out
+    cp -a include $out/include
+    cp -a lib64 $out/lib64
+  '';
+
+  propagatedBuildInputs = [
+    cudatoolkit
+  ];
+
+  meta = with stdenv.lib; {
+    description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
+    homepage = "https://developer.nvidia.com/cudnn";
+    license = stdenv.lib.licenses.unfree;
+    maintainers = with maintainers; [ mdaiter ];
+  };
+}
diff --git a/pkgs/development/libraries/science/math/ipopt/default.nix b/pkgs/development/libraries/science/math/ipopt/default.nix
index 9ea3a54f2b0b..5e16fcb1b547 100644
--- a/pkgs/development/libraries/science/math/ipopt/default.nix
+++ b/pkgs/development/libraries/science/math/ipopt/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchurl, unzip, openblas, gfortran }:
 
 stdenv.mkDerivation rec {
-  version = "3.12.6";
   name = "ipopt-${version}";
+  version = "3.12.6";
 
   src = fetchurl {
     url = "http://www.coin-or.org/download/source/Ipopt/Ipopt-${version}.zip";
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A software package for large-scale nonlinear optimization";
-    homepage = https://projects.coin-or.org/Ipopt;
+    homepage = "https://projects.coin-or.org/Ipopt";
     license = licenses.epl10;
     platforms = platforms.unix;
     maintainers = with maintainers; [ abbradar ];
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 3893875a2347..e0e8c2686296 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -11,11 +11,12 @@ let blas64_ = blas64; in
 let local = config.openblas.preferLocalBuild or false;
     binary =
       { i686-linux = "32";
+        armv7l-linux = "32";
         x86_64-linux = "64";
         x86_64-darwin = "64";
       }."${stdenv.system}" or (throw "unsupported system: ${stdenv.system}");
     genericFlags =
-      [ "DYNAMIC_ARCH=1"
+      [ "DYNAMIC_ARCH=${if stdenv.system == "armv7l-linux" then "0" else "1"}"
         "NUM_THREADS=64"
       ];
     localFlags = config.openblas.flags or
@@ -65,7 +66,9 @@ stdenv.mkDerivation {
       "BINARY=${binary}"
       "USE_OPENMP=${if stdenv.isDarwin then "0" else "1"}"
       "INTERFACE64=${if blas64 then "1" else "0"}"
-    ];
+    ]
+    ++
+    optionals (stdenv.system == "armv7l-linux") ["TARGET=ARMV7"];
 
   doCheck = true;
   checkTarget = "tests";