Skip to content

Commit 2556701

Browse files
committed
wip
1 parent 681a7f9 commit 2556701

File tree

12 files changed

+138
-239
lines changed

12 files changed

+138
-239
lines changed

derivations/arrayfire/default.nix

Lines changed: 31 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,42 @@
11
{ stdenv
2-
, pkgs
3-
, fetchurl
2+
, fftw
3+
, fftwFloat
4+
, fetchFromGitHub
45
, symlinkJoin
56
, cmake
6-
, boost162
7+
, boost17x
78
, blas
8-
, pkgconfig
9+
, pkg-config
910
}:
1011

1112
let
12-
version = "3.6.2";
1313
blasName = (builtins.parseDrvName blas.name).name;
14-
in
14+
in stdenv.mkDerivation rec {
15+
pname = "arrayfire";
16+
version = "3.7.1";
1517

16-
stdenv.mkDerivation {
17-
name = "arrayfire";
18-
19-
src = fetchurl {
20-
url = "http://arrayfire.com/arrayfire_source/arrayfire-full-${version}.tar.bz2";
21-
sha256 = "00p1d56s4qd3ll5f0980zwpw3hy8m6v0gd7v34rim4bkmslb8gvg";
18+
src = fetchFromGitHub {
19+
owner= "arrayfire";
20+
repo= "arrayfire";
21+
rev = "v${version}";
22+
sha256 = "179mbh08z040kfy31lg5ay2jvsyal890jg98ki6cq2k9wxvr24v0";
23+
fetchSubmodules = true;
2224
};
2325

24-
nativeBuildInputs = stdenv.lib.optional (blasName != "mkl") pkgs.fftw.dev ;
25-
buildInputs =
26-
[ boost162
27-
pkgconfig
28-
cmake
29-
blas
30-
] ++ stdenv.lib.optional (blasName != "mkl") pkgs.fftw;
26+
nativeBuildInputs = [ pkg-config cmake ];
27+
buildInputs = [
28+
boost17x blas
29+
] ++ stdenv.lib.optional (blasName != "mkl") fftw;
3130

32-
cmakeFlags =
33-
[ "-DCMAKE_BUILD_TYPE=Release"
34-
"-DAF_BUILD_CUDA=OFF"
35-
"-DAF_BUILD_OPENCL=OFF"
36-
"-DAF_BUILD_EXAMPLES=OFF"
37-
"-DAF_WITH_GRAPHICS=OFF"
38-
"-DAF_WITH_IMAGEIO=OFF"
39-
"-DAF_WITH_LOGGING=OFF"
40-
"-DBUILD_TESTING=OFF" ]
41-
++
31+
cmakeFlags = [
32+
"-DAF_BUILD_CUDA=OFF"
33+
"-DAF_BUILD_OPENCL=OFF"
34+
"-DAF_BUILD_EXAMPLES=OFF"
35+
"-DAF_WITH_GRAPHICS=OFF"
36+
"-DAF_WITH_IMAGEIO=OFF"
37+
"-DAF_WITH_LOGGING=OFF"
38+
"-DBUILD_TESTING=OFF"
39+
] ++
4240
stdenv.lib.optionals (blasName == "mkl") (
4341
let
4442
mkl_lp64 = "${blas}/lib/intel64/libmkl_intel_lp64.so";
@@ -50,16 +48,16 @@ stdenv.mkDerivation {
5048
"-DLAPACKE_LIB=${mkl_lp64}"
5149
"-DLAPACK_LIB=${mkl_lp64}"
5250
"-DLAPACKE_INCLUDES=${blas}/include"
53-
"-DMKL_THREAD_LAYER=IntelOpenMP"
54-
5551
"-DUSE_CPU_MKL=ON"
5652
])
5753
++
5854
stdenv.lib.optionals (blasName != "mkl")
59-
[ "-DFFTWF_LIBRARY=${pkgs.fftwFloat}/lib/libfftw3f.so"
55+
[ "-DFFTWF_LIBRARY=${fftwFloat}/lib/libfftw3f.so"
6056
];
6157

62-
patches = [ ./patch-08a601f.patch ./rewrite_OMP_streq.patch ];
58+
preConfigure = ''
59+
cmakeFlagsArray+=("-DMKL_THREAD_LAYER=Intel OpenMP")
60+
'';
6361

6462
meta = with stdenv.lib; {
6563
description = "A general-purpose computational tool that simplifies the process of developing software that targets parallel and massively-parallel architectures including CPUs, GPUs, and other hardware acceleration devices";

derivations/arrayfire/patch-08a601f.patch

Lines changed: 0 additions & 9 deletions
This file was deleted.

derivations/arrayfire/rewrite_OMP_streq.patch

Lines changed: 0 additions & 14 deletions
This file was deleted.

derivations/cereal/default.nix

Lines changed: 0 additions & 26 deletions
This file was deleted.

derivations/default.nix

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,9 @@ self: super:
55
mkl-dnn = super.callPackage ./mkl-dnn/default.nix { blas = super.mkl; } ;
66
arrayfire = super.callPackage ./arrayfire/default.nix { blas = super.mkl; } ;
77
cereal-develop = super.callPackage ./cereal/default.nix {} ;
8-
flashlight = super.callPackage ./flashlight/default.nix
9-
{ arrayfire = arrayfire;
10-
cereal-develop = cereal-develop;
11-
blas = super.mkl;
12-
mkl-dnn = mkl-dnn;
13-
} ;
8+
flashlight = super.callPackage ./flashlight/default.nix {
9+
inherit arrayfire cereal mkl-dnn;
10+
blas = super.mkl;
11+
};
1412
kenlm = super.callPackage ./kenlm/default.nix {} ;
1513
}

derivations/flashlight/default.nix

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,38 @@
11
{ stdenv
2-
, fetchgit
2+
, fetchFromGitHub
33
, arrayfire
4-
, cereal-develop
4+
, cereal
55
, cmake
66
, gloo
77
, mkl-dnn
88
, mpich
99
, blas
1010
}:
1111

12-
let
13-
revision = "6ec9dc7e9f57400801794b2e2f02317031883268";
14-
in
15-
1612
stdenv.mkDerivation {
1713
name = "flashlight";
1814

19-
src = fetchgit {
20-
url = "https://github.com/facebookresearch/flashlight.git";
21-
rev = revision;
22-
sha256 = "1afhyjfwf583j3q27arjmv4783hiqhjabqqjvni7clv1gccqc4m3";
15+
src = fetchFromGitHub {
16+
owner = "facebookresearch";
17+
repo = "flashlight";
18+
rev = "716d1b0913be1c26e446ed37450a5081c371a749";
19+
sha256 = "1lglk1j4bk0i1ax4nhvaddf9724739im9wcab0rlymc3nyj7k003";
2320
};
2421

2522
enableParallelBuilding = true;
2623

27-
nativeBuildInputs = [ arrayfire ];
28-
buildInputs = [ cmake blas gloo mpich ];
24+
nativeBuildInputs = [ cmake ];
25+
buildInputs = [ arrayfire blas gloo mpich cereal ];
2926

30-
cmakeFlags =
31-
[ "-DCEREAL_INCLUDE_DIR=${cereal-develop}/include"
32-
"-DMKLDNN_ROOT=${mkl-dnn}"
27+
NIX_CFLAGS_COMPILE = [ "-I${cereal}/include/cereal" ];
3328

34-
"-DFLASHLIGHT_BACKEND=CPU"
35-
"-DFL_BUILD_TESTS=OFF"
36-
"-DFL_BUILD_EXAMPLES=OFF"
37-
];
29+
cmakeFlags = [
30+
"-DMKLDNN_ROOT=${mkl-dnn}"
3831

39-
patches = [ ./remove-cereal-external.patch ];
32+
"-DFLASHLIGHT_BACKEND=CPU"
33+
"-DFL_BUILD_TESTS=OFF"
34+
"-DFL_BUILD_EXAMPLES=OFF"
35+
];
4036

4137
meta = with stdenv.lib; {
4238
description = "A fast, flexible machine learning library written entirely in C++";

derivations/flashlight/remove-cereal-external.patch

Lines changed: 0 additions & 19 deletions
This file was deleted.

derivations/kenlm/default.nix

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,36 @@
1-
{ fetchgit
1+
{ fetchFromGitHub
22
, stdenv
33
, cmake
4-
, boost162
4+
, boost
55
, lzma
66
}:
77

8-
let
9-
commit = "e47088ddfae810a5ee4c8a9923b5f8071bed1ae8";
10-
in
11-
128
stdenv.mkDerivation {
139
name = "kenlm";
14-
src = fetchgit {
15-
url = "https://github.com/kpu/kenlm.git";
16-
rev = commit;
17-
sha256 = "0jzf58lpa5siha6jgbpgy0kfgdzwj5jxgz8fm2dp4szwfhmilhvr";
10+
11+
src = fetchFromGitHub {
12+
owner = "kpu";
13+
repo = "kenlm";
14+
rev = "87e85e66c99ceff1fab2500a7c60c01da7315eec";
15+
sha256 = "1qh16zc5wljn9l662ci9n7z683rwrmzs032f9adss84q0b1ldf4j";
1816
};
1917

20-
enableParallelBuilding = true;
18+
nativeBuildInputs = [ cmake boost ];
2119

22-
buildInputs = [ cmake boost162 lzma ];
20+
buildInputs = [ lzma ];
2321

2422
installPhase = ''
2523
make install
26-
mkdir $out/lib
24+
mkdir -p $out/{lib,include}
2725
install lib/* $out/lib
26+
pushd ..
27+
find lm util -type f -iname '*.hh' -exec cp --parents '{}' $out/include/ \;
28+
popd
2829
'';
2930

30-
31-
cmakeFlags = [ ];
32-
3331
meta = with stdenv.lib; {
3432
description = "Language model inference code by Kenneth Heafield";
35-
license = license.lgpl;
33+
license = licenses.lgpl21;
3634
homepage = "https://github.com/kpu/kenlm";
3735
};
3836
}

derivations/mkl-dnn/default.nix

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{ stdenv
2-
, fetchgit
2+
, fetchFromGitHub
33
, autoreconfHook
44
, cmake
55
, curl
@@ -9,21 +9,24 @@
99

1010
stdenv.mkDerivation {
1111
name = "mkl-dnn";
12-
src = fetchgit {
13-
url = "https://github.com/intel/mkl-dnn.git";
14-
rev = "7de7e5d02bf687f971e7668963649728356e0c20";
15-
sha256 = "0j4za82k88s2k8wyh6aradh5i7196fj0xkcn8yagym5nbvdpd50c";
12+
13+
src = fetchFromGitHub {
14+
owner = "intel";
15+
repo = "mkl-dnn";
16+
rev = "4bdffc2cb1c3d47df9604d35d2c7e5e47a13f1a6";
17+
sha256 = "03dycq2x4ihfsps4flw570hdhmkr9p49s9rzsdzwhz0l6d6qvcrw";
1618
};
19+
1720
enableParallelBuilding = true;
1821

19-
buildInputs = [ cmake blas ];
22+
nativeBuildInputs = [ cmake blas ];
2023

21-
cmakeFlags =
22-
[ "-DWITH_TEST=OFF"
23-
"-WITH_EXAMPLE=OFF"
24-
];
24+
NIX_CFLAGS_COMPILE = [ "-Wno-error=stringop-truncation" ];
2525

26-
patches = [ ./patch.patch ];
26+
cmakeFlags = [
27+
"-DWITH_TEST=OFF"
28+
"-WITH_EXAMPLE=OFF"
29+
];
2730

2831
meta = with stdenv.lib; {
2932
description = "An open-source performance library for deep-learning applications";

derivations/mkl-dnn/patch.patch

Lines changed: 0 additions & 19 deletions
This file was deleted.

0 commit comments

Comments
 (0)