stxxl: refactor
This commit is contained in:
parent
874fa4d8a3
commit
e9b093bc98
@ -1,24 +1,38 @@
|
|||||||
{stdenv, fetchurl, cmake, parallel ? true }:
|
{ stdenv, fetchurl, cmake
|
||||||
|
, parallel ? true
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
mkFlag = optset: flag: if optset then "-D${flag}=ON" else "-D${flag}=OFF";
|
||||||
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "stxxl-1.4.1";
|
name = "stxxl-${version}";
|
||||||
|
version = "1.4.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/stxxl/stxxl/archive/1.4.1.tar.gz";
|
url = "https://github.com/stxxl/stxxl/archive/${version}.tar.gz";
|
||||||
sha256 = "54006a5fccd1435abc2f3ec201997a4d7dacddb984d2717f62191798e5372f6c";
|
sha256 = "54006a5fccd1435abc2f3ec201997a4d7dacddb984d2717f62191798e5372f6c";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
cmakeFlags = let parallel_str = if parallel then "ON" else "OFF"; in "-DUSE_GNU_PARALLEL=${parallel_str}";
|
cmakeFlags = [
|
||||||
|
"-DBUILD_SHARED_LIBS=ON"
|
||||||
|
"-DBUILD_STATIC_LIBS=OFF"
|
||||||
|
"-DCMAKE_BUILD_TYPE=Release"
|
||||||
|
(mkFlag parallel "USE_GNU_PARALLEL")
|
||||||
|
];
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
inherit parallel;
|
inherit parallel;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = with stdenv.lib; {
|
||||||
homepage = https://github.com/stxxl/stxxl;
|
|
||||||
description = "An implementation of the C++ standard template library STL for external memory (out-of-core) computations";
|
description = "An implementation of the C++ standard template library STL for external memory (out-of-core) computations";
|
||||||
license = stdenv.lib.licenses.boost;
|
homepage = https://github.com/stxxl/stxxl;
|
||||||
|
license = licenses.boost;
|
||||||
|
maintainers = with maintainers; [ ];
|
||||||
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user