diff options
Diffstat (limited to 'development/numpy/numpy.SlackBuild')
-rw-r--r-- | development/numpy/numpy.SlackBuild | 88 |
1 files changed, 70 insertions, 18 deletions
diff --git a/development/numpy/numpy.SlackBuild b/development/numpy/numpy.SlackBuild index bd4558c011..1cbea85539 100644 --- a/development/numpy/numpy.SlackBuild +++ b/development/numpy/numpy.SlackBuild @@ -2,27 +2,58 @@ # Slackware build script for NumPy +# Copyright 2011-2016 Serban Udrea <s.udrea@gsi.de> +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, +# is permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING +# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + # Written by Aleksandar Samardzic <asamardzic@gmail.com> -# Updated up to 1.9.1 by Serban Udrea <S.Udrea@gsi.de> +# Updated up to 1.11.1 by Serban Udrea <S.Udrea@gsi.de> +# # Added support for building with debugging symbols (S. Udrea) +# # LIBDIRSUFFIX is now needed to set the proper path for # UMFPACK (S. Udrea) +# +# Since UMFPACK is not used anymore by scipy but by the optional package +# scikit-umfpack, the configuration of this and the corresponding AMD library +# is now optional. One has to set NO_UMFPACK to "no" to create the apropriate +# configuration file before building numpy. (S. Udrea) +# +# Added the possibility to force numpy to link to different kinds of the +# ATLAS library (S. Udrea) PRGNAM=numpy -VERSION=${VERSION:-1.9.1} +VERSION=${VERSION:-1.11.1} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac fi -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" @@ -55,22 +86,43 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +# You may want to force numpy to link against a special kind of ATLAS +# +ATLAS_SHARED="${ATLAS_SHARED:-yes}" +ATLAS_SHARED=$(echo "$ATLAS_SHARED"|cut -b 1|tr a-z A-Z) +ATLAS_NO_THREADS="${ATLAS_NO_THREADS:-no}" +ATLAS_NO_THREADS=$(echo "$ATLAS_NO_THREADS"|cut -b 1|tr a-z A-Z) + +if [ "$ATLAS_SHARED" = "Y" ]; then + if [ "$ATLAS_NO_THREADS" = "Y" ]; then + echo -e "[atlas]\natlas_libs = satlas" >> site.cfg + echo -e "lapack_libs = satlas\nlapack_atlas = satlas\n" >> site.cfg + fi +else + if [ "$ATLAS_NO_THREADS" = "Y" ]; then + echo -e "[atlas]\natlas_libs = f77blas,cblas,atlas" >> site.cfg + echo -e "lapack_libs = lapack\nlapack_atlas = lapack\n" >> site.cfg + else + echo -e "[atlas]\natlas_libs = ptf77blas,ptcblas,atlas" >> site.cfg + echo -e "lapack_libs = ptlapack\nlapack_atlas = ptlapack\n" >> site.cfg + fi +fi -cat > site.cfg <<EOF -[amd] -library_dirs = /usr/lib${LIBDIRSUFFIX} -include_dirs = /usr/include/amd -amd_libs = amd - -[umfpack] -library_dirs = /usr/lib${LIBDIRSUFFIX} -include_dirs = /usr/include/umfpack -umfpack_libs = umfpack -EOF +NO_UMFPACK=${NO_UMFPACK:-yes} +case "$NO_UMFPACK" in + [yY]|[yY][eE][sS]) NO_UMFPACK="y" ;; + *) NO_UMFPACK="" ;; +esac +if [ ! "$NO_UMFPACK" ]; then + echo -e "[amd]\nlibrary_dirs = /usr/lib${LIBDIRSUFFIX}" >> site.cfg + echo -e "include_dirs = /usr/include/amd\namd_libs = amd\n" >> site.cfg + echo -e "[umfpack]\nlibrary_dirs = /usr/lib${LIBDIRSUFFIX}" >> site.cfg + echo -e "include_dirs = /usr/include/umfpack\numfpack_libs = umfpack\n" \ + >> site.cfg +fi DEBUG=${DEBUG:-no} - case "$DEBUG" in [yY]|[yY][eE][sS]) DEBUG="y" ;; *) DEBUG="" ;; @@ -87,7 +139,7 @@ else fi mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a COMPATIBILITY DEV_README.txt LICENSE.txt README.txt THANKS.txt\ +cp -a LICENSE.txt THANKS.txt INSTALL.rst.txt PKG-INFO \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild find $PKG/usr/doc -type f -exec chmod 0644 {} \; |