parent
d488388cfc
commit
91621176e0
@ -0,0 +1,51 @@ |
|||||||
|
{ lib |
||||||
|
, stdenv |
||||||
|
, fetchFromGitHub |
||||||
|
, cmake |
||||||
|
, primesieve |
||||||
|
}: |
||||||
|
|
||||||
|
stdenv.mkDerivation rec { |
||||||
|
pname = "primecount"; |
||||||
|
version = "7.3"; |
||||||
|
|
||||||
|
src = fetchFromGitHub { |
||||||
|
owner = "kimwalisch"; |
||||||
|
repo = "primecount"; |
||||||
|
rev = "v${version}"; |
||||||
|
hash = "sha256-hxnn1uiGSB6XRC7yK+SXTwTsJfjhemWXsMNhhL7Ghek="; |
||||||
|
}; |
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ]; |
||||||
|
|
||||||
|
buildInputs = [ primesieve ]; |
||||||
|
|
||||||
|
cmakeFlags = [ |
||||||
|
"-DBUILD_LIBPRIMESIEVE=ON" |
||||||
|
"-DBUILD_PRIMECOUNT=ON" |
||||||
|
"-DBUILD_SHARED_LIBS=ON" |
||||||
|
"-DBUILD_STATIC_LIBS=OFF" |
||||||
|
"-DBUILD_TESTS=ON" |
||||||
|
]; |
||||||
|
|
||||||
|
meta = with lib; { |
||||||
|
homepage = "https://github.com/kimwalisch/primecount"; |
||||||
|
description = "Fast prime counting function implementations"; |
||||||
|
longDescription = '' |
||||||
|
primecount is a command-line program and C/C++ library that counts the |
||||||
|
primes below an integer x ≤ 10^31 using highly optimized implementations |
||||||
|
of the combinatorial prime counting algorithms. |
||||||
|
|
||||||
|
primecount includes implementations of all important combinatorial prime |
||||||
|
counting algorithms known up to this date all of which have been |
||||||
|
parallelized using OpenMP. primecount contains the first ever open source |
||||||
|
implementations of the Deleglise-Rivat algorithm and Xavier Gourdon's |
||||||
|
algorithm (that works). primecount also features a novel load balancer |
||||||
|
that is shared amongst all implementations and that scales up to hundreds |
||||||
|
of CPU cores. primecount has already been used to compute several prime |
||||||
|
counting function world records. |
||||||
|
''; |
||||||
|
license = licenses.bsd2; |
||||||
|
inherit (primesieve.meta) maintainers platforms; |
||||||
|
}; |
||||||
|
} |
@ -1,33 +0,0 @@ |
|||||||
{ lib, stdenv, fetchFromGitHub, cmake, primesieve }: |
|
||||||
|
|
||||||
stdenv.mkDerivation rec { |
|
||||||
pname = "primecount"; |
|
||||||
version = "7.2"; |
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ]; |
|
||||||
|
|
||||||
buildInputs = [ primesieve ]; |
|
||||||
|
|
||||||
src = fetchFromGitHub { |
|
||||||
owner = "kimwalisch"; |
|
||||||
repo = "primecount"; |
|
||||||
rev = "v${version}"; |
|
||||||
sha256 = "sha256-/Cb/HkD4UQ9gXsRpvRiEuQBoRd0THxNHsBaAAa+CqQo="; |
|
||||||
}; |
|
||||||
|
|
||||||
cmakeFlags = [ |
|
||||||
"-DBUILD_STATIC_LIBS=OFF" |
|
||||||
"-DBUILD_SHARED_LIBS=ON" |
|
||||||
"-DBUILD_TESTS=ON" |
|
||||||
"-DBUILD_PRIMECOUNT=ON" |
|
||||||
"-DBUILD_LIBPRIMESIEVE=ON" |
|
||||||
]; |
|
||||||
|
|
||||||
meta = with lib; { |
|
||||||
description = "Fast prime counting function implementations"; |
|
||||||
homepage = "https://github.com/kimwalisch/primecount"; |
|
||||||
license = licenses.bsd2; |
|
||||||
platforms = platforms.unix; |
|
||||||
maintainers = teams.sage.members; |
|
||||||
}; |
|
||||||
} |
|
Loading…
Reference in new issue