diff --git a/MaterialLib/CMakeLists.txt b/MaterialLib/CMakeLists.txt index 6eb3884711e3f306ee990f9a14ad5092a49c9acc..548d6d176f0737e7a5dcde115963843ba3447ec2 100644 --- a/MaterialLib/CMakeLists.txt +++ b/MaterialLib/CMakeLists.txt @@ -29,7 +29,9 @@ append_source_files(SOURCES PorousMedium/UnsaturatedProperty/RelativePermeability) append_source_files(SOURCES TwoPhaseModels) -add_subdirectory(SolidModels/MFront) +if(OGS_USE_MFRONT) + add_subdirectory(SolidModels/MFront) +endif() add_library(MaterialLib ${SOURCES}) if(BUILD_SHARED_LIBS) @@ -40,9 +42,11 @@ include(GenerateExportHeader) generate_export_header(MaterialLib) target_include_directories(MaterialLib PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) -target_link_libraries(MaterialLib - PUBLIC MaterialLib_SolidModels_MFront - PRIVATE MathLib MeshLib ParameterLib) +target_link_libraries(MaterialLib PRIVATE MathLib MeshLib ParameterLib) + +if(OGS_USE_MFRONT) + target_link_libraries(MaterialLib PUBLIC MaterialLib_SolidModels_MFront) +endif() if(OGS_USE_PCH) cotire(MaterialLib) diff --git a/MaterialLib/SolidModels/MFront/CMakeLists.txt b/MaterialLib/SolidModels/MFront/CMakeLists.txt index 05b2a276d8e8d58fe98966a0899431742a2d5554..5fc748eca01f4402cb912c760f4c99d1f68e56ad 100644 --- a/MaterialLib/SolidModels/MFront/CMakeLists.txt +++ b/MaterialLib/SolidModels/MFront/CMakeLists.txt @@ -1,8 +1,6 @@ set(SOURCES CreateMFront.cpp CreateMFront.h) -if(OGS_USE_MFRONT) - list(APPEND SOURCES MFront.cpp MFront.h) -endif() +list(APPEND SOURCES MFront.cpp MFront.h) add_library(MaterialLib_SolidModels_MFront ${SOURCES}) @@ -12,13 +10,17 @@ if(BUILD_SHARED_LIBS) endif() target_link_libraries(MaterialLib_SolidModels_MFront - PUBLIC BaseLib NumLib logog + PUBLIC BaseLib NumLib logog OgsMFrontBehaviour PRIVATE MathLib MeshLib) -if(OGS_USE_MFRONT) - target_include_directories(MaterialLib_SolidModels_MFront - PUBLIC ${MGIS_INCLUDE_DIR}) - target_link_libraries(MaterialLib_SolidModels_MFront PUBLIC ${MGIS_LIBRARY}) - target_compile_definitions(MaterialLib_SolidModels_MFront PRIVATE - OGS_USE_MFRONT) -endif() +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} + "${PROJECT_SOURCE_DIR}/ThirdParty/MGIS") +include(cmake/modules/tfel) +mfront_behaviours_check_library(OgsMFrontBehaviour Elasticity) + +target_include_directories(MaterialLib_SolidModels_MFront + PUBLIC ThirdParty/MGIS/include) +target_link_libraries(MaterialLib_SolidModels_MFront + PUBLIC MFrontGenericInterface) +target_compile_definitions(MaterialLib_SolidModels_MFront PRIVATE + OGS_USE_MFRONT)