You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							59 lines
						
					
					
						
							2.0 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							59 lines
						
					
					
						
							2.0 KiB
						
					
					
				| # Pastix requires METIS or METIS (partitioning and reordering tools) | |
|  | |
| if (METIS_INCLUDES AND METIS_LIBRARIES) | |
|   set(METIS_FIND_QUIETLY TRUE) | |
| endif (METIS_INCLUDES AND METIS_LIBRARIES) | |
|  | |
| find_path(METIS_INCLUDES  | |
|   NAMES  | |
|   metis.h  | |
|   PATHS  | |
|   $ENV{METISDIR}  | |
|   ${INCLUDE_INSTALL_DIR}  | |
|   PATH_SUFFIXES | |
|   . | |
|   metis | |
|   include | |
| ) | |
|  | |
| macro(_metis_check_version) | |
|   file(READ "${METIS_INCLUDES}/metis.h" _metis_version_header) | |
|  | |
|   string(REGEX MATCH "define[ \t]+METIS_VER_MAJOR[ \t]+([0-9]+)" _metis_major_version_match "${_metis_version_header}") | |
|   set(METIS_MAJOR_VERSION "${CMAKE_MATCH_1}") | |
|   string(REGEX MATCH "define[ \t]+METIS_VER_MINOR[ \t]+([0-9]+)" _metis_minor_version_match "${_metis_version_header}") | |
|   set(METIS_MINOR_VERSION "${CMAKE_MATCH_1}") | |
|   string(REGEX MATCH "define[ \t]+METIS_VER_SUBMINOR[ \t]+([0-9]+)" _metis_subminor_version_match "${_metis_version_header}") | |
|   set(METIS_SUBMINOR_VERSION "${CMAKE_MATCH_1}") | |
|   if(NOT METIS_MAJOR_VERSION) | |
|     message(STATUS "Could not determine Metis version. Assuming version 4.0.0") | |
|     set(METIS_VERSION 4.0.0) | |
|   else() | |
|     set(METIS_VERSION ${METIS_MAJOR_VERSION}.${METIS_MINOR_VERSION}.${METIS_SUBMINOR_VERSION}) | |
|   endif() | |
|   if(${METIS_VERSION} VERSION_LESS ${Metis_FIND_VERSION}) | |
|     set(METIS_VERSION_OK FALSE) | |
|   else() | |
|     set(METIS_VERSION_OK TRUE) | |
|   endif() | |
|  | |
|   if(NOT METIS_VERSION_OK) | |
|     message(STATUS "Metis version ${METIS_VERSION} found in ${METIS_INCLUDES}, " | |
|                    "but at least version ${Metis_FIND_VERSION} is required") | |
|   endif(NOT METIS_VERSION_OK) | |
| endmacro(_metis_check_version) | |
|  | |
|   if(METIS_INCLUDES AND Metis_FIND_VERSION) | |
|     _metis_check_version() | |
|   else() | |
|     set(METIS_VERSION_OK TRUE) | |
|   endif() | |
|  | |
|  | |
| find_library(METIS_LIBRARIES metis PATHS $ENV{METISDIR} ${LIB_INSTALL_DIR} PATH_SUFFIXES lib) | |
|  | |
| include(FindPackageHandleStandardArgs) | |
| find_package_handle_standard_args(METIS DEFAULT_MSG | |
|                                   METIS_INCLUDES METIS_LIBRARIES METIS_VERSION_OK) | |
|  | |
| mark_as_advanced(METIS_INCLUDES METIS_LIBRARIES)
 |