summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimone Riva2018-07-06 19:45:11 +0200
committerSimone Riva2018-07-06 19:45:11 +0200
commitb04eb46ea39d9afc9c7c6993d9a598c2f60dfe69 (patch)
tree2b2b494cc666def3c9df49e7c8440f219ea1aa60
parentd532a6fa84ed5582559d5aae0fba4f9051579113 (diff)
downloadaur-b04eb46ea39d9afc9c7c6993d9a598c2f60dfe69.tar.gz
1.1.0
-rw-r--r--.SRCINFO30
-rw-r--r--PKGBUILD82
-rw-r--r--build_python.sh23
-rw-r--r--build_python2.sh39
-rw-r--r--build_python3.sh39
5 files changed, 87 insertions, 126 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 0d55f3167e49..a130c7c7b2cb 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = python-scipy-mkl
pkgdesc = SciPy is open-source software for mathematics, science, and engineering.
- pkgver = 1.0.0
- pkgrel = 3
+ pkgver = 1.1.0
+ pkgrel = 1
url = http://www.scipy.org/
arch = i686
arch = x86_64
@@ -13,15 +13,22 @@ pkgbase = python-scipy-mkl
makedepends = python2-numpy
makedepends = python-setuptools
makedepends = python2-setuptools
- source = https://github.com/scipy/scipy/releases/download/v1.0.0/scipy-1.0.0.tar.xz
- source = build_python2.sh
- source = build_python3.sh
- sha256sums = 06b23f2a5db5418957facc86ead86b7752147c0461f3156f88a3da87f3dc6739
- sha256sums = a9f18f9af8a2c9505cc3c03662200ceef2174dbf0c5f81849f596a0d7220575f
- sha256sums = fa8599db2992a6ed9c8b71e41b043b1e41a84efac7aeeae3ac74b838c7d18c46
+ makedepends = intel-compiler-base
+ makedepends = intel-fortran-compiler
+ makedepends = intel-mkl
+ depends = intel-compiler-base
+ depends = intel-fortran-compiler
+ depends = intel-mkl
+ source = https://github.com/scipy/scipy/releases/download/v1.1.0/scipy-1.1.0.tar.gz
+ source = build_python.sh
+ sha256sums = 878352408424dffaa695ffedf2f9f92844e116686923ed9aa8626fc30d32cfd1
+ sha256sums = 809239456a1b8d86c948cf21eb17c32d3dea46958bd5b6cfce82744c984d3459
pkgname = python-scipy-mkl
- depends = python-numpy-mkl
+ depends = intel-compiler-base
+ depends = intel-fortran-compiler
+ depends = intel-mkl
+ depends = python-numpy
depends = qhull
depends = python-nose
optdepends = python-pillow: for image saving module
@@ -32,7 +39,10 @@ pkgname = python-scipy-mkl
replaces = python-scipy
pkgname = python2-scipy-mkl
- depends = python2-numpy-mkl
+ depends = intel-compiler-base
+ depends = intel-fortran-compiler
+ depends = intel-mkl
+ depends = python2-numpy
depends = qhull
depends = python2-nose
optdepends = python2-pillow: for image saving module
diff --git a/PKGBUILD b/PKGBUILD
index 0e2578bf4343..bf8d454e660b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,27 +5,33 @@
# Contributor: Bodor Dávid Gábor <david.gabor.bodor@gmail.com>
# Contributor: Andrzej Giniewicz <gginiu@gmail.com>
+pkgbase='python-scipy-mkl'
pkgname=('python-scipy-mkl' 'python2-scipy-mkl')
-pkgver=1.0.0
-pkgrel=3
+pkgver=1.1.0
+pkgrel=1
pkgdesc="SciPy is open-source software for mathematics, science, and engineering."
arch=('i686' 'x86_64')
url="http://www.scipy.org/"
license=('BSD')
-makedepends=('gcc-fortran' 'python-numpy' 'python2-numpy' 'python-setuptools' 'python2-setuptools')
+depends=('intel-compiler-base' 'intel-fortran-compiler' 'intel-mkl')
+makedepends=('gcc-fortran' 'python-numpy' 'python2-numpy' 'python-setuptools' 'python2-setuptools' 'intel-compiler-base' 'intel-fortran-compiler' 'intel-mkl')
checkdepends=('python-nose' 'python2-nose')
source=(
- "https://github.com/scipy/scipy/releases/download/v${pkgver}/scipy-${pkgver}.tar.xz"
- "build_python2.sh"
- "build_python3.sh"
-)
-sha256sums=(
- '06b23f2a5db5418957facc86ead86b7752147c0461f3156f88a3da87f3dc6739'
- 'a9f18f9af8a2c9505cc3c03662200ceef2174dbf0c5f81849f596a0d7220575f'
- 'fa8599db2992a6ed9c8b71e41b043b1e41a84efac7aeeae3ac74b838c7d18c46'
+ "https://github.com/scipy/scipy/releases/download/v${pkgver}/scipy-${pkgver}.tar.gz"
+ "build_python.sh"
)
+sha256sums=('878352408424dffaa695ffedf2f9f92844e116686923ed9aa8626fc30d32cfd1'
+ '809239456a1b8d86c948cf21eb17c32d3dea46958bd5b6cfce82744c984d3459')
build() {
+ # glibc 2.18 compatibility issue
+ cp /opt/intel/compilers_and_libraries_*/linux/compiler/include/math.h .
+ sed \
+ -e '173s/.*/# include "\/usr\/include\/math.h"/' \
+ -e '1218s/!//' \
+ -i math.h
+ export __INTEL_PRE_CFLAGS="-I$srcdir "
+
export LDFLAGS="-Wall -shared"
# set by hand this flag if you want to compile with gcc
@@ -45,11 +51,11 @@ build() {
fi
# copy python3 build files
- cp ../build_python3.sh scipy-${pkgver}
+ cp build_python.sh scipy-${pkgver}
# copy python2 build files
cp -r scipy-${pkgver} scipy-${pkgver}-py2
- cp ../build_python2.sh scipy-${pkgver}-py2
+ cp build_python.sh scipy-${pkgver}-py2
# build for python3
cd scipy-${pkgver}
@@ -58,8 +64,8 @@ build() {
fi
if [ "$use_intel_cc" = true ]; then
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
- # sh build_python3.sh
+ #python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
+ sh build_python.sh python
fi
# build for python2
@@ -75,35 +81,35 @@ build() {
fi
if [ "$use_intel_cc" = true ]; then
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
- # sh build_python2.sh
+ #python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
+ sh build_python.sh python2
fi
}
-check() {
- # we need to do a temp install so we can import scipy
- # also, the tests must not be run from the scipy source directory
- export LDFLAGS="-Wall -shared"
-
- # cd ${srcdir}/scipy-${pkgver}
- # python3 setup.py config_fc --fcompiler=gnu95 install \
- # --prefix=/usr --root=${srcdir}/test --optimize=1
- # export PYTHONPATH=${srcdir}/test/usr/lib/python3.6/site-packages
- # cd ${srcdir}
- # python -c "from scipy import test; test('full')"
- #
- # cd ${srcdir}/scipy-${pkgver}-py2
- # python2 setup.py config_fc --fcompiler=gnu95 install \
- # --prefix=/usr --root=${srcdir}/test --optimize=1
- # export PYTHONPATH=${srcdir}/test/usr/lib/python2.7/site-packages
- # cd ${srcdir}
- # python2 -c "from scipy import test; test('full')"
-}
+#check() {
+# # we need to do a temp install so we can import scipy
+# # also, the tests must not be run from the scipy source directory
+# export LDFLAGS="-Wall -shared"
+#
+# cd ${srcdir}/scipy-${pkgver}
+# python3 setup.py config_fc --fcompiler=gnu95 install \
+# --prefix=/usr --root=${srcdir}/test --optimize=1
+# export PYTHONPATH=${srcdir}/test/usr/lib/python3.6/site-packages
+# cd ${srcdir}
+# python -c "from scipy import test; test('full')"
+#
+# cd ${srcdir}/scipy-${pkgver}-py2
+# python2 setup.py config_fc --fcompiler=gnu95 install \
+# --prefix=/usr --root=${srcdir}/test --optimize=1
+# export PYTHONPATH=${srcdir}/test/usr/lib/python2.7/site-packages
+# cd ${srcdir}
+# python2 -c "from scipy import test; test('full')"
+#}
package_python-scipy-mkl() {
- depends=('python-numpy-mkl' 'qhull' 'python-nose')
+ depends+=('python-numpy' 'qhull' 'python-nose')
provides=('python3-scipy=${pkgver}' 'python-scipy=${pkgver}' 'scipy=${pkgver}')
replaces=('python-scipy')
conflicts=('python-scipy')
@@ -126,7 +132,7 @@ package_python-scipy-mkl() {
package_python2-scipy-mkl() {
- depends=('python2-numpy-mkl' 'qhull' 'python2-nose')
+ depends+=('python2-numpy' 'qhull' 'python2-nose')
provides=('python2-scipy=${pkgver}' 'python2-scipy=${pkgver}' 'scipy=${pkgver}')
replaces=('python2-scipy')
conflicts=('python2-scipy')
diff --git a/build_python.sh b/build_python.sh
new file mode 100644
index 000000000000..d1f26ad9e682
--- /dev/null
+++ b/build_python.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+# This shell script repeats building scipy with and without an environment variable needed since newest versions of
+# the intel C compiler lack support for float128 while glibc expects this.
+# The set environment variable, however, precludes compiling C++ code
+# So, if the build process fails, it is re-run without the environment variable und continues until failing again etc.
+set +e
+build="$1 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem"
+
+method1() {
+ echo Retry: $retry Method: 1
+ $build
+}
+
+method2() {
+ echo Retry: $retry Method: 2
+ __INTEL_PRE_CFLAGS="$__INTEL_PRE_CFLAGS -D_Float32=float -D_Float64=double -D_Float128=\"long double\" -D_Float32x=_Float64 -D_Float64x=_Float128" $build
+}
+
+# It will end at 'Retry: 5 Method: 2' for scipy 1.1.0 and intel-parallel-studio-xe 2018.3.222
+for retry in $(seq 10); do
+ method1 && break
+ method2 && break
+done
diff --git a/build_python2.sh b/build_python2.sh
deleted file mode 100644
index 18cd56c87a1d..000000000000
--- a/build_python2.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-# This shell script repeats building scipy with and without an environment variable needed since newest versions of
-# the intel C compiler lack support for float128 while glibc expects this.
-# The set environment variable, however, precludes compiling C++ code
-# So, if the build process fails, it is re-run without the environment variable und continues until failing again etc.
-{
- # try the following code
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python2 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-}
diff --git a/build_python3.sh b/build_python3.sh
deleted file mode 100644
index df4aa60858c3..000000000000
--- a/build_python3.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-# This shell script repeats building scipy with and without an environment variable needed since newest versions of
-# the intel C compiler lack support for float128 while glibc expects this.
-# The set environment variable, however, precludes compiling C++ code
-# So, if the build process fails, it is re-run without the environment variable und continues until failing again etc.
-{
- # try the following code
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- # if that fails add environment variable
- __INTEL_PRE_CFLAGS=" -D_Float128=__float128" python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-} || {
- #if that fails try again without
- python3 setup.py config --compiler=intelem --fcompiler=intelem build_clib --compiler=intelem --fcompiler=intelem build_ext --compiler=intelem --fcompiler=intelem
-}