--- CMakeLists.txt.orig 2023-06-30 02:43:40.000000000 +0800 +++ CMakeLists.txt 2023-07-01 14:37:52.000000000 +0800 @@ -56,7 +56,7 @@ project(PolySolve DESCRIPTION "Easy-to-use wrapper for linear solver" - LANGUAGES CXX) + LANGUAGES C CXX) if(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "arm64" AND APPLE) set(POLYSOLVE_NOT_ON_APPLE_SILICON OFF) @@ -107,11 +107,9 @@ ### Configuration list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/polysolve/") -list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/recipes/") list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/find/") # General CMake utils -include(polysolve_cpm_cache) include(polysolve_use_colors) # Sort projects inside the solution @@ -155,13 +153,6 @@ # Accelerate solver if(POLYSOLVE_WITH_ACCELERATE) - include(CPM) - CPMAddPackage( - NAME eigen - GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git - GIT_TAG 969c31eefcdfaab11da763bea3f7502086673ab0 - DOWNLOAD_ONLY ON - ) set(BLA_VENDOR Apple) find_package(BLAS REQUIRED) find_package(LAPACK REQUIRED) @@ -178,13 +169,15 @@ add_sanitizers(polysolve) endif() -include(eigen) +find_package(Eigen3 3.3 REQUIRED NO_MODULE) target_link_libraries(polysolve PUBLIC Eigen3::Eigen) # Hypre (GNU Lesser General Public License) if(POLYSOLVE_WITH_HYPRE) - include(hypre) + find_package(HYPRE) + find_package(OpenMP) target_link_libraries(polysolve PUBLIC HYPRE::HYPRE) + target_link_libraries(polysolve PUBLIC OpenMP::OpenMP_C) target_compile_definitions(polysolve PUBLIC -DPOLYSOLVE_WITH_HYPRE) if(HYPRE_WITH_MPI) target_compile_definitions(polysolve PUBLIC HYPRE_WITH_MPI) @@ -192,7 +185,7 @@ endif() # Json (MIT) -include(json) +find_package(nlohmann_json) target_link_libraries(polysolve PUBLIC nlohmann_json::nlohmann_json) # Accelerate solvers