[136] | 1 |
|
---|
| 2 |
|
---|
| 3 | set(BLAS_FOUND TRUE)
|
---|
| 4 | set(LAPACK_FOUND TRUE)
|
---|
| 5 | set(BLAS_LIBRARIES eigen_blas_static)
|
---|
| 6 | set(LAPACK_LIBRARIES eigen_lapack_static)
|
---|
| 7 |
|
---|
| 8 | set(SPARSE_LIBS "")
|
---|
| 9 |
|
---|
| 10 | # find_library(PARDISO_LIBRARIES pardiso412-GNU450-X86-64)
|
---|
| 11 | # if(PARDISO_LIBRARIES)
|
---|
| 12 | # add_definitions("-DEIGEN_PARDISO_SUPPORT")
|
---|
| 13 | # set(SPARSE_LIBS ${SPARSE_LIBS} ${PARDISO_LIBRARIES})
|
---|
| 14 | # endif(PARDISO_LIBRARIES)
|
---|
| 15 |
|
---|
| 16 | find_package(Cholmod)
|
---|
| 17 | if(CHOLMOD_FOUND AND BLAS_FOUND AND LAPACK_FOUND)
|
---|
| 18 | add_definitions("-DEIGEN_CHOLMOD_SUPPORT")
|
---|
| 19 | include_directories(${CHOLMOD_INCLUDES})
|
---|
| 20 | set(SPARSE_LIBS ${SPARSE_LIBS} ${CHOLMOD_LIBRARIES} ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES})
|
---|
| 21 | set(CHOLMOD_ALL_LIBS ${CHOLMOD_LIBRARIES} ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES})
|
---|
| 22 | endif()
|
---|
| 23 |
|
---|
| 24 | find_package(Umfpack)
|
---|
| 25 | if(UMFPACK_FOUND AND BLAS_FOUND)
|
---|
| 26 | add_definitions("-DEIGEN_UMFPACK_SUPPORT")
|
---|
| 27 | include_directories(${UMFPACK_INCLUDES})
|
---|
| 28 | set(SPARSE_LIBS ${SPARSE_LIBS} ${UMFPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
---|
| 29 | set(UMFPACK_ALL_LIBS ${UMFPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
---|
| 30 | endif()
|
---|
| 31 |
|
---|
| 32 | find_package(SuperLU)
|
---|
| 33 | if(SUPERLU_FOUND AND BLAS_FOUND)
|
---|
| 34 | add_definitions("-DEIGEN_SUPERLU_SUPPORT")
|
---|
| 35 | include_directories(${SUPERLU_INCLUDES})
|
---|
| 36 | set(SPARSE_LIBS ${SPARSE_LIBS} ${SUPERLU_LIBRARIES} ${BLAS_LIBRARIES})
|
---|
| 37 | set(SUPERLU_ALL_LIBS ${SUPERLU_LIBRARIES} ${BLAS_LIBRARIES})
|
---|
| 38 | endif()
|
---|
| 39 |
|
---|
| 40 |
|
---|
| 41 | find_package(Pastix)
|
---|
| 42 | find_package(Scotch)
|
---|
| 43 | find_package(Metis)
|
---|
| 44 | if(PASTIX_FOUND AND BLAS_FOUND)
|
---|
| 45 | add_definitions("-DEIGEN_PASTIX_SUPPORT")
|
---|
| 46 | include_directories(${PASTIX_INCLUDES})
|
---|
| 47 | if(SCOTCH_FOUND)
|
---|
| 48 | include_directories(${SCOTCH_INCLUDES})
|
---|
| 49 | set(PASTIX_LIBRARIES ${PASTIX_LIBRARIES} ${SCOTCH_LIBRARIES})
|
---|
| 50 | elseif(METIS_FOUND)
|
---|
| 51 | include_directories(${METIS_INCLUDES})
|
---|
| 52 | set(PASTIX_LIBRARIES ${PASTIX_LIBRARIES} ${METIS_LIBRARIES})
|
---|
| 53 | endif(SCOTCH_FOUND)
|
---|
| 54 | set(SPARSE_LIBS ${SPARSE_LIBS} ${PASTIX_LIBRARIES} ${ORDERING_LIBRARIES} ${BLAS_LIBRARIES})
|
---|
| 55 | set(PASTIX_ALL_LIBS ${PASTIX_LIBRARIES} ${BLAS_LIBRARIES})
|
---|
| 56 | endif(PASTIX_FOUND AND BLAS_FOUND)
|
---|
| 57 |
|
---|
| 58 | if(METIS_FOUND)
|
---|
| 59 | include_directories(${METIS_INCLUDES})
|
---|
| 60 | set (SPARSE_LIBS ${SPARSE_LIBS} ${METIS_LIBRARIES})
|
---|
| 61 | add_definitions("-DEIGEN_METIS_SUPPORT")
|
---|
| 62 | endif(METIS_FOUND)
|
---|
| 63 |
|
---|
| 64 | find_library(RT_LIBRARY rt)
|
---|
| 65 | if(RT_LIBRARY)
|
---|
| 66 | set(SPARSE_LIBS ${SPARSE_LIBS} ${RT_LIBRARY})
|
---|
| 67 | endif(RT_LIBRARY)
|
---|
| 68 |
|
---|
| 69 | add_executable(spbenchsolver spbenchsolver.cpp)
|
---|
| 70 | target_link_libraries (spbenchsolver ${SPARSE_LIBS})
|
---|
| 71 |
|
---|
| 72 | add_executable(spsolver sp_solver.cpp)
|
---|
| 73 | target_link_libraries (spsolver ${SPARSE_LIBS})
|
---|
| 74 |
|
---|
| 75 |
|
---|
| 76 | add_executable(test_sparseLU test_sparseLU.cpp)
|
---|
| 77 | target_link_libraries (test_sparseLU ${SPARSE_LIBS})
|
---|
| 78 |
|
---|