From e494e04797637af23766ff8aaec02cf4dc360ed2 Mon Sep 17 00:00:00 2001 From: Franco Milicchio Date: Fri, 12 Jul 2019 15:37:23 +0200 Subject: [PATCH] Checking if MPI is enabled to allow both Trilinos and PETSc. --- cmake/configure/configure_2_trilinos.cmake | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/cmake/configure/configure_2_trilinos.cmake b/cmake/configure/configure_2_trilinos.cmake index b3537851d6..0472228b20 100644 --- a/cmake/configure/configure_2_trilinos.cmake +++ b/cmake/configure/configure_2_trilinos.cmake @@ -103,6 +103,25 @@ MACRO(FEATURE_TRILINOS_FIND_EXTERNAL var) SET(${var} FALSE) ENDIF() + # + # deal.II has to be configured with MPI if both Trilinos and PETSc are + # enabled. + # + IF( DEAL_II_WITH_TRILINOS AND DEAL_II_WITH_PETSC AND NOT DEAL_II_WITH_MPI ) + MESSAGE(STATUS "Incompatible configuration settings: " + "MPI must be enabled to use both Trilinos and PETSc." + ) + SET(TRILINOS_ADDITIONAL_ERROR_STRING + ${TRILINOS_ADDITIONAL_ERROR_STRING} + "To enable both Trilinos and PETSc, deal.II must be configured with MPI " + "or enable one between Trilinos and PETSc removing MPI, but found:\n" + " DEAL_II_WITH_MPI = ${DEAL_II_WITH_MPI}\n" + " DEAL_II_WITH_TRILINOS = ${DEAL_II_WITH_TRILINOS}\n" + " DEAL_II_WITH_PETSC = ${DEAL_II_WITH_PETSC}\n" + ) + SET(${var} FALSE) + ENDIF() + # # Trilinos has to be configured with 32bit indices if deal.II uses # unsigned int. -- 2.39.5