summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2016-07-06 14:35:59 -0700
committerGitHub <noreply@github.com>2016-07-06 14:35:59 -0700
commit91da3d8e64f4f673807953f4ba68dccd42bdab51 (patch)
treea990a9a098945cc9bf1b57f8628b9b9297fb8416 /var
parentc6e89d92834bef8fec7b0f9aa0768cd3c0c1cca8 (diff)
parent3df0f1902d84223dba02692d80439ee928f28285 (diff)
downloadspack-91da3d8e64f4f673807953f4ba68dccd42bdab51.tar.gz
spack-91da3d8e64f4f673807953f4ba68dccd42bdab51.tar.bz2
spack-91da3d8e64f4f673807953f4ba68dccd42bdab51.tar.xz
spack-91da3d8e64f4f673807953f4ba68dccd42bdab51.zip
Merge pull request #1174 from LLNL/bugfix/github-1172-suite-sparse
Bugfix/GitHub 1172 suite sparse
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/suite-sparse/package.py41
1 files changed, 23 insertions, 18 deletions
diff --git a/var/spack/repos/builtin/packages/suite-sparse/package.py b/var/spack/repos/builtin/packages/suite-sparse/package.py
index dd0dfa3e23..2cc89b843f 100644
--- a/var/spack/repos/builtin/packages/suite-sparse/package.py
+++ b/var/spack/repos/builtin/packages/suite-sparse/package.py
@@ -33,6 +33,7 @@ class SuiteSparse(Package):
url = 'http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-4.5.1.tar.gz'
version('4.5.1', 'f0ea9aad8d2d1ffec66a5b6bfeff5319')
+ version('4.5.3', '8ec57324585df3c6483ad7f556afccbd')
# FIXME: (see below)
# variant('tbb', default=True, description='Build with Intel TBB')
@@ -40,34 +41,35 @@ class SuiteSparse(Package):
depends_on('blas')
depends_on('lapack')
- depends_on('metis@5.1.0', when='@4.5.1')
+ depends_on('metis@5.1.0', when='@4.5.1:')
# FIXME:
- # in @4.5.1. TBB support in SPQR seems to be broken as TBB-related linkng flags
- # does not seem to be used, which leads to linking errors on Linux.
+ # in @4.5.1. TBB support in SPQR seems to be broken as TBB-related linkng
+ # flags does not seem to be used, which leads to linking errors on Linux.
# Try re-enabling in future versions.
# depends_on('tbb', when='+tbb')
def install(self, spec, prefix):
- # The build system of SuiteSparse is quite old-fashioned
- # It's basically a plain Makefile which include an header (SuiteSparse_config/SuiteSparse_config.mk)
- # with a lot of convoluted logic in it.
- # Any kind of customization will need to go through filtering of that file
+ # The build system of SuiteSparse is quite old-fashioned.
+ # It's basically a plain Makefile which include an header
+ # (SuiteSparse_config/SuiteSparse_config.mk)with a lot of convoluted
+ # logic in it. Any kind of customization will need to go through
+ # filtering of that file
make_args = ['INSTALL=%s' % prefix]
# inject Spack compiler wrappers
make_args.extend([
- 'AUTOCC=no',
- 'CC=cc',
- 'CXX=c++',
- 'F77=f77',
+ 'AUTOCC=no',
+ 'CC=cc',
+ 'CXX=c++',
+ 'F77=f77',
])
# use Spack's metis in CHOLMOD/Partition module,
# otherwise internal Metis will be compiled
make_args.extend([
- 'MY_METIS_LIB=-L%s -lmetis' % spec['metis'].prefix.lib,
- 'MY_METIS_INC=%s' % spec['metis'].prefix.include,
+ 'MY_METIS_LIB=-L%s -lmetis' % spec['metis'].prefix.lib,
+ 'MY_METIS_INC=%s' % spec['metis'].prefix.include,
])
# Intel TBB in SuiteSparseQR
@@ -78,10 +80,13 @@ class SuiteSparse(Package):
])
# BLAS arguments require path to libraries
- # FIXME : (blas / lapack always provide libblas and liblapack as aliases)
- make_args.extend([
- 'BLAS=-lblas',
- 'LAPACK=-llapack'
- ])
+ # FIXME: (blas/lapack always provide libblas and liblapack as aliases)
+ if '@4.5.1' in spec:
+ # adding -lstdc++ is clearly an ugly way to do this, but it follows
+ # with the TCOV path of SparseSuite 4.5.1's Suitesparse_config.mk
+ make_args.extend([
+ 'BLAS=-lblas -lstdc++',
+ 'LAPACK=-llapack'
+ ])
make('install', *make_args)