@@ -595,7 +595,11 @@ set(LA_EXTERNAL_DEPS "PETSc")
595595set (SA_EXTERNAL_DEPS "" )
596596set (CG_EXTERNAL_DEPS "" )
597597set (PABLO_EXTERNAL_DEPS "" )
598- set (PATCHKERNEL_EXTERNAL_DEPS "" )
598+ if (BITPIT_ENABLE_MPI)
599+ set (PATCHKERNEL_EXTERNAL_DEPS "METIS" )
600+ else ()
601+ set (PATCHKERNEL_EXTERNAL_DEPS "" )
602+ endif ()
599603set (SURFUNSTRUCTURED_EXTERNAL_DEPS "" )
600604set (VOLCARTESIAN_EXTERNAL_DEPS "" )
601605set (VOLOCTREE_EXTERNAL_DEPS "" )
@@ -730,6 +734,7 @@ set(BLAS_LANGUAGES "Fortran")
730734set (CBLAS_LANGUAGES "C" )
731735set (LAPACK_LANGUAGES "Fortran" )
732736set (LAPACKE_LANGUAGES "C" )
737+ set (METIS_LANGUAGES "C" )
733738set (PETSC_LANGUAGES "Fortran;C" )
734739
735740foreach (DEP_NAME IN LISTS EXTERNAL_DEPS)
@@ -901,6 +906,24 @@ if (${_BoostTest_index} GREATER -1)
901906endif ()
902907unset (_BoostTest_index)
903908
909+ list (FIND EXTERNAL_DEPS "METIS" _METIS_index)
910+ if (${_METIS_index} GREATER -1)
911+ list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /external/METIS/cmake" )
912+
913+ find_package (METIS)
914+
915+ if (METIS_FOUND)
916+ list (APPEND BITPIT_EXTERNAL_DEPENDENCIES "METIS" )
917+ list (APPEND BITPIT_EXTERNAL_VARIABLES_LIBRARIES "METIS_LIBRARIES" )
918+ list (APPEND BITPIT_EXTERNAL_VARIABLES_INCLUDE_DIRS "METIS_INCLUDE_DIRS" )
919+ addPrivateDefinitions("BITPIT_ENABLE_METIS=1" )
920+ else ()
921+ addPrivateDefinitions("BITPIT_ENABLE_METIS=0" )
922+ message (STATUS "METIS library not found, default patch partitioning support will be disabled." )
923+ endif ()
924+ endif ()
925+ unset (_METIS_index)
926+
904927set (BITPIT_EXTERNAL_LIBRARIES "" )
905928foreach (VARIABLE_NAME IN LISTS BITPIT_EXTERNAL_VARIABLES_LIBRARIES)
906929 list (APPEND BITPIT_EXTERNAL_LIBRARIES "${${VARIABLE_NAME} }" )
0 commit comments