Update ButterflyPACK and STRUMPACK (#13661)
* Add new strumpack version (3.2.0), with new dependency on ButterflyPACK. * add ButterflyPACK version 1.1.0 * Add strumpack version 3.3.0, add dependency on ButterflyPACK 1.1.0 * Sort ButterflyPACk versions from newest to oldest * Add a shared variant for STRUMPACK * Also allow possible newer versions of ButterflyPACK
This commit is contained in:
parent
4934448065
commit
6fc3e73f8d
@ -22,13 +22,14 @@ class Butterflypack(CMakePackage):
|
||||
|
||||
homepage = "https://github.com/liuyangzhuan/ButterflyPACK"
|
||||
git = "https://github.com/liuyangzhuan/ButterflyPACK.git"
|
||||
url = "https://github.com/liuyangzhuan/ButterflyPACK/archive/v1.0.3.tar.gz"
|
||||
url = "https://github.com/liuyangzhuan/ButterflyPACK/archive/v1.1.0.tar.gz"
|
||||
maintainers = ['liuyangzhuan']
|
||||
|
||||
version('master', branch='master')
|
||||
version('1.0.0', sha256='86c5eb09a18522367d63ce2bacf67ca1c9813ef351a1443baaab3c53f0d77232')
|
||||
version('1.0.1', sha256='e8ada37466a19f49e13456b150700d4c3afaad2ddbe3678f4e933f9d556a24a5')
|
||||
version('1.1.0', sha256='0e6fd0f9e27b3ee8a273dc52f4d24b8737e7279dc26d461ef5658b317215f1dc')
|
||||
version('1.0.3', sha256='acf9bc98dd7fea31ab73756b68b3333228b53ab0e85400a8250fcc749a1a6656')
|
||||
version('1.0.1', sha256='e8ada37466a19f49e13456b150700d4c3afaad2ddbe3678f4e933f9d556a24a5')
|
||||
version('1.0.0', sha256='86c5eb09a18522367d63ce2bacf67ca1c9813ef351a1443baaab3c53f0d77232')
|
||||
|
||||
variant('shared', default=True, description='Build shared libraries')
|
||||
|
||||
|
@ -18,12 +18,14 @@ class Strumpack(CMakePackage):
|
||||
iterative solvers."""
|
||||
|
||||
homepage = "http://portal.nersc.gov/project/sparse/strumpack"
|
||||
url = "https://github.com/pghysels/STRUMPACK/archive/v3.0.3.tar.gz"
|
||||
url = "https://github.com/pghysels/STRUMPACK/archive/v3.3.0.tar.gz"
|
||||
git = "https://github.com/pghysels/STRUMPACK.git"
|
||||
|
||||
maintainers = ['pghysels']
|
||||
|
||||
version('master', branch='master')
|
||||
version('3.3.0', sha256='499fd3b58656b4b6495496920e5372895861ebf15328be8a7a9354e06c734bc7')
|
||||
version('3.2.0', sha256='34d93e1b2a3b8908ef89804b7e08c5a884cbbc0b2c9f139061627c0d2de282c1')
|
||||
version('3.1.1', sha256='c1c3446ee023f7b24baa97b24907735e89ce4ae9f5ef516645dfe390165d1778')
|
||||
version('3.1.0', sha256='b4f91b7d433955518b04538be1c726afc5de4bffb163e982ef8844d391b26fa7')
|
||||
version('3.0.3', sha256='2bd2a40d9585b769ae4ba461de02c6e36433bf2b21827f824a50f2fdf73389f7')
|
||||
@ -32,6 +34,7 @@ class Strumpack(CMakePackage):
|
||||
version('3.0.0', sha256='7acd9b4653b8b11380de733c80b164348ca00f9226904f5dc166a8e3db88cd20')
|
||||
version('2.2.0', sha256='8fe73875cbbb29ed1faf714e3bf13ad538eb062e39d7d5e73cb9c4aafb571e24')
|
||||
|
||||
variant('shared', default=True, description='Build shared libraries')
|
||||
variant('mpi', default=True, description='Use MPI')
|
||||
variant('openmp', default=True,
|
||||
description='Enable thread parallellism via tasking with OpenMP')
|
||||
@ -39,6 +42,8 @@ class Strumpack(CMakePackage):
|
||||
description='Enable use of ParMetis')
|
||||
variant('scotch', default=False,
|
||||
description='Enable use of Scotch')
|
||||
variant('butterflypack', default=True,
|
||||
description='Enable use of ButterflyPACK')
|
||||
variant('c_interface', default=True,
|
||||
description='Enable C interface')
|
||||
variant('count_flops', default=False,
|
||||
@ -59,8 +64,11 @@ class Strumpack(CMakePackage):
|
||||
depends_on('parmetis', when='+parmetis')
|
||||
depends_on('scotch~metis', when='+scotch')
|
||||
depends_on('scotch~metis+mpi', when='+scotch+mpi')
|
||||
depends_on('butterflypack@1.1.0:', when='+butterflypack+mpi')
|
||||
|
||||
conflicts('+parmetis', when='~mpi')
|
||||
conflicts('+butterflypack', when='~mpi')
|
||||
conflicts('+butterflypack', when='strumpack@:3.2.0')
|
||||
|
||||
patch('intel-19-compile.patch', when='@3.1.1')
|
||||
|
||||
@ -90,11 +98,17 @@ def on_off(varstr):
|
||||
if spec.satisfies('@3.0.4:'):
|
||||
args.extend([
|
||||
'-DTPL_ENABLE_PARMETIS=%s' % on_off('+parmetis'),
|
||||
'-DTPL_ENABLE_SCOTCH=%s' % on_off('+scotch')
|
||||
'-DTPL_ENABLE_SCOTCH=%s' % on_off('+scotch'),
|
||||
'-DTPL_ENABLE_BPACK=%s' % on_off('+butterflypack')
|
||||
])
|
||||
else:
|
||||
args.extend([
|
||||
'-DSTRUMPACK_USE_PARMETIS=%s' % on_off('+parmetis'),
|
||||
'-DSTRUMPACK_USE_SCOTCH=%s' % on_off('+scotch')
|
||||
])
|
||||
|
||||
args.extend([
|
||||
'-DBUILD_SHARED_LIBS=%s' % on_off('+shared')
|
||||
])
|
||||
|
||||
return args
|
||||
|
Loading…
Reference in New Issue
Block a user