commit
4cebbee703
@ -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; |
||||||
|
}; |
||||||
|
} |
@ -0,0 +1,36 @@ |
|||||||
|
{ lib |
||||||
|
, stdenv |
||||||
|
, fetchFromGitHub |
||||||
|
, cmake |
||||||
|
}: |
||||||
|
|
||||||
|
stdenv.mkDerivation rec { |
||||||
|
pname = "primesieve"; |
||||||
|
version = "7.9"; |
||||||
|
|
||||||
|
src = fetchFromGitHub { |
||||||
|
owner = "kimwalisch"; |
||||||
|
repo = "primesieve"; |
||||||
|
rev = "v${version}"; |
||||||
|
hash = "sha256-lwT+adKFoNI125y5FuJMovtMh8sFi9oqMLYGLabzrCI="; |
||||||
|
}; |
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ]; |
||||||
|
|
||||||
|
meta = with lib; { |
||||||
|
homepage = "https://primesieve.org/"; |
||||||
|
description = "Fast C/C++ prime number generator"; |
||||||
|
longDescription = '' |
||||||
|
primesieve is a command-line program and C/C++ library for quickly |
||||||
|
generating prime numbers. It is very cache efficient, it detects your |
||||||
|
CPU's L1 & L2 cache sizes and allocates its main data structures |
||||||
|
accordingly. It is also multi-threaded by default, it uses all available |
||||||
|
CPU cores whenever possible i.e. if sequential ordering is not |
||||||
|
required. primesieve can generate primes and prime k-tuplets up to 264. |
||||||
|
''; |
||||||
|
license = licenses.bsd2; |
||||||
|
maintainers = teams.sage.members ++ |
||||||
|
(with maintainers; [ abbradar AndersonTorres ]); |
||||||
|
platforms = platforms.unix; |
||||||
|
}; |
||||||
|
} |
@ -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; |
|
||||||
}; |
|
||||||
} |
|
@ -1,23 +0,0 @@ |
|||||||
{ lib, stdenv, fetchFromGitHub, cmake }: |
|
||||||
|
|
||||||
stdenv.mkDerivation rec { |
|
||||||
pname = "primesieve"; |
|
||||||
version = "7.8"; |
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ]; |
|
||||||
|
|
||||||
src = fetchFromGitHub { |
|
||||||
owner = "kimwalisch"; |
|
||||||
repo = "primesieve"; |
|
||||||
rev = "v${version}"; |
|
||||||
sha256 = "sha256-M35CP/xEyC7mEh84kaGsgfsDI9fnanHraNPgTvpqimI="; |
|
||||||
}; |
|
||||||
|
|
||||||
meta = with lib; { |
|
||||||
description = "Fast C/C++ prime number generator"; |
|
||||||
homepage = "https://primesieve.org/"; |
|
||||||
license = licenses.bsd2; |
|
||||||
platforms = platforms.unix; |
|
||||||
maintainers = with maintainers; [ abbradar ]; |
|
||||||
}; |
|
||||||
} |
|
Loading…
Reference in new issue