[arch-commits] Commit in sagemath/trunk (PKGBUILD sagemath-primecount-5.1.patch)
Antonio Rojas
arojas at archlinux.org
Mon Sep 2 18:57:30 UTC 2019
Date: Monday, September 2, 2019 @ 18:57:29
Author: arojas
Revision: 507071
ntl 11.3.3 and primecount 5.1 rebuild
Added:
sagemath/trunk/sagemath-primecount-5.1.patch
Modified:
sagemath/trunk/PKGBUILD
-------------------------------+
PKGBUILD | 10 +++-
sagemath-primecount-5.1.patch | 89 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 96 insertions(+), 3 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2019-09-02 18:47:39 UTC (rev 507070)
+++ PKGBUILD 2019-09-02 18:57:29 UTC (rev 507071)
@@ -8,7 +8,7 @@
pkgbase=sagemath
pkgname=(sagemath sagemath-jupyter)
pkgver=8.8
-pkgrel=5
+pkgrel=6
pkgdesc="Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab"
arch=(x86_64)
url="http://www.sagemath.org"
@@ -47,7 +47,8 @@
sagemath-ecl-sigfpe.patch
sagemath-linbox-1.6.patch
sagemath-threejs-dir-structure.patch
- meataxe-tables.patch)
+ meataxe-tables.patch
+ sagemath-primecount-5.1.patch)
sha256sums=('d012ff4f0f34e086fcaf576e25220fc647826116c69b62b887bc0b8ced5c1e9f'
'20f5d7a1b5b16f4de43edcd4184e99e4687d9cccce70058f3f58f5d909bda300'
'328e45e78065b5f6527174bda48cfff6828acbf107c2535b0a9a92c3ceb35842'
@@ -61,7 +62,8 @@
'a42f3b152b1aedb8abf16bc70971419919d1fe30328574e7fef8305f9d07d938'
'81fc39e39e8508f742ccc784efd0492fd04474cee75edf7bd3cbea43edd49b2e'
'779e4107f663307bc9c564e6f800364e7e1926b6cab18ea6674bd62ea7664143'
- '8305de73d7a3c68ceaa001866ff933c4fa3a0706700ade2e25046f58270bc6db')
+ '8305de73d7a3c68ceaa001866ff933c4fa3a0706700ade2e25046f58270bc6db'
+ '4e48ce9aa6a584a9e342e4fb0dac91a1af27cfc40bfedb54e68ccad3b9257bb6')
prepare(){
cd sage-$pkgver
@@ -79,6 +81,8 @@
patch -p1 -i ../sagemath-python3-notebook.patch
# use correct online three.js version
patch -p1 -i ../sagemath-threejs.patch
+# fix build with primecount 5.1
+ patch -p1 -i ../sagemath-primecount-5.1.patch
# Upstream patches
# fix build against libfes 0.2 http://trac.sagemath.org/ticket/15209
Added: sagemath-primecount-5.1.patch
===================================================================
--- sagemath-primecount-5.1.patch (rev 0)
+++ sagemath-primecount-5.1.patch 2019-09-02 18:57:29 UTC (rev 507071)
@@ -0,0 +1,89 @@
+diff --git a/src/sage/interfaces/primecount.pyx b/src/sage/interfaces/primecount.pyx
+index a0f698779e..86dce1c790 100644
+--- a/src/sage/interfaces/primecount.pyx
++++ b/src/sage/interfaces/primecount.pyx
+@@ -22,7 +22,7 @@ cdef inline int _do_sig(int64_t n):
+ "threshold for sig_on/sig_off"
+ return n >> 26
+
+-cpdef int64_t prime_pi(int64_t n, method=None) except -1:
++cpdef int64_t prime_pi(int64_t n) except -1:
+ r"""
+ Return the number of prime numbers smaller or equal than ``n``.
+
+@@ -30,71 +30,17 @@ cpdef int64_t prime_pi(int64_t n, method=None) except -1:
+
+ - ``n`` - an integer
+
+- - ``method`` - ``None`` or a string that determines the primecount
+- function to be called
+-
+- - ``"deleglise_rivat"``
+- - ``"legendre"``
+- - ``"lehmer"``
+- - ``"lmo"``
+- - ``"meissel"``
+- - ``"primesieve"``
+-
+ EXAMPLES::
+
+ sage: from sage.interfaces.primecount import prime_pi # optional - primecount
+
+ sage: prime_pi(1000) == 168 # optional - primecount
+ True
+- sage: prime_pi(1000, "deleglise_rivat") == 168 # optional - primecount
+- True
+- sage: prime_pi(1000, "legendre") == 168 # optional - primecount
+- True
+- sage: prime_pi(1000, "lehmer") == 168 # optional - primecount
+- True
+- sage: prime_pi(1000, "lmo") == 168 # optional - primecount
+- True
+- sage: prime_pi(1000, "meissel") == 168 # optional - primecount
+- True
+- sage: prime_pi(1000, "primesieve") == 168 # optional - primecount
+- True
+- sage: prime_pi(1000, "youpi") # optional - primecount
+- Traceback (most recent call last):
+- ...
+- ValueError: unknown method 'youpi'
+ """
+ cdef int64_t ans
+- if method is None:
+- if _do_sig(n): sig_on()
+- ans = primecount.pi(n)
+- if _do_sig(n): sig_off()
+- elif method == "deleglise_rivat":
+- if _do_sig(n): sig_on()
+- ans = primecount.pi_deleglise_rivat(n)
+- if _do_sig(n): sig_off()
+- elif method == "legendre":
+- if _do_sig(n): sig_on()
+- ans = primecount.pi_legendre(n)
+- if _do_sig(n): sig_off()
+- elif method == "lehmer":
+- if _do_sig(n): sig_on()
+- ans = primecount.pi_lehmer(n)
+- if _do_sig(n): sig_off()
+- elif method == "lmo":
+- if _do_sig(n): sig_on()
+- ans = primecount.pi_lmo(n)
+- if _do_sig(n): sig_off()
+- elif method == "meissel":
+- if _do_sig(n): sig_on()
+- ans = primecount.pi_meissel(n)
+- if _do_sig(n): sig_off()
+- elif method == "primesieve":
+- if _do_sig(n): sig_on()
+- ans = primecount.pi_primesieve(n)
+- if _do_sig(n): sig_off()
+- else:
+- raise ValueError("unknown method {!r}".format(method))
+-
++ if _do_sig(n): sig_on()
++ ans = primecount.pi(n)
++ if _do_sig(n): sig_off()
+ return ans
+
+ cpdef prime_pi_128(n):
+
More information about the arch-commits
mailing list