diff options
-rw-r--r-- | libre/sagemath/PKGBUILD | 27 | ||||
-rw-r--r-- | libre/sagemath/latte-count.patch | 84 | ||||
-rw-r--r-- | libre/sagemath/sagemath-gslcblas.patch | 13 | ||||
-rw-r--r-- | libre/sagemath/sagemath-no-anal.h.patch | 12 | ||||
-rw-r--r-- | libre/sagemath/sagemath-python3-notebook.patch | 27 |
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: + |