1{ stdenv
2, buildPythonPackage
3, pkgs
4, numpy
5, scipy
6, enum34
7, protobuf
8, pip
9, python
10}:
11
12buildPythonPackage rec {
13 inherit (pkgs.cntk) name version src meta;
14
15 buildInputs = [ pkgs.cntk pkgs.swig pkgs.openmpi ];
16 propagatedBuildInputs = [ numpy scipy enum34 protobuf pip ];
17
18 CNTK_LIB_PATH = "${pkgs.cntk}/lib";
19 CNTK_COMPONENT_VERSION = pkgs.cntk.version;
20
21 postPatch = ''
22 cd bindings/python
23 sed -i 's,"libmpi.so.12","${pkgs.openmpi}/lib/libmpi.so",g' cntk/train/distributed.py
24 '';
25
26 postInstall = ''
27 rm -rf $out/${python.sitePackages}/cntk/libs
28 ln -s ${pkgs.cntk}/lib $out/${python.sitePackages}/cntk/libs
29 # It's not installed for some reason.
30 cp cntk/cntk_py.py $out/${python.sitePackages}/cntk
31 '';
32
33 # Actual tests are broken.
34 checkPhase = ''
35 cd $NIX_BUILD_TOP
36 ${python.interpreter} -c "import cntk"
37 '';
38}