diff --git a/CMakeLists.txt b/CMakeLists.txt index 384e482520..535f8cac1f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,21 +37,27 @@ TARGET_LINK_LIBRARIES(klu PRIVATE ${RT}) # ) # set(SUITESPARSE_INCLUDE_DIR "/usr/include/suitesparse") -INCLUDE_DIRECTORIES(${SUITESPARSE_INCLUDE_DIR}) - -## Link Libraries -find_library(KLU klu) -find_library(AMD amd) -find_library(COLAMD colamd) -find_library(BTF btf) -find_library(SUITESPARSE_CONFIG suitesparseconfig) -TARGET_LINK_LIBRARIES(klu PRIVATE - ${KLU} - ${AMD} - ${COLAMD} - ${BTF} - ${SUITESPARSE_CONFIG} - ) +# find_path(SUITESPARSE_INCLUDE_DIR suitesparse) +# INCLUDE_DIRECTORIES(${SUITESPARSE_INCLUDE_DIR}) + +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}) +find_package(SuiteSparse) +include_directories(${SuiteSparse_INCLUDE_DIRS}) +target_link_libraries(klu PRIVATE ${SuiteSparse_LIBRARIES}) + +# ## Link Libraries +# find_library(KLU klu) +# find_library(AMD amd) +# find_library(COLAMD colamd) +# find_library(BTF btf) +# find_library(SUITESPARSE_CONFIG suitesparseconfig) +# TARGET_LINK_LIBRARIES(klu PRIVATE +# ${KLU} +# ${AMD} +# ${COLAMD} +# ${BTF} +# ${SUITESPARSE_CONFIG} +# ) # --------------- diff --git a/scripts/replace-cmake/CMakeLists.txt b/scripts/replace-cmake/CMakeLists.txt index fa626f3d66..0cfaf606f6 100644 --- a/scripts/replace-cmake/CMakeLists.txt +++ b/scripts/replace-cmake/CMakeLists.txt @@ -1002,30 +1002,19 @@ IF(KLU_ENABLE) # set(SUITESPARSECONFIG_LIBRARY ${SUITESPARSE_DIR}/SuiteSparse_config/libsuitesparseconfig.a) # set(KLU_LIBRARIES ${KLU_LIBRARY} ${AMD_LIBRARY} ${COLAMD_LIBRARY} ${BTF_LIBRARY} ${SUITESPARSECONFIG_LIBRARY}) - find_library(KLU_LIBRARY klu) - find_library(AMD_LIBRARY amd) - find_library(COLAMD_LIBRARY colamd) - find_library(BTF_LIBRARY btf) - find_library(SUITESPARSECONFIG_LIBRARY suitesparseconfig) - set(KLU_LIBRARIES ${KLU_LIBRARY} ${AMD_LIBRARY} ${COLAMD_LIBRARY} ${BTF_LIBRARY} ${SUITESPARSECONFIG_LIBRARY}) - + # find_library(KLU_LIBRARY klu) + # find_library(AMD_LIBRARY amd) + # find_library(COLAMD_LIBRARY colamd) + # find_library(BTF_LIBRARY btf) + # find_library(SUITESPARSECONFIG_LIBRARY suitesparseconfig) + # set(KLU_LIBRARIES ${KLU_LIBRARY} ${AMD_LIBRARY} ${COLAMD_LIBRARY} ${BTF_LIBRARY} ${SUITESPARSECONFIG_LIBRARY}) set(KLU_FOUND TRUE) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/..) # use FindSuiteSparse that is in PyBaMM root + find_package(SuiteSparse) + include_directories(${SuiteSparse_INCLUDE_DIRS}) + set(KLU_LIBRARIES ${SuiteSparse_LIBRARIES}) - # include is now simply /usr/include - # IF(KLU_FOUND) - # sundials_config.h symbol - # SET(SUNDIALS_KLU TRUE) - # set(KLU_INCLUDE_DIR ${SUITESPARSE_DIR}/KLU/Include) - # set(AMD_INCLUDE_DIR ${SUITESPARSE_DIR}/AMD/Include) - # set(COLAMD_INCLUDE_DIR ${SUITESPARSE_DIR}/COLAMD/Include) - # set(BTF_INCLUDE_DIR ${SUITESPARSE_DIR}/BTF/Include) - # set(SUITESPARSECONFIG_INCLUDE_DIR ${SUITESPARSE_DIR}/SuiteSparse_config) - - # INCLUDE_DIRECTORIES(${AMD_INCLUDE_DIR} ${COLAMD_INCLUDE_DIR} ${BTF_INCLUDE_DIR} ${SUITESPARSECONFIG_INCLUDE_DIR} ${KLU_INCLUDE_DIR}) - # ENDIF(KLU_FOUND) - # set(SUITESPARSE_INCLUDE_DIR "/usr/include/suitesparse") # leave for user to set - INCLUDE_DIRECTORIES(${SUITESPARSE_INCLUDE_DIR}) IF(KLU_LIBRARIES AND NOT KLU_FOUND) PRINT_WARNING("KLU not functional - support will not be provided"