summary refs log tree commit diff
path: root/pkgs/development/python-modules/prox-tv
diff options
context:
space:
mode:
authorVictor multun Collod <victor.collod@epita.fr>2019-12-29 13:55:12 +0100
committerFrederik Rietdijk <freddyrietdijk@fridh.nl>2020-01-02 17:18:17 +0100
commitf85aff5a2215d154781ce05e59abcb96bf1844ef (patch)
treecec92c472a7bb93d6371048fb04fd189498828c5 /pkgs/development/python-modules/prox-tv
parent0acac5cb453a2022dd317ad7dc5e7113f8214488 (diff)
downloadnixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.tar
nixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.tar.gz
nixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.tar.bz2
nixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.tar.lz
nixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.tar.xz
nixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.tar.zst
nixpkgs-f85aff5a2215d154781ce05e59abcb96bf1844ef.zip
pythonPackages.prox-tv: init at 3.3.0
Diffstat (limited to 'pkgs/development/python-modules/prox-tv')
-rw-r--r--pkgs/development/python-modules/prox-tv/default.nix50
-rw-r--r--pkgs/development/python-modules/prox-tv/use-openblas.patch11
2 files changed, 61 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/prox-tv/default.nix b/pkgs/development/python-modules/prox-tv/default.nix
new file mode 100644
index 00000000000..2568620f539
--- /dev/null
+++ b/pkgs/development/python-modules/prox-tv/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, blas
+, buildPythonPackage
+, cffi
+, fetchFromGitHub
+, liblapack
+, nose
+, numpy
+, openblas
+, useOpenblas ? true
+}:
+
+buildPythonPackage {
+  pname = "prox-tv";
+  version = "3.3.0";
+
+  src = fetchFromGitHub {
+    owner = "albarji";
+    repo = "proxTV";
+    rev = "e621585d5aaa7983fbee68583f7deae995d3bafb";
+    sha256 = "0mlrjbb5rw78dgijkr3bspmsskk6jqs9y7xpsgs35i46dvb327q5";
+  };
+
+  patches = lib.optional useOpenblas ./use-openblas.patch;
+
+  checkInputs = [
+    nose
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+    cffi
+  ];
+
+  buildInputs = (
+    if useOpenblas then
+      [ openblas ]
+    else
+      [ blas liblapack ]
+  );
+
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    homepage = https://github.com/albarji/proxTV;
+    description = "A toolbox for fast Total Variation proximity operators";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ multun ];
+  };
+}
diff --git a/pkgs/development/python-modules/prox-tv/use-openblas.patch b/pkgs/development/python-modules/prox-tv/use-openblas.patch
new file mode 100644
index 00000000000..e96faa4d600
--- /dev/null
+++ b/pkgs/development/python-modules/prox-tv/use-openblas.patch
@@ -0,0 +1,11 @@
+index f100b35..448bbaf 100644
+--- a/prox_tv/prox_tv_build.py
++++ b/prox_tv/prox_tv_build.py
+@@ -109,6 +109,6 @@ ffi.set_source(
+     define_macros=[('NOMATLAB', 1)],
+     extra_compile_args=extra_compile_args,
+     extra_link_args=extra_link_args,
+-    libraries=['blas', 'lapack'],
++    libraries=['openblas'],
+     include_dirs=['/usr/include']
+ )