trilinos: new variant for the Panzer package (#29256)
* Adding Panzer as Default * Set Panzer as non-default * Updated the conflict for Panzer. * Updated the conflict for Panzer. * Resolve the issue with Stratimikos and Thyra * Fixing stk build issues. * Fixing stk build issues. * Adding another conflict for Thrya
This commit is contained in:
parent
1df9c3437f
commit
b2a02861bb
@ -114,18 +114,20 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
variant('minitensor', default=False, description='Compile with MiniTensor')
|
variant('minitensor', default=False, description='Compile with MiniTensor')
|
||||||
variant('muelu', default=True, description='Compile with Muelu')
|
variant('muelu', default=True, description='Compile with Muelu')
|
||||||
variant('nox', default=False, description='Compile with NOX')
|
variant('nox', default=False, description='Compile with NOX')
|
||||||
|
variant('panzer', default=False, description='Compile with Panzer')
|
||||||
variant('piro', default=False, description='Compile with Piro')
|
variant('piro', default=False, description='Compile with Piro')
|
||||||
variant('phalanx', default=False, description='Compile with Phalanx')
|
variant('phalanx', default=False, description='Compile with Phalanx')
|
||||||
variant('rol', default=False, description='Compile with ROL')
|
variant('rol', default=False, description='Compile with ROL')
|
||||||
variant('rythmos', default=False, description='Compile with Rythmos')
|
variant('rythmos', default=False, description='Compile with Rythmos')
|
||||||
variant('sacado', default=True, description='Compile with Sacado')
|
variant('sacado', default=True, description='Compile with Sacado')
|
||||||
variant('stk', default=False, description='Compile with STK')
|
variant('stk', default=False, description='Compile with STK')
|
||||||
variant('shards', default=False, description='Compile with Shards')
|
variant('shards', default=False, description='Compile with Shards')
|
||||||
variant('shylu', default=False, description='Compile with ShyLU')
|
variant('shylu', default=False, description='Compile with ShyLU')
|
||||||
variant('stokhos', default=False, description='Compile with Stokhos')
|
variant('stokhos', default=False, description='Compile with Stokhos')
|
||||||
variant('stratimikos', default=False, description='Compile with Stratimikos')
|
variant('stratimikos', default=False, description='Compile with Stratimikos')
|
||||||
variant('teko', default=False, description='Compile with Teko')
|
variant('teko', default=False, description='Compile with Teko')
|
||||||
variant('tempus', default=False, description='Compile with Tempus')
|
variant('tempus', default=False, description='Compile with Tempus')
|
||||||
|
variant('thyra', default=False, description='Compile with Thyra')
|
||||||
variant('tpetra', default=True, description='Compile with Tpetra')
|
variant('tpetra', default=True, description='Compile with Tpetra')
|
||||||
variant('trilinoscouplings', default=False, description='Compile with TrilinosCouplings')
|
variant('trilinoscouplings', default=False, description='Compile with TrilinosCouplings')
|
||||||
variant('zoltan', default=False, description='Compile with Zoltan')
|
variant('zoltan', default=False, description='Compile with Zoltan')
|
||||||
@ -193,6 +195,9 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
with when('+teko'):
|
with when('+teko'):
|
||||||
conflicts('~stratimikos')
|
conflicts('~stratimikos')
|
||||||
conflicts('@:12 gotype=long')
|
conflicts('@:12 gotype=long')
|
||||||
|
with when('+piro'):
|
||||||
|
conflicts('~stratimikos')
|
||||||
|
conflicts('~nox')
|
||||||
|
|
||||||
# Tpetra stack
|
# Tpetra stack
|
||||||
with when('~kokkos'):
|
with when('~kokkos'):
|
||||||
@ -223,7 +228,26 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
conflicts('~mpi')
|
conflicts('~mpi')
|
||||||
conflicts('~stk')
|
conflicts('~stk')
|
||||||
|
|
||||||
|
# Panzer is not gen-2 library
|
||||||
|
with when('+panzer'):
|
||||||
|
conflicts('~intrepid2')
|
||||||
|
conflicts('~mpi')
|
||||||
|
conflicts('~phalanx')
|
||||||
|
conflicts('~sacado')
|
||||||
|
conflicts('~tpetra')
|
||||||
|
conflicts('~thyra')
|
||||||
|
conflicts('~zoltan')
|
||||||
|
conflicts('~nox')
|
||||||
|
conflicts('~rythmos')
|
||||||
|
conflicts('~piro')
|
||||||
|
conflicts('~stratimikos')
|
||||||
|
conflicts('~stk')
|
||||||
|
conflicts('~ml')
|
||||||
|
conflicts('~ifpack')
|
||||||
|
conflicts('~aztec')
|
||||||
|
|
||||||
# Known requirements from tribits dependencies
|
# Known requirements from tribits dependencies
|
||||||
|
conflicts('~thyra', when='+stratimikos')
|
||||||
conflicts('+aztec', when='~fortran')
|
conflicts('+aztec', when='~fortran')
|
||||||
conflicts('+basker', when='~amesos2')
|
conflicts('+basker', when='~amesos2')
|
||||||
conflicts('+ifpack2', when='~belos')
|
conflicts('+ifpack2', when='~belos')
|
||||||
@ -299,6 +323,10 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
depends_on('adios2', when='+adios2')
|
depends_on('adios2', when='+adios2')
|
||||||
depends_on('blas')
|
depends_on('blas')
|
||||||
depends_on('boost', when='+boost')
|
depends_on('boost', when='+boost')
|
||||||
|
# Need to revisit the requirement of STK
|
||||||
|
depends_on('boost', when='+stk')
|
||||||
|
|
||||||
|
#
|
||||||
depends_on('cgns', when='+exodus')
|
depends_on('cgns', when='+exodus')
|
||||||
depends_on('hdf5+hl', when='+hdf5')
|
depends_on('hdf5+hl', when='+hdf5')
|
||||||
depends_on('hypre~internal-superlu~int64', when='+hypre')
|
depends_on('hypre~internal-superlu~int64', when='+hypre')
|
||||||
@ -508,7 +536,7 @@ def define_enable(suffix, value=None):
|
|||||||
define_trilinos_enable('MueLu'),
|
define_trilinos_enable('MueLu'),
|
||||||
define_trilinos_enable('NOX'),
|
define_trilinos_enable('NOX'),
|
||||||
define_trilinos_enable('Pamgen', False),
|
define_trilinos_enable('Pamgen', False),
|
||||||
define_trilinos_enable('Panzer', False),
|
define_trilinos_enable('Panzer'),
|
||||||
define_trilinos_enable('Pike', False),
|
define_trilinos_enable('Pike', False),
|
||||||
define_trilinos_enable('Piro'),
|
define_trilinos_enable('Piro'),
|
||||||
define_trilinos_enable('Phalanx'),
|
define_trilinos_enable('Phalanx'),
|
||||||
@ -524,6 +552,7 @@ def define_enable(suffix, value=None):
|
|||||||
define_trilinos_enable('Stratimikos'),
|
define_trilinos_enable('Stratimikos'),
|
||||||
define_trilinos_enable('Teko'),
|
define_trilinos_enable('Teko'),
|
||||||
define_trilinos_enable('Tempus'),
|
define_trilinos_enable('Tempus'),
|
||||||
|
define_trilinos_enable('Thyra'),
|
||||||
define_trilinos_enable('Tpetra'),
|
define_trilinos_enable('Tpetra'),
|
||||||
define_trilinos_enable('TrilinosCouplings'),
|
define_trilinos_enable('TrilinosCouplings'),
|
||||||
define_trilinos_enable('Zoltan'),
|
define_trilinos_enable('Zoltan'),
|
||||||
@ -577,7 +606,6 @@ def define_enable(suffix, value=None):
|
|||||||
# Thyra is NOT enabled at this point!" leading to eventual build
|
# Thyra is NOT enabled at this point!" leading to eventual build
|
||||||
# errors if using MueLu because `Xpetra_ENABLE_Thyra` is set to
|
# errors if using MueLu because `Xpetra_ENABLE_Thyra` is set to
|
||||||
# off.
|
# off.
|
||||||
options.append(define_trilinos_enable('Thyra', True))
|
|
||||||
|
|
||||||
# Add thyra adapters based on package enables
|
# Add thyra adapters based on package enables
|
||||||
options.extend(
|
options.extend(
|
||||||
|
Loading…
Reference in New Issue
Block a user