Skip to content
Snippets Groups Projects
Verified Commit 7544d746 authored by Lars Bilke's avatar Lars Bilke
Browse files

Replaced xdmf submodule with CPM.

parent b74475a2
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,3 @@ ...@@ -7,6 +7,3 @@
[submodule "ThirdParty/ogs6py"] [submodule "ThirdParty/ogs6py"]
path = ThirdParty/ogs6py path = ThirdParty/ogs6py
url = https://github.com/joergbuchwald/ogs6py.git url = https://github.com/joergbuchwald/ogs6py.git
[submodule "ThirdParty/xdmf"]
path = ThirdParty/xdmf
url = https://gitlab.opengeosys.org/ogs/xdmflib.git
...@@ -9,42 +9,6 @@ if(OGS_BUILD_SWMM) ...@@ -9,42 +9,6 @@ if(OGS_BUILD_SWMM)
list(APPEND DISABLE_WARNINGS_TARGETS SWMM SwmmInterface) list(APPEND DISABLE_WARNINGS_TARGETS SWMM SwmmInterface)
endif() endif()
if(OGS_USE_XDMF)
find_package(ZLIB REQUIRED) # ZLIB is a HDF5 dependency
set(XDMF_LIBNAME OgsXdmf CACHE INTERNAL "")
add_subdirectory(xdmf)
target_include_directories(${XDMF_LIBNAME} PUBLIC
${PROJECT_SOURCE_DIR}/ThirdParty/xdmf
${PROJECT_BINARY_DIR}/ThirdParty/xdmf
)
if(OGS_USE_CONAN AND UNIX AND APPLE)
find_package(Iconv REQUIRED)
endif()
if(MSVC AND OGS_USE_CONAN)
# Hack: Conan HDF5 not found on Windows
target_link_libraries(${XDMF_LIBNAME} ${CONAN_LIBS})
else()
target_link_libraries(${XDMF_LIBNAME} Boost::boost ${Iconv_LIBRARIES} ZLIB::ZLIB)
endif()
target_include_directories(${XDMF_LIBNAME}Core PUBLIC
${PROJECT_SOURCE_DIR}/ThirdParty/xdmf/core
${PROJECT_BINARY_DIR}/ThirdParty/xdmf/core
)
find_package(LibXml2 REQUIRED) # LibXml2 is a XdmfCore dependency
target_link_libraries(${XDMF_LIBNAME}Core PUBLIC LibXml2::LibXml2)
set_target_properties(${XDMF_LIBNAME} ${XDMF_LIBNAME}Core PROPERTIES
RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
)
if(BUILD_SHARED_LIBS)
install(TARGETS ${XDMF_LIBNAME} ${XDMF_LIBNAME}Core LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
endif()
list(APPEND DISABLE_WARNINGS_TARGETS ${XDMF_LIBNAME} ${XDMF_LIBNAME}Core)
endif()
foreach(TARGET ${DISABLE_WARNINGS_TARGETS}) foreach(TARGET ${DISABLE_WARNINGS_TARGETS})
target_compile_options(${TARGET} PRIVATE target_compile_options(${TARGET} PRIVATE
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:GNU>>:-w> $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:GNU>>:-w>
......
Subproject commit 3a226178c07e7cb1edaf572afb6c7938fff6b6ce
...@@ -124,6 +124,50 @@ if(OGS_USE_MFRONT) ...@@ -124,6 +124,50 @@ if(OGS_USE_MFRONT)
endif() endif()
endif() endif()
if(OGS_USE_XDMF)
find_package(ZLIB REQUIRED) # ZLIB is a HDF5 dependency
CPMAddPackage(
NAME xdmf
VERSION 3.0.0
GIT_REPOSITORY https://gitlab.opengeosys.org/ogs/xdmflib.git
GIT_TAG 8d5ae1e1cbf506b8ca2160745fc914e25690c8a4
OPTIONS "XDMF_LIBNAME OgsXdmf"
)
if(xdmf_ADDED)
target_include_directories(OgsXdmf PUBLIC
${PROJECT_SOURCE_DIR}/ThirdParty/xdmf
${PROJECT_BINARY_DIR}/ThirdParty/xdmf
)
if(OGS_USE_CONAN AND UNIX AND APPLE)
find_package(Iconv REQUIRED)
endif()
if(MSVC AND OGS_USE_CONAN)
# Hack: Conan HDF5 not found on Windows
target_link_libraries(OgsXdmf ${CONAN_LIBS})
else()
target_link_libraries(OgsXdmf Boost::boost ${Iconv_LIBRARIES} ZLIB::ZLIB)
endif()
target_include_directories(OgsXdmfCore PUBLIC
${PROJECT_SOURCE_DIR}/ThirdParty/xdmf/core
${PROJECT_BINARY_DIR}/ThirdParty/xdmf/core
)
find_package(LibXml2 REQUIRED) # LibXml2 is a XdmfCore dependency
target_link_libraries(OgsXdmfCore PUBLIC LibXml2::LibXml2)
set_target_properties(OgsXdmf OgsXdmfCore PROPERTIES
RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
)
if(BUILD_SHARED_LIBS)
install(TARGETS OgsXdmf OgsXdmfCore LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
endif()
list(APPEND DISABLE_WARNINGS_TARGETS OgsXdmf OgsXdmfCore)
endif()
endif()
# Disable warnings # Disable warnings
foreach(TARGET ${DISABLE_WARNINGS_TARGETS}) foreach(TARGET ${DISABLE_WARNINGS_TARGETS})
target_compile_options(${TARGET} PRIVATE target_compile_options(${TARGET} PRIVATE
......
...@@ -3,9 +3,6 @@ if(NOT IS_GIT_REPO) ...@@ -3,9 +3,6 @@ if(NOT IS_GIT_REPO)
endif() endif()
# This file initializes the required submodules # This file initializes the required submodules
if(OGS_USE_XDMF)
list(APPEND REQUIRED_SUBMODULES ThirdParty/xdmf)
endif()
if(OGS_BUILD_SWMM) if(OGS_BUILD_SWMM)
list(APPEND REQUIRED_SUBMODULES ThirdParty/SwmmInterface) list(APPEND REQUIRED_SUBMODULES ThirdParty/SwmmInterface)
endif() endif()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment