#------------------------------------------------------------------------------- # SuiteSparse/SuiteSparse_config/cmake_modules/SuiteSparse_configConfig.cmake #------------------------------------------------------------------------------- # The following copyright and license applies to just this file only, not to # the library itself: # SuiteSparse_configConfig.cmake, Copyright (c) 2023, Timothy A. Davis. All Rights Reserved. # SPDX-License-Identifier: BSD-3-clause #------------------------------------------------------------------------------- # Finds the SuiteSparse_config include file and compiled library. # The following targets are defined: # SuiteSparseConfig - for the shared library (if available) # SuiteSparseConfig_static - for the static library (if available) # For backward compatibility the following variables are set: # SUITESPARSE_CONFIG_INCLUDE_DIR - where to find SuiteSparse_config.h # SUITESPARSE_CONFIG_LIBRARY - dynamic SuiteSparse_config library # SUITESPARSE_CONFIG_STATIC - static SuiteSparse_config library # SUITESPARSE_CONFIG_LIBRARIES - libraries when using SuiteSparse_config # SUITESPARSE_CONFIG_FOUND - true if SuiteSparse_config found # Set ``CMAKE_MODULE_PATH`` to the parent folder where this module file is # installed. #------------------------------------------------------------------------------- ####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() ####### ####### Any changes to this file will be overwritten by the next CMake run #### ####### The input file was SuiteSparse_configConfig.cmake.in ######## get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE) # Use original install prefix when loaded through a "/usr move" # cross-prefix symbolic link such as /lib -> /usr/lib. get_filename_component(_realCurr "${CMAKE_CURRENT_LIST_DIR}" REALPATH) get_filename_component(_realOrig "/usr/lib/cmake/SuiteSparse_config" REALPATH) if(_realCurr STREQUAL _realOrig) set(PACKAGE_PREFIX_DIR "/usr") endif() unset(_realOrig) unset(_realCurr) macro(set_and_check _var _file) set(${_var} "${_file}") if(NOT EXISTS "${_file}") message(FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist !") endif() endmacro() macro(check_required_components _NAME) foreach(comp ${${_NAME}_FIND_COMPONENTS}) if(NOT ${_NAME}_${comp}_FOUND) if(${_NAME}_FIND_REQUIRED_${comp}) set(${_NAME}_FOUND FALSE) endif() endif() endforeach() endmacro() #################################################################################### set ( SUITESPARSE_DATE "Jan 12, 2024" ) set ( SUITESPARSE_CONFIG_VERSION_MAJOR 7 ) set ( SUITESPARSE_CONFIG_VERSION_MINOR 5 ) set ( SUITESPARSE_CONFIG_VERSION_PATCH 1 ) set ( SUITESPARSE_CONFIG_VERSION "7.5.1" ) # Check for dependent targets include ( CMakeFindDependencyMacro ) set ( _dependencies_found ON ) # Look for OpenMP if ( OFF AND NOT OpenMP_C_FOUND ) find_dependency ( OpenMP COMPONENTS C ) if ( NOT OpenMP_C_FOUND ) set ( _dependencies_found OFF ) endif ( ) endif ( ) if ( NOT _dependencies_found ) set ( SuiteSparse_config_FOUND OFF ) return ( ) endif ( ) # Import target include ( ${CMAKE_CURRENT_LIST_DIR}/SuiteSparse_configTargets.cmake ) if ( OFF ) if ( TARGET SuiteSparse::SuiteSparseConfig ) get_property ( _suitesparse_config_aliased TARGET SuiteSparse::SuiteSparseConfig PROPERTY ALIASED_TARGET ) if ( "${_suitesparse_config_aliased}" STREQUAL "" ) target_include_directories ( SuiteSparse::SuiteSparseConfig SYSTEM AFTER INTERFACE "$" ) else ( ) target_include_directories ( ${_suitesparse_config_aliased} SYSTEM AFTER INTERFACE "$" ) endif ( ) endif ( ) if ( TARGET SuiteSparse::SuiteSparseConfig_static ) get_property ( _suitesparse_config_aliased TARGET SuiteSparse::SuiteSparseConfig_static PROPERTY ALIASED_TARGET ) if ( "${_suitesparse_config_aliased}" STREQUAL "" ) target_include_directories ( SuiteSparse::SuiteSparseConfig_static SYSTEM AFTER INTERFACE "$" ) else ( ) target_include_directories ( ${_suitesparse_config_aliased} SYSTEM AFTER INTERFACE "$" ) endif ( ) endif ( ) endif ( ) # The following is only for backward compatibility with FindSuiteSparse_config. set ( _target_shared SuiteSparse::SuiteSparseConfig ) set ( _target_static SuiteSparse::SuiteSparseConfig_static ) set ( _var_prefix "SUITESPARSE_CONFIG" ) if ( NOT ON AND NOT TARGET ${_target_shared} ) # make sure there is always an import target without suffix ) add_library ( ${_target_shared} ALIAS ${_target_static} ) endif ( ) get_target_property ( ${_var_prefix}_INCLUDE_DIR ${_target_shared} INTERFACE_INCLUDE_DIRECTORIES ) if ( ${_var_prefix}_INCLUDE_DIR ) # First item in SuiteSparse targets contains the "main" header directory. list ( GET ${_var_prefix}_INCLUDE_DIR 0 ${_var_prefix}_INCLUDE_DIR ) endif ( ) get_target_property ( ${_var_prefix}_LIBRARY ${_target_shared} IMPORTED_IMPLIB ) if ( NOT ${_var_prefix}_LIBRARY ) get_target_property ( _library_chk ${_target_shared} IMPORTED_LOCATION ) if ( EXISTS ${_library_chk} ) set ( ${_var_prefix}_LIBRARY ${_library_chk} ) endif ( ) endif ( ) if ( TARGET ${_target_static} ) get_target_property ( ${_var_prefix}_STATIC ${_target_static} IMPORTED_LOCATION ) endif ( ) # Check for most common build types set ( _config_types "Debug" "Release" "RelWithDebInfo" "MinSizeRel" "None" ) get_property ( _isMultiConfig GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG ) if ( _isMultiConfig ) # For multi-configuration generators (e.g., Visual Studio), prefer those # configurations. list ( PREPEND _config_types ${CMAKE_CONFIGURATION_TYPES} ) else ( ) # For single-configuration generators, prefer the current configuration. list ( PREPEND _config_types ${CMAKE_BUILD_TYPE} ) endif ( ) list ( REMOVE_DUPLICATES _config_types ) foreach ( _config ${_config_types} ) string ( TOUPPER ${_config} _uc_config ) if ( NOT ${_var_prefix}_LIBRARY ) get_target_property ( _library_chk ${_target_shared} IMPORTED_IMPLIB_${_uc_config} ) if ( EXISTS ${_library_chk} ) set ( ${_var_prefix}_LIBRARY ${_library_chk} ) endif ( ) endif ( ) if ( NOT ${_var_prefix}_LIBRARY ) get_target_property ( _library_chk ${_target_shared} IMPORTED_LOCATION_${_uc_config} ) if ( EXISTS ${_library_chk} ) set ( ${_var_prefix}_LIBRARY ${_library_chk} ) endif ( ) endif ( ) if ( TARGET ${_target_static} AND NOT ${_var_prefix}_STATIC ) get_target_property ( _library_chk ${_target_static} IMPORTED_LOCATION_${_uc_config} ) if ( EXISTS ${_library_chk} ) set ( ${_var_prefix}_STATIC ${_library_chk} ) endif ( ) endif ( ) endforeach ( ) set ( SUITESPARSE_CONFIG_LIBRARIES ${SUITESPARSE_CONFIG_LIBRARY} ) macro ( suitesparse_check_exist _var _files ) # ignore generator expressions string ( GENEX_STRIP "${_files}" _files2 ) foreach ( _file ${_files2} ) if ( NOT EXISTS "${_file}" ) message ( FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist!" ) endif ( ) endforeach () endmacro ( ) suitesparse_check_exist ( SUITESPARSE_CONFIG_INCLUDE_DIR ${SUITESPARSE_CONFIG_INCLUDE_DIR} ) suitesparse_check_exist ( SUITESPARSE_CONFIG_LIBRARY ${SUITESPARSE_CONFIG_LIBRARY} ) message ( STATUS "SuiteSparse_config version: ${SUITESPARSE_CONFIG_VERSION}" ) message ( STATUS "SuiteSparse_config include: ${SUITESPARSE_CONFIG_INCLUDE_DIR}" ) message ( STATUS "SuiteSparse_config library: ${SUITESPARSE_CONFIG_LIBRARY}" ) message ( STATUS "SuiteSparse_config static: ${SUITESPARSE_CONFIG_STATIC}" )