summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2016-11-30 10:03:57 +0100
committerFrederik Rietdijk <fridh@fridh.nl>2016-11-30 10:04:54 +0100
commit07dcc4f43aeb3703cf55002dc00af89cc3585a69 (patch)
treebf5bfb26628ed9bab7ea5ced8affa15ae0a9fd80 /pkgs
parent2605149d158a0247a344b7f484071a677d71bc82 (diff)
downloadnixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.tar
nixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.tar.gz
nixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.tar.bz2
nixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.tar.lz
nixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.tar.xz
nixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.tar.zst
nixpkgs-07dcc4f43aeb3703cf55002dc00af89cc3585a69.zip
pythonPackages.Theano: move and rename variants
We have two derivations, one that supports Cuda, and one that does not.
The names, TheanoWithCuda and TheanoWithoutCuda, now reflect that.
Furthermore, a boolean passthru.cudaSupport was added.

In the future the two derivations should be merged in one, with a
parameter `cudaSupport`.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/python-modules/Theano/theano-with-cuda/default.nix (renamed from pkgs/development/python-modules/theano/cuda/default.nix)4
-rw-r--r--pkgs/development/python-modules/Theano/theano-without-cuda/default.nix44
-rw-r--r--pkgs/top-level/python-packages.nix32
3 files changed, 49 insertions, 31 deletions
diff --git a/pkgs/development/python-modules/theano/cuda/default.nix b/pkgs/development/python-modules/Theano/theano-with-cuda/default.nix
index bf49d391861..c9ea79bef9a 100644
--- a/pkgs/development/python-modules/theano/cuda/default.nix
+++ b/pkgs/development/python-modules/Theano/theano-with-cuda/default.nix
@@ -1,6 +1,5 @@
 { buildPythonPackage
 , fetchFromGitHub
-, blas
 , numpy
 , six
 , scipy
@@ -45,7 +44,7 @@ buildPythonPackage rec {
   dontStrip = true;
 
   propagatedBuildInputs = [
-    blas
+    numpy.blas
     numpy
     six
     scipy
@@ -59,4 +58,5 @@ buildPythonPackage rec {
     libgpuarray
   ] ++ (stdenv.lib.optional (cudnn != null) [ cudnn ]);
 
+  passthru.cudaSupport = true;
 }
diff --git a/pkgs/development/python-modules/Theano/theano-without-cuda/default.nix b/pkgs/development/python-modules/Theano/theano-without-cuda/default.nix
new file mode 100644
index 00000000000..6efa945b0e6
--- /dev/null
+++ b/pkgs/development/python-modules/Theano/theano-without-cuda/default.nix
@@ -0,0 +1,44 @@
+{ stdenv
+, fetchurl
+, buildPythonPackage
+, isPyPy
+, pythonOlder
+, isPy3k
+, nose
+, numpy
+, pydot_ng
+, scipy
+, six
+}:
+
+buildPythonPackage rec {
+  name = "Theano-0.8.2";
+
+  disabled = isPyPy || pythonOlder "2.6" || (isPy3k && pythonOlder "3.3");
+
+  src = fetchurl {
+    url = "mirror://pypi/T/Theano/${name}.tar.gz";
+    sha256 = "7463c8f7ed1a787bf881f36d38a38607150186697e7ce7e78bfb94b7c6af8930";
+  };
+
+  #preCheck = ''
+  #  mkdir -p check-phase
+  #  export HOME=$(pwd)/check-phase
+  #'';
+  doCheck = false;
+  # takes far too long, also throws "TypeError: sort() missing 1 required positional argument: 'a'"
+  # when run from the installer, and testing with Python 3.5 hits github.com/Theano/Theano/issues/4276,
+  # the fix for which hasn't been merged yet.
+
+  # keep Nose around since running the tests by hand is possible from Python or bash
+  propagatedBuildInputs = [ stdenv nose numpy numpy.blas pydot_ng scipy six ];
+
+  meta = {
+    homepage = http://deeplearning.net/software/theano/;
+    description = "A Python library for large-scale array computation";
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = [ stdenv.lib.maintainers.bcdarwin ];
+  };
+
+  passthru.cudaSupport = false;
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index c1831b2ce09..8854e227c3f 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -23350,37 +23350,11 @@ in {
     };
   };
 
-  Theano = buildPythonPackage rec {
-    name = "Theano-0.8.2";
+  Theano = self.TheanoWithoutCuda;
 
-    disabled = isPyPy || pythonOlder "2.6" || (isPy3k && pythonOlder "3.3");
+  TheanoWithoutCuda = callPackage ../development/python-modules/Theano/theano-without-cuda { };
 
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/T/Theano/${name}.tar.gz";
-      sha256 = "7463c8f7ed1a787bf881f36d38a38607150186697e7ce7e78bfb94b7c6af8930";
-    };
-
-    #preCheck = ''
-    #  mkdir -p check-phase
-    #  export HOME=$(pwd)/check-phase
-    #'';
-    doCheck = false;
-    # takes far too long, also throws "TypeError: sort() missing 1 required positional argument: 'a'"
-    # when run from the installer, and testing with Python 3.5 hits github.com/Theano/Theano/issues/4276,
-    # the fix for which hasn't been merged yet.
-
-    # keep Nose around since running the tests by hand is possible from Python or bash
-    propagatedBuildInputs = [ stdenv ] ++ (with self; [ nose numpy numpy.blas pydot_ng scipy six ]);
-
-    meta = {
-      homepage = http://deeplearning.net/software/theano/;
-      description = "A Python library for large-scale array computation";
-      license = stdenv.lib.licenses.bsd3;
-      maintainers = [ maintainers.bcdarwin ];
-    };
-  };
-
-  Theano-cuda = callPackage ../development/python-modules/theano/cuda (
+  TheanoWithCuda = callPackage ../development/python-modules/Theano/theano-with-cuda (
   let
     boost = pkgs.boost159.override {
       inherit (self) python numpy scipy;