diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pycuda/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pycuda/default.nix | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pycuda/default.nix b/nixpkgs/pkgs/development/python-modules/pycuda/default.nix new file mode 100644 index 000000000000..5f58101a8b53 --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/pycuda/default.nix @@ -0,0 +1,70 @@ +{ buildPythonPackage +, fetchPypi +, fetchFromGitHub +, Mako +, boost +, numpy +, pytools +, pytest +, decorator +, appdirs +, six +, cudatoolkit +, python +, mkDerivation +, stdenv +, isPy3k +}: +let + compyte = import ./compyte.nix { + inherit mkDerivation fetchFromGitHub; + }; +in +buildPythonPackage rec { + pname = "pycuda"; + version = "2018.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "49d575fca3fd3c95467c3b0fb51967ad17d0c4cc18e078a6748309af4de36a8d"; + }; + + preConfigure = '' + ${python.interpreter} configure.py --boost-inc-dir=${boost.dev}/include \ + --boost-lib-dir=${boost}/lib \ + --no-use-shipped-boost \ + --boost-python-libname=boost_python${stdenv.lib.optionalString isPy3k "3"} + ''; + + postInstall = '' + ln -s ${compyte} $out/${python.sitePackages}/pycuda/compyte + ''; + + # Requires access to libcuda.so.1 which is provided by the driver + doCheck = false; + + checkPhase = '' + py.test + ''; + + propagatedBuildInputs = [ + numpy + pytools + pytest + decorator + appdirs + six + cudatoolkit + compyte + python + Mako + ]; + + meta = with stdenv.lib; { + homepage = https://github.com/inducer/pycuda/; + description = "CUDA integration for Python."; + license = licenses.mit; + maintainers = with maintainers; [ artuuge ]; + }; + +} |