From d488388cfcd660c3439aaaf5c31008b6bcdf3d1d Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sat, 14 May 2022 10:56:13 -0300 Subject: [PATCH 1/2] primesieve: 7.8 -> 7.9 --- .../science/math/primesieve/default.nix | 36 +++++++++++++++++++ .../science/math/primesieve/default.nix | 23 ------------ pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 37 insertions(+), 24 deletions(-) create mode 100644 pkgs/applications/science/math/primesieve/default.nix delete mode 100644 pkgs/development/libraries/science/math/primesieve/default.nix diff --git a/pkgs/applications/science/math/primesieve/default.nix b/pkgs/applications/science/math/primesieve/default.nix new file mode 100644 index 00000000000..c57e2d71f1e --- /dev/null +++ b/pkgs/applications/science/math/primesieve/default.nix @@ -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; + }; +} diff --git a/pkgs/development/libraries/science/math/primesieve/default.nix b/pkgs/development/libraries/science/math/primesieve/default.nix deleted file mode 100644 index 0cf263218a3..00000000000 --- a/pkgs/development/libraries/science/math/primesieve/default.nix +++ /dev/null @@ -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 ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a86ab8e64ed..1351c11fdfc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20115,7 +20115,7 @@ with pkgs; primecount = callPackage ../development/libraries/science/math/primecount { }; - primesieve = callPackage ../development/libraries/science/math/primesieve { }; + primesieve = callPackage ../applications/science/math/primesieve { }; prison = callPackage ../development/libraries/prison { }; From 91621176e04a887f727b1b8d5f1a04064ad97e0f Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sat, 14 May 2022 10:59:43 -0300 Subject: [PATCH 2/2] primecount: 7.2 -> 7.3 --- .../science/math/primecount/default.nix | 51 +++++++++++++++++++ .../science/math/primecount/default.nix | 33 ------------ pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 52 insertions(+), 34 deletions(-) create mode 100644 pkgs/applications/science/math/primecount/default.nix delete mode 100644 pkgs/development/libraries/science/math/primecount/default.nix diff --git a/pkgs/applications/science/math/primecount/default.nix b/pkgs/applications/science/math/primecount/default.nix new file mode 100644 index 00000000000..993092c4653 --- /dev/null +++ b/pkgs/applications/science/math/primecount/default.nix @@ -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; + }; +} diff --git a/pkgs/development/libraries/science/math/primecount/default.nix b/pkgs/development/libraries/science/math/primecount/default.nix deleted file mode 100644 index e1390ce6416..00000000000 --- a/pkgs/development/libraries/science/math/primecount/default.nix +++ /dev/null @@ -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; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1351c11fdfc..0a38ad85721 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20113,7 +20113,7 @@ with pkgs; prime-server = callPackage ../development/libraries/prime-server { }; - primecount = callPackage ../development/libraries/science/math/primecount { }; + primecount = callPackage ../applications/science/math/primecount { }; primesieve = callPackage ../applications/science/math/primesieve { };