summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/sagemath/PKGBUILD27
-rw-r--r--libre/sagemath/latte-count.patch84
-rw-r--r--libre/sagemath/sagemath-gslcblas.patch13
-rw-r--r--libre/sagemath/sagemath-no-anal.h.patch12
-rw-r--r--libre/sagemath/sagemath-python3-notebook.patch27
5 files changed, 125 insertions, 38 deletions
diff --git a/libre/sagemath/PKGBUILD b/libre/sagemath/PKGBUILD
index e5841661f..32e892716 100644
--- a/libre/sagemath/PKGBUILD
+++ b/libre/sagemath/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 213281 2017-02-21 09:01:02Z arojas $
+# $Id: PKGBUILD 219758 2017-03-28 19:08:08Z arojas $
# Maintainer (Arch): Evgeniy Alekseev <arcanis.arch at gmail dot com>
# Maintainer (Arch): Antonio Rojas <arojas@archlinux.org>
# Contributor (Arch): Daniel Wallace <danielwallace at gtmanfred dot com>
@@ -10,8 +10,8 @@
# Maintainer: André Silva <emulatorman@parabola.nu>
pkgname=sagemath
-pkgver=7.5.1
-pkgrel=7.parabola1
+pkgver=7.6
+pkgrel=2.parabola1
pkgdesc="Free Mathematics Software, free software replacement of Magma, Maple, Mathematica, and Matlab, without nonfree nauty support"
arch=(i686 x86_64 armv7h)
url="http://www.sagemath.org"
@@ -30,6 +30,7 @@ optdepends=('cython2: to compile cython code' 'python2-pkgconfig: to compile cyt
'lrs: Algorithms for linear reverse search used in game theory and for computing volume of polytopes'
'libhomfly: for computing the homfly polynomial of links' 'libbraiding: for computing in braid groups'
'libfes: exhaustive search of solutions for boolean equations' 'python2-pynormaliz: Normaliz backend for polyhedral computations'
+ 'latte-integrale: integral point count in polyhedra'
'three.js: alternative 3D plots engine' 'tachyon: alternative 3D plots engine'
'sagemath-jupyter: Jupyter kernel')
makedepends=(cython2 boost ratpoints symmetrica python2-jinja coin-or-cbc libhomfly libbraiding
@@ -38,22 +39,22 @@ conflicts=(sage-mathematics)
replaces=(sage-mathematics)
provides=(sage-mathematics)
source=("$pkgname-$pkgver.tar.gz::https://github.com/sagemath/sage/archive/$pkgver.tar.gz"
- env.patch skip-check.patch cython-sys-path.patch is-package-installed.patch package.patch
- jupyter-path.patch test-optional.patch ecm-7.patch increase-rtol.patch sagemath-gslcblas.patch r-no-readline.patch
- sagemath-no-anal.h.patch sagemath-planarity3.patch fes02.patch sagemath-singular-4.1.0.p2.patch)
-sha256sums=('3cd9af3e3bfd7f5cc966b7c36168d04b9a1213aa9a7af3286b5d53d40e7653e3'
+ env.patch skip-check.patch cython-sys-path.patch is-package-installed.patch package.patch latte-count.patch
+ jupyter-path.patch sagemath-python3-notebook.patch test-optional.patch ecm-7.patch increase-rtol.patch r-no-readline.patch
+ sagemath-planarity3.patch fes02.patch sagemath-singular-4.1.0.p2.patch)
+sha256sums=('e6e0729ab25446e7c922058db0eee4b0b294b32c196e34842e843ea9fae41423'
'9dba04ff13626a7b6c338a8b18a6c27d343f68a547a218533cf773af3dae6635'
'b02b3d2d5620ca20f96adb62b6fef05e4676c0a60983310a1450fdf3d923cb04'
'ff7e034d08ab084fdb193484f7fe3a659ebcd8ab33a2b7177237d65b26de7872'
'd60fb0fbd27991ce9496ca035a54b03334b5b53f244227a8d6e13f3327ce75d2'
'4a2297e4d9d28f0b3a1f58e1b463e332affcb109eafde44837b1657e309c8212'
+ 'b816c71d345fb1188c3faa01c4e75cfa04ba6506080231d5d2c303a2288e9b50'
'775051aa9076ebf631c8a291af38b6ec4a13c904740dc9da831641d592d8bcd8'
+ '27aa73d427d92aeb2c181a233aa3a574a4158cd7dee33832808f69edaec55ea2'
'81d08c6a760f171f3381455b66a6c84789c9f0eefddbe6ca5794075514ad8c3a'
'65ad84c83d5f956fde8eab961f2caad56d64044324c4abc0e56bcd9f44061cb6'
'be925eefeac3f28e639794ddc20d64e6faafd7181804e29417a510224d19ccc7'
- '973224f53e9a6fcfaa9c6cb842b02430a601d1c7ce0abb41b3591470d128930c'
'ef9f401fa84fe1772af9efee6816643534f2896da4c23b809937b19771bdfbbf'
- '8126c92a5fc15738c4f7982aadb5a4033230fc2d5da05af9133a96ad1181419e'
'a1c562ebe4538d672404ca3ac2e954a3c955afeb7463f7b4fe6eaa6fa74fe5c7'
'a39da083c038ada797ffc5bedc9ba47455a3f77057d42f86484ae877ef9172ea'
'e1912afec58b834fac3b9161c2d5a1794bb618126c6bd7a4be85c834231360e7')
@@ -78,22 +79,22 @@ prepare(){
patch -p1 -i ../ecm-7.patch
# increase numerical tolerance, needed by scipy 0.18
patch -p1 -i ../increase-rtol.patch
-# fix cblas linking in gsl modules
- patch -p1 -i ../sagemath-gslcblas.patch
# fix freezes in R interface with readline 7 (Debian)
patch -p1 -i ../r-no-readline.patch
# fix build with planarity 3 (Debian)
patch -p2 -i ../sagemath-planarity3.patch
# fix build with Singular 4.1.0-p2
patch -p0 -i ../sagemath-singular-4.1.0.p2.patch
+# use correct latte-count binary name
+ patch -p1 -i ../latte-count.patch
+# make 'sage -notebook=jupyter' work with our python3 jupyter-notebook package
+ patch -p1 -i ../sagemath-python3-notebook.patch
# Upstream patches
# fix build against libfes 0.2 http://trac.sagemath.org/ticket/15209
patch -p1 -i ../fes02.patch
# replace is_package_installed usage http://trac.sagemath.org/ticket/20377
patch -p1 -i ../is-package-installed.patch
-# Allow compiling without pari's anal.h https://trac.sagemath.org/ticket/22195
- patch -p1 -i ../sagemath-no-anal.h.patch
# use python2
sed -e 's|#!/usr/bin/env python|#!/usr/bin/env python2|' -e 's|exec python|exec python2|' -i src/bin/*
diff --git a/libre/sagemath/latte-count.patch b/libre/sagemath/latte-count.patch
new file mode 100644
index 000000000..623259294
--- /dev/null
+++ b/libre/sagemath/latte-count.patch
@@ -0,0 +1,84 @@
+diff --git a/src/sage/geometry/polyhedron/base.py b/src/sage/geometry/polyhedron/base.py
+index 50d99f99e4..3a3a8cb214 100644
+--- a/src/sage/geometry/polyhedron/base.py
++++ b/src/sage/geometry/polyhedron/base.py
+@@ -4629,7 +4629,7 @@ class Polyhedron_base(Element):
+ ...
+ RuntimeError: LattE integrale program failed (exit code 1):
+ ...
+- Invocation: count '--redundancy-check=none' --cdd /dev/stdin
++ Invocation: latte-count '--redundancy-check=none' --cdd /dev/stdin
+ ...
+ Parse error in CDD-style input file /dev/stdin
+ sage: Q.integral_points_count(verbose=True) # optional - latte_int
+diff --git a/src/sage/geometry/polyhedron/base_ZZ.py b/src/sage/geometry/polyhedron/base_ZZ.py
+index 268af9db0d..70d41dfa30 100644
+--- a/src/sage/geometry/polyhedron/base_ZZ.py
++++ b/src/sage/geometry/polyhedron/base_ZZ.py
+@@ -228,7 +228,7 @@ class Polyhedron_ZZ(Polyhedron_base):
+ sage: p = P.ehrhart_polynomial(maxdet=5, verbose=True) # optional - latte_int
+ This is LattE integrale ...
+ ...
+- Invocation: count --ehrhart-polynomial '--redundancy-check=none' --cdd '--maxdet=5' /dev/stdin
++ Invocation: latte-count --ehrhart-polynomial '--redundancy-check=none' --cdd '--maxdet=5' /dev/stdin
+ ...
+ sage: p # optional - latte_int
+ 1/2*t^2 + 3/2*t + 1
+@@ -236,7 +236,7 @@ class Polyhedron_ZZ(Polyhedron_base):
+ sage: p = P.ehrhart_polynomial(dual=True, verbose=True) # optional - latte_int
+ This is LattE integrale ...
+ ...
+- Invocation: count --ehrhart-polynomial '--redundancy-check=none' --cdd --dual /dev/stdin
++ Invocation: latte-count --ehrhart-polynomial '--redundancy-check=none' --cdd --dual /dev/stdin
+ ...
+ sage: p # optional - latte_int
+ 1/2*t^2 + 3/2*t + 1
+@@ -244,7 +244,7 @@ class Polyhedron_ZZ(Polyhedron_base):
+ sage: p = P.ehrhart_polynomial(irrational_primal=True, verbose=True) # optional - latte_int
+ This is LattE integrale ...
+ ...
+- Invocation: count --ehrhart-polynomial '--redundancy-check=none' --cdd --irrational-primal /dev/stdin
++ Invocation: latte-count --ehrhart-polynomial '--redundancy-check=none' --cdd --irrational-primal /dev/stdin
+ ...
+ sage: p # optional - latte_int
+ 1/2*t^2 + 3/2*t + 1
+@@ -252,7 +252,7 @@ class Polyhedron_ZZ(Polyhedron_base):
+ sage: p = P.ehrhart_polynomial(irrational_all_primal=True, verbose=True) # optional - latte_int
+ This is LattE integrale ...
+ ...
+- Invocation: count --ehrhart-polynomial '--redundancy-check=none' --cdd --irrational-all-primal /dev/stdin
++ Invocation: latte-count --ehrhart-polynomial '--redundancy-check=none' --cdd --irrational-all-primal /dev/stdin
+ ...
+ sage: p # optional - latte_int
+ 1/2*t^2 + 3/2*t + 1
+@@ -264,7 +264,7 @@ class Polyhedron_ZZ(Polyhedron_base):
+ ...
+ RuntimeError: LattE integrale program failed (exit code 1):
+ ...
+- Invocation: count --ehrhart-polynomial '--redundancy-check=none' --cdd '--bim-bam-boum=19' /dev/stdin
++ Invocation: latte-count --ehrhart-polynomial '--redundancy-check=none' --cdd '--bim-bam-boum=19' /dev/stdin
+ Unknown command/option --bim-bam-boum=19
+ """
+ if self.is_empty():
+diff --git a/src/sage/interfaces/latte.py b/src/sage/interfaces/latte.py
+index 066cedd401..302b39910d 100644
+--- a/src/sage/interfaces/latte.py
++++ b/src/sage/interfaces/latte.py
+@@ -86,7 +86,7 @@ def count(arg, ehrhart_polynomial=False, multivariate_generating_function=False,
+ sage: n = count(cddin, cdd=True, verbose=True, raw_output=True) # optional - latte_int
+ This is LattE integrale ...
+ ...
+- Invocation: count '--redundancy-check=none' --cdd /dev/stdin
++ Invocation: latte-count '--redundancy-check=none' --cdd /dev/stdin
+ ...
+ Total Unimodular Cones: ...
+ Maximum number of simplicial cones in memory at once: ...
+@@ -106,7 +106,7 @@ def count(arg, ehrhart_polynomial=False, multivariate_generating_function=False,
+ from sage.misc.misc import SAGE_TMP
+ from sage.rings.integer import Integer
+
+- args = ['count']
++ args = ['latte-count']
+ if ehrhart_polynomial and multivariate_generating_function:
+ raise ValueError
+ if ehrhart_polynomial:
diff --git a/libre/sagemath/sagemath-gslcblas.patch b/libre/sagemath/sagemath-gslcblas.patch
deleted file mode 100644
index 9ef3094b0..000000000
--- a/libre/sagemath/sagemath-gslcblas.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/module_list.py b/src/module_list.py
-index 96e8081..4728e9a 100644
---- a/src/module_list.py
-+++ b/src/module_list.py
-@@ -45,6 +45,7 @@ givaro_library_dirs = givaro_pc['library_dirs']
- gsl_pc = pkgconfig.parse('gsl')
- gsl_libs = gsl_pc['libraries']
- gsl_libs.remove('gslcblas')
-+gsl_libs.extend(cblas_libs)
- gsl_library_dirs = gsl_pc['library_dirs']
- gsl_include_dirs = gsl_pc['include_dirs']
-
-
diff --git a/libre/sagemath/sagemath-no-anal.h.patch b/libre/sagemath/sagemath-no-anal.h.patch
deleted file mode 100644
index f1b261321..000000000
--- a/libre/sagemath/sagemath-no-anal.h.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/sage/libs/cypari2/paripriv.pxd b/src/sage/libs/cypari2/paripriv.pxd
-index b6ea381..921599d 100644
---- a/src/sage/libs/cypari2/paripriv.pxd
-+++ b/src/sage/libs/cypari2/paripriv.pxd
-@@ -26,5 +26,5 @@ cdef extern from "pari/paripriv.h":
-
- extern gp_data* GP_DATA
-
--cdef extern from "pari/anal.h":
-- char* closure_func_err()
-+cdef extern: # Declared in private PARI header file "anal.h"
-+ const char* closure_func_err()
diff --git a/libre/sagemath/sagemath-python3-notebook.patch b/libre/sagemath/sagemath-python3-notebook.patch
new file mode 100644
index 000000000..cae225615
--- /dev/null
+++ b/libre/sagemath/sagemath-python3-notebook.patch
@@ -0,0 +1,27 @@
+diff --git a/src/bin/sage-notebook b/src/bin/sage-notebook
+index 74192da240..0ede281aad 100755
+--- a/src/bin/sage-notebook
++++ b/src/bin/sage-notebook
+@@ -96,8 +96,7 @@ class NotebookJupyter(object):
+ if not have_prerequisites():
+ print(self.PREREQUISITE_ERROR)
+ raise SystemExit(1)
+- from notebook.notebookapp import main
+- main(argv)
++ os.execvp('jupyter-notebook', ['jupyter-notebook'] + argv)
+
+
+ class SageNBExport(NotebookJupyter):
+diff --git a/src/sage/repl/ipython_kernel/install.py b/src/sage/repl/ipython_kernel/install.py
+index 3912b8cdf5..bd40cdadda 100644
+--- a/src/sage/repl/ipython_kernel/install.py
++++ b/src/sage/repl/ipython_kernel/install.py
+@@ -281,7 +281,6 @@ def have_prerequisites(debug=True):
+ True
+ """
+ try:
+- from notebook.notebookapp import NotebookApp
+ return True
+ except ImportError:
+ if debug:
+