summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorAntonio Rojas2016-10-23 12:45:12 +0000
committerAntonio Rojas2016-10-23 12:45:12 +0000
commit13968afc8e921c5713c5ac98ac347ad5c951108b (patch)
tree0719a9657bf5432f1994d708d031452dd2b4381a /PKGBUILD
parent8b507f6386f99bcdd8b49b6937501352f3dcbd12 (diff)
downloadaur-13968afc8e921c5713c5ac98ac347ad5c951108b.tar.gz
Sync with stable
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD87
1 files changed, 47 insertions, 40 deletions
diff --git a/PKGBUILD b/PKGBUILD
index cc117e6ebef4..fdeefd65ca0b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,65 +6,56 @@
# Contributor: Stefan Husmann <stefan-husmann at t-online dot de>
# Special thanks to Nareto for moving the compile from the .install to the PKGBUILD
-pkgname=sagemath-git
-pkgver=7.4.rc1.r0.g3a83086
+pkgbase=sagemath-git
+pkgname=(sagemath-git sagemath-jupyter-git)
+pkgver=7.5.beta0.r0.g26d4124
pkgrel=1
pkgdesc="Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab"
arch=(i686 x86_64)
url="http://www.sagemath.org"
license=(GPL)
-depends=(ipython2 cysignals ppl palp brial singular cliquer maxima-ecl gfan sympow tachyon python2-rpy2 nauty
- python2-matplotlib python2-scipy python2-sympy python2-networkx python2-pillow libgap flintqs lcalc lrcalc arb
+depends=(ipython2 cysignals ppl palp brial singular cliquer maxima-ecl gfan sympow tachyon python2-rpy2 nauty fpylll
+ python2-matplotlib python2-scipy python2-sympy python2-networkx python2-pillow python2-future libgap flintqs lcalc lrcalc arb
eclib gmp-ecm zn_poly gd python2-cvxopt pynac linbox rubiks pari-galdata pari-seadata-small planarity rankwidth
sage-data-combinatorial_designs sage-data-elliptic_curves sage-data-graphs sage-data-polytopes_db sage-data-conway_polynomials)
optdepends=('cython2: to compile cython code' 'python2-pkgconfig: to compile cython code'
'jmol: 3D plots' 'sage-notebook: Browser-based (flask) notebook interface'
- 'sagemath-doc: Documentation and inline help' 'ipython2-notebook: Jupyter notebook interface' 'mathjax: Jupyter notebook interface'
+ 'sagemath-doc: Documentation and inline help' 'python2-igraph: igraph backend for graph theory'
'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'
'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'
- 'python2-igraph: igraph backend for graph theory' 'sage-notebook-exporter: convert flask notebooks to jupyter'
- 'jupyter-notebook: Jupyter notebook interface')
+ 'libhomfly: for computing the homfly polynomial of links' 'libbraiding: for computing in braid groups')
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
-conflicts=(sagemath)
-provides=(sagemath sage-mathematics)
+ mcqd coxeter3 cryptominisat modular_decomposition bliss-graphs tdlib python2-pkgconfig meataxe git) # libfes
source=("git://git.sagemath.org/sage.git#branch=develop"
- anal.h 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)
+ 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)
md5sums=('SKIP'
- 'a906a180d198186a39820b0a2f9a9c63'
- 'b902f9e21dd13c2c9efea4803f003501'
+ '784ba3fca83f24ed0bbf62e01fa4e967'
'17771a1e59e14535cc837a189d3cb8a7'
- '1fc960b3c64ed407a991ee26c222a689'
+ '0de8f29a99a48e2ca2a13045f122c386'
'5dca842e4440e4ef235ae18c1b1f20e3'
- '9ba81f717ffd4e20b8b2f2a318307488'
+ '493a9e0eae9b2ef87544b42785ae11ea'
'a40b32a7b5d83379745b538be85064c8'
'e618d534f42428e298e12b1aa94c1a31'
- 'cdcabd475b80afe0534a5621e972736e'
+ '921017fd2d9dadbb6b602ac0476bfd58'
'ef927896f2071b442b1d07d7e69f5f3a'
'e4a91dcedbc5e617919e5a9bf1310f24'
- '1db8db7bfed5f991d55ae11d810ff5cb'
- '1baa1f7f09ca0b2b18a8b7b440508d69')
+ '1db8db7bfed5f991d55ae11d810ff5cb')
pkgver() {
cd sage
git describe --long --tags | sed -r 's/([^-]*-g)/r\1/;s/-/./g'
}
-
prepare(){
cd sage
# Arch-specific patches
-# compile all optional extensions
- patch -p1 -i ../optional-extensions.patch
-# find L.h header
- sed -e 's|libLfunction|Lfunction|' -i src/sage/libs/lcalc/lcalc_sage.h
+# assume all optional packages are installed
+ patch -p0 -i ../package.patch
# don't try to link against libpng 1.2
sed -e 's|png12|png|' -i src/module_list.py
# set env variables
@@ -74,7 +65,7 @@ prepare(){
# supress warning about GAP install dir
sed -e "s|gapdir = os.path.join(SAGE_LOCAL, 'gap', 'latest')|gapdir = '/usr/lib/gap'|" -i src/sage/libs/gap/util.pyx
# don't list optional packages when running tests
-# patch -p0 -i ../test-optional.patch
+ patch -p0 -i ../test-optional.patch
# set jupyter path
patch -p0 -i ../jupyter-path.patch
# fix timeit with Python 2.7.11
@@ -93,38 +84,36 @@ prepare(){
patch -p0 -i ../disable-fes.patch
# replace is_package_installed usage http://trac.sagemath.org/ticket/20377
patch -p1 -i ../is-package-installed.patch
-# port to Singular 4 https://trac.sagemath.org/ticket/17254
- patch -p1 -i ../sagemath-singular4.patch
# use python2
sed -e 's|#!/usr/bin/env python|#!/usr/bin/env python2|' -e 's|exec python|exec python2|' -i src/bin/*
sed -e 's|cython {OPT}|cython2 {OPT}|' -e 's|python setup.py|python2 setup.py|' -i src/sage/misc/cython.py
sed -e 's|exec ipython|exec ipython2|' -e 's|cygdb|cygdb2|' -i src/bin/sage
sed -e "s|'cython'|'cython2'|" -i src/bin/sage-cython
-
-# copy required private PARI header
- mkdir -p src/pari
- cp "$srcdir"/anal.h src/pari/anal.h
+ sed -e 's|python -c|python2 -c|' -i src/generate_py_source.mk
}
build() {
cd sage/src
- export SAGE_ROOT="$srcdir"/sage
export SAGE_LOCAL="/usr"
+ export SAGE_ROOT="$PWD"
export SAGE_SRC="$PWD"
export CC=gcc
python2 setup.py build
}
-package() {
+package_sagemath-git() {
+ optdepends+=('sagemath-jupyter: Jupyter kernel')
+ conflicts=(sage-mathematics sagemath)
+ replaces=(sage-mathematics)
+ provides=(sage-mathematics sagemath)
+
cd sage/src
- export SAGE_ROOT="/usr"
- export SAGE_LOCAL="$SAGE_ROOT"
- export SAGE_SRC="$PWD"
- export CC=gcc
+ export SAGE_ROOT="$PWD"
+ export SAGE_LOCAL="/usr"
export JUPYTER_PATH="$pkgdir"/usr/share/jupyter
python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
@@ -142,9 +131,27 @@ package() {
mkdir -p "$pkgdir"/usr/share/sage
cp -r ext "$pkgdir"/usr/share/sage
-# Create SAGE_SRC, needed for the notebook
+# Create SAGE_SRC, needed for the notebook and help
mkdir "$pkgdir"/usr/share/sage/source
+ ln -s /usr/share/doc/sage "$pkgdir"/usr/share/sage/source/doc
# Remove sage_setup
rm -r "$pkgdir"/usr/lib/python2.7/site-packages/sage_setup
+
+# Split jupyter kernel
+ rm -r "$pkgdir"/usr/share/jupyter
+}
+
+package_sagemath-jupyter-git() {
+ pkgdesc='Jupyter kernel for SageMath'
+ depends=(sagemath python2-jupyter_client jupyter-widgetsnbextension python-ipywidgets mathjax)
+ optdepends=('sage-notebook-exporter: convert flask notebooks to Jupyter')
+
+ cd sage/src
+
+ export SAGE_ROOT="$PWD"
+ export SAGE_LOCAL="/usr"
+ export JUPYTER_PATH="$pkgdir"/usr/share/jupyter
+
+ python2 -c "from sage.repl.ipython_kernel.install import SageKernelSpec; SageKernelSpec.update()"
}