diff options
author | Todd Gamblin <tgamblin@llnl.gov> | 2016-02-04 18:08:07 -0700 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2016-02-04 18:08:07 -0700 |
commit | 15324c276fdf233746141a5d03cf27b0a937057e (patch) | |
tree | f3631bb00e510c7c3951fc37ff1ec336264975e2 | |
parent | b98c120fb8e64a78566d49261df15e75885975e0 (diff) | |
parent | e2a95d4b5025a9965ab231e0c43fe9bebd88ca92 (diff) | |
download | spack-15324c276fdf233746141a5d03cf27b0a937057e.tar.gz spack-15324c276fdf233746141a5d03cf27b0a937057e.tar.bz2 spack-15324c276fdf233746141a5d03cf27b0a937057e.tar.xz spack-15324c276fdf233746141a5d03cf27b0a937057e.zip |
Merge pull request #426 from epfl-scitas/packages/suitesparse
Added package : SuiteSparse
-rw-r--r-- | var/spack/repos/builtin/packages/SuiteSparse/package.py | 27 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/eigen/package.py | 5 |
2 files changed, 30 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/SuiteSparse/package.py b/var/spack/repos/builtin/packages/SuiteSparse/package.py new file mode 100644 index 0000000000..6e130d118f --- /dev/null +++ b/var/spack/repos/builtin/packages/SuiteSparse/package.py @@ -0,0 +1,27 @@ +from spack import * + + +class Suitesparse(Package): + """ + SuiteSparse is a suite of sparse matrix algorithms + """ + homepage = 'http://faculty.cse.tamu.edu/davis/suitesparse.html' + url = 'http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-4.5.1.tar.gz' + + version('4.5.1', 'f0ea9aad8d2d1ffec66a5b6bfeff5319') + + depends_on('blas') + depends_on('lapack') + + depends_on('metis@5.1.0', when='@4.5.1') + + 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 + + # FIXME : this actually uses the current workaround + # FIXME : (blas / lapack always provide libblas and liblapack as aliases) + make('install', 'INSTALL=%s' % prefix, 'BLAS=-lblas', 'LAPACK=-llapack') + diff --git a/var/spack/repos/builtin/packages/eigen/package.py b/var/spack/repos/builtin/packages/eigen/package.py index 44ee6819f5..e40046b452 100644 --- a/var/spack/repos/builtin/packages/eigen/package.py +++ b/var/spack/repos/builtin/packages/eigen/package.py @@ -41,13 +41,14 @@ class Eigen(Package): variant('metis', default=True, description='Enables metis backend') variant('scotch', default=True, description='Enables scotch backend') variant('fftw', default=True, description='Enables FFTW backend') + variant('suitesparse', default=True, description='Enables SuiteSparse support') - # TODO : dependency on SuiteSparse, googlehash, superlu, adolc missing + # TODO : dependency on googlehash, superlu, adolc missing depends_on('metis', when='+metis') depends_on('scotch', when='+scotch') depends_on('fftw', when='+fftw') - + depends_on('SuiteSparse', when='+suitesparse') depends_on('mpfr@2.3.0:') # Eigen 3.2.7 requires at least 2.3.0 depends_on('gmp') |