From 26bab9d4d629bf141602be53efb15925ab465a99 Mon Sep 17 00:00:00 2001 From: "Seth R. Johnson" Date: Wed, 26 Aug 2020 15:51:57 -0400 Subject: Fix build when +stratimikos +xpetra (#17971) If Thyra isn't explicitly enabled at the package level, trilinos fails to build. ``` /var/folders/gy/mrg1ffts2h945qj9k29s1l1dvvmbqb/T/s3j/spack-stage/spack-stage-trilinos-12.18.1-vfmemkls4ncta6qoptm5s7bcmrxnjhnd/spack-src/packages/muelu/adapters/stratimikos/Thyra_XpetraLinearOp_def.hpp:167:15: error: no member named 'ThyraUtils' in namespace 'Xpetra' Xpetra::ThyraUtils::toXpetra(rcpFromRef(X_in), comm); ~~~~~~~~^ ``` --- var/spack/repos/builtin/packages/trilinos/package.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py index 259f98785b..2924fd7a38 100644 --- a/var/spack/repos/builtin/packages/trilinos/package.py +++ b/var/spack/repos/builtin/packages/trilinos/package.py @@ -245,6 +245,7 @@ class Trilinos(CMakePackage): conflicts('+amesos', when='~epetra') conflicts('+amesos', when='~teuchos') conflicts('+anasazi', when='~teuchos') + conflicts('+aztec', when='~epetra') conflicts('+belos', when='~teuchos') conflicts('+epetraext', when='~epetra') conflicts('+epetraext', when='~teuchos') @@ -515,6 +516,13 @@ class Trilinos(CMakePackage): ]) if '+stratimikos' in spec: + # Explicitly enable Thyra (ThyraCore is required). If you don't do + # this, then you get "NOT setting ${pkg}_ENABLE_Thyra=ON since + # Thyra is NOT enabled at this point!" leading to eventual build + # errors if using MueLu because `Xpetra_ENABLE_Thyra` is set to + # off. + options.append(define('Trilinos_ENABLE_Thyra', True)) + # Add thyra adapters based on package enables options.extend( define_trilinos_enable('Thyra' + pkg + 'Adapters', pkg.lower()) -- cgit v1.2.3-70-g09d2