diff options
-rw-r--r-- | libre/sagemath/PKGBUILD | 18 | ||||
-rw-r--r-- | libre/sagemath/package.patch | 6 | ||||
-rw-r--r-- | libre/sagemath/sagemath-cython0.25.patch | 30 |
3 files changed, 43 insertions, 11 deletions
diff --git a/libre/sagemath/PKGBUILD b/libre/sagemath/PKGBUILD index c27c8dad6..f43f2f295 100644 --- a/libre/sagemath/PKGBUILD +++ b/libre/sagemath/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 192974 2016-10-22 14:14:48Z arojas $ +# $Id: PKGBUILD 194994 2016-11-07 21:36:32Z felixonmars $ # 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> @@ -11,7 +11,7 @@ pkgname=sagemath pkgver=7.4 -pkgrel=2.parabola1 +pkgrel=3.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" @@ -26,31 +26,33 @@ optdepends=('cython2: to compile cython code' 'python2-pkgconfig: to compile cyt 'coin-or-cbc: COIN backend for numerical computations' 'coin-or-csdp: for computing Lovász theta-function of graphs' 'buckygen: for generating fullerene graphs' 'plantri: for generating some classes of graphs' 'benzene: for generating fusenes and benzenoids' 'modular_decomposition: modular decomposition of graphs' 'ffmpeg: to export animations to video' 'imagemagick: to show animations' - 'coxeter3: Coxeter groups implementation' 'cryptominisat: SAT solver' 'gap-data: for computing Galois groups' + 'coxeter3: Coxeter groups implementation' 'cryptominisat2: SAT solver' 'gap-data: for computing Galois groups' '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' 'sagemath-jupyter: Jupyter kernel') makedepends=(cython2 boost ratpoints symmetrica fflas-ffpack python2-jinja coin-or-cbc libhomfly libbraiding - mcqd coxeter3 cryptominisat modular_decomposition bliss-graphs tdlib python2-pkgconfig meataxe) # libfes + mcqd coxeter3 cryptominisat2 modular_decomposition bliss-graphs tdlib python2-pkgconfig meataxe) # libfes 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 disable-fes.patch - jupyter-path.patch test-optional.patch python-2.7.11.patch ecm-7.patch increase-rtol.patch sagemath-singular4.patch) + jupyter-path.patch test-optional.patch python-2.7.11.patch ecm-7.patch increase-rtol.patch sagemath-singular4.patch + sagemath-cython0.25.patch) md5sums=('8311ee35a309dbc668b5148795211254' '784ba3fca83f24ed0bbf62e01fa4e967' '6cafcb381437d4751fd55b25d5090987' 'a1bcdd3fe620dbae60ed8b0e98b2ece7' '5dca842e4440e4ef235ae18c1b1f20e3' - '493a9e0eae9b2ef87544b42785ae11ea' + 'ccfd5b1bc4796f414f1531be52504dd7' '06a67e611d10aa2381efe1f08ea4ffd9' '0d88207416dfb98a17bf8886257d9a02' '921017fd2d9dadbb6b602ac0476bfd58' 'ef927896f2071b442b1d07d7e69f5f3a' '0c9a57d35de80c2cd418ebec912efbbb' '39d3fded716d2a7ae0ab03e0896b7497' - '4bd7305e8b69add8356f9751470cf587') + '4bd7305e8b69add8356f9751470cf587' + '0ba2b4266f14b19319ece3996be70511') prepare(){ cd sage-$pkgver @@ -88,6 +90,8 @@ prepare(){ patch -p1 -i ../is-package-installed.patch # port to Singular 4 https://trac.sagemath.org/ticket/17254 patch -p1 -i ../sagemath-singular4.patch +# fix build with cython 0.25 + patch -p1 -i ../sagemath-cython0.25.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/package.patch b/libre/sagemath/package.patch index ef449fdf3..0139f4b15 100644 --- a/libre/sagemath/package.patch +++ b/libre/sagemath/package.patch @@ -20,11 +20,10 @@ class CythonizeExtension(Extension): """ -@@ -75,15 +73,7 @@ - try: +@@ -76,14 +74,7 @@ condition = kwds.pop("condition") except KeyError: -- pkg = kwds.pop("package") + pkg = kwds.pop("package") - try: - pkginfo = all_packages[pkg] - except KeyError: @@ -37,4 +36,3 @@ if condition: return Extension(*args, **kwds) else: - diff --git a/libre/sagemath/sagemath-cython0.25.patch b/libre/sagemath/sagemath-cython0.25.patch new file mode 100644 index 000000000..b6bcfa5ef --- /dev/null +++ b/libre/sagemath/sagemath-cython0.25.patch @@ -0,0 +1,30 @@ +--- a/src/setup.py 2016-11-05 19:34:44.701025334 +0000 ++++ b/src/setup.py 2016-11-05 19:46:00.706210289 +0000 +@@ -562,16 +562,6 @@ + import Cython.Compiler.Options + import Cython.Compiler.Main + +- # Sage uses these directives (mostly for historical reasons). +- Cython.Compiler.Options.embed_pos_in_docstring = True +- Cython.Compiler.Options.directive_defaults['autotestdict'] = False +- Cython.Compiler.Options.directive_defaults['cdivision'] = True +- Cython.Compiler.Options.directive_defaults['fast_getattr'] = True +- # The globals() builtin in Cython was fixed to return to the current scope, +- # but Sage relies on the broken behavior of returning to the nearest +- # enclosing Python scope (e.g. to perform variable injection). +- Cython.Compiler.Options.old_style_globals = True +- + debug = False + if os.environ.get('SAGE_DEBUG', None) != 'no': + print('Enabling Cython debugging support') +@@ -608,7 +598,10 @@ + force=force, + aliases=aliases, + compiler_directives={ ++ 'autotestdict': False, ++ 'cdivision': True, + 'embedsignature': True, ++ 'fast_getattr': True, + 'profile': profile, + }) + |