diff --git a/pkgs/development/libraries/stxxl/default.nix b/pkgs/development/libraries/stxxl/default.nix index 23590f17ca88..9fb25aa36e0a 100644 --- a/pkgs/development/libraries/stxxl/default.nix +++ b/pkgs/development/libraries/stxxl/default.nix @@ -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 { - name = "stxxl-1.4.1"; + name = "stxxl-${version}"; + version = "1.4.1"; 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"; }; - 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 = { inherit parallel; }; - meta = { - homepage = https://github.com/stxxl/stxxl; + meta = with stdenv.lib; { 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; }; }