summaryrefslogtreecommitdiff
path: root/academic
diff options
context:
space:
mode:
Diffstat (limited to 'academic')
-rw-r--r--academic/suitesparse/README22
-rw-r--r--academic/suitesparse/slack-desc2
-rw-r--r--academic/suitesparse/suitesparse.SlackBuild26
-rw-r--r--academic/suitesparse/suitesparse.info8
4 files changed, 27 insertions, 31 deletions
diff --git a/academic/suitesparse/README b/academic/suitesparse/README
index d4f385acca..7eb56aa16e 100644
--- a/academic/suitesparse/README
+++ b/academic/suitesparse/README
@@ -2,37 +2,27 @@ suitesparse is a collection of libraries for computations involving sparse
matrices. The package includes the following libraries:
AMD: approximate minimum degree ordering.
-BTF: permutation to block triangular form (beta).
CAMD: constrained approximate minimum degree ordering.
COLAMD: column approximate minimum degree ordering.
CCOLAMD: constrained column approximate minimum degree ordering.
CHOLMOD: sparse Cholesky factorization.
CXSparse: CSparse extended: complex matrix, int and long int support.
-KLU: sparse LU factorization, primarily for circuit simulation.
+KLU & BTF: sparse LU factorization, primarily for circuit simulation.
LDL: a simple LDL^t factorization.
SQPR: a multithread, multifrontal, rank-revealing sparse QR
factorization method.
UMFPACK: sparse LU factorization.
-SuiteSparse_config: configuration file for all the above packages.
RBio: read/write files in Rutherford/Boeing format.
+GraphBLAS: graph algorithms in the language of linear algebra
+Mongoose: graph partitioning
+ssget: MATLAB and Java interface to the SuiteSparse Matrix Collection
Suitesparse is an optional dependency for the octave package.
-NOTES:
-
-* CHOLMOD is now compiled to use the METIS library. It was not
-used previously because the licensing terms of earlier METIS
-versions excluded it from Octave in some circumstances. Recent
-versions of METIS now use the Apache License Version 2.0 and
-should cause no problems. However if it is still desired to
-build CHOLMOD without METIS, set the USEMETIS environment
-variable to "no" when running the SlackBuild e.g.
- USEMETIS=no sh suitesparse.SlackBuild
-
-* CXSparse is a superset of CSparse, and the two share common header
+CXSparse is a superset of CSparse, and the two share common header
names, so it does not make sense to build both. CXSparse is built
by default.
-* SlackBuilds.org also has all the parts of this suite as individual
+SlackBuilds.org also has all the parts of this suite as individual
builds - DO NOT try and install the individual parts and the suite;
pick one or the other.
diff --git a/academic/suitesparse/slack-desc b/academic/suitesparse/slack-desc
index bdb991235e..657aa8db4a 100644
--- a/academic/suitesparse/slack-desc
+++ b/academic/suitesparse/slack-desc
@@ -11,7 +11,7 @@ suitesparse:
suitesparse: suitesparse is a collection of libraries for computations involving
suitesparse: sparse matrices. The package includes the following libraries:
suitesparse: AMD, BTF, CAMD, COLAMD, CCOLAMD, CHOLMOD, CXSparse, KLU, LDL,
-suitesparse: SQPR, UMFPACK.
+suitesparse: SQPR, UMFPACK, GraphBLAS, Mongoose.
suitesparse:
suitesparse:
suitesparse:
diff --git a/academic/suitesparse/suitesparse.SlackBuild b/academic/suitesparse/suitesparse.SlackBuild
index 27775d04d1..335456c32f 100644
--- a/academic/suitesparse/suitesparse.SlackBuild
+++ b/academic/suitesparse/suitesparse.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for suitesparse
-# Copyright 2017,2018 Christoph Willing, Brisbane Australia
+# Copyright 2017-2019 Christoph Willing, Brisbane Australia
# All rights reserved.
# Thanks to Pablo Santamaria for previous versions
#
@@ -25,7 +25,7 @@
PRGNAM=suitesparse
SRCNAM=SuiteSparse
-VERSION=${VERSION:-5.3.0}
+VERSION=${VERSION:-5.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -57,8 +57,6 @@ else
LIBDIRSUFFIX=""
fi
-metis="" ; [ "${USEMETIS:-yes}" != "yes" ] && metis="CHOLMOD_CONFIG=-DNPARTITION"
-
set -e
rm -rf $PKG
@@ -78,17 +76,25 @@ mkdir -p $PKG/usr/include/suitesparse
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+make
make install \
- MY_METIS_INC=/usr/include/metis MY_METIS_LIB=/usr/lib$LIBDIRSUFFIX/libmetis.so BLAS=-lblas \
- $metis \
- INSTALL_INCLUDE=$PKG/usr/include/suitesparse INSTALL_LIB=$PKG/usr/lib$LIBDIRSUFFIX \
- INSTALL_DOC=$PKG/usr/doc/$PRGNAM-$VERSION
-chrpath --replace /usr/lib$LIBDIRSUFFIX $PKG/usr/lib$LIBDIRSUFFIX/*
+ INSTALL_INCLUDE=$PKG/usr/include/suitesparse \
+ INSTALL_LIB=$PKG/usr/lib$LIBDIRSUFFIX \
+ INSTALL_DOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
+# Check that each library already has an rpath before attempting to modify it
+# (libmetis.so does not, causing `chrpath --replace` to fail)
+for l in $PKG/usr/lib${LIBDIRSUFFIX}/*
+do
+ if chrpath -l $l ; then
+ chrpath --replace /usr/lib$LIBDIRSUFFIX $l
+ fi
+done
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-cp -a LICENSE.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE.txt CONTRIBUTOR-LICENSE.txt README.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/academic/suitesparse/suitesparse.info b/academic/suitesparse/suitesparse.info
index 17769f9f56..9e33539498 100644
--- a/academic/suitesparse/suitesparse.info
+++ b/academic/suitesparse/suitesparse.info
@@ -1,10 +1,10 @@
PRGNAM="suitesparse"
-VERSION="5.3.0"
+VERSION="5.4.0"
HOMEPAGE="http://faculty.cse.tamu.edu/davis/suitesparse.html"
-DOWNLOAD="http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-5.3.0.tar.gz"
-MD5SUM="d638a4369f3df0ca9e64b019af658a38"
+DOWNLOAD="http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-5.4.0.tar.gz"
+MD5SUM="4a6d4e74fc44c503f52996ae95cad03a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lapack metis chrpath"
+REQUIRES="lapack OpenBLAS chrpath"
MAINTAINER="Christoph Willing"
EMAIL="chris.willing@linux.com"