trilinos: add rocm_rdc variant (#28873)
* Add rocm_rdc variant to trilinos. * Fix syntax error.
This commit is contained in:
parent
8d8822f749
commit
e9b50324cf
@ -63,7 +63,8 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
|
|
||||||
# Build options
|
# Build options
|
||||||
variant('complex', default=False, description='Enable complex numbers in Trilinos')
|
variant('complex', default=False, description='Enable complex numbers in Trilinos')
|
||||||
variant('cuda_rdc', default=False, description='turn on RDC for CUDA build')
|
variant('cuda_rdc', default=False, description='Turn on RDC for CUDA build')
|
||||||
|
variant('rocm_rdc', default=False, description='Turn on RDC for ROCm build')
|
||||||
variant('cxxstd', default='14', values=['11', '14', '17'], multi=False)
|
variant('cxxstd', default='14', values=['11', '14', '17'], multi=False)
|
||||||
variant('debug', default=False, description='Enable runtime safety and debug checks')
|
variant('debug', default=False, description='Enable runtime safety and debug checks')
|
||||||
variant('explicit_template_instantiation', default=True, description='Enable explicit template instantiation (ETI)')
|
variant('explicit_template_instantiation', default=True, description='Enable explicit template instantiation (ETI)')
|
||||||
@ -276,6 +277,7 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
msg='trilinos~wrapper+cuda can only be built with the '
|
msg='trilinos~wrapper+cuda can only be built with the '
|
||||||
'Clang compiler')
|
'Clang compiler')
|
||||||
conflicts('+cuda_rdc', when='~cuda')
|
conflicts('+cuda_rdc', when='~cuda')
|
||||||
|
conflicts('+rocm_rdc', when='~rocm')
|
||||||
conflicts('+wrapper', when='~cuda')
|
conflicts('+wrapper', when='~cuda')
|
||||||
conflicts('+wrapper', when='%clang')
|
conflicts('+wrapper', when='%clang')
|
||||||
|
|
||||||
@ -748,7 +750,8 @@ def define_tpl(trilinos_name, spack_name, have_dep):
|
|||||||
if '+rocm' in spec:
|
if '+rocm' in spec:
|
||||||
options.extend([
|
options.extend([
|
||||||
define_kok_enable('ROCM', False),
|
define_kok_enable('ROCM', False),
|
||||||
define_kok_enable('HIP', True)
|
define_kok_enable('HIP', True),
|
||||||
|
define_kok_enable('HIP_RELOCATABLE_DEVICE_CODE', 'rocm_rdc')
|
||||||
])
|
])
|
||||||
if '+tpetra' in spec:
|
if '+tpetra' in spec:
|
||||||
options.append(define('Tpetra_INST_HIP', True))
|
options.append(define('Tpetra_INST_HIP', True))
|
||||||
|
Loading…
Reference in New Issue
Block a user