https://gitlab.opengeosys.org/ogs/ogs.git
Raw File
Tip revision: df587a20c67ca609794e0dc196a324686a547a06 authored by rinkk on 04 July 2016, 10:13:52 UTC
added changes since last version to changelog
Tip revision: df587a2
CMakeLists.txt
#Source files grouped by a directory
GET_SOURCE_FILES(SOURCES_MATHLIB)
set(SOURCES ${SOURCES_MATHLIB})

GET_SOURCE_FILES(SOURCES_INTERPOLATIONALGORITHMS InterpolationAlgorithms)
set(SOURCES ${SOURCES} ${SOURCES_INTERPOLATIONALGORITHMS})

GET_SOURCE_FILES(SOURCES_INTEGRATION Integration)
set(SOURCES ${SOURCES} ${SOURCES_INTEGRATION})

GET_SOURCE_FILES(SOURCES_LINALG LinAlg)
set(SOURCES ${SOURCES} ${SOURCES_LINALG})

GET_SOURCE_FILES(SOURCES_LINALG_DENSE LinAlg/Dense)
set(SOURCES ${SOURCES} ${SOURCES_LINALG_DENSE})

GET_SOURCE_FILES(SOURCES_LINALG_SOLVERS LinAlg/Solvers)
set(SOURCES ${SOURCES} ${SOURCES_LINALG_SOLVERS})

GET_SOURCE_FILES(SOURCES_ODE ODE)
set(SOURCES ${SOURCES} ${SOURCES_ODE})

if(OGS_USE_EIGEN)
    GET_SOURCE_FILES(SOURCES_LINALG_EIGEN LinAlg/Eigen)
    set(SOURCES ${SOURCES} ${SOURCES_LINALG_EIGEN})
endif()

if(OGS_USE_LIS)
    GET_SOURCE_FILES(SOURCES_LINALG_LIS LinAlg/Lis)
    set(SOURCES ${SOURCES} ${SOURCES_LINALG_LIS})
    GET_SOURCE_FILES(SOURCES_LINALG_EIGENLIS LinAlg/EigenLis)
    set(SOURCES ${SOURCES} ${SOURCES_LINALG_EIGENLIS})
endif()

if(OGS_USE_PETSC)
    GET_SOURCE_FILES(SOURCES_LINALG_PETSC LinAlg/PETSc)
    set(SOURCES ${SOURCES} ${SOURCES_LINALG_PETSC})
endif()

GET_SOURCE_FILES(SOURCES_NONLINEAR Nonlinear)
set(SOURCES ${SOURCES} ${SOURCES_NONLINEAR})


# Create the library
add_library(MathLib ${SOURCES})

set_target_properties(MathLib PROPERTIES LINKER_LANGUAGE CXX)

target_link_libraries(MathLib
    BaseLib
)

if (CVODE_FOUND)
    target_link_libraries(MathLib ${CVODE_LIBRARIES})
endif()

if(LAPACK_FOUND)
    target_link_libraries(MathLib ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES})
endif()

if (OGS_USE_LIS)
    target_link_libraries(MathLib ${LIS_LIBRARIES})
endif()

if (OGS_USE_PETSC)
    target_link_libraries(MathLib ${PETSC_LIBRARIES})
endif()

if(TARGET Boost)
    add_dependencies(MathLib Boost)
endif()
if(TARGET Eigen)
    add_dependencies(MathLib Eigen)
endif()
back to top