diff options
author | Simone Riva | 2018-07-06 19:45:11 +0200 |
---|---|---|
committer | Simone Riva | 2018-07-06 19:45:11 +0200 |
commit | b04eb46ea39d9afc9c7c6993d9a598c2f60dfe69 (patch) | |
tree | 2b2b494cc666def3c9df49e7c8440f219ea1aa60 | |
parent | d532a6fa84ed5582559d5aae0fba4f9051579113 (diff) | |
download | aur-b04eb46ea39d9afc9c7c6993d9a598c2f60dfe69.tar.gz |
1.1.0
-rw-r--r-- | .SRCINFO | 30 | ||||
-rw-r--r-- | PKGBUILD | 82 | ||||
-rw-r--r-- | build_python.sh | 23 | ||||
-rw-r--r-- | build_python2.sh | 39 | ||||
-rw-r--r-- | build_python3.sh | 39 |
5 files changed, 87 insertions, 126 deletions
@@ -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 @@ -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 -} |