1{ stdenv, fetchurl, cmake
2, parallel ? true
3}:
4
5let
6 mkFlag = optset: flag: if optset then "-D${flag}=ON" else "-D${flag}=OFF";
7in
8
9stdenv.mkDerivation rec {
10 name = "stxxl-${version}";
11 version = "1.4.1";
12
13 src = fetchurl {
14 url = "https://github.com/stxxl/stxxl/archive/${version}.tar.gz";
15 sha256 = "54006a5fccd1435abc2f3ec201997a4d7dacddb984d2717f62191798e5372f6c";
16 };
17
18 nativeBuildInputs = [ cmake ];
19
20 cmakeFlags = [
21 "-DBUILD_SHARED_LIBS=ON"
22 "-DBUILD_STATIC_LIBS=OFF"
23 "-DCMAKE_BUILD_TYPE=Release"
24 (mkFlag parallel "USE_GNU_PARALLEL")
25 ];
26
27 passthru = {
28 inherit parallel;
29 };
30
31 meta = with stdenv.lib; {
32 description = "An implementation of the C++ standard template library STL for external memory (out-of-core) computations";
33 homepage = https://github.com/stxxl/stxxl;
34 license = licenses.boost;
35 maintainers = with maintainers; [ ];
36 platforms = platforms.all;
37 };
38}