https://gitlab.opengeosys.org/ogs/ogs.git
Raw File
Tip revision: 7be0fd614698fc9b052f5c74c7f5ea6ac4307727 authored by Dmitry Yu. Naumov on 20 February 2021, 11:16:09 UTC
Merge branch 'RM_UseDoublePorosityModel' into 'master'
Tip revision: 7be0fd6
CMakeLists.txt
# Collect the process libraries in interface library
add_library(Processes INTERFACE)

foreach(process ${ProcessesList})
    if(OGS_BUILD_PROCESS_${process})
        add_subdirectory(${process})
        target_link_libraries(Processes INTERFACE ${process})
    endif()
endforeach()

get_source_files(SOURCES)
append_source_files(SOURCES BoundaryCondition)
append_source_files(SOURCES SurfaceFlux)
append_source_files(SOURCES Output)
append_source_files(SOURCES SourceTerms)
append_source_files(SOURCES Utils)

ogs_add_library(ProcessLib ${SOURCES})

if(OGS_USE_PYTHON)
    add_subdirectory(BoundaryCondition/Python)
    add_subdirectory(SourceTerms/Python)
endif()

target_link_libraries(ProcessLib
    PUBLIC
        BaseLib
        MaterialLib
        MathLib
        MeshGeoToolsLib
        MeshLib
        NumLib
        $<$<OR:$<BOOL:${OGS_BUILD_PROCESS_ComponentTransport}>,$<BOOL:${OGS_BUILD_PROCESS_RichardsComponentTransport}>>:ChemistryLib>
        $<$<TARGET_EXISTS:ProcessLibBoundaryConditionPython>:ProcessLibBoundaryConditionPython>
        $<$<TARGET_EXISTS:ProcessLibSourceTermPython>:ProcessLibSourceTermPython>
        nlohmann_json
    PRIVATE
        ParameterLib
        GitInfoLib
        spdlog::spdlog
        $<$<TARGET_EXISTS:InSituLib>:InSituLib>
)

target_compile_definitions(ProcessLib
    PUBLIC
    $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
    $<$<BOOL:${OGS_USE_XDMF}>:OGS_USE_XDMF>
    # Enabled elements
    OGS_MAX_ELEMENT_DIM=${OGS_MAX_ELEMENT_DIM}
    OGS_MAX_ELEMENT_ORDER=${OGS_MAX_ELEMENT_ORDER}
    $<$<BOOL:${OGS_ENABLE_ELEMENT_SIMPLEX}>:OGS_ENABLE_ELEMENT_SIMPLEX>
    $<$<BOOL:${OGS_ENABLE_ELEMENT_CUBOID}>:OGS_ENABLE_ELEMENT_CUBOID>
    $<$<BOOL:${OGS_ENABLE_ELEMENT_PRISM}>:OGS_ENABLE_ELEMENT_PRISM>
    $<$<BOOL:${OGS_ENABLE_ELEMENT_PYRAMID}>:OGS_ENABLE_ELEMENT_PYRAMID>
    PRIVATE
    $<$<BOOL:${USE_INSITU}>:USE_INSITU>
)
back to top