From: Daniel Arndt Date: Sat, 16 Mar 2019 12:50:01 +0000 (+0100) Subject: Check SCALAPACK symbols X-Git-Tag: v9.1.0-rc1~280^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ce8a65aa17fe34b799702c01ae95b92a73025f5;p=dealii.git Check SCALAPACK symbols --- diff --git a/cmake/configure/configure_scalapack.cmake b/cmake/configure/configure_scalapack.cmake index 86ac09a3ab..273689bf1c 100644 --- a/cmake/configure/configure_scalapack.cmake +++ b/cmake/configure/configure_scalapack.cmake @@ -26,6 +26,44 @@ MACRO(FEATURE_SCALAPACK_FIND_EXTERNAL var) IF(SCALAPACK_FOUND) SET(${var} TRUE) CHECK_MPI_INTERFACE(SCALAPACK ${var}) + + IF (${var}) + CHECK_LIBRARY_EXISTS (${SCALAPACK_LIBRARY} pdsyevr_ {SCALAPACK_DIR} DEAL_II_SCALAPACK_HAS_PDSYEVR) + IF(NOT DEAL_II_SCALAPACK_HAS_PDSYEVR) + MESSAGE(STATUS "Could not find a sufficient SCALAPACK installation: " + "The required symbol pdsyevr_ was not found." + ) + SET(SCALAPACK_ADDITIONAL_ERROR_STRING + ${SCALAPACK_ADDITIONAL_ERROR_STRING} + "Could not find a sufficient SCALAPACK installation: \n" + "SCALAPACK symbol check for pdsyevr_ failed! This usually means that " + "your SCALAPACK installation is incomplete or the link line is " + "broken. Consult\n" + " CMakeFiles/CMakeError.log\n" + "for further information.\n" + ) + SET(${var} FALSE) + ENDIF() + ENDIF() + + IF(${var}) + CHECK_LIBRARY_EXISTS (${SCALAPACK_LIBRARY} pssyevr_ {SCALAPACK_DIR} DEAL_II_SCALAPACK_HAS_PSSYEVR) + IF(NOT DEAL_II_SCALAPACK_HAS_PSSYEVR) + MESSAGE(STATUS "Could not find a sufficient SCALAPACK installation: " + "The required symbol pssyevr_ was not found." + ) + SET(SCALAPACK_ADDITIONAL_ERROR_STRING + ${SCALAPACK_ADDITIONAL_ERROR_STRING} + "Could not find a sufficient SCALAPACK installation: \n" + "SCALAPACK symbol check for pssyevr_ failed! This usually means that " + "your SCALAPACK installation is incomplete or the link line is " + "broken. Consult\n" + " CMakeFiles/CMakeError.log\n" + "for further information.\n" + ) + SET(${var} FALSE) + ENDIF() + ENDIF() ENDIF() ENDMACRO()