diff --git a/.cmake-format.yaml b/.cmake-format.yaml
index fb5a054abb7b594535793ccf668d9ac1324d34b8..57aa032e4b22cecd65068e0f6da24a50185beb89 100644
--- a/.cmake-format.yaml
+++ b/.cmake-format.yaml
@@ -3,6 +3,7 @@ format:
   max_subgroups_hwrap: 3
   dangle_parens: true
   command_case: "unchanged"
+  line_width: 80
 lint:
   disabled_codes:
   - "C0301"
@@ -10,7 +11,14 @@ lint:
   - "C0113"    # Missing COMMAND for optional dependencies.
 
 parse:
+  vartags:
+  - !!python/tuple
+    - set_property
+    - - cmdline
   additional_commands:
+    ogs_add_library:
+      pargs:
+        nargs: 2+
     addtest:
       pargs:
         nargs: '*'
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 4fe13c3021404cdbc58145a891bfc6aad346414e..29c07442a129db55574dfd1e16294afd96e1064f 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -10,7 +10,7 @@ repos:
     -   id: check-merge-conflict
     -   id: check-xml
     -   id: check-yaml
-        exclude: '^scripts/ci/.*'
+        exclude: '^scripts/ci/.*|.cmake-format.yaml'
     -   id: check-toml
 -   repo: local
     hooks:
@@ -26,12 +26,6 @@ repos:
         language: system
         files: '.*\.cpp'
         stages: [commit, manual]
-    -   id: cmake-format
-        name: Format CMake files
-        entry: scripts/hooks/pre-commit-cmake-format.sh
-        language: system
-        files: 'CMakeLists.txt'
-        stages: [commit, manual]
 -   repo: https://github.com/ambv/black
     rev: stable
     hooks:
@@ -47,7 +41,7 @@ repos:
     hooks:
     - id: cmake-format
       additional_dependencies: ["cmakelang[YAML]"]
-      exclude: '.*' # Disabled for now
+      exclude: 'scripts/cmake/jedbrown/.*|PackagingMacros.cmake|conan.cmake|CPM.cmake|FindFilesystem.cmake|ConanSetup.cmake|Tests.cmake'
     - id: cmake-lint
       additional_dependencies: ["cmakelang[YAML]"]
       exclude: 'scripts/cmake/jedbrown/.*|PackagingMacros.cmake|conan.cmake|CPM.cmake|FindFilesystem.cmake|ConanSetup.cmake'
diff --git a/Applications/CLI/CMakeLists.txt b/Applications/CLI/CMakeLists.txt
index b1031501bf240ba5c0f317c79ef574f88165af99..44ad553443c5b9c243fbe8f53bcb88fe8eb8c866 100644
--- a/Applications/CLI/CMakeLists.txt
+++ b/Applications/CLI/CMakeLists.txt
@@ -32,40 +32,41 @@ if(OGS_USE_PYTHON)
     # provides the minimal set of parameters to ensure that the code using
     # pybind11 compiles, but it does not pass these extra compiler flags (i.e.
     # this is up to you). TODO: Enable further compiler/linker flags.
-    target_link_libraries(ogs_embedded_python
-        PUBLIC pybind11::embed
+    target_link_libraries(
+        ogs_embedded_python PUBLIC pybind11::embed
         PRIVATE ProcessLibBoundaryConditionPythonModule
                 ProcessLibSourceTermPythonModule
     )
-    target_compile_definitions(ogs_embedded_python
+    target_compile_definitions(
+        ogs_embedded_python
         PUBLIC OGS_USE_PYTHON
-        # Add macro definition, because static libs make special handling
-        # necessary s.t. the embedded OpenGeoSys Python module won't be removed
-        # by the linker.
-        $<$<BOOL:${BUILD_SHARED_LIBS}>:PRIVATE OGS_BUILD_SHARED_LIBS>
+               # Add macro definition, because static libs make special handling
+               # necessary s.t. the embedded OpenGeoSys Python module won't be
+               # removed by the linker.
+               $<$<BOOL:${BUILD_SHARED_LIBS}>:PRIVATE
+               OGS_BUILD_SHARED_LIBS>
     )
 endif()
 
 add_executable(ogs ogs.cpp)
 
-target_link_libraries(ogs
-    PRIVATE
-        ApplicationsLib
-        BaseLib
-        CMakeInfoLib
-        GitInfoLib
-        MeshLib
-        ProcessLib
-        $<$<TARGET_EXISTS:ogs_embedded_python>:ogs_embedded_python>
-        $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
-        $<$<TARGET_EXISTS:InSituLib>:InSituLib>
-        tclap
+target_link_libraries(
+    ogs
+    PRIVATE ApplicationsLib
+            BaseLib
+            CMakeInfoLib
+            GitInfoLib
+            MeshLib
+            ProcessLib
+            $<$<TARGET_EXISTS:ogs_embedded_python>:ogs_embedded_python>
+            $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
+            $<$<TARGET_EXISTS:InSituLib>:InSituLib>
+            tclap
 )
 
-target_compile_definitions(ogs
-    PRIVATE
-    $<$<BOOL:${USE_INSITU}>:USE_INSITU>
-    $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
+target_compile_definitions(
+    ogs PRIVATE $<$<BOOL:${USE_INSITU}>:USE_INSITU>
+                $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
 )
 
 # ---- Tests ----
@@ -76,11 +77,11 @@ set_tests_properties(ogs_no_args PROPERTIES WILL_FAIL TRUE)
 install(TARGETS ogs RUNTIME DESTINATION bin)
 
 set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "ogs"
-                              "OGS Simulator")
-cpack_add_component(ogs_cli
-                    DISPLAY_NAME
-                    "OGS THMC Simulator"
-                    DESCRIPTION
-                    "The command line interface for OpenGeoSys."
-                    GROUP
-                    Applications)
+                              "OGS Simulator"
+)
+cpack_add_component(
+    ogs_cli
+    DISPLAY_NAME "OGS THMC Simulator"
+    DESCRIPTION "The command line interface for OpenGeoSys."
+    GROUP Applications
+)
diff --git a/Applications/DataExplorer/Base/CMakeLists.txt b/Applications/DataExplorer/Base/CMakeLists.txt
index 6a0843fb91f4b4f8e7f7f11e95a347027704b657..e11204cb5fc29ca43863d5244fe2e55c2f12d9bb 100644
--- a/Applications/DataExplorer/Base/CMakeLists.txt
+++ b/Applications/DataExplorer/Base/CMakeLists.txt
@@ -8,7 +8,8 @@ set(SOURCES
     ColorPickerPushButton.cpp
     TreeModelIterator.cpp
     CheckboxDelegate.cpp
-    QValueTooltipSlider.cpp)
+    QValueTooltipSlider.cpp
+)
 
 # Header files
 set(HEADERS
@@ -22,7 +23,8 @@ set(HEADERS
     TreeModel.h
     ColorPickerPushButton.h
     CheckboxDelegate.h
-    QValueTooltipSlider.h)
+    QValueTooltipSlider.h
+)
 
 # Put moc files in a project folder
 source_group("UI Files" REGULAR_EXPRESSION "\\w*\\.ui")
diff --git a/Applications/DataExplorer/DataExplorer.cmake b/Applications/DataExplorer/DataExplorer.cmake
index be297d6e5b3853b3e29af98b19b45cf7365295b6..d5c5b2bde3541ab64e2e125fb5ded0b006cacea3 100644
--- a/Applications/DataExplorer/DataExplorer.cmake
+++ b/Applications/DataExplorer/DataExplorer.cmake
@@ -1,8 +1,6 @@
 # Source files
-set(SOURCES
-    mainwindow.cpp
-    mainwindow.h
-    ${CMAKE_CURRENT_SOURCE_DIR}/Img/icons.qrc
+set(SOURCES mainwindow.cpp mainwindow.h
+            ${CMAKE_CURRENT_SOURCE_DIR}/Img/icons.qrc
 )
 
 set(SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../..)
@@ -23,15 +21,10 @@ source_group("UI Files" FILES ${UIS})
 set(APP_ICON ${SOURCE_DIR_REL}/scripts/packaging/ogs-de-icon.icns)
 
 # Create the executable
-add_executable(DataExplorer
-    main.cpp
-    ${SOURCES}
-    ${UIS}
-    ${APP_ICON}
-    exe-icon.rc
-)
+add_executable(DataExplorer main.cpp ${SOURCES} ${UIS} ${APP_ICON} exe-icon.rc)
 
-target_link_libraries(DataExplorer
+target_link_libraries(
+    DataExplorer
     BaseLib
     GeoLib
     GitInfoLib
@@ -64,12 +57,14 @@ if(OGS_USE_CONAN AND WIN32)
 endif()
 
 if(GEOTIFF_FOUND)
-    target_link_libraries(DataExplorer ${GEOTIFF_LIBRARIES} )
+    target_link_libraries(DataExplorer ${GEOTIFF_LIBRARIES})
 endif()
 
 if(MSVC)
     # Set linker flags
-    set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:MSVCRT /IGNORE:4099")
+    set(CMAKE_EXE_LINKER_FLAGS_DEBUG
+        "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:MSVCRT /IGNORE:4099"
+    )
     target_link_libraries(DataExplorer winmm)
 endif()
 
@@ -78,11 +73,15 @@ set_property(TARGET DataExplorer PROPERTY FOLDER "DataExplorer")
 # ---- Installation ----
 install(TARGETS DataExplorer RUNTIME DESTINATION bin)
 
-cpack_add_component(ogs_gui
+cpack_add_component(
+    ogs_gui
     DISPLAY_NAME "OGS Data Explorer"
     DESCRIPTION "The graphical user interface for OpenGeoSys."
     GROUP Applications
 )
-set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "DataExplorer" "OGS Data Explorer" PARENT_SCOPE)
-set(CPACK_NSIS_MENU_LINKS ${CPACK_NSIS_MENU_LINKS} "bin/DataExplorer.exe" "Data Explorer" PARENT_SCOPE)
-
+set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "DataExplorer"
+                              "OGS Data Explorer" PARENT_SCOPE
+)
+set(CPACK_NSIS_MENU_LINKS ${CPACK_NSIS_MENU_LINKS} "bin/DataExplorer.exe"
+                          "Data Explorer" PARENT_SCOPE
+)
diff --git a/Applications/DataExplorer/DataView/CMakeLists.txt b/Applications/DataExplorer/DataView/CMakeLists.txt
index 865dfed0a037377963f7990ae3ca5f06929bad2d..0d528722995faa9c84ff048d6cde5f8d1f8f84bd 100644
--- a/Applications/DataExplorer/DataView/CMakeLists.txt
+++ b/Applications/DataExplorer/DataView/CMakeLists.txt
@@ -42,7 +42,8 @@ set(SOURCES
     StationTabWidget.cpp
     StationTreeModel.cpp
     StationTreeView.cpp
-    SurfaceExtractionDialog.cpp)
+    SurfaceExtractionDialog.cpp
+)
 
 set(HEADERS
     AddLayerToMeshDialog.h
@@ -93,31 +94,38 @@ set(HEADERS
     StationTabWidget.h
     StationTreeModel.h
     StationTreeView.h
-    SurfaceExtractionDialog.h)
+    SurfaceExtractionDialog.h
+)
 
 # Visual Studio folder
 source_group("Dialog Header Files" REGULAR_EXPRESSION "[.]*Dialog.h")
 source_group("Dialog Source Files" REGULAR_EXPRESSION "[.]*Dialog.cpp")
-source_group("Data Model Header Files" REGULAR_EXPRESSION
-             "[.]*Item.h|[.]*Model.h|[.]*View.h")
-source_group("Data Model Source Files" REGULAR_EXPRESSION
-             "[.]*Item.cpp|[.]*Model.cpp|[.]*View.cpp")
+source_group(
+    "Data Model Header Files"
+    REGULAR_EXPRESSION "[.]*Item.h|[.]*Model.h|[.]*View.h"
+)
+source_group(
+    "Data Model Source Files"
+    REGULAR_EXPRESSION "[.]*Item.cpp|[.]*Model.cpp|[.]*View.cpp"
+)
 file(GLOB UIS CONFIGURE_DEPENDS *.ui)
 source_group("UI Files" FILES ${UIS})
 
 set(SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../../..)
 set(GUI_SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/..)
-include_directories(${SOURCE_DIR_REL}/Applications/FileIO
-                    ${SOURCE_DIR_REL}/BaseLib
-                    ${SOURCE_DIR_REL}/MathLib
-                    ${SOURCE_DIR_REL}/GeoLib
-                    ${SOURCE_DIR_REL}/MeshGeoToolsLib
-                    ${SOURCE_DIR_REL}/MeshLib
-                    ${GUI_SOURCE_DIR_REL}/Base
-                    ${GUI_SOURCE_DIR_REL}/VtkVis
-                    ${CMAKE_CURRENT_SOURCE_DIR}
-                    ${CMAKE_CURRENT_SOURCE_DIR}/DiagramView
-                    ${CMAKE_CURRENT_SOURCE_DIR}/StratView)
+include_directories(
+    ${SOURCE_DIR_REL}/Applications/FileIO
+    ${SOURCE_DIR_REL}/BaseLib
+    ${SOURCE_DIR_REL}/MathLib
+    ${SOURCE_DIR_REL}/GeoLib
+    ${SOURCE_DIR_REL}/MeshGeoToolsLib
+    ${SOURCE_DIR_REL}/MeshLib
+    ${GUI_SOURCE_DIR_REL}/Base
+    ${GUI_SOURCE_DIR_REL}/VtkVis
+    ${CMAKE_CURRENT_SOURCE_DIR}
+    ${CMAKE_CURRENT_SOURCE_DIR}/DiagramView
+    ${CMAKE_CURRENT_SOURCE_DIR}/StratView
+)
 
 if(GEOTIFF_FOUND)
     include_directories(${GEOTIFF_INCLUDE_DIRS})
@@ -125,21 +133,19 @@ endif() # GEOTIFF_FOUND
 
 ogs_add_library(QtDataView STATIC ${SOURCES} ${HEADERS} ${UIS})
 
-target_link_libraries(QtDataView
-                      PUBLIC GeoLib
-                             MeshGeoToolsLib
-                             MeshLib
-                             QtBase
-                             VtkVis
-                      PRIVATE BaseLib
-                              MathLib
-                              ApplicationsFileIO
-                              QtDiagramView
-                              QtStratView
-                              DataHolderLib
-                              spdlog::spdlog
-                              Qt5::Core
-                              Qt5::Gui)
+target_link_libraries(
+    QtDataView
+    PUBLIC GeoLib MeshGeoToolsLib MeshLib QtBase VtkVis
+    PRIVATE BaseLib
+            MathLib
+            ApplicationsFileIO
+            QtDiagramView
+            QtStratView
+            DataHolderLib
+            spdlog::spdlog
+            Qt5::Core
+            Qt5::Gui
+)
 
 if(GEOTIFF_FOUND)
     target_compile_definitions(QtDataView PRIVATE GEOTIFF_FOUND)
diff --git a/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt b/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt
index 7264261894395b2a491efc67f073a3bfec1a5476..00f0cb959c4bc70934b36d321b91c7f6f8d4fa35 100644
--- a/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt
+++ b/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt
@@ -5,7 +5,8 @@ set(SOURCES
     DiagramScene.cpp
     DiagramView.cpp
     QArrow.cpp
-    QGraphicsGrid.cpp)
+    QGraphicsGrid.cpp
+)
 
 set(HEADERS
     DiagramList.h
@@ -15,29 +16,26 @@ set(HEADERS
     DiagramScene.h
     DetailWindow.h
     DiagramPrefsDialog.h
-    DiagramView.h)
+    DiagramView.h
+)
 
 set(SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../../../..)
 set(GUI_SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../..)
-include_directories(${SOURCE_DIR_REL}/BaseLib
-                    ${SOURCE_DIR_REL}/GeoLib
-                    ${SOURCE_DIR_REL}/MathLib
-                    ${CMAKE_CURRENT_SOURCE_DIR}
-                    ${GUI_SOURCE_DIR_REL}/Base
-                    ${GUI_SOURCE_DIR_REL}/DataView)
+include_directories(
+    ${SOURCE_DIR_REL}/BaseLib ${SOURCE_DIR_REL}/GeoLib
+    ${SOURCE_DIR_REL}/MathLib ${CMAKE_CURRENT_SOURCE_DIR}
+    ${GUI_SOURCE_DIR_REL}/Base ${GUI_SOURCE_DIR_REL}/DataView
+)
 
 file(GLOB_RECURSE UIS CONFIGURE_DEPENDS *.ui)
 source_group("UI Files" FILES ${UIS})
 
 ogs_add_library(QtDiagramView ${SOURCES} ${HEADERS} ${UIS})
 
-target_link_libraries(QtDiagramView
-                      PRIVATE BaseLib
-                              GeoLib
-                              QtBase
-                              DataHolderLib
-                              Qt5::Gui
-                              spdlog::spdlog)
+target_link_libraries(
+    QtDiagramView PRIVATE BaseLib GeoLib QtBase DataHolderLib Qt5::Gui
+                          spdlog::spdlog
+)
 
 add_autogen_include(QtDiagramView)
 
diff --git a/Applications/DataExplorer/DataView/StratView/CMakeLists.txt b/Applications/DataExplorer/DataView/StratView/CMakeLists.txt
index 348af52b269827fc2accf914733d4ae43364cdc4..e7543b2cefb9187df8f48e6109372851bd85c15c 100644
--- a/Applications/DataExplorer/DataView/StratView/CMakeLists.txt
+++ b/Applications/DataExplorer/DataView/StratView/CMakeLists.txt
@@ -4,23 +4,20 @@ set(HEADERS StratBar.h StratScene.h StratView.h StratWindow.h)
 
 set(SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../../../..)
 set(GUI_SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../..)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}
-                    ${SOURCE_DIR_REL}/BaseLib
-                    ${SOURCE_DIR_REL}/GeoLib
-                    ${SOURCE_DIR_REL}/MathLib
-                    ${GUI_SOURCE_DIR_REL}/Base)
+include_directories(
+    ${CMAKE_CURRENT_SOURCE_DIR} ${SOURCE_DIR_REL}/BaseLib
+    ${SOURCE_DIR_REL}/GeoLib ${SOURCE_DIR_REL}/MathLib
+    ${GUI_SOURCE_DIR_REL}/Base
+)
 
 file(GLOB_RECURSE UI_FILES CONFIGURE_DEPENDS *.ui)
 source_group("UI Files" FILES ${UI_FILES})
 
 ogs_add_library(QtStratView ${SOURCES} ${HEADERS} ${UIS})
 
-target_link_libraries(QtStratView
-                      PRIVATE BaseLib
-                              GeoLib
-                              DataHolderLib
-                              QtBase
-                              Qt5::Gui)
+target_link_libraries(
+    QtStratView PRIVATE BaseLib GeoLib DataHolderLib QtBase Qt5::Gui
+)
 add_autogen_include(QtStratView)
 
 set_property(TARGET QtStratView PROPERTY FOLDER "DataExplorer")
diff --git a/Applications/DataExplorer/VtkVis/CMakeLists.txt b/Applications/DataExplorer/VtkVis/CMakeLists.txt
index 7d7d42ad4d5da697faee33107f01057b2274d9e1..5fe7c6cd2abd55f10ec10f0fc1b206cdd447c929 100644
--- a/Applications/DataExplorer/VtkVis/CMakeLists.txt
+++ b/Applications/DataExplorer/VtkVis/CMakeLists.txt
@@ -46,7 +46,8 @@ set(SOURCES
     VtkVisPipelineItem.cpp
     VtkVisPipelineView.cpp
     VtkVisPointSetItem.cpp
-    VtkVisTabWidget.cpp)
+    VtkVisTabWidget.cpp
+)
 
 set(HEADERS
     MeshFromRasterDialog.h
@@ -96,11 +97,12 @@ set(HEADERS
     VtkVisPipelineItem.h
     VtkVisPipelineView.h
     VtkVisPointSetItem.h
-    VtkVisTabWidget.h)
+    VtkVisTabWidget.h
+)
 
-set(UIS
-    MeshFromRaster.ui VisPrefs.ui VisualizationWidgetBase.ui
-    VtkAddFilterDialogBase.ui VtkVisTabWidgetBase.ui)
+set(UIS MeshFromRaster.ui VisPrefs.ui VisualizationWidgetBase.ui
+        VtkAddFilterDialogBase.ui VtkVisTabWidgetBase.ui
+)
 
 if(OGS_USE_NETCDF)
     set(SOURCES ${SOURCES} NetCdfConfigureDialog.h NetCdfConfigureDialog.cpp)
@@ -117,16 +119,18 @@ source_group("UI Files" FILES ${UIS})
 
 set(SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/../../..)
 set(GUI_SOURCE_DIR_REL ${CMAKE_CURRENT_SOURCE_DIR}/..)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}
-                    ${CMAKE_CURRENT_BINARY_DIR}
-                    ${SOURCE_DIR_REL}/Applications/FileIO
-                    ${SOURCE_DIR_REL}/BaseLib
-                    ${SOURCE_DIR_REL}/GeoLib
-                    ${SOURCE_DIR_REL}/MathLib
-                    ${SOURCE_DIR_REL}/MeshLib
-                    ${GUI_SOURCE_DIR_REL}/Base
-                    ${GUI_SOURCE_DIR_REL}/DataView
-                    ${GUI_SOURCE_DIR_REL}/VtkModules/Qt)
+include_directories(
+    ${CMAKE_CURRENT_SOURCE_DIR}
+    ${CMAKE_CURRENT_BINARY_DIR}
+    ${SOURCE_DIR_REL}/Applications/FileIO
+    ${SOURCE_DIR_REL}/BaseLib
+    ${SOURCE_DIR_REL}/GeoLib
+    ${SOURCE_DIR_REL}/MathLib
+    ${SOURCE_DIR_REL}/MeshLib
+    ${GUI_SOURCE_DIR_REL}/Base
+    ${GUI_SOURCE_DIR_REL}/DataView
+    ${GUI_SOURCE_DIR_REL}/VtkModules/Qt
+)
 
 ogs_add_library(VtkVis STATIC ${SOURCES} ${HEADERS} ${UIS})
 
@@ -137,24 +141,23 @@ if(GEOTIFF_FOUND)
 endif() # GEOTIFF_FOUND
 
 target_link_libraries(
-    VtkVis
-    PUBLIC BaseLib GeoLib MeshLib DataHolderLib QtBase
-    PRIVATE MathLib ApplicationsFileIO Qt5::Gui spdlog::spdlog)
+    VtkVis PUBLIC BaseLib GeoLib MeshLib DataHolderLib QtBase
+    PRIVATE MathLib ApplicationsFileIO Qt5::Gui spdlog::spdlog
+)
 
 if(OGS_USE_NETCDF)
-    target_link_libraries(VtkVis
-                          PUBLIC ${NETCDF_LIBRARIES_CXX}
-                                 ${NETCDF_LIBRARIES_C}
-                                 ${HDF5_HL_LIBRARIES}
-                                 ${HDF5_LIBRARIES})
+    target_link_libraries(
+        VtkVis PUBLIC ${NETCDF_LIBRARIES_CXX} ${NETCDF_LIBRARIES_C}
+                      ${HDF5_HL_LIBRARIES} ${HDF5_LIBRARIES}
+    )
     if(OGS_USE_CONAN AND MSVC)
         target_link_libraries(VtkVis PUBLIC ${CONAN_LIBS})
     endif()
     # Workaround for system installed VTK (tested on arch)
     if(NOT OGS_USE_CONAN)
-        target_include_directories(VtkVis SYSTEM
-                                   PUBLIC ${NETCDF_INCLUDES_C}
-                                          ${NETCDF_INCLUDES_CXX})
+        target_include_directories(
+            VtkVis SYSTEM PUBLIC ${NETCDF_INCLUDES_C} ${NETCDF_INCLUDES_CXX}
+        )
     endif()
 endif()
 
diff --git a/Applications/DataHolderLib/CMakeLists.txt b/Applications/DataHolderLib/CMakeLists.txt
index 89f3f0303f63d74b60bce1bda38d8a7e0f899ea3..a902c9c8d350cca1dd51e562abda58cca9e3b27c 100644
--- a/Applications/DataHolderLib/CMakeLists.txt
+++ b/Applications/DataHolderLib/CMakeLists.txt
@@ -5,6 +5,5 @@ get_source_files(SOURCES_DataHolderLib)
 ogs_add_library(DataHolderLib ${SOURCES_DataHolderLib})
 
 target_link_libraries(
-    DataHolderLib
-    PUBLIC GeoLib MeshLib
-    PRIVATE BaseLib MathLib spdlog::spdlog)
+    DataHolderLib PUBLIC GeoLib MeshLib PRIVATE BaseLib MathLib spdlog::spdlog
+)
diff --git a/Applications/FileIO/CMakeLists.txt b/Applications/FileIO/CMakeLists.txt
index 4372417514158dab7ba8419e650384254d2669db..1c1b53a79274a7b2563633dc5641672e0a60401a 100644
--- a/Applications/FileIO/CMakeLists.txt
+++ b/Applications/FileIO/CMakeLists.txt
@@ -22,24 +22,31 @@ endif()
 
 # Create the library
 ogs_add_library(ApplicationsFileIO ${SOURCES})
-target_link_libraries(ApplicationsFileIO
-                      PUBLIC BaseLib
-                             DataHolderLib
-                             GeoLib
-                             MathLib
-                             # Needed for the XmlPrjInterface, which links the DE/Base/OGSError.h.
-                             $<$<BOOL:${OGS_BUILD_GUI}>:QtBase>
-                             $<$<TARGET_EXISTS:shp>:shp>
-                             $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface>
-                      PRIVATE MeshLib GitInfoLib std::filesystem spdlog::spdlog
+target_link_libraries(
+    ApplicationsFileIO
+    PUBLIC BaseLib
+           DataHolderLib
+           GeoLib
+           MathLib
+           # Needed for the XmlPrjInterface, which links the DE/Base/OGSError.h.
+           $<$<BOOL:${OGS_BUILD_GUI}>:QtBase>
+           $<$<TARGET_EXISTS:shp>:shp>
+           $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface>
+    PRIVATE MeshLib GitInfoLib std::filesystem spdlog::spdlog
 )
 
-configure_file(XmlIO/OpenGeoSysCND.xsd
-               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysCND.xsd COPYONLY)
-configure_file(XmlIO/OpenGeoSysNum.xsd
-               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysNum.xsd COPYONLY)
-configure_file(XmlIO/OpenGeoSysProject.xsd
-               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysProject.xsd COPYONLY)
+configure_file(
+    XmlIO/OpenGeoSysCND.xsd ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysCND.xsd
+    COPYONLY
+)
+configure_file(
+    XmlIO/OpenGeoSysNum.xsd ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysNum.xsd
+    COPYONLY
+)
+configure_file(
+    XmlIO/OpenGeoSysProject.xsd
+    ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysProject.xsd COPYONLY
+)
 install(FILES XmlIO/OpenGeoSysCND.xsd XmlIO/OpenGeoSysNum.xsd
-              XmlIO/OpenGeoSysProject.xsd
-        DESTINATION bin)
+              XmlIO/OpenGeoSysProject.xsd DESTINATION bin
+)
diff --git a/Applications/FileIO/GocadIO/CMakeLists.txt b/Applications/FileIO/GocadIO/CMakeLists.txt
index a5d9d3df2e5ab3244a727ad11138e441c49f6ecb..82f8dd1bce426741eba253a52eccec1f4156c4d9 100644
--- a/Applications/FileIO/GocadIO/CMakeLists.txt
+++ b/Applications/FileIO/GocadIO/CMakeLists.txt
@@ -1,2 +1,4 @@
-include_directories(${CMAKE_SOURCE_DIR}/BaseLib ${CMAKE_SOURCE_DIR}/FileIO
-                    ${CMAKE_SOURCE_DIR}/GeoLib ${CMAKE_SOURCE_DIR}/MeshLib)
+include_directories(
+    ${CMAKE_SOURCE_DIR}/BaseLib ${CMAKE_SOURCE_DIR}/FileIO
+    ${CMAKE_SOURCE_DIR}/GeoLib ${CMAKE_SOURCE_DIR}/MeshLib
+)
diff --git a/Applications/InSituLib/CMakeLists.txt b/Applications/InSituLib/CMakeLists.txt
index e42084487e225ae00c98364ba8f994f31ae05641..788fb02ddd913e31bf0fa70d303355708654984d 100644
--- a/Applications/InSituLib/CMakeLists.txt
+++ b/Applications/InSituLib/CMakeLists.txt
@@ -7,12 +7,9 @@ if(BUILD_SHARED_LIBS)
     install(TARGETS InSituLib LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
 endif()
 
-target_link_libraries(InSituLib
-    PUBLIC
-        BaseLib
-    INTERFACE
-        VTK::PythonUsed
-    PRIVATE
-        MeshLib
-        ParaView::PythonCatalyst
-        VTK::CommonDataModel)
+target_link_libraries(
+    InSituLib
+    PUBLIC BaseLib
+    INTERFACE VTK::PythonUsed
+    PRIVATE MeshLib ParaView::PythonCatalyst VTK::CommonDataModel
+)
diff --git a/Applications/Utils/MeshEdit/CMakeLists.txt b/Applications/Utils/MeshEdit/CMakeLists.txt
index ae507cab6c9e33971212e7df4c2390793fc374c3..3f5fb9247450a9c30ff8eb0fb15edc60a4ce8b87 100644
--- a/Applications/Utils/MeshEdit/CMakeLists.txt
+++ b/Applications/Utils/MeshEdit/CMakeLists.txt
@@ -22,14 +22,18 @@ set(TOOLS
     ResetPropertiesInPolygonalRegion
     reviseMesh
     swapNodeCoordinateAxes
-    Vtu2Grid)
+    Vtu2Grid
+)
 
 if(OGS_BUILD_GUI)
-    add_executable(RemoveGhostData
+    add_executable(
+        RemoveGhostData
         RemoveGhostData.cpp
-        ${PROJECT_SOURCE_DIR}/ThirdParty/paraview/vtkCleanUnstructuredGrid.cpp)
-    target_include_directories(RemoveGhostData
-        PRIVATE ${PROJECT_SOURCE_DIR}/ThirdParty/paraview)
+        ${PROJECT_SOURCE_DIR}/ThirdParty/paraview/vtkCleanUnstructuredGrid.cpp
+    )
+    target_include_directories(
+        RemoveGhostData PRIVATE ${PROJECT_SOURCE_DIR}/ThirdParty/paraview
+    )
     target_link_libraries(RemoveGhostData GitInfoLib MeshLib tclap)
     set_target_properties(RemoveGhostData PROPERTIES FOLDER Utilities)
     install(TARGETS RemoveGhostData RUNTIME DESTINATION bin)
@@ -42,10 +46,12 @@ endforeach()
 set_target_properties(${TOOLS} PROPERTIES FOLDER Utilities)
 install(TARGETS ${TOOLS} RUNTIME DESTINATION bin)
 
-target_link_libraries(appendLinesAlongPolyline MeshGeoToolsLib
-                      ApplicationsFileIO)
-target_link_libraries(CreateBoundaryConditionsAlongPolylines MeshGeoToolsLib
-                      ApplicationsFileIO)
+target_link_libraries(
+    appendLinesAlongPolyline MeshGeoToolsLib ApplicationsFileIO
+)
+target_link_libraries(
+    CreateBoundaryConditionsAlongPolylines MeshGeoToolsLib ApplicationsFileIO
+)
 target_link_libraries(createLayeredMeshFromRasters ApplicationsFileIO)
 target_link_libraries(MapGeometryToMeshSurface MeshGeoToolsLib)
 target_link_libraries(ResetPropertiesInPolygonalRegion ApplicationsFileIO)
diff --git a/Applications/Utils/OGSFileConverter/CMakeLists.txt b/Applications/Utils/OGSFileConverter/CMakeLists.txt
index 20eac9d48b046344ab0c3146a2da6d935a6adf4e..f1ab01bbc1e0faa4d6f4d17df6592eb79088ea51 100644
--- a/Applications/Utils/OGSFileConverter/CMakeLists.txt
+++ b/Applications/Utils/OGSFileConverter/CMakeLists.txt
@@ -1,19 +1,25 @@
-ogs_add_library(OGSFileConverterLib FileListDialog.h OGSFileConverter.h
-                                FileListDialog.cpp OGSFileConverter.cpp)
-target_link_libraries(OGSFileConverterLib
-                      PUBLIC ApplicationsFileIO MathLib QtBase ${VTK_LIBRARIES}
-                      INTERFACE MeshLib)
+ogs_add_library(
+    OGSFileConverterLib FileListDialog.h OGSFileConverter.h FileListDialog.cpp
+    OGSFileConverter.cpp
+)
+target_link_libraries(
+    OGSFileConverterLib PUBLIC ApplicationsFileIO MathLib QtBase
+                               ${VTK_LIBRARIES} INTERFACE MeshLib
+)
 
 set_target_properties(OGSFileConverterLib PROPERTIES AUTOMOC TRUE AUTOUIC TRUE)
 
 add_executable(OGSFileConverter main.cpp)
 
-target_link_libraries(OGSFileConverter
-                      PUBLIC ApplicationsFileIO GitInfoLib OGSFileConverterLib tclap)
+target_link_libraries(
+    OGSFileConverter PUBLIC ApplicationsFileIO GitInfoLib OGSFileConverterLib
+                            tclap
+)
 
 add_autogen_include(OGSFileConverterLib)
 
-set_target_properties(OGSFileConverter OGSFileConverterLib
-                      PROPERTIES FOLDER "Utilities")
+set_target_properties(
+    OGSFileConverter OGSFileConverterLib PROPERTIES FOLDER "Utilities"
+)
 
 install(TARGETS OGSFileConverter RUNTIME DESTINATION bin)
diff --git a/Applications/Utils/PostProcessing/CMakeLists.txt b/Applications/Utils/PostProcessing/CMakeLists.txt
index c3bd2f990e0789585ca9577940db24f24a6a7b0c..0a10a65b9c8780186b6c57ed8f16b377dea61a8d 100644
--- a/Applications/Utils/PostProcessing/CMakeLists.txt
+++ b/Applications/Utils/PostProcessing/CMakeLists.txt
@@ -7,7 +7,16 @@ endif()
 
 if(OGS_BUILD_GUI)
     add_executable(Raster2PointCloud Raster2PointCloud.cpp)
-    target_link_libraries(Raster2PointCloud GitInfoLib ApplicationsFileIO BaseLib GeoLib VtkVis QtDataView tclap)
+    target_link_libraries(
+        Raster2PointCloud
+        GitInfoLib
+        ApplicationsFileIO
+        BaseLib
+        GeoLib
+        VtkVis
+        QtDataView
+        tclap
+    )
     set_target_properties(Raster2PointCloud PROPERTIES FOLDER Utilities)
     install(TARGETS Raster2PointCloud RUNTIME DESTINATION bin)
 endif()
diff --git a/Applications/Utils/SWMMConverter/CMakeLists.txt b/Applications/Utils/SWMMConverter/CMakeLists.txt
index 1d03b716ace2c5cc10b99412a7d79d64b03191c7..ebdc03094130b81cebe06d14e946279e2ffe8a6c 100644
--- a/Applications/Utils/SWMMConverter/CMakeLists.txt
+++ b/Applications/Utils/SWMMConverter/CMakeLists.txt
@@ -1,11 +1,12 @@
 add_executable(SWMMConverter SWMMConverter.cpp)
-target_link_libraries(SWMMConverter
-                      ApplicationsFileIO
-                      GeoLib
-                      GitInfoLib
-                      MeshLib
-                      SwmmInterface
-                      tclap
+target_link_libraries(
+    SWMMConverter
+    ApplicationsFileIO
+    GeoLib
+    GitInfoLib
+    MeshLib
+    SwmmInterface
+    tclap
 )
 include_directories(${PROJECT_SOURCE_DIR}/Applications/FileIO)
 set_target_properties(SWMMConverter PROPERTIES FOLDER Utilities)
diff --git a/BaseLib/CMakeLists.txt b/BaseLib/CMakeLists.txt
index 80ce0aaf2c619114c97bb34e1f627edff5b8451b..6eb7030eebe3020e43cc5513c42ac07f91c9a534 100644
--- a/BaseLib/CMakeLists.txt
+++ b/BaseLib/CMakeLists.txt
@@ -8,15 +8,17 @@ endif()
 # Create the library
 ogs_add_library(BaseLib ${SOURCES})
 
-target_link_libraries(BaseLib PUBLIC Boost::boost
-                                     spdlog::spdlog
-                                     std::filesystem
-                                     $<$<BOOL:${MSVC}>:WinMM> # needed for timeGetTime
-                                     $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml>
-                                     $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns>
+target_link_libraries(
+    BaseLib
+    PUBLIC Boost::boost
+           spdlog::spdlog
+           std::filesystem
+           $<$<BOOL:${MSVC}>:WinMM> # needed for timeGetTime
+           $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml>
+           $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns>
 )
 
-target_compile_definitions(BaseLib
-    PUBLIC $<$<BOOL:${OGS_FATAL_ABORT}>:OGS_FATAL_ABORT>
+target_compile_definitions(
+    BaseLib PUBLIC $<$<BOOL:${OGS_FATAL_ABORT}>:OGS_FATAL_ABORT>
     PRIVATE $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
 )
diff --git a/CMakeLists.txt b/CMakeLists.txt
index eef1d1417227bbf8fa7754977521c3384ce25251..f2326ba1e0a09d9e28e8fdd239fb3eb9c48e2194 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,26 +21,32 @@ include(CTest)
 set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
 option(BUILD_SHARED_LIBS "Create shared libraries?" OFF)
 option(OGS_BUILD_CLI "Should the OGS simulator be built?" ON)
-set(CMAKE_LIBRARY_SEARCH_PATH
-    ""
+set(CMAKE_LIBRARY_SEARCH_PATH ""
     CACHE PATH
-          "Additional library installation path, e.g. /opt/local or C:/libs")
+          "Additional library installation path, e.g. /opt/local or C:/libs"
+)
 set(OGS_CPU_ARCHITECTURE "native" CACHE STRING "Processor architecture, \
-    defaults to native (*nix) / blend (MSVC).")
+    defaults to native (*nix) / blend (MSVC)."
+)
 option(OGS_ENABLE_AVX2 "Enable the use of AVX2 instructions" OFF)
 option(OGS_USE_CONAN "Should Conan package manager be used?" ON)
 set(OGS_CONAN_BUILD "missing" CACHE STRING "Possible values: all, missing, \
-    never or list of libs to build")
+    never or list of libs to build"
+)
 if(WIN32)
     option(OGS_DISABLE_CLCACHE "Disables clcache compiler cache." OFF)
 else()
     option(OGS_DISABLE_CCACHE "Disables ccache compiler cache." OFF)
 endif()
 if(${CMAKE_VERSION} VERSION_GREATER_EQUAL 3.16)
-    option(OGS_USE_UNITY_BUILDS "Enables Unity builds for faster compilation." ON)
+    option(OGS_USE_UNITY_BUILDS "Enables Unity builds for faster compilation."
+           ON
+    )
 endif()
 option(OGS_USE_PYTHON "Interface with Python" ON)
-option(OGS_USE_POETRY "Enables automatic Python virtual environment handling with poetry." ON)
+option(OGS_USE_POETRY
+       "Enables automatic Python virtual environment handling with poetry." ON
+)
 if(WIN32)
     option(OGS_BUILD_SWMM "Should the SWMM interface be built?" ON)
 endif()
@@ -50,9 +56,9 @@ endif()
 
 # Third-party libraries, names come from Conan package names
 foreach(lib vtk qt petsc tfel)
-    set(OGS_LIB_${lib}
-        "Default"
-        CACHE STRING "Which ${LIB} library should be used?")
+    set(OGS_LIB_${lib} "Default" CACHE STRING
+                                       "Which ${LIB} library should be used?"
+    )
     set_property(CACHE OGS_LIB_${lib} PROPERTY STRINGS "Default" "System")
 endforeach()
 
@@ -88,7 +94,8 @@ include(CppCheck)
 # Profiling
 if((CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_GNUCC) AND GPROF_PATH)
     option(OGS_PROFILE
-           "Enables compiling with flags set for profiling with gprof." OFF)
+           "Enables compiling with flags set for profiling with gprof." OFF
+    )
 endif() # GCC AND GPROF_PATH
 
 option(OGS_BUILD_GUI "Should the Data Explorer be built?" OFF)
@@ -111,22 +118,26 @@ option(EIGEN_NO_DEBUG "Disables Eigen's assertions" OFF)
 # to take a look at https://github.com/ufz/ogs/issues/1881.
 option(EIGEN_DONT_VECTORIZE "Disables explicit vectorization when defined." ON)
 
-set(OGS_EIGEN_DYNAMIC_SHAPE_MATRICES
-    "Default"
-    CACHE STRING "Use dynamically allocated shape matrices")
-set_property(CACHE OGS_EIGEN_DYNAMIC_SHAPE_MATRICES
-             PROPERTY STRINGS "Default" "ON" "OFF")
+set(OGS_EIGEN_DYNAMIC_SHAPE_MATRICES "Default"
+    CACHE STRING "Use dynamically allocated shape matrices"
+)
+set_property(
+    CACHE OGS_EIGEN_DYNAMIC_SHAPE_MATRICES PROPERTY STRINGS "Default" "ON"
+                                                    "OFF"
+)
 
 if(OGS_EIGEN_DYNAMIC_SHAPE_MATRICES STREQUAL "Default")
-    if(CMAKE_BUILD_TYPE STREQUAL "Release"
-       OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
+    if(CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL
+                                              "RelWithDebInfo"
+    )
         set(OGS_EIGEN_DYNAMIC_SHAPE_MATRICES_INTERNAL OFF)
     else()
         set(OGS_EIGEN_DYNAMIC_SHAPE_MATRICES_INTERNAL ON)
     endif()
 else()
     set(OGS_EIGEN_DYNAMIC_SHAPE_MATRICES_INTERNAL
-        ${OGS_EIGEN_DYNAMIC_SHAPE_MATRICES})
+        ${OGS_EIGEN_DYNAMIC_SHAPE_MATRICES}
+    )
 endif()
 # Eigen End
 
@@ -149,31 +160,37 @@ endif()
 option(OGS_COVERAGE "Enables code coverage measurements with gcov/lcov." OFF)
 
 # Options controlling which FEM elements will be compiled
-set(OGS_MAX_ELEMENT_DIM
-    3
-    CACHE STRING "Maximum dimension of FEM elements to be built.")
-set(OGS_MAX_ELEMENT_ORDER
-    2
-    CACHE STRING "Maximum order of FEM elements to be built.")
+set(OGS_MAX_ELEMENT_DIM 3
+    CACHE STRING "Maximum dimension of FEM elements to be built."
+)
+set(OGS_MAX_ELEMENT_ORDER 2 CACHE STRING
+                                  "Maximum order of FEM elements to be built."
+)
 option(OGS_ENABLE_ELEMENT_SIMPLEX
-       "Build FEM elements for simplices (triangles, tetrahedra)." ON)
+       "Build FEM elements for simplices (triangles, tetrahedra)." ON
+)
 option(OGS_ENABLE_ELEMENT_CUBOID
-       "Build FEM elements for cuboids (quads, hexahedra)." ON)
+       "Build FEM elements for cuboids (quads, hexahedra)." ON
+)
 option(OGS_ENABLE_ELEMENT_PRISM "Build FEM elements for prisms." ON)
 option(OGS_ENABLE_ELEMENT_PYRAMID "Build FEM elements for pyramids." ON)
 if(NOT OGS_MAX_ELEMENT_DIM MATCHES "^[0-3]$")
-    message(FATAL_ERROR "OGS_MAX_ELEMENT_DIM must be an integer between 0 and 3.")
+    message(
+        FATAL_ERROR "OGS_MAX_ELEMENT_DIM must be an integer between 0 and 3."
+    )
 endif()
 if(NOT OGS_MAX_ELEMENT_ORDER MATCHES "^[0-9]$")
     message(FATAL_ERROR "OGS_MAX_ELEMENT_ORDER must be an integer.")
 endif()
 
 option(OGS_CHECK_HEADER_COMPILATION "Check header for standalone compilation."
-       OFF)
+       OFF
+)
 
 option(OGS_USE_MFRONT
        "Enable solid material models by MFront (https://tfel.sourceforge.net)"
-       OFF)
+       OFF
+)
 # ---- Definitions ----
 if(OGS_USE_LIS)
     include_directories(SYSTEM ${LIS_INCLUDE_DIR})
@@ -225,7 +242,8 @@ add_subdirectory(MeshGeoToolsLib)
 add_subdirectory(NumLib)
 
 if(OGS_BUILD_PROCESS_ComponentTransport
-   OR OGS_BUILD_PROCESS_RichardsComponentTransport)
+   OR OGS_BUILD_PROCESS_RichardsComponentTransport
+)
     add_subdirectory(ChemistryLib)
 endif()
 
diff --git a/ChemistryLib/CMakeLists.txt b/ChemistryLib/CMakeLists.txt
index 6036f447944b655176364c2fa26220e51ce244f3..1cfb5a3464e0bff0851b6f54209d981b9efbd789 100644
--- a/ChemistryLib/CMakeLists.txt
+++ b/ChemistryLib/CMakeLists.txt
@@ -7,10 +7,12 @@ append_source_files(SOURCES Common)
 # Create the library
 ogs_add_library(ChemistryLib ${SOURCES})
 
-target_link_libraries(ChemistryLib PUBLIC iphreeqc PRIVATE NumLib spdlog::spdlog)
+target_link_libraries(
+    ChemistryLib PUBLIC iphreeqc PRIVATE NumLib spdlog::spdlog
+)
 
 # See https://github.com/ufz/ogs/pull/2982#issuecomment-641086788
-set_source_files_properties(PhreeqcIO.cpp
-    CreateChemicalSolverInterface.cpp
-    PhreeqcKernel.cpp
-    PROPERTIES SKIP_UNITY_BUILD_INCLUSION TRUE)
+set_source_files_properties(
+    PhreeqcIO.cpp CreateChemicalSolverInterface.cpp PhreeqcKernel.cpp
+    PROPERTIES SKIP_UNITY_BUILD_INCLUSION TRUE
+)
diff --git a/GeoLib/CMakeLists.txt b/GeoLib/CMakeLists.txt
index 7aff86e825b8a82f427391b8e2e1e6310d18362a..a86f60bcc7d1d09425ea9d278f55c97d2d306ad6 100644
--- a/GeoLib/CMakeLists.txt
+++ b/GeoLib/CMakeLists.txt
@@ -12,21 +12,22 @@ endif()
 # Create the library
 ogs_add_library(GeoLib ${SOURCES})
 
-target_link_libraries(GeoLib
-    PUBLIC
-        BaseLib
-        MathLib
-        $<$<BOOL:${OGS_BUILD_GUI}>:rapidxml>
-        $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml>
-        $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns>
-    PRIVATE
-        tet
-        spdlog::spdlog
+target_link_libraries(
+    GeoLib
+    PUBLIC BaseLib MathLib $<$<BOOL:${OGS_BUILD_GUI}>:rapidxml>
+           $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml>
+           $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns>
+    PRIVATE tet spdlog::spdlog
 )
 
-configure_file(IO/XmlIO/OpenGeoSysGLI.xsd
-               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysGLI.xsd COPYONLY)
-configure_file(IO/XmlIO/OpenGeoSysSTN.xsd
-               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysSTN.xsd COPYONLY)
+configure_file(
+    IO/XmlIO/OpenGeoSysGLI.xsd
+    ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysGLI.xsd COPYONLY
+)
+configure_file(
+    IO/XmlIO/OpenGeoSysSTN.xsd
+    ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/OpenGeoSysSTN.xsd COPYONLY
+)
 install(FILES IO/XmlIO/OpenGeoSysGLI.xsd IO/XmlIO/OpenGeoSysSTN.xsd
-        DESTINATION bin)
+        DESTINATION bin
+)
diff --git a/InfoLib/CMakeLists.txt b/InfoLib/CMakeLists.txt
index 8930756290fccaf263375b09c6e70f970509bd15..c969ed7358d5c4a5a0815b8b78c95ced28a66535 100644
--- a/InfoLib/CMakeLists.txt
+++ b/InfoLib/CMakeLists.txt
@@ -1,9 +1,12 @@
 foreach(lib Git CMake Test)
-    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${lib}Info.cpp.in
-                   ${CMAKE_CURRENT_BINARY_DIR}/${lib}Info.cpp @ONLY)
+    configure_file(
+        ${CMAKE_CURRENT_SOURCE_DIR}/${lib}Info.cpp.in
+        ${CMAKE_CURRENT_BINARY_DIR}/${lib}Info.cpp @ONLY
+    )
 
-    ogs_add_library(${lib}InfoLib ${CMAKE_CURRENT_BINARY_DIR}/${lib}Info.cpp
-                              ${lib}Info.h)
+    ogs_add_library(
+        ${lib}InfoLib ${CMAKE_CURRENT_BINARY_DIR}/${lib}Info.cpp ${lib}Info.h
+    )
 
     target_include_directories(${lib}InfoLib PUBLIC ${CMAKE_CURRENT_BINARY_DIR})
 endforeach(lib)
diff --git a/MaterialLib/CMakeLists.txt b/MaterialLib/CMakeLists.txt
index 60180ea3c90322685508e2370683fa9e2a117386..bffc14abff53cf1ca90a4991dfb6e681552ba720 100644
--- a/MaterialLib/CMakeLists.txt
+++ b/MaterialLib/CMakeLists.txt
@@ -29,8 +29,9 @@ append_source_files(SOURCES PorousMedium/Porosity)
 append_source_files(SOURCES PorousMedium/Storage)
 append_source_files(SOURCES PorousMedium/Permeability)
 append_source_files(SOURCES PorousMedium/UnsaturatedProperty/CapillaryPressure)
-append_source_files(SOURCES
-                    PorousMedium/UnsaturatedProperty/RelativePermeability)
+append_source_files(
+    SOURCES PorousMedium/UnsaturatedProperty/RelativePermeability
+)
 append_source_files(SOURCES TwoPhaseModels)
 
 if(OGS_USE_MFRONT)
@@ -42,12 +43,9 @@ ogs_add_library(MaterialLib ${SOURCES})
 if(OGS_USE_MFRONT)
     target_compile_definitions(MaterialLib PUBLIC OGS_USE_MFRONT)
 endif()
-target_link_libraries(MaterialLib
+target_link_libraries(
+    MaterialLib
     PUBLIC
         $<$<TARGET_EXISTS:MaterialLib_SolidModels_MFront>:MaterialLib_SolidModels_MFront>
-    PRIVATE
-        MathLib
-        MeshLib
-        ParameterLib
-        spdlog::spdlog
+    PRIVATE MathLib MeshLib ParameterLib spdlog::spdlog
 )
diff --git a/MaterialLib/SolidModels/MFront/CMakeLists.txt b/MaterialLib/SolidModels/MFront/CMakeLists.txt
index 2b71aa32cecb930a5fc6c29cd42fe3f3d2d4b89f..f17d63d48ff947b5ec010d472eda170319973f9e 100644
--- a/MaterialLib/SolidModels/MFront/CMakeLists.txt
+++ b/MaterialLib/SolidModels/MFront/CMakeLists.txt
@@ -18,25 +18,30 @@ mfront_behaviours_check_library(
     MohrCoulombAbboSloanUBI
     MohrCoulombAbboSloanUBIOrtho
     StandardElasticityBrick
-    StandardElasticityBrickOrtho)
+    StandardElasticityBrickOrtho
+)
 
 target_link_libraries(
-    MaterialLib_SolidModels_MFront
-    PUBLIC BaseLib NumLib OgsMFrontBehaviour
-    PRIVATE MathLib MeshLib spdlog::spdlog)
+    MaterialLib_SolidModels_MFront PUBLIC BaseLib NumLib OgsMFrontBehaviour
+    PRIVATE MathLib MeshLib spdlog::spdlog
+)
 
 # Disable warnings for generated OgsMFrontBehaviour
 target_compile_options(
     OgsMFrontBehaviour
     PRIVATE
         $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:GNU>>:-w>
-        $<$<CXX_COMPILER_ID:MSVC>:/W0>)
+        $<$<CXX_COMPILER_ID:MSVC>:/W0>
+)
 
-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)
+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
+)
 
 install(TARGETS MFrontGenericInterface OgsMFrontBehaviour)
diff --git a/MathLib/CMakeLists.txt b/MathLib/CMakeLists.txt
index 2882065524b34c6325ec0fb1150f7426e38d3f5e..bcfdca3cfc83e077ac69010928cff8a9f9750974 100644
--- a/MathLib/CMakeLists.txt
+++ b/MathLib/CMakeLists.txt
@@ -22,24 +22,22 @@ endif()
 
 # Create the library
 ogs_add_library(MathLib ${SOURCES})
-target_include_directories(MathLib
-    PUBLIC
-        ${CMAKE_CURRENT_BINARY_DIR}
-        $<$<BOOL:${OGS_USE_PETSC}>:${PETSC_INCLUDE_DIRS}>
+target_include_directories(
+    MathLib PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
+                   $<$<BOOL:${OGS_USE_PETSC}>:${PETSC_INCLUDE_DIRS}>
 )
 
 set_target_properties(MathLib PROPERTIES LINKER_LANGUAGE CXX)
 
-target_link_libraries(MathLib
-    PUBLIC
-        BaseLib
-        ${OpenMP_CXX_LIBRARIES}
-        $<$<TARGET_EXISTS:LAPACK::LAPACK>:LAPACK::LAPACK>
-        $<$<BOOL:${OGS_USE_LIS}>:${LIS_LIBRARIES}>
-        $<$<BOOL:${OGS_USE_CVODE}>:CVODE::CVODE>
-        Eigen3::Eigen
-    PRIVATE
-        spdlog::spdlog
+target_link_libraries(
+    MathLib
+    PUBLIC BaseLib
+           ${OpenMP_CXX_LIBRARIES}
+           $<$<TARGET_EXISTS:LAPACK::LAPACK>:LAPACK::LAPACK>
+           $<$<BOOL:${OGS_USE_LIS}>:${LIS_LIBRARIES}>
+           $<$<BOOL:${OGS_USE_CVODE}>:CVODE::CVODE>
+           Eigen3::Eigen
+    PRIVATE spdlog::spdlog
 )
 
 if(OGS_USE_PETSC)
@@ -49,11 +47,9 @@ if(OGS_USE_MKL)
     target_link_libraries(MathLib PUBLIC ${MKL_LIBRARIES})
 endif()
 
-target_compile_definitions(MathLib
-    PUBLIC
-    $<$<BOOL:${USE_LIS}>:USE_LIS>
-    $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
-    $<$<BOOL:${OGS_USE_CVODE}>:CVODE_FOUND>
-    PRIVATE
-    $<$<BOOL:${OGS_USE_MKL}>:USE_MKL>
+target_compile_definitions(
+    MathLib
+    PUBLIC $<$<BOOL:${USE_LIS}>:USE_LIS> $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
+           $<$<BOOL:${OGS_USE_CVODE}>:CVODE_FOUND>
+    PRIVATE $<$<BOOL:${OGS_USE_MKL}>:USE_MKL>
 )
diff --git a/MeshGeoToolsLib/CMakeLists.txt b/MeshGeoToolsLib/CMakeLists.txt
index fa25cf3497c3787ce28193edac7e272614cb3217..f6455befa13a47995ae6923b6ba9cf293e4f766c 100644
--- a/MeshGeoToolsLib/CMakeLists.txt
+++ b/MeshGeoToolsLib/CMakeLists.txt
@@ -4,6 +4,7 @@ get_source_files(SOURCES)
 # Create the library
 ogs_add_library(MeshGeoToolsLib ${SOURCES})
 
-target_link_libraries(MeshGeoToolsLib
-                      PUBLIC GeoLib MathLib
-                      PRIVATE BaseLib MeshLib spdlog::spdlog)
+target_link_libraries(
+    MeshGeoToolsLib PUBLIC GeoLib MathLib PRIVATE BaseLib MeshLib
+                                                  spdlog::spdlog
+)
diff --git a/MeshLib/CMakeLists.txt b/MeshLib/CMakeLists.txt
index 5ff7a1b1d3b622ca531b666d0cb979e8e95ecf19..dd5edbc21fb4af089c2e79af93951f61e9dadd69 100644
--- a/MeshLib/CMakeLists.txt
+++ b/MeshLib/CMakeLists.txt
@@ -33,20 +33,22 @@ ogs_add_library(MeshLib ${SOURCES})
 
 target_link_libraries(
     MeshLib
-    PUBLIC
-        BaseLib GeoLib GitInfoLib MathLib ${VTK_LIBRARIES}
-        $<$<TARGET_EXISTS:OgsXdmf>:OgsXdmf>
-        $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
-    PRIVATE
-        spdlog::spdlog
+    PUBLIC BaseLib
+           GeoLib
+           GitInfoLib
+           MathLib
+           ${VTK_LIBRARIES}
+           $<$<TARGET_EXISTS:OgsXdmf>:OgsXdmf>
+           $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
+    PRIVATE spdlog::spdlog
 )
 
 target_include_directories(MeshLib PUBLIC ${VTK_INCLUDE_DIRS})
 
-target_compile_definitions(MeshLib
+target_compile_definitions(
+    MeshLib
     PUBLIC
-    $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
-    $<$<AND:$<BOOL:$ENV{VTK_USE_64BIT_IDS}>,$<NOT:$<BOOL:VTK_ADDED>>>:VTK_USE_64BIT_IDS>
-    PRIVATE
-    $<$<BOOL:${OGS_USE_XDMF}>:OGS_USE_XDMF>
+        $<$<BOOL:${OGS_USE_PETSC}>:USE_PETSC>
+        $<$<AND:$<BOOL:$ENV{VTK_USE_64BIT_IDS}>,$<NOT:$<BOOL:VTK_ADDED>>>:VTK_USE_64BIT_IDS>
+    PRIVATE $<$<BOOL:${OGS_USE_XDMF}>:OGS_USE_XDMF>
 )
diff --git a/NumLib/CMakeLists.txt b/NumLib/CMakeLists.txt
index b0bcac198dc69fdc4e08eea5491c6e423033de53..0e3586107755bef08b6de12691477974ed77c7c7 100644
--- a/NumLib/CMakeLists.txt
+++ b/NumLib/CMakeLists.txt
@@ -22,6 +22,6 @@ endif()
 set_target_properties(NumLib PROPERTIES LINKER_LANGUAGE CXX)
 
 target_link_libraries(
-    NumLib
-    PUBLIC BaseLib GeoLib MathLib MeshLib
-    PRIVATE MeshGeoToolsLib spdlog::spdlog)
+    NumLib PUBLIC BaseLib GeoLib MathLib MeshLib PRIVATE MeshGeoToolsLib
+                                                         spdlog::spdlog
+)
diff --git a/ParameterLib/CMakeLists.txt b/ParameterLib/CMakeLists.txt
index 41840f991fce39b8cff8f3630648779237389f56..82aedf62e39a0c1cf76298fc578ae097c738ae6b 100644
--- a/ParameterLib/CMakeLists.txt
+++ b/ParameterLib/CMakeLists.txt
@@ -1,7 +1,6 @@
 get_source_files(SOURCES)
 ogs_add_library(ParameterLib ${SOURCES})
 
-target_link_libraries(ParameterLib
-    PUBLIC MathLib
-    PRIVATE BaseLib exprtk MeshLib spdlog::spdlog
+target_link_libraries(
+    ParameterLib PUBLIC MathLib PRIVATE BaseLib exprtk MeshLib spdlog::spdlog
 )
diff --git a/ProcessLib/BoundaryCondition/Python/CMakeLists.txt b/ProcessLib/BoundaryCondition/Python/CMakeLists.txt
index 76659c100a78ff1cf0550f3fab5cdcf790f35e92..78e34ba1c5662f0bd5da6a8067a79e9416ccfe63 100644
--- a/ProcessLib/BoundaryCondition/Python/CMakeLists.txt
+++ b/ProcessLib/BoundaryCondition/Python/CMakeLists.txt
@@ -1,34 +1,39 @@
-ogs_add_library(ProcessLibBoundaryConditionPython
-            PythonBoundaryCondition.cpp
-            PythonBoundaryCondition.h
-            PythonBoundaryConditionLocalAssembler.h
-            PythonBoundaryConditionPythonSideInterface.h
-            BHEInflowPythonBoundaryCondition.h
-            BHEInflowPythonBoundaryConditionPythonSideInterface.h)
+ogs_add_library(
+    ProcessLibBoundaryConditionPython
+    PythonBoundaryCondition.cpp
+    PythonBoundaryCondition.h
+    PythonBoundaryConditionLocalAssembler.h
+    PythonBoundaryConditionPythonSideInterface.h
+    BHEInflowPythonBoundaryCondition.h
+    BHEInflowPythonBoundaryConditionPythonSideInterface.h
+)
 
-target_compile_definitions(ProcessLibBoundaryConditionPython
-    PUBLIC
-    OGS_USE_PYTHON
-    # 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>
+target_compile_definitions(
+    ProcessLibBoundaryConditionPython
+    PUBLIC OGS_USE_PYTHON
+           # 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>
 )
 
 target_link_libraries(
-    ProcessLibBoundaryConditionPython
-    PUBLIC BaseLib MathLib MeshLib NumLib ${Python3_LIBRARIES}
-    PRIVATE pybind11::pybind11 spdlog::spdlog)
+    ProcessLibBoundaryConditionPython PUBLIC BaseLib MathLib MeshLib NumLib
+                                             ${Python3_LIBRARIES}
+    PRIVATE pybind11::pybind11 spdlog::spdlog
+)
 
 # For the embedded Python module
-ogs_add_library(ProcessLibBoundaryConditionPythonModule
-            PythonBoundaryConditionModule.cpp PythonBoundaryConditionModule.h
-            BHEInflowPythonBoundaryConditionModule.cpp
-            BHEInflowPythonBoundaryConditionModule.h)
+ogs_add_library(
+    ProcessLibBoundaryConditionPythonModule PythonBoundaryConditionModule.cpp
+    PythonBoundaryConditionModule.h BHEInflowPythonBoundaryConditionModule.cpp
+    BHEInflowPythonBoundaryConditionModule.h
+)
 
-target_link_libraries(ProcessLibBoundaryConditionPythonModule
-                      PUBLIC ProcessLibBoundaryConditionPython
-                             pybind11::pybind11)
+target_link_libraries(
+    ProcessLibBoundaryConditionPythonModule
+    PUBLIC ProcessLibBoundaryConditionPython pybind11::pybind11
+)
diff --git a/ProcessLib/HeatTransportBHE/CMakeLists.txt b/ProcessLib/HeatTransportBHE/CMakeLists.txt
index 746f01dcec3a2daae66ef55df2f620d7fb81b209..461b06769d4a1774c01abe6105cd372198d4eb8d 100644
--- a/ProcessLib/HeatTransportBHE/CMakeLists.txt
+++ b/ProcessLib/HeatTransportBHE/CMakeLists.txt
@@ -5,12 +5,10 @@ append_source_files(SOURCES LocalAssemblers)
 
 ogs_add_library(HeatTransportBHE ${SOURCES})
 
-target_link_libraries(HeatTransportBHE
-    PUBLIC
-        ProcessLib
-    PRIVATE
-    ParameterLib
-    $<$<TARGET_EXISTS:pybind11::pybind11>:pybind11::pybind11>
+target_link_libraries(
+    HeatTransportBHE PUBLIC ProcessLib
+    PRIVATE ParameterLib
+            $<$<TARGET_EXISTS:pybind11::pybind11>:pybind11::pybind11>
 )
 
 if(OGS_BUILD_TESTING)
diff --git a/ProcessLib/RichardsComponentTransport/CMakeLists.txt b/ProcessLib/RichardsComponentTransport/CMakeLists.txt
index 39a464cd941d1b8057a0f332270ddd292916e009..857f268bee056821e17dd5c650ad655b29ab6e6c 100644
--- a/ProcessLib/RichardsComponentTransport/CMakeLists.txt
+++ b/ProcessLib/RichardsComponentTransport/CMakeLists.txt
@@ -1,9 +1,9 @@
 get_source_files(SOURCES)
 
 ogs_add_library(RichardsComponentTransport ${SOURCES})
-target_link_libraries(RichardsComponentTransport
-                      PUBLIC ProcessLib
-                      PRIVATE ParameterLib)
+target_link_libraries(
+    RichardsComponentTransport PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/ProcessLib/SmallDeformationNonlocal/CMakeLists.txt b/ProcessLib/SmallDeformationNonlocal/CMakeLists.txt
index a889eb32405f7460e97ba414583cdeecc67eaf20..0c050a6d3d764c680c3d95827998945c605e4923 100644
--- a/ProcessLib/SmallDeformationNonlocal/CMakeLists.txt
+++ b/ProcessLib/SmallDeformationNonlocal/CMakeLists.txt
@@ -1,9 +1,9 @@
 get_source_files(SOURCES)
 
 ogs_add_library(SmallDeformationNonlocal ${SOURCES})
-target_link_libraries(SmallDeformationNonlocal
-                      PUBLIC ProcessLib
-                      PRIVATE ParameterLib)
+target_link_libraries(
+    SmallDeformationNonlocal PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/ProcessLib/SourceTerms/Python/CMakeLists.txt b/ProcessLib/SourceTerms/Python/CMakeLists.txt
index d09465db096f63bcee18d66e0a0674b809fc5612..578db2c25552480b5fbd613a5be446874ac0f1e5 100644
--- a/ProcessLib/SourceTerms/Python/CMakeLists.txt
+++ b/ProcessLib/SourceTerms/Python/CMakeLists.txt
@@ -1,31 +1,38 @@
-ogs_add_library(ProcessLibSourceTermPython
-                CreatePythonSourceTerm.cpp
-                CreatePythonSourceTerm.h
-                PythonSourceTerm.cpp
-                PythonSourceTerm.h
-                PythonSourceTermLocalAssembler.h
-                PythonSourceTermPythonSideInterface.h)
+ogs_add_library(
+    ProcessLibSourceTermPython
+    CreatePythonSourceTerm.cpp
+    CreatePythonSourceTerm.h
+    PythonSourceTerm.cpp
+    PythonSourceTerm.h
+    PythonSourceTermLocalAssembler.h
+    PythonSourceTermPythonSideInterface.h
+)
 
-target_compile_definitions(ProcessLibSourceTermPython
-    PUBLIC
-    OGS_USE_PYTHON
-    # 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>
+target_compile_definitions(
+    ProcessLibSourceTermPython
+    PUBLIC OGS_USE_PYTHON
+           # 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>
 )
 
 target_link_libraries(
-    ProcessLibSourceTermPython
-    PUBLIC BaseLib MathLib MeshLib NumLib ${Python3_LIBRARIES}
-    PRIVATE pybind11::pybind11 spdlog::spdlog)
+    ProcessLibSourceTermPython PUBLIC BaseLib MathLib MeshLib NumLib
+                                      ${Python3_LIBRARIES}
+    PRIVATE pybind11::pybind11 spdlog::spdlog
+)
 
 # For the embedded Python module
-ogs_add_library(ProcessLibSourceTermPythonModule PythonSourceTermModule.cpp
-                                                 PythonSourceTermModule.h)
+ogs_add_library(
+    ProcessLibSourceTermPythonModule PythonSourceTermModule.cpp
+    PythonSourceTermModule.h
+)
 
-target_link_libraries(ProcessLibSourceTermPythonModule
-                      PUBLIC ProcessLibSourceTermPython pybind11::pybind11)
+target_link_libraries(
+    ProcessLibSourceTermPythonModule PUBLIC ProcessLibSourceTermPython
+                                            pybind11::pybind11
+)
diff --git a/ProcessLib/SteadyStateDiffusion/CMakeLists.txt b/ProcessLib/SteadyStateDiffusion/CMakeLists.txt
index ffc5d1f7af91eee1737f03b1a4769ed85254499d..8f18f82215a21c166e58f736342e14e220a2822b 100644
--- a/ProcessLib/SteadyStateDiffusion/CMakeLists.txt
+++ b/ProcessLib/SteadyStateDiffusion/CMakeLists.txt
@@ -2,7 +2,8 @@ get_source_files(SOURCES)
 
 ogs_add_library(SteadyStateDiffusion ${SOURCES})
 
-target_link_libraries(SteadyStateDiffusion PUBLIC ProcessLib
-    PRIVATE ParameterLib)
+target_link_libraries(
+    SteadyStateDiffusion PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 include(Tests.cmake)
diff --git a/ProcessLib/ThermalTwoPhaseFlowWithPP/CMakeLists.txt b/ProcessLib/ThermalTwoPhaseFlowWithPP/CMakeLists.txt
index 1ce81cf428bddc5e2be27976739af6063eed6228..7e8bdb371836f02e10a4d178cfa736430006bd80 100644
--- a/ProcessLib/ThermalTwoPhaseFlowWithPP/CMakeLists.txt
+++ b/ProcessLib/ThermalTwoPhaseFlowWithPP/CMakeLists.txt
@@ -3,11 +3,12 @@ get_source_files(SOURCES)
 ogs_add_library(ThermalTwoPhaseFlowWithPP ${SOURCES})
 if(BUILD_SHARED_LIBS)
     install(TARGETS ThermalTwoPhaseFlowWithPP
-            LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+            LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+    )
 endif()
-target_link_libraries(ThermalTwoPhaseFlowWithPP
-                      PUBLIC ProcessLib
-                      PRIVATE ParameterLib)
+target_link_libraries(
+    ThermalTwoPhaseFlowWithPP PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/ProcessLib/ThermoHydroMechanics/CMakeLists.txt b/ProcessLib/ThermoHydroMechanics/CMakeLists.txt
index e17771bb65ea3f12020d237d5ffea2a1656baa9a..26927b1d69dac20d31f6c1286284cffe5f9c3de4 100644
--- a/ProcessLib/ThermoHydroMechanics/CMakeLists.txt
+++ b/ProcessLib/ThermoHydroMechanics/CMakeLists.txt
@@ -1,9 +1,9 @@
 get_source_files(SOURCES)
 
 ogs_add_library(ThermoHydroMechanics ${SOURCES})
-target_link_libraries(ThermoHydroMechanics
-                      PUBLIC ProcessLib
-                      PRIVATE ParameterLib)
+target_link_libraries(
+    ThermoHydroMechanics PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/ProcessLib/ThermoMechanicalPhaseField/CMakeLists.txt b/ProcessLib/ThermoMechanicalPhaseField/CMakeLists.txt
index 18d54925590afa7eed354f820f0d319e6ff98781..8df5f201cfaa5641ef9cda283c7e44e3afcdae84 100644
--- a/ProcessLib/ThermoMechanicalPhaseField/CMakeLists.txt
+++ b/ProcessLib/ThermoMechanicalPhaseField/CMakeLists.txt
@@ -1,9 +1,9 @@
 get_source_files(SOURCES)
 
 ogs_add_library(ThermoMechanicalPhaseField ${SOURCES})
-target_link_libraries(ThermoMechanicalPhaseField
-                      PUBLIC ProcessLib
-                      PRIVATE ParameterLib)
+target_link_libraries(
+    ThermoMechanicalPhaseField PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/ProcessLib/ThermoRichardsMechanics/CMakeLists.txt b/ProcessLib/ThermoRichardsMechanics/CMakeLists.txt
index a43e38bd48e53a8c9841fc145e9854fb95a3b97d..5f0052d87b849c72d0771f50aaf7f98321df7cc1 100644
--- a/ProcessLib/ThermoRichardsMechanics/CMakeLists.txt
+++ b/ProcessLib/ThermoRichardsMechanics/CMakeLists.txt
@@ -1,7 +1,9 @@
 get_source_files(SOURCES)
 
 ogs_add_library(ThermoRichardsMechanics ${SOURCES})
-target_link_libraries(ThermoRichardsMechanics PUBLIC ProcessLib PRIVATE ParameterLib)
+target_link_libraries(
+    ThermoRichardsMechanics PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/ProcessLib/TwoPhaseFlowWithPrho/CMakeLists.txt b/ProcessLib/TwoPhaseFlowWithPrho/CMakeLists.txt
index 211da79bcff66b2d5568a7abec863e12aacb153c..81ed6e94b342fa76dbe9594f999b19d139f5d219 100644
--- a/ProcessLib/TwoPhaseFlowWithPrho/CMakeLists.txt
+++ b/ProcessLib/TwoPhaseFlowWithPrho/CMakeLists.txt
@@ -1,9 +1,9 @@
 get_source_files(SOURCES)
 
 ogs_add_library(TwoPhaseFlowWithPrho ${SOURCES})
-target_link_libraries(TwoPhaseFlowWithPrho
-                      PUBLIC ProcessLib
-                      PRIVATE ParameterLib)
+target_link_libraries(
+    TwoPhaseFlowWithPrho PUBLIC ProcessLib PRIVATE ParameterLib
+)
 
 if(OGS_BUILD_TESTING)
     include(Tests.cmake)
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 7dc25988a37f49b87dd816629382a8682108e3e5..1c44f20cf5c2daaf3ea1d53d3dbd1b6cb8881d22 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1,4 +1,4 @@
-### ctest dependencies
+# ctest dependencies
 foreach(tool vtkdiff xdmfdiff)
     if(TARGET ${tool})
         list(APPEND test_dependencies ${tool})
@@ -7,7 +7,7 @@ endforeach()
 add_dependencies(ctest ${test_dependencies})
 add_dependencies(ctest-large ${test_dependencies})
 
-### testrunner ###
+# testrunner ###
 
 # VS2012 doesn't support correctly the tuples yet See
 # http://code.google.com/p/googletest/issues/detail?id=412
@@ -26,7 +26,9 @@ append_source_files(TEST_SOURCES MeshLib)
 append_source_files(TEST_SOURCES MeshGeoToolsLib)
 append_source_files(TEST_SOURCES_NUMLIB NumLib)
 # Disable Unity build for NumLib tests
-set_source_files_properties(${TEST_SOURCES_NUMLIB} PROPERTIES SKIP_UNITY_BUILD_INCLUSION ON)
+set_source_files_properties(
+    ${TEST_SOURCES_NUMLIB} PROPERTIES SKIP_UNITY_BUILD_INCLUSION ON
+)
 # Keep order of source files, otherwise PETSc non-MPI tests fail
 set(TEST_SOURCES ${TEST_SOURCES} ${TEST_SOURCES_NUMLIB})
 append_source_files(TEST_SOURCES ParameterLib)
@@ -54,26 +56,26 @@ endif()
 add_executable(testrunner ${TEST_SOURCES})
 set_target_properties(testrunner PROPERTIES FOLDER Testing)
 
-target_link_libraries(testrunner
-    PRIVATE
-        ApplicationsFileIO
-        autocheck
-        gtest
-        MeshGeoToolsLib
-        MaterialLib
-        MathLib
-        MeshLib
-        NumLib
-        ParameterLib
-        ProcessLib
-        Processes
-        TestInfoLib
-        Threads::Threads
-        ${VTK_LIBRARIES}
-        $<$<TARGET_EXISTS:LIE>:LIE>
-        $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
-        $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface>
-        $<$<TARGET_EXISTS:InSituLib>:InSituLib>
+target_link_libraries(
+    testrunner
+    PRIVATE ApplicationsFileIO
+            autocheck
+            gtest
+            MeshGeoToolsLib
+            MaterialLib
+            MathLib
+            MeshLib
+            NumLib
+            ParameterLib
+            ProcessLib
+            Processes
+            TestInfoLib
+            Threads::Threads
+            ${VTK_LIBRARIES}
+            $<$<TARGET_EXISTS:LIE>:LIE>
+            $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
+            $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface>
+            $<$<TARGET_EXISTS:InSituLib>:InSituLib>
 )
 
 if(OGS_USE_PETSC)
@@ -82,15 +84,15 @@ endif()
 
 if(OGS_BUILD_GUI)
     target_compile_definitions(testrunner PUBLIC OGS_BUILD_GUI)
-    target_link_libraries(testrunner
-        PRIVATE
-            GitInfoLib
-            Qt5::Core
-            Qt5::Gui
-            Qt5::Xml
-            Qt5::Network
-            VtkVis
-            QtDataView
+    target_link_libraries(
+        testrunner
+        PRIVATE GitInfoLib
+                Qt5::Core
+                Qt5::Gui
+                Qt5::Xml
+                Qt5::Network
+                VtkVis
+                QtDataView
     )
     if(GEOTIFF_FOUND)
         target_link_libraries(testrunner PRIVATE ${GEOTIFF_LIBRARIES})
diff --git a/scripts/cmake/CCacheSetup.cmake b/scripts/cmake/CCacheSetup.cmake
index 5aa3157af03f181214823f0f3216ae15155d1ca6..5dee6d01a87c52d49d786a03e8113e5b0f9cf959 100644
--- a/scripts/cmake/CCacheSetup.cmake
+++ b/scripts/cmake/CCacheSetup.cmake
@@ -4,14 +4,15 @@ endif()
 
 # Check ccache version
 set(CCACHE_VERSION_REQUIRED 3.2.0)
-execute_process(COMMAND ${CCACHE_TOOL_PATH} --version
-    OUTPUT_VARIABLE CCACHE_VERSION
+execute_process(
+    COMMAND ${CCACHE_TOOL_PATH} --version OUTPUT_VARIABLE CCACHE_VERSION
 )
 set(CCACHE_VERSION_GREATER_EQUAL_3_2_5 ON)
 if("${CCACHE_VERSION}" MATCHES "ccache version ([0-9]\\.[0-9]\\.[0-9])")
     if(${CMAKE_MATCH_1} VERSION_LESS ${CCACHE_VERSION_REQUIRED})
         message(STATUS "CCache outdated. Installed: ${CMAKE_MATCH_1}, \
-            required: ${CCACHE_VERSION_REQUIRED}. Caching disabled.")
+            required: ${CCACHE_VERSION_REQUIRED}. Caching disabled."
+        )
         return()
     endif()
     if(${CMAKE_MATCH_1} VERSION_LESS 3.2.5)
@@ -28,27 +29,33 @@ if(COMPILER_IS_CLANG)
 endif()
 
 # Check ccache pre-compiled headers config
-execute_process(COMMAND ${CCACHE_TOOL_PATH} -p
+execute_process(
+    COMMAND ${CCACHE_TOOL_PATH} -p
     OUTPUT_VARIABLE CCACHE_CONFIG
     ERROR_VARIABLE CCACHE_CONFIG
-    OUTPUT_STRIP_TRAILING_WHITESPACE
-    ERROR_STRIP_TRAILING_WHITESPACE
+    OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE
 )
 
-string(REGEX MATCH ".*time_macros.*"
-    COTIRE_CCACHE_CONFIG_TIME_MACROS ${CCACHE_CONFIG}
+string(REGEX MATCH ".*time_macros.*" COTIRE_CCACHE_CONFIG_TIME_MACROS
+             ${CCACHE_CONFIG}
 )
 
-string(REGEX MATCH ".*pch_defines.*"
-    COTIRE_CCACHE_CONFIG_PCH_DEFINES ${CCACHE_CONFIG}
+string(REGEX MATCH ".*pch_defines.*" COTIRE_CCACHE_CONFIG_PCH_DEFINES
+             ${CCACHE_CONFIG}
 )
 
 # Regex should be "sloppiness.*time_macros.*pch_defines.*" but due to bug fixed
 # in https://ccache.samba.org/releasenotes.html#_ccache_3_2_5 we have to leave
-# out pch_defines if ccache version is older than 3.2.5.
-# Ubuntu 16.04 comes with ccache 3.2.4 ...
-if(NOT COTIRE_CCACHE_CONFIG_TIME_MACROS OR (CCACHE_VERSION_GREATER_EQUAL_3_2_5 AND NOT COTIRE_CCACHE_CONFIG_PCH_DEFINES))
-    message(FATAL_ERROR "CCache configuration does not set sloppiness to pch_defines,time_macros. \
+# out pch_defines if ccache version is older than 3.2.5. Ubuntu 16.04 comes with
+# ccache 3.2.4 ...
+if(NOT COTIRE_CCACHE_CONFIG_TIME_MACROS
+   OR (CCACHE_VERSION_GREATER_EQUAL_3_2_5 AND NOT
+                                              COTIRE_CCACHE_CONFIG_PCH_DEFINES)
+)
+    message(
+        FATAL_ERROR
+            "CCache configuration does not set sloppiness to pch_defines,time_macros. \
     Current options are: '${CCACHE_CONFIG}'. \
-    See https://docs.opengeosys.org/docs/devguide/advanced/using-ccache")
+    See https://docs.opengeosys.org/docs/devguide/advanced/using-ccache"
+    )
 endif()
diff --git a/scripts/cmake/CMakeSetup.cmake b/scripts/cmake/CMakeSetup.cmake
index e84f88e1fc463e56b6a344245319443ac2529e7e..71d429607221cd6720ba570131738604a0327540 100644
--- a/scripts/cmake/CMakeSetup.cmake
+++ b/scripts/cmake/CMakeSetup.cmake
@@ -1,9 +1,12 @@
 # Disallow in-source builds as the git project cluttered with generated files
 # probably confuses people. source/build* is still allowed!
 if("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
-    message(FATAL_ERROR "In-source builds are not allowed!\n"
-        "Make sure to remove CMakeCache.txt and CMakeFiles/ "
-        "from the source directory!")
+    message(
+        FATAL_ERROR
+            "In-source builds are not allowed!\n"
+            "Make sure to remove CMakeCache.txt and CMakeFiles/ "
+            "from the source directory!"
+    )
 endif()
 
 # Set additional CMake modules path
@@ -13,17 +16,21 @@ CPMAddPackage(
     GIT_TAG cdc041689061fbb2df086b059fe71ac868cf626d
     DOWNLOAD_ONLY YES
 )
-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
-  "${PROJECT_SOURCE_DIR}/scripts/cmake"
-  "${PROJECT_SOURCE_DIR}/scripts/cmake/jedbrown"
-  "${PROJECT_SOURCE_DIR}/scripts/cmake/vector-of-bool"
-  "${cmake-modules_SOURCE_DIR}"
+set(CMAKE_MODULE_PATH
+    ${CMAKE_MODULE_PATH}
+    "${PROJECT_SOURCE_DIR}/scripts/cmake"
+    "${PROJECT_SOURCE_DIR}/scripts/cmake/jedbrown"
+    "${PROJECT_SOURCE_DIR}/scripts/cmake/vector-of-bool"
+    "${cmake-modules_SOURCE_DIR}"
 )
 
-list(APPEND CMAKE_PREFIX_PATH
-  $ENV{HOMEBREW_ROOT}             # Homebrew package manager on Mac OS
-  $ENV{CMAKE_LIBRARY_SEARCH_PATH} # Environment variable, Windows
-  ${CMAKE_LIBRARY_SEARCH_PATH})   # CMake option, Windows
+list(
+    APPEND
+    CMAKE_PREFIX_PATH
+    $ENV{HOMEBREW_ROOT} # Homebrew package manager on Mac OS
+    $ENV{CMAKE_LIBRARY_SEARCH_PATH} # Environment variable, Windows
+    ${CMAKE_LIBRARY_SEARCH_PATH}
+) # CMake option, Windows
 
 # Load additional modules
 include(GNUInstallDirs)
@@ -38,11 +45,14 @@ if(NOT PROJECT_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
 endif()
 
 if((NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
-    OR (NOT CMAKE_BUILD_TYPE AND MSVC AND OGS_USE_CONAN))
+   OR (NOT CMAKE_BUILD_TYPE AND MSVC AND OGS_USE_CONAN)
+)
     message(STATUS "Setting build type to 'Debug' as none was specified.")
     set(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build." FORCE)
-    set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
-        "Debug" "Release" "MinSizeRel" "RelWithDebInfo")
+    set_property(
+        CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel"
+                                        "RelWithDebInfo"
+    )
 endif()
 
 # Get the hostname
diff --git a/scripts/cmake/CheckHeaderCompilation.cmake b/scripts/cmake/CheckHeaderCompilation.cmake
index b02df131ac3b57734aaff0c3a839beb7f3637c11..bcaa48a3998794757cc9dc9452d4b7ce6181a205 100644
--- a/scripts/cmake/CheckHeaderCompilation.cmake
+++ b/scripts/cmake/CheckHeaderCompilation.cmake
@@ -2,12 +2,15 @@
 get_directory_property(INCLUDE_DIRS INCLUDE_DIRECTORIES)
 set(CMAKE_REQUIRED_FLAGS "-c")
 
-add_custom_target(check-header
+add_custom_target(
+    check-header
     COMMAND ${CMAKE_COMMAND} -E remove -f CMakeFiles/CMakeError.log
     COMMAND ${CMAKE_COMMAND} . -DOGS_CHECK_HEADER_COMPILATION=ON
     COMMAND ${CMAKE_COMMAND} . -DOGS_CHECK_HEADER_COMPILATION=OFF || true
-    COMMAND if [ -f CMakeFiles/CMakeError.log ]\; then cat CMakeFiles/CMakeError.log\; return 1\; else return 0\; fi\;
-    WORKING_DIRECTOY ${PROJECT_BINARY_DIR}
+    COMMAND
+        if [ -f CMakeFiles/CMakeError.log ]\; then cat
+        CMakeFiles/CMakeError.log\; return 1\; else return 0\; fi\;
+        WORKING_DIRECTOY ${PROJECT_BINARY_DIR}
     COMMENT "Checking header files"
     USES_TERMINAL
 )
@@ -56,10 +59,9 @@ function(_check_header_compilation target)
     set(CMAKE_REQUIRED_INCLUDES ${INCLUDE_DIRS} ${SOURCE_DIR})
     # HACK, maybe add Gui Widgets Xml XmlPatterns as well
     if(OGS_BUILD_GUI)
-        set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES}
-            ${Qt5Core_INCLUDE_DIRS}
-            ${Qt5Gui_INCLUDE_DIRS}
-            ${Qt5Widgets_INCLUDE_DIRS}
+        set(CMAKE_REQUIRED_INCLUDES
+            ${CMAKE_REQUIRED_INCLUDES} ${Qt5Core_INCLUDE_DIRS}
+            ${Qt5Gui_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS}
         )
     endif()
     set(CMAKE_REQUIRED_DEFINITIONS ${DEFS_CLEANED})
@@ -135,6 +137,9 @@ function(check_header_compilation)
     endif()
 
     if(_HEADER_COMPILE_ERROR)
-        message(FATAL_ERROR "... header compilation check failed, see CMakeFiles/CMakeError.log for details!")
+        message(
+            FATAL_ERROR
+                "... header compilation check failed, see CMakeFiles/CMakeError.log for details!"
+        )
     endif()
 endfunction()
diff --git a/scripts/cmake/ClangSanitizer.cmake b/scripts/cmake/ClangSanitizer.cmake
index 1ac0b05182e8353c54c0e15a8611ca561196ee7f..e7128e752ae209e36d1551548048b8b99de02256 100644
--- a/scripts/cmake/ClangSanitizer.cmake
+++ b/scripts/cmake/ClangSanitizer.cmake
@@ -3,7 +3,9 @@ if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "3.6")
 endif()
 
 option(OGS_ADDRESS_SANITIZER OFF "Use Clangs AddressSanitizer")
-option(OGS_UNDEFINED_BEHAVIOR_SANITIZER OFF "Use Clangs UndefinedBehaviorSanitizer")
+option(OGS_UNDEFINED_BEHAVIOR_SANITIZER OFF
+       "Use Clangs UndefinedBehaviorSanitizer"
+)
 
 if(OGS_ADDRESS_SANITIZER)
     set(SANITIZE_FLAG_VALUE "address")
@@ -11,7 +13,9 @@ if(OGS_ADDRESS_SANITIZER)
 endif()
 
 if(OGS_UNDEFINED_BEHAVIOR_SANITIZER)
-    set(SANITIZE_FLAG_VALUE "${SANITIZE_FLAG_VALUE},undefined,integer;-fsanitize-blacklist=${CMAKE_CURRENT_SOURCE_DIR}/scripts/test/clang_sanitizer_blacklist.txt")
+    set(SANITIZE_FLAG_VALUE
+        "${SANITIZE_FLAG_VALUE},undefined,integer;-fsanitize-blacklist=${CMAKE_CURRENT_SOURCE_DIR}/scripts/test/clang_sanitizer_blacklist.txt"
+    )
 endif()
 
 if(DEFINED SANITIZE_FLAG_VALUE)
diff --git a/scripts/cmake/CompilerSetup.cmake b/scripts/cmake/CompilerSetup.cmake
index b9ded4b27f5839749287b013e1e3a27400ddbdd8..98c4f85f8f1592ce0ab8c116c4d1212824a65a00 100644
--- a/scripts/cmake/CompilerSetup.cmake
+++ b/scripts/cmake/CompilerSetup.cmake
@@ -3,7 +3,9 @@ set(CMAKE_CXX_STANDARD 20)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 set(CMAKE_CXX_EXTENSIONS OFF)
 
-if(${CMAKE_CXX_COMPILER} MATCHES "clcache" AND CMAKE_BUILD_TYPE STREQUAL "Debug")
+if(${CMAKE_CXX_COMPILER} MATCHES "clcache" AND CMAKE_BUILD_TYPE STREQUAL
+                                               "Debug"
+)
     message(WARNING "clcache does not cache in Debug config!")
 endif()
 
@@ -21,7 +23,7 @@ elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL "MSVC")
     set(COMPILER_IS_MSVC TRUE CACHE BOOL "")
 endif() # CMAKE_CXX_COMPILER_ID
 
-### GNU-like compiler
+# GNU-like compiler
 if(COMPILER_IS_GCC OR COMPILER_IS_CLANG OR COMPILER_IS_INTEL)
     if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
         message(STATUS "Set release compiler flags")
@@ -29,39 +31,36 @@ if(COMPILER_IS_GCC OR COMPILER_IS_CLANG OR COMPILER_IS_INTEL)
     elseif(NOT STL_NO_DEBUG)
         # Enable assertions in STL in debug mode.
         add_compile_options(
-            -D_GLIBCXX_DEBUG
-            -D_GLIBCXX_DEBUG_ASSERT
-            -D_GLIBCXX_DEBUG_PEDASSERT
+            -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_ASSERT -D_GLIBCXX_DEBUG_PEDASSERT
             -D_GLIBCXX_DEBUG_VERIFY
         )
     endif()
 
     # Coloring output
-    option (FORCE_COLORED_OUTPUT "Always produce ANSI-colored output (GNU/Clang only)." ON)
-    if (${FORCE_COLORED_OUTPUT})
-        if (COMPILER_IS_GCC)
-            add_compile_options (-fdiagnostics-color=always)
-        elseif (COMPILER_IS_CLANG)
-            add_compile_options (-fcolor-diagnostics)
-        endif ()
+    option(FORCE_COLORED_OUTPUT
+           "Always produce ANSI-colored output (GNU/Clang only)." ON
+    )
+    if(${FORCE_COLORED_OUTPUT})
+        if(COMPILER_IS_GCC)
+            add_compile_options(-fdiagnostics-color=always)
+        elseif(COMPILER_IS_CLANG)
+            add_compile_options(-fcolor-diagnostics)
+        endif()
     endif()
 
     # Profiling
     if(OGS_PROFILE)
         if(NOT CMAKE_BUILD_TYPE STREQUAL "Release")
-            message(STATUS "When using profiling you should set CMAKE_BUILD_TYPE \
-                to Release.")
+            message(
+                STATUS "When using profiling you should set CMAKE_BUILD_TYPE \
+                to Release."
+            )
         endif()
-        set(PROFILE_FLAGS
-            -pg
-            -fno-omit-frame-pointer
-            -O2
-            -DNDEBUG
-        )
+        set(PROFILE_FLAGS -pg -fno-omit-frame-pointer -O2 -DNDEBUG)
         # clang compiler does not know the following flags
         if(NOT COMPILER_IS_CLANG)
-            set(PROFILE_FLAGS ${PROFILE_FLAGS}
-                -fno-inline-functions-called-once
+            set(PROFILE_FLAGS
+                ${PROFILE_FLAGS} -fno-inline-functions-called-once
                 -fno-optimize-sibling-calls
             )
         endif()
@@ -78,9 +77,13 @@ if(COMPILER_IS_GCC OR COMPILER_IS_CLANG OR COMPILER_IS_INTEL)
 
     if(COMPILER_IS_GCC)
         if(NOT "${HOSTNAME}" MATCHES "frontend.*") # TODO: remove later
-            if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${ogs.minimum_version.gcc})
-                message(FATAL_ERROR "Aborting: GCC ${ogs.minimum_version.gcc} is \
-                    required! Found version ${CMAKE_CXX_COMPILER_VERSION}.")
+            if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS
+               ${ogs.minimum_version.gcc}
+            )
+                message(
+                    FATAL_ERROR "Aborting: GCC ${ogs.minimum_version.gcc} is \
+                    required! Found version ${CMAKE_CXX_COMPILER_VERSION}."
+                )
             endif()
         endif()
         add_compile_options($<$<COMPILE_LANGUAGE:CXX>:-fext-numeric-literals>)
@@ -88,38 +91,57 @@ if(COMPILER_IS_GCC OR COMPILER_IS_CLANG OR COMPILER_IS_INTEL)
     endif()
 
     if(COMPILER_IS_CLANG)
-        # see https://en.wikipedia.org/wiki/Xcode#Xcode_7.0_-_12.x_(since_Free_On-Device_Development)
+        # see
+        # https://en.wikipedia.org/wiki/Xcode#Xcode_7.0_-_12.x_(since_Free_On-Device_Development)
         if(COMPILER_IS_APPLE_CLANG)
-            if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${ogs.minimum_version.apple_clang})
-                message(FATAL_ERROR "Aborting: Apple Clang ${ogs.minimum_version.apple_clang} \
-                    is required! Found version ${CMAKE_CXX_COMPILER_VERSION}. Update Xcode!")
+            if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS
+               ${ogs.minimum_version.apple_clang}
+            )
+                message(
+                    FATAL_ERROR
+                        "Aborting: Apple Clang ${ogs.minimum_version.apple_clang} \
+                    is required! Found version ${CMAKE_CXX_COMPILER_VERSION}. Update Xcode!"
+                )
             endif()
         else()
-            if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${ogs.minimum_version.clang})
-                message(FATAL_ERROR "Aborting: Clang ${ogs.minimum_version.clang} \
-                    is required! Found version ${CMAKE_CXX_COMPILER_VERSION}")
+            if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS
+               ${ogs.minimum_version.clang}
+            )
+                message(
+                    FATAL_ERROR "Aborting: Clang ${ogs.minimum_version.clang} \
+                    is required! Found version ${CMAKE_CXX_COMPILER_VERSION}"
+                )
             endif()
         endif()
         include(ClangSanitizer)
     endif()
 
     if(COMPILER_IS_INTEL)
-        # Use highest instruction set available on the compilation host processor
+        # Use highest instruction set available on the compilation host
+        # processor
         add_compile_options(-xHOST)
     endif()
 endif()
 
 if(MSVC)
-    if(${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS ${ogs.minimum_version.msvc.compiler})
-        message(FATAL_ERROR "Aborting: Visual Studio compiler \
+    if(${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS
+       ${ogs.minimum_version.msvc.compiler}
+    )
+        message(
+            FATAL_ERROR
+                "Aborting: Visual Studio compiler \
             ${ogs.minimum_version.msvc.compiler} is required. Found version \
-            ${CMAKE_CXX_COMPILER_VERSION}.")
+            ${CMAKE_CXX_COMPILER_VERSION}."
+        )
     endif()
     if(${MSVC_TOOLSET_VERSION} LESS ${ogs.minimum_version.msvc.toolset})
-        message(FATAL_ERROR "Aborting: Visual Studio ${ogs.minimum_version.msvc.year} \
+        message(
+            FATAL_ERROR
+                "Aborting: Visual Studio ${ogs.minimum_version.msvc.year} \
             is required! Found Visual Studio with toolset version \
             ${MSVC_TOOLSET_VERSION}. See the following link for version info: \
-            https://cmake.org/cmake/help/v3.16/variable/MSVC_TOOLSET_VERSION.html")
+            https://cmake.org/cmake/help/v3.16/variable/MSVC_TOOLSET_VERSION.html"
+        )
     endif()
     if(OGS_CPU_ARCHITECTURE STREQUAL "native")
         set(CPU_FLAGS /favor:blend)
@@ -131,19 +153,22 @@ if(MSVC)
     endif()
     add_compile_options(
         /MP # multi-core compilation
-        /wd4290 /wd4267 /wd4996
+        /wd4290
+        /wd4267
+        /wd4996
         /bigobj
         -D_CRT_SECURE_NO_WARNINGS
         -D_CRT_NONSTDC_NO_WARNINGS
         -D_CRT_XNONSTDC_NO_WARNINGS
-        -D__restrict__=__restrict   # this fixes #5
-        # This fixes compile errors with
-        # std::numeric_limits<T>::min() / max()
+        -D__restrict__=__restrict # this fixes #5
+        # This fixes compile errors with std::numeric_limits<T>::min() / max()
         -DNOMINMAX
         -DBOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE # when VC is newer than Boost
         # Disables all warnings coming from include with <>-syntax
         # https://devblogs.microsoft.com/cppblog/broken-warnings-theory/
-        /experimental:external /external:anglebrackets /external:W0
+        /experimental:external
+        /external:anglebrackets
+        /external:W0
     )
     set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /ignore:4099")
 endif()
diff --git a/scripts/cmake/Coverage.cmake b/scripts/cmake/Coverage.cmake
index f09fad76632930f434429337a5b72e2295faa6e7..e68763b14a9c5a3b3369473f078d661e337626d4 100644
--- a/scripts/cmake/Coverage.cmake
+++ b/scripts/cmake/Coverage.cmake
@@ -8,12 +8,15 @@ append_coverage_compiler_flags()
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Og")
 
 if(NOT FASTCOV_PATH)
-    execute_process(COMMAND ${_CMD_COMMAND} poetry add fastcov==1.10
+    execute_process(
+        COMMAND ${_CMD_COMMAND} poetry add fastcov==1.10
         WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
     )
-    find_program(FASTCOV_PATH NAMES fastcov
-        HINTS ${LOCAL_VIRTUALENV_BIN_DIRS}
-        REQUIRED NO_DEFAULT_PATH
+    find_program(
+        FASTCOV_PATH
+        NAMES fastcov
+        HINTS ${LOCAL_VIRTUALENV_BIN_DIRS} REQUIRED
+        NO_DEFAULT_PATH
     )
 endif()
 
@@ -23,27 +26,42 @@ endif()
 
 # TODO: segfault in MeshLibMappedPropertyVector.Double|Int
 setup_target_for_coverage_fastcov(
-    NAME testrunner_coverage
-    EXECUTABLE $<TARGET_FILE:testrunner> -l warn --gtest_filter=-MeshLibMappedPropertyVector.*:GeoLib.SearchNearestPointsInDenseGrid
-    DEPENDENCIES testrunner
-    FASTCOV_ARGS --include ${PROJECT_SOURCE_DIR}
+    NAME
+    testrunner_coverage
+    EXECUTABLE
+    $<TARGET_FILE:testrunner>
+    -l
+    warn
+    --gtest_filter=-MeshLibMappedPropertyVector.*:GeoLib.SearchNearestPointsInDenseGrid
+    DEPENDENCIES
+    testrunner
+    FASTCOV_ARGS
+    --include
+    ${PROJECT_SOURCE_DIR}
     ${COVERAGE_ADDITIONAL_ARGS}
     EXCLUDE
-        Applications/CLI/
-        ProcessLib/
-        Tests/
+    Applications/CLI/
+    ProcessLib/
+    Tests/
 )
 
 # TODO: segfault in Vtu2Grid
 setup_target_for_coverage_fastcov(
-    NAME ctest_coverage
-    EXECUTABLE ctest -E "Vtu2Grid"
-    DEPENDENCIES all
-    FASTCOV_ARGS --include ${PROJECT_SOURCE_DIR}
+    NAME
+    ctest_coverage
+    EXECUTABLE
+    ctest
+    -E
+    "Vtu2Grid"
+    DEPENDENCIES
+    all
+    FASTCOV_ARGS
+    --include
+    ${PROJECT_SOURCE_DIR}
     ${COVERAGE_ADDITIONAL_ARGS}
     EXCLUDE
-        Applications/CLI/
-        Tests/
+    Applications/CLI/
+    Tests/
 )
 
 if(UNIX)
diff --git a/scripts/cmake/CppCheck.cmake b/scripts/cmake/CppCheck.cmake
index 37207ddc29361b61be178428690e41ac26d27484..0231abc0b3ab24ea0c6b72adf5588d83c62a412a 100644
--- a/scripts/cmake/CppCheck.cmake
+++ b/scripts/cmake/CppCheck.cmake
@@ -8,26 +8,24 @@ if(DEFINED ENV{CMAKE_BUILD_PARALLEL_LEVEL})
 elseif(DEFINED CMAKE_BUILD_PARALLEL_LEVEL)
     set(CPPCHECK_PARALLEL ${CMAKE_BUILD_PARALLEL_LEVEL})
 endif()
-configure_file(${PROJECT_SOURCE_DIR}/scripts/test/cppcheck.in.sh ${PROJECT_BINARY_DIR}/cppcheck.sh)
+configure_file(
+    ${PROJECT_SOURCE_DIR}/scripts/test/cppcheck.in.sh
+    ${PROJECT_BINARY_DIR}/cppcheck.sh
+)
 
 if(DEFINED ENV{NUM_THREADS})
     set(CPPCHECK_THREADS -j $ENV{NUM_THREADS})
 endif()
 
-add_custom_target(cppcheck
-    COMMAND ${CPPCHECK_TOOL_PATH}
-        --project=${PROJECT_BINARY_DIR}/compile_commands.json
-        --language=c++
-        --std=c++20
-        --enable=all
-        --inconclusive
-        ${CPPCHECK_THREADS}
-        -i ${PROJECT_BINARY_DIR}/CMakeFiles
-        -i ${PROJECT_BINARY_DIR}/_deps
-        -i ${PROJECT_SOURCE_DIR}/ThirdParty
-        -i ${PROJECT_SOURCE_DIR}/Applications/DataExplorer
-        -i ${PROJECT_SOURCE_DIR}/Tests
-        --xml --xml-version=2
-        --output-file=${PROJECT_BINARY_DIR}/cppcheck.log
-        ${PROJECT_SOURCE_DIR}
+add_custom_target(
+    cppcheck
+    COMMAND
+        ${CPPCHECK_TOOL_PATH}
+        --project=${PROJECT_BINARY_DIR}/compile_commands.json --language=c++
+        --std=c++20 --enable=all --inconclusive ${CPPCHECK_THREADS} -i
+        ${PROJECT_BINARY_DIR}/CMakeFiles -i ${PROJECT_BINARY_DIR}/_deps -i
+        ${PROJECT_SOURCE_DIR}/ThirdParty -i
+        ${PROJECT_SOURCE_DIR}/Applications/DataExplorer -i
+        ${PROJECT_SOURCE_DIR}/Tests --xml --xml-version=2
+        --output-file=${PROJECT_BINARY_DIR}/cppcheck.log ${PROJECT_SOURCE_DIR}
 )
diff --git a/scripts/cmake/Dependencies.cmake b/scripts/cmake/Dependencies.cmake
index e4a64b8a09aa3f67fc47020783def34a3ebce341..fc99fd756e0af16a1d0126399731bdc46b51a267 100644
--- a/scripts/cmake/Dependencies.cmake
+++ b/scripts/cmake/Dependencies.cmake
@@ -3,9 +3,7 @@ if(OGS_BUILD_TESTING)
         NAME googletest
         GITHUB_REPOSITORY google/googletest
         GIT_TAG 389cb68b87193358358ae87cc56d257fd0d80189
-        OPTIONS
-            "INSTALL_GTEST OFF"
-            "gtest_force_shared_crt ON"
+        OPTIONS "INSTALL_GTEST OFF" "gtest_force_shared_crt ON"
         EXCLUDE_FROM_ALL YES
     )
 
@@ -17,7 +15,9 @@ if(OGS_BUILD_TESTING)
     )
     if(autocheck_ADDED)
         add_library(autocheck INTERFACE IMPORTED)
-        target_include_directories(autocheck SYSTEM INTERFACE ${autocheck_SOURCE_DIR}/include)
+        target_include_directories(
+            autocheck SYSTEM INTERFACE ${autocheck_SOURCE_DIR}/include
+        )
     endif()
 endif()
 
@@ -32,11 +32,7 @@ if(exprtk_ADDED)
     target_include_directories(exprtk SYSTEM INTERFACE ${exprtk_SOURCE_DIR})
 endif()
 
-CPMAddPackage(
-    NAME spdlog
-    GITHUB_REPOSITORY gabime/spdlog
-    VERSION 1.8.2
-)
+CPMAddPackage(NAME spdlog GITHUB_REPOSITORY gabime/spdlog VERSION 1.8.2)
 
 CPMAddPackage(
     NAME tclap
@@ -46,12 +42,13 @@ CPMAddPackage(
 )
 if(tclap_ADDED)
     add_library(tclap INTERFACE IMPORTED)
-    target_include_directories(tclap SYSTEM INTERFACE ${tclap_SOURCE_DIR}/include)
+    target_include_directories(
+        tclap SYSTEM INTERFACE ${tclap_SOURCE_DIR}/include
+    )
 endif()
 
 CPMAddPackage(
-    NAME tetgen
-    GITHUB_REPOSITORY ufz/tetgen
+    NAME tetgen GITHUB_REPOSITORY ufz/tetgen
     GIT_TAG 603ba181ebfaed38eec88532720e282606009b73
 )
 if(tetgen_ADDED)
@@ -64,18 +61,18 @@ if(OGS_USE_PYTHON)
         NAME pybind11
         GITHUB_REPOSITORY pybind/pybind11
         GIT_TAG f1abf5d9159b805674197f6bc443592e631c9130
-        # pybind11 uses old CMake find functionality, pass variables to use
-        # the same Python installation.
-        OPTIONS
-            "PYTHON_INCLUDE_DIR ${Python3_INCLUDE_DIRS}"
-            "PYTHON_LIBRARIES ${Python3_LIBRARIES}"
-            "PYTHON_EXECUTABLE ${Python3_EXECUTABLE}"
-            "PYBIND11_PYTHON_VERSION ${Python3_VERSION}"
+        # pybind11 uses old CMake find functionality, pass variables to use the
+        # same Python installation.
+        OPTIONS "PYTHON_INCLUDE_DIR ${Python3_INCLUDE_DIRS}"
+                "PYTHON_LIBRARIES ${Python3_LIBRARIES}"
+                "PYTHON_EXECUTABLE ${Python3_EXECUTABLE}"
+                "PYBIND11_PYTHON_VERSION ${Python3_VERSION}"
     )
 endif()
 
-if (OGS_BUILD_PROCESS_ComponentTransport
-    OR OGS_BUILD_PROCESS_RichardsComponentTransport)
+if(OGS_BUILD_PROCESS_ComponentTransport
+   OR OGS_BUILD_PROCESS_RichardsComponentTransport
+)
     CPMAddPackage(
         NAME iphreeqc
         GITHUB_REPOSITORY ufz/iphreeqc
@@ -96,7 +93,9 @@ CPMFindPackage(
 )
 if(Eigen3_ADDED)
     add_library(Eigen3::Eigen INTERFACE IMPORTED)
-    target_include_directories(Eigen3::Eigen SYSTEM INTERFACE ${Eigen3_SOURCE_DIR})
+    target_include_directories(
+        Eigen3::Eigen SYSTEM INTERFACE ${Eigen3_SOURCE_DIR}
+    )
 endif()
 
 if(OGS_USE_MFRONT)
@@ -104,9 +103,7 @@ if(OGS_USE_MFRONT)
         NAME MGIS
         GITHUB_REPOSITORY ufz/MFrontGenericInterfaceSupport
         GIT_TAG 04e7d1bfad83fdc36a5fedb9c3d2e3b0d4b7fccf
-        OPTIONS
-            "enable-doxygen-doc OFF"
-            "enable-fortran-bindings OFF"
+        OPTIONS "enable-doxygen-doc OFF" "enable-fortran-bindings OFF"
         EXCLUDE_FROM_ALL YES
     )
     if(MGIS_ADDED)
@@ -148,16 +145,15 @@ if(OGS_USE_XDMF)
         GITHUB_REPOSITORY HDFGroup/hdf5
         GIT_TAG hdf5-${HDF5_TAG}
         VERSION ${ogs.minimum_version.hdf5}
-        OPTIONS
-            "HDF5_EXTERNALLY_CONFIGURED 1"
-            "HDF5_GENERATE_HEADERS OFF"
-            "HDF5_BUILD_TOOLS OFF"
-            "HDF5_BUILD_EXAMPLES OFF"
-            "HDF5_BUILD_HL_LIB OFF"
-            "HDF5_BUILD_FORTRAN OFF"
-            "HDF5_BUILD_CPP_LIB OFF"
-            "HDF5_BUILD_JAVA OFF"
-            ${_hdf5_options}
+        OPTIONS "HDF5_EXTERNALLY_CONFIGURED 1"
+                "HDF5_GENERATE_HEADERS OFF"
+                "HDF5_BUILD_TOOLS OFF"
+                "HDF5_BUILD_EXAMPLES OFF"
+                "HDF5_BUILD_HL_LIB OFF"
+                "HDF5_BUILD_FORTRAN OFF"
+                "HDF5_BUILD_CPP_LIB OFF"
+                "HDF5_BUILD_JAVA OFF"
+                ${_hdf5_options}
         EXCLUDE_FROM_ALL YES
     )
     if(HDF5_ADDED)
@@ -173,14 +169,13 @@ if(OGS_USE_XDMF)
         GITHUB_REPOSITORY GNOME/libxml2
         VERSION ${ogs.minimum_version.libxml2}
         GIT_TAG f93ca3e140a371b26366f747a408588c631e0fd1
-        OPTIONS
-            "LIBXML2_WITH_TESTS OFF"
-            "LIBXML2_WITH_PROGRAMS OFF"
-            "LIBXML2_WITH_ICONV OFF"
-            "LIBXML2_WITH_ICU OFF"
-            "LIBXML2_WITH_LZMA OFF"
-            "LIBXML2_WITH_PYTHON OFF"
-            "LIBXML2_WITH_ZLIB OFF"
+        OPTIONS "LIBXML2_WITH_TESTS OFF"
+                "LIBXML2_WITH_PROGRAMS OFF"
+                "LIBXML2_WITH_ICONV OFF"
+                "LIBXML2_WITH_ICU OFF"
+                "LIBXML2_WITH_LZMA OFF"
+                "LIBXML2_WITH_PYTHON OFF"
+                "LIBXML2_WITH_ZLIB OFF"
         EXCLUDE_FROM_ALL YES
     )
     if(LibXml2_ADDED)
@@ -196,28 +191,32 @@ if(OGS_USE_XDMF)
         OPTIONS "XDMF_LIBNAME OgsXdmf"
     )
     if(xdmf_ADDED)
-        target_include_directories(OgsXdmf PUBLIC
-            ${xdmf_SOURCE_DIR}
-            ${xdmf_BINARY_DIR}
+        target_include_directories(
+            OgsXdmf PUBLIC ${xdmf_SOURCE_DIR} ${xdmf_BINARY_DIR}
         )
 
         target_link_libraries(OgsXdmf Boost::boost ZLIB::ZLIB)
-        target_include_directories(OgsXdmfCore
-            PUBLIC
-                ${xdmf_SOURCE_DIR}/core
-                ${xdmf_BINARY_DIR}/core
-            PRIVATE
-                ${xdmf_SOURCE_DIR}/CMake/VersionSuite
+        target_include_directories(
+            OgsXdmfCore PUBLIC ${xdmf_SOURCE_DIR}/core ${xdmf_BINARY_DIR}/core
+            PRIVATE ${xdmf_SOURCE_DIR}/CMake/VersionSuite
+        )
+        target_link_libraries(
+            OgsXdmfCore PUBLIC Boost::boost LibXml2::LibXml2 ${HDF5_LIBRARIES}
         )
-        target_link_libraries(OgsXdmfCore PUBLIC Boost::boost LibXml2::LibXml2 ${HDF5_LIBRARIES})
 
-        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}
+        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})
+            install(TARGETS OgsXdmf OgsXdmfCore
+                    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+            )
         endif()
         list(APPEND DISABLE_WARNINGS_TARGETS OgsXdmf OgsXdmfCore)
     endif()
@@ -225,12 +224,13 @@ endif()
 
 if(OGS_BUILD_SWMM)
     CPMAddPackage(
-        NAME SWMMInterface
-        GITHUB_REPOSITORY ufz/SwmmInterface
+        NAME SWMMInterface GITHUB_REPOSITORY ufz/SwmmInterface
         GIT_TAG 141e05ae1f419918799d7bf9178ebcd97feb1ed3
     )
     if(SWMMInterface_ADDED)
-        target_include_directories(SwmmInterface SYSTEM PUBLIC ${SWMMInterface_SOURCE_DIR})
+        target_include_directories(
+            SwmmInterface SYSTEM PUBLIC ${SWMMInterface_SOURCE_DIR}
+        )
         list(APPEND DISABLE_WARNINGS_TARGETS SWMM SwmmInterface)
     endif()
 endif()
@@ -238,13 +238,17 @@ endif()
 CPMAddPackage(
     NAME nlohmann_json
     VERSION 3.6.1
-    # the git repo is incredibly large, so we download the archived include directory
+    # the git repo is incredibly large, so we download the archived include
+    # directory
     URL https://github.com/nlohmann/json/releases/download/v3.6.1/include.zip
-    URL_HASH SHA256=69cc88207ce91347ea530b227ff0776db82dcb8de6704e1a3d74f4841bc651cf
+    URL_HASH
+        SHA256=69cc88207ce91347ea530b227ff0776db82dcb8de6704e1a3d74f4841bc651cf
 )
 if(nlohmann_json_ADDED)
     add_library(nlohmann_json INTERFACE IMPORTED)
-    target_include_directories(nlohmann_json INTERFACE ${nlohmann_json_SOURCE_DIR})
+    target_include_directories(
+        nlohmann_json INTERFACE ${nlohmann_json_SOURCE_DIR}
+    )
 endif()
 
 if(OGS_BUILD_GUI)
@@ -274,7 +278,9 @@ if(OGS_BUILD_GUI)
             VERSION 1.5.0
             EXCLUDE_FROM_ALL YES
         )
-        target_include_directories(shp INTERFACE $<BUILD_INTERFACE:${Shapelib_SOURCE_DIR}>)
+        target_include_directories(
+            shp INTERFACE $<BUILD_INTERFACE:${Shapelib_SOURCE_DIR}>
+        )
     endif()
 endif()
 
@@ -289,25 +295,33 @@ if(OGS_USE_CVODE)
     )
     if(CVODE_ADDED)
         add_library(CVODE::CVODE INTERFACE IMPORTED)
-        target_include_directories(CVODE::CVODE INTERFACE
-            ${CVODE_SOURCE_DIR}/include
-            ${CVODE_BINARY_DIR}/include
+        target_include_directories(
+            CVODE::CVODE INTERFACE ${CVODE_SOURCE_DIR}/include
+                                   ${CVODE_BINARY_DIR}/include
         )
-        target_link_libraries(CVODE::CVODE INTERFACE
-            sundials_cvode_static
-            sundials_nvecserial_static
+        target_link_libraries(
+            CVODE::CVODE INTERFACE sundials_cvode_static
+                                   sundials_nvecserial_static
         )
     endif()
 endif()
 
-### VTK ###
+# VTK ###
 set(VTK_COMPONENTS vtkIOXML vtkIOLegacy)
 if(OGS_BUILD_GUI)
-    list(APPEND VTK_COMPONENTS
-        vtkIOExport vtkImagingCore
-        vtkInteractionStyle vtkInteractionWidgets
-        vtkGUISupportQt vtkRenderingOpenGL2 vtkRenderingContextOpenGL2
-        vtkFiltersTexture vtkRenderingAnnotation vtkRenderingCore
+    list(
+        APPEND
+        VTK_COMPONENTS
+        vtkIOExport
+        vtkImagingCore
+        vtkInteractionStyle
+        vtkInteractionWidgets
+        vtkGUISupportQt
+        vtkRenderingOpenGL2
+        vtkRenderingContextOpenGL2
+        vtkFiltersTexture
+        vtkRenderingAnnotation
+        vtkRenderingCore
     )
     if(OGS_BUILD_UTILS)
         list(APPEND VTK_COMPONENTS vtkFiltersParallel)
@@ -316,16 +330,15 @@ endif()
 if(OGS_USE_MPI)
     list(APPEND VTK_COMPONENTS vtkIOParallelXML vtkParallelMPI)
 endif()
-# TODO:
-# if(OGS_INSITU)
-#     find_package(ParaView REQUIRED)
-# end()
+# TODO: if(OGS_INSITU) find_package(ParaView REQUIRED) end()
 find_package(VTK ${ogs.minimum_version.vtk} QUIET COMPONENTS ${VTK_COMPONENTS})
 
 if(VTK_FOUND)
     include(${VTK_USE_FILE})
 else()
-    list(APPEND VTK_OPTIONS
+    list(
+        APPEND
+        VTK_OPTIONS
         "BUILD_SHARED_LIBS OFF"
         "BUILD_TESTING OFF"
         "VTK_BUILD_EXAMPLES OFF"
@@ -344,17 +357,15 @@ else()
         GITHUB_REPOSITORY kitware/vtk
         VERSION ${ogs.minimum_version.vtk}
         OPTIONS ${VTK_OPTIONS}
-        EXCLUDE_FROM_ALL YES
-        GIT_SUBMODULES "" # Disable submodules
+        EXCLUDE_FROM_ALL YES GIT_SUBMODULES "" # Disable submodules
     )
     include(${VTK_BINARY_DIR}/VTKConfig.cmake)
 endif()
-### end VTK ###
+# end VTK ###
 
 if(OGS_BUILD_TESTING)
     CPMAddPackage(
-        NAME vtkdiff
-        GITHUB_REPOSITORY ufz/vtkdiff
+        NAME vtkdiff GITHUB_REPOSITORY ufz/vtkdiff
         GIT_TAG 49403cee266bb8e80405a02d677dbb5f71afc61a
     )
     if(vtkdiff_ADDED)
@@ -367,13 +378,17 @@ endif()
 
 # Disable warnings
 foreach(target ${DISABLE_WARNINGS_TARGETS})
-    target_compile_options(${target} PRIVATE
-        $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:GNU>>:-w>
-        $<$<CXX_COMPILER_ID:MSVC>:/W0>)
+    target_compile_options(
+        ${target}
+        PRIVATE
+            $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:GNU>>:-w>
+            $<$<CXX_COMPILER_ID:MSVC>:/W0>
+    )
 endforeach()
 
 # Hack: Disable tests from dependencies
-configure_file(${PROJECT_SOURCE_DIR}/scripts/cmake/test/CTestCustom.in.cmake
+configure_file(
+    ${PROJECT_SOURCE_DIR}/scripts/cmake/test/CTestCustom.in.cmake
     ${PROJECT_BINARY_DIR}/CTestCustom.cmake @ONLY
 )
 
@@ -385,11 +400,11 @@ if(CLANG_FORMAT_PROGRAM OR CMAKE_FORMAT_PROGRAM)
         set(_skip_cmake "FORMAT_SKIP_CMAKE YES")
     endif()
     CPMAddPackage(
-      NAME Format.cmake
-      VERSION 1.7.0
-      GITHUB_REPOSITORY TheLartians/Format.cmake
-      OPTIONS
-        ${_skip_cmake}
-        "CMAKE_FORMAT_EXCLUDE scripts/cmake/CPM.cmake|.*/Tests.cmake|scripts/cmake/jedbrown/.*|scripts/cmake/conan/conan.cmake|scripts/cmake/vector-of-bool/.*"
+        NAME Format.cmake
+        VERSION 1.7.0
+        GITHUB_REPOSITORY TheLartians/Format.cmake
+        OPTIONS
+            ${_skip_cmake}
+            "CMAKE_FORMAT_EXCLUDE scripts/cmake/CPM.cmake|.*/Tests.cmake|scripts/cmake/jedbrown/.*|scripts/cmake/conan/conan.cmake|scripts/cmake/vector-of-bool/.*"
     )
 endif()
diff --git a/scripts/cmake/DocumentationProjectFile.cmake b/scripts/cmake/DocumentationProjectFile.cmake
index 787074a7d69a4309ab66dba5fc9958d702eac1f6..7b9fa5f1b75c7fb3bdada75f52b57aaad67d275b 100644
--- a/scripts/cmake/DocumentationProjectFile.cmake
+++ b/scripts/cmake/DocumentationProjectFile.cmake
@@ -5,47 +5,52 @@ cmake_policy(SET CMP0009 NEW)
 # pages and the page title.
 function(documentationProjectFilePutIntoPlace dir)
     # cmake-lint: disable=R0912,R0915
-    file(RELATIVE_PATH relative_path ${DOCUMENTATION_PROJECTFILE_INPUTDIR} ${dir})
+    file(RELATIVE_PATH relative_path ${DOCUMENTATION_PROJECTFILE_INPUTDIR}
+         ${dir}
+    )
     get_filename_component(dir_name ${relative_path} DIRECTORY)
 
     get_filename_component(otagname ${relative_path} NAME_WE)
-    if (otagname MATCHES ^[ic]_)
-        # if the file name starts with an underscore, then this files is
-        # the "table of contents of the current directory
+    if(otagname MATCHES ^[ic]_)
+        # if the file name starts with an underscore, then this files is the
+        # "table of contents of the current directory
 
         file(MAKE_DIRECTORY "${DOCUMENTATION_PROJECTFILE_BUILDDIR}/${dir_name}")
 
         set(postfix "# Child parameters, attributes and cases\n\n")
 
-        # gather other parameter files
-        # the loop below will effects a page hierarchy to be built
-        file(GLOB param_files ${DOCUMENTATION_PROJECTFILE_INPUTDIR}/${dir_name}/*)
+        # gather other parameter files the loop below will effects a page
+        # hierarchy to be built
+        file(GLOB param_files
+             ${DOCUMENTATION_PROJECTFILE_INPUTDIR}/${dir_name}/*
+        )
         set(subpagelist "")
         foreach(pf ${param_files})
             # ignore hidden files
-            if (pf MATCHES /[.][^/]+)
+            if(pf MATCHES /[.][^/]+)
                 continue()
             endif()
 
             get_filename_component(rel_pf ${pf} NAME_WE)
 
-            # if the file name matches ^[ic]_, then this
-            # is the "table of contents" file already processed outside
-            # of this loop
-            if (NOT rel_pf MATCHES ^[ic]_)
+            # if the file name matches ^[ic]_, then this is the "table of
+            # contents" file already processed outside of this loop
+            if(NOT rel_pf MATCHES ^[ic]_)
                 if(IS_DIRECTORY ${pf})
                     set(pf_tagname ${rel_pf})
                 else()
-                    if (NOT "${rel_pf}" MATCHES ^._)
+                    if(NOT "${rel_pf}" MATCHES ^._)
                         message(SEND_ERROR "Path `${rel_pf}' has a wrong name."
-                            " Full path is `${pf}'.")
+                                           " Full path is `${pf}'."
+                        )
                         continue()
                     endif()
 
                     string(SUBSTRING "${rel_pf}" 2 -1 pf_tagname)
                 endif()
 
-                if ("${dir_name}" STREQUAL "") # toplevel dir must be treated slightly different
+                # toplevel dir must be treated slightly different
+                if("${dir_name}" STREQUAL "")
                     set(pf_tagpath "${pf_tagname}")
                 else()
                     set(pf_tagpath "${dir_name}/${pf_tagname}")
@@ -53,22 +58,25 @@ function(documentationProjectFilePutIntoPlace dir)
                 endif()
                 message("  t.o.c. entry ${pf_tagpath}")
 
-                if (rel_pf MATCHES ^a_)
+                if(rel_pf MATCHES ^a_)
                     set(pagenameprefix "ogs_file_attr__")
                 else()
                     set(pagenameprefix "ogs_file_param__")
                 endif()
 
                 list(FIND subpagelist "${pagenameprefix}${pf_tagpath}" idx)
-                if (NOT idx EQUAL -1)
-                    message(SEND_ERROR "The subpagelist already contains"
-                        " ${pagenameprefix}${pf_tagpath}. Maybe there are"
-                        " duplicate documentation files.")
+                if(NOT idx EQUAL -1)
+                    message(
+                        SEND_ERROR
+                            "The subpagelist already contains"
+                            " ${pagenameprefix}${pf_tagpath}. Maybe there are"
+                            " duplicate documentation files."
+                    )
                 else()
                     list(APPEND subpagelist "${pagenameprefix}${pf_tagpath}")
                 endif()
 
-                if (NOT IS_DIRECTORY "${pf}")
+                if(NOT IS_DIRECTORY "${pf}")
                     documentationProjectFilePutIntoPlace("${pf}")
                 endif()
             endif()
@@ -83,10 +91,10 @@ function(documentationProjectFilePutIntoPlace dir)
     endif()
 
     string(SUBSTRING ${otagname} 2 -1 tagname)
-    if (dir_name STREQUAL "") # toplevel dir must be treated slightly different
+    if(dir_name STREQUAL "") # toplevel dir must be treated slightly different
         set(tagpath "${tagname}")
     else()
-        if (otagname MATCHES ^[ic]_) # treat "table of contents" file special
+        if(otagname MATCHES ^[ic]_) # treat "table of contents" file special
             string(REPLACE "/" "__" tagpath "${dir_name}")
         else()
             string(REPLACE "/" "__" tagpath "${dir_name}/${tagname}")
@@ -95,7 +103,7 @@ function(documentationProjectFilePutIntoPlace dir)
     message("  child param  ${tagpath}")
 
     set(pagenameprefix "ogs_file_param__")
-    if (otagname MATCHES ^i_ AND dir_name STREQUAL "")
+    if(otagname MATCHES ^i_ AND dir_name STREQUAL "")
         set(pagetitle "OGS Input File Parameters")
     elseif(otagname MATCHES ^c_)
         set(pagetitle "[case]&emsp;${tagname}")
@@ -105,34 +113,48 @@ function(documentationProjectFilePutIntoPlace dir)
         set(pagetitle "[attr]&emsp;${tagname}")
         set(pagenameprefix "ogs_file_attr__")
     else()
-        message(SEND_ERROR "Tag name ${otagname} does not match in any case."
-            " Maybe there is a file with a wrong name in the documentation"
-            " directory.")
+        message(
+            SEND_ERROR
+                "Tag name ${otagname} does not match in any case."
+                " Maybe there is a file with a wrong name in the documentation"
+                " directory."
+        )
     endif()
 
     # read, augment, write file content
     file(READ ${dir} content)
-    set(content "/*! \\page ${pagenameprefix}${tagpath} ${pagetitle}\n${content}\n\n${postfix}\n")
-    if (NOT doc_use_external_tools)
+    set(content
+        "/*! \\page ${pagenameprefix}${tagpath} ${pagetitle}\n${content}\n\n${postfix}\n"
+    )
+    if(NOT doc_use_external_tools)
         set(ending "\n*/\n")
     else()
         set(ending "") # external tools shall finish the file
     endif()
-    string(REGEX REPLACE .md$ .dox output_file "${DOCUMENTATION_PROJECTFILE_BUILDDIR}/${relative_path}")
+    string(REGEX
+           REPLACE .md$ .dox output_file
+                   "${DOCUMENTATION_PROJECTFILE_BUILDDIR}/${relative_path}"
+    )
     file(WRITE "${output_file}" "${content}${ending}")
 endfunction()
 
-set(DOCUMENTATION_PROJECTFILE_BUILDDIR ${PROJECT_BINARY_DIR}/DocAux/dox/ProjectFile)
-set(DOCUMENTATION_PROJECTFILE_INPUTDIR ${PROJECT_SOURCE_DIR}/Documentation/ProjectFile)
+set(DOCUMENTATION_PROJECTFILE_BUILDDIR
+    ${PROJECT_BINARY_DIR}/DocAux/dox/ProjectFile
+)
+set(DOCUMENTATION_PROJECTFILE_INPUTDIR
+    ${PROJECT_SOURCE_DIR}/Documentation/ProjectFile
+)
 
 # remove old output
-if (IS_DIRECTORY ${DOCUMENTATION_PROJECTFILE_BUILDDIR})
+if(IS_DIRECTORY ${DOCUMENTATION_PROJECTFILE_BUILDDIR})
     file(REMOVE_RECURSE ${DOCUMENTATION_PROJECTFILE_BUILDDIR})
 endif()
 
 # traverse input file hierarchy
 file(GLOB_RECURSE input_paths FOLLOW_SYMLINKS
-    ${DOCUMENTATION_PROJECTFILE_INPUTDIR}/c_* ${DOCUMENTATION_PROJECTFILE_INPUTDIR}/i_*)
+     ${DOCUMENTATION_PROJECTFILE_INPUTDIR}/c_*
+     ${DOCUMENTATION_PROJECTFILE_INPUTDIR}/i_*
+)
 
 foreach(path ${input_paths})
     message("directory index file ${path}")
diff --git a/scripts/cmake/DocumentationSetup.cmake b/scripts/cmake/DocumentationSetup.cmake
index cc8eb16c325f6cdcd4b3667addabf6eee5592cc0..7d77078f229b3c0b36df3b41458c0e6fcbfc722f 100644
--- a/scripts/cmake/DocumentationSetup.cmake
+++ b/scripts/cmake/DocumentationSetup.cmake
@@ -6,16 +6,17 @@ endif()
 set(DOXYGEN_LATEX_MAKEINDEX_CMD "makeindex")
 
 set(DOXYGEN_EXCLUDE
-    ${PROJECT_SOURCE_DIR}/ThirdParty
-    ${PROJECT_SOURCE_DIR}/scripts
-    ${PROJECT_SOURCE_DIR}/Tests
-    ${PROJECT_SOURCE_DIR}/Documentation/ProjectFile
-    ${PROJECT_SOURCE_DIR}/web)
+    ${PROJECT_SOURCE_DIR}/ThirdParty ${PROJECT_SOURCE_DIR}/scripts
+    ${PROJECT_SOURCE_DIR}/Tests ${PROJECT_SOURCE_DIR}/Documentation/ProjectFile
+    ${PROJECT_SOURCE_DIR}/web
+)
 set(DOXYGEN_FILE_PATTERNS *.h *.cpp *.tpp *.dox)
 set(DOXYGEN_PROJECT_NAME "OGS")
 set(DOXYGEN_PROJECT_NUMBER "${OGS_GIT_BRANCH}")
 set(DOXYGEN_PROJECT_VERSION ${GIT_SHA1_SHORT})
-set(DOXYGEN_PROJECT_LOGO ${PROJECT_SOURCE_DIR}/Documentation/OpenGeoSys-Logo.png)
+set(DOXYGEN_PROJECT_LOGO
+    ${PROJECT_SOURCE_DIR}/Documentation/OpenGeoSys-Logo.png
+)
 set(DOXYGEN_HTML_OUTPUT ${PROJECT_BINARY_DIR}/docs)
 if("${OGS_GIT_BRANCH}" MATCHES "^v[0-9]\\.[0-9]\\.[0-9]")
     set(DOXYGEN_HTML_COLORSTYLE_HUE 190)
@@ -40,7 +41,9 @@ set(DOXYGEN_REFERENCED_BY_RELATION YES)
 set(DOXYGEN_REFERENCES_RELATION YES)
 set(DOXYGEN_GENERATE_TREEVIEW YES)
 set(DOXYGEN_USE_MATHJAX YES)
-set(DOXYGEN_MATHJAX_RELPATH https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/)
+set(DOXYGEN_MATHJAX_RELPATH
+    https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/
+)
 set(DOXYGEN_GENERATE_LATEX NO)
 set(DOXYGEN_EXTRA_PACKAGES amsmath amsfonts)
 set(DOXYGEN_PREDEFINED
@@ -68,40 +71,47 @@ set(DOXYGEN_ALIASES
     "ogs_file_special = \\xrefitem ogs_file_param \\\"Input File Parameter\\\" \\\"List of all Input File Parameters\\\" special OGS input file parameter"
     "ogs_file_param_special{1} = \\xrefitem ogs_file_param \\\"Input File Parameter\\\" \\\"List of all Input File Parameters\\\" \\ref ogs_file_param__\\1 \\\"\\1\\\""
     "ogs_file_attr_special{1} = \\xrefitem ogs_file_param \\\"Input File Parameter\\\" \\\"List of all Input File Parameters\\\" \\ref ogs_file_attr__\\1 \\\"\\1\\\""
-    "ogs_missing_documentation = \\xrefitem ogs_missing_documentation \\\"Missing Documentation\\\" \\\"OGS Input File Parameters&mdash\;List of incomplete documentation pages\\\" Documentation missing/incomplete")
+    "ogs_missing_documentation = \\xrefitem ogs_missing_documentation \\\"Missing Documentation\\\" \\\"OGS Input File Parameters&mdash\;List of incomplete documentation pages\\\" Documentation missing/incomplete"
+)
 set(DOXYGEN_CREATE_SUBDIRS YES)
-configure_file(${PROJECT_SOURCE_DIR}/Documentation/mainpage.dox.in ${PROJECT_BINARY_DIR}/DocAux/dox/mainpage.dox)
+configure_file(
+    ${PROJECT_SOURCE_DIR}/Documentation/mainpage.dox.in
+    ${PROJECT_BINARY_DIR}/DocAux/dox/mainpage.dox
+)
 
-doxygen_add_docs(doc
-    ${PROJECT_SOURCE_DIR}/
-    ${PROJECT_BINARY_DIR}/DocAux/dox)
+doxygen_add_docs(doc ${PROJECT_SOURCE_DIR}/ ${PROJECT_BINARY_DIR}/DocAux/dox)
 
-if (BASH_TOOL_PATH AND Python3_EXECUTABLE)
+if(BASH_TOOL_PATH AND Python3_EXECUTABLE)
     set(_doc_use_external_tools TRUE)
 else()
     set(_doc_use_external_tools FALSE)
 endif()
-# TODO that will always transform all of the input files no matter if they changed
-# maybe this behaviour can be changed to on-demand processing
-add_custom_target(internal_pre_doc
+# TODO that will always transform all of the input files no matter if they
+# changed maybe this behaviour can be changed to on-demand processing
+add_custom_target(
+    internal_pre_doc
     ${CMAKE_COMMAND}
     -DPROJECT_BINARY_DIR=${PROJECT_BINARY_DIR}
     -DPROJECT_SOURCE_DIR=${PROJECT_SOURCE_DIR}
     -Ddoc_use_external_tools=${_doc_use_external_tools}
-    -P ${PROJECT_SOURCE_DIR}/scripts/cmake/DocumentationProjectFile.cmake
+    -P
+    ${PROJECT_SOURCE_DIR}/scripts/cmake/DocumentationProjectFile.cmake
     WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
-    COMMENT "Generating project file documentation hierarchy." VERBATIM)
+    COMMENT "Generating project file documentation hierarchy."
+    VERBATIM
+)
 add_dependencies(doc internal_pre_doc)
 
-if (_doc_use_external_tools)
-    add_custom_target(internal_pre_doc_qa_page
+if(_doc_use_external_tools)
+    add_custom_target(
+        internal_pre_doc_qa_page
         ${BASH_TOOL_PATH}
         "${PROJECT_SOURCE_DIR}/scripts/doc/generate-project-file-doc-qa.sh"
-        ${PROJECT_SOURCE_DIR}
-        ${PROJECT_BINARY_DIR}
-        "${Data_SOURCE_DIR}"
+        ${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR} "${Data_SOURCE_DIR}"
         WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
-        COMMENT "Generating project file documentation quality assurance pages." VERBATIM)
+        COMMENT "Generating project file documentation quality assurance pages."
+        VERBATIM
+    )
     add_dependencies(doc internal_pre_doc_qa_page)
     add_dependencies(internal_pre_doc_qa_page internal_pre_doc)
 endif()
diff --git a/scripts/cmake/Find.cmake b/scripts/cmake/Find.cmake
index f6b6436e33b1cdc3c7199c27b224e8e91262c9b4..855fa1e18dfec694b5903c5423946be3a2719723 100644
--- a/scripts/cmake/Find.cmake
+++ b/scripts/cmake/Find.cmake
@@ -1,11 +1,12 @@
-######################
-### Find tools     ###
-######################
+# ##############################################################################
+# Find tools
+# ##############################################################################
 
 string(REPLACE ".windows.1" "" GIT_VERSION_STRING ${GIT_VERSION_STRING})
 if(${GIT_VERSION_STRING} VERSION_LESS ${ogs.minimum_version.git})
     message(FATAL_ERROR "Git version ${ogs.minimum_version.git} is required. \
-        Found version ${GIT_VERSION_STRING}.")
+        Found version ${GIT_VERSION_STRING}."
+    )
 endif()
 
 find_package(Doxygen OPTIONAL_COMPONENTS dot)
@@ -16,21 +17,9 @@ find_program(GPROF_PATH gprof DOC "GNU profiler gprof" QUIET)
 find_program(CPPCHECK_TOOL_PATH cppcheck)
 
 # Find bash itself ...
-find_program(BASH_TOOL_PATH bash
-    HINTS ${GITHUB_BIN_DIR} DOC "The bash executable")
-
-# Dumpbin is a windows dependency analaysis tool required for packaging.
-# Variable has to be named gp_cmd to override the outdated find routines
-# of the GetPrerequisites CMake-module.
-if(WIN32)
-    include(MSVCPaths)
-    find_program(gp_cmd dumpbin DOC "Windows dependency analysis tool"
-        PATHS ${MSVC_INSTALL_PATHS} PATH_SUFFIXES VC/bin)
-    if(gp_cmd)
-        get_filename_component(dir ${gp_cmd} PATH)
-        set(ENV{PATH} "${dir}/../../../Common7/IDE;$ENV{PATH}")
-    endif()
-endif()
+find_program(
+    BASH_TOOL_PATH bash HINTS ${GITHUB_BIN_DIR} DOC "The bash executable"
+)
 
 find_program(CURL_TOOL_PATH curl DOC "The curl-tool")
 
@@ -43,8 +32,10 @@ else()
 endif()
 
 # Tools for web
-find_program(VTKJS_CONVERTER vtkDataConverter
-    PATHS ${PROJECT_SOURCE_DIR}/web/node_modules/.bin)
+find_program(
+    VTKJS_CONVERTER vtkDataConverter
+    PATHS ${PROJECT_SOURCE_DIR}/web/node_modules/.bin
+)
 find_program(HUGO hugo)
 find_program(NPM npm)
 find_program(YARN yarn)
@@ -57,11 +48,11 @@ find_program(SNAKEMAKE snakemake HINTS ${LOCAL_VIRTUALENV_BIN_DIRS})
 
 find_program(GMSH gmsh)
 
-######################
-### Find libraries ###
-######################
+# ##############################################################################
+# Find libraries
+# ##############################################################################
 if(OGS_USE_MFRONT)
-    ## pthread, is a requirement of mfront ##
+    # pthread, is a requirement of mfront ##
     set(CMAKE_THREAD_PREFER_PTHREAD ON)
     set(THREADS_PREFER_PTHREAD_FLAG ON)
     find_package(Threads REQUIRED)
@@ -84,10 +75,12 @@ find_package(OpenMP)
 if(OPENMP_FOUND)
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
-    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
+    set(CMAKE_EXE_LINKER_FLAGS
+        "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}"
+    )
 endif()
 
-## Qt5 library ##
+# Qt5 library ##
 if(OGS_BUILD_GUI)
     set(QT_MODULES Gui Widgets Xml XmlPatterns)
     if(UNIX AND NOT APPLE)
@@ -107,23 +100,24 @@ endif()
 # lapack
 find_package(LAPACK QUIET)
 
-## geotiff ##
+# geotiff ##
 find_package(GEOTIFF)
 
-## lis ##
+# lis ##
 if(OGS_USE_LIS)
-    find_package( LIS REQUIRED )
+    find_package(LIS REQUIRED)
 endif()
 
 if(OGS_USE_MKL)
-    find_package( MKL REQUIRED )
+    find_package(MKL REQUIRED)
 endif()
 
 if(OGS_USE_PETSC)
     message(STATUS "Configuring for PETSc")
 
     option(FORCE_PETSC_EXECUTABLE_RUNS
-        "Force CMake to accept a given PETSc configuration" ON)
+           "Force CMake to accept a given PETSc configuration" ON
+    )
 
     # Force CMake to accept a given PETSc configuration in case the failure of
     # MPI tests. This may cause the compilation broken.
@@ -136,11 +130,13 @@ if(OGS_USE_PETSC)
     include_directories(SYSTEM ${PETSC_INCLUDES})
 endif()
 
-## Check MPI package
+# Check MPI package
 if(OGS_USE_MPI)
     find_package(MPI REQUIRED)
 endif()
 
 find_package(Filesystem REQUIRED COMPONENTS Final Experimental)
-configure_file(${PROJECT_SOURCE_DIR}/BaseLib/filesystem.h.in
-               ${PROJECT_BINARY_DIR}/BaseLib/filesystem.h)
+configure_file(
+    ${PROJECT_SOURCE_DIR}/BaseLib/filesystem.h.in
+    ${PROJECT_BINARY_DIR}/BaseLib/filesystem.h
+)
diff --git a/scripts/cmake/FindGEOTIFF.cmake b/scripts/cmake/FindGEOTIFF.cmake
index 54183bc8965cb1b7f38cc0c8fad14c4f65d90be1..e99078bd03bc9523e822aeb0049f19972707b449 100644
--- a/scripts/cmake/FindGEOTIFF.cmake
+++ b/scripts/cmake/FindGEOTIFF.cmake
@@ -1,22 +1,19 @@
-# - Try to find libgeotiff
+# * Try to find libgeotiff
 #
 # Once done, this will define
 #
-#  GEOTIFF_FOUND
-#  GEOTIFF_INCLUDE_DIRS
-#  GEOTIFF_LIBRARIES
+# * GEOTIFF_FOUND
+# * GEOTIFF_INCLUDE_DIRS
+# * GEOTIFF_LIBRARIES
 
-###
-# Dependencies
-###
 set(_deps_libs)
 set(_deps_includes)
 set(_deps_check)
 
-find_path( libgeotiff_INCLUDE_DIR geotiff.h)
+find_path(libgeotiff_INCLUDE_DIR geotiff.h)
 find_library(libgeotiff_LIBRARY geotiff)
 
-find_path( xtiff_INCLUDE_DIR xtiffio.h)
+find_path(xtiff_INCLUDE_DIR xtiffio.h)
 if(MSVC)
     find_library(xtiff_LIBRARY xtiff)
     list(APPEND _deps_libs ${xtiff_LIBRARY})
@@ -29,15 +26,14 @@ list(APPEND _deps_includes ${TIFF_INCLUDE_DIRS})
 list(APPEND _deps_check TIFF_FOUND)
 
 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(GEOTIFF
-    REQUIRED_VARS
-    libgeotiff_LIBRARY
-    libgeotiff_INCLUDE_DIR
-    xtiff_INCLUDE_DIR
-    ${_deps_check}
+find_package_handle_standard_args(
+    GEOTIFF REQUIRED_VARS libgeotiff_LIBRARY libgeotiff_INCLUDE_DIR
+                          xtiff_INCLUDE_DIR ${_deps_check}
 )
 
 if(GEOTIFF_FOUND)
-    set(GEOTIFF_INCLUDE_DIRS ${libgeotiff_INCLUDE_DIR} ${xtiff_INCLUDE_DIR} ${_deps_includes})
+    set(GEOTIFF_INCLUDE_DIRS ${libgeotiff_INCLUDE_DIR} ${xtiff_INCLUDE_DIR}
+                             ${_deps_includes}
+    )
     set(GEOTIFF_LIBRARIES ${libgeotiff_LIBRARY} ${_deps_libs})
 endif()
diff --git a/scripts/cmake/Functions.cmake b/scripts/cmake/Functions.cmake
index 019e9c6d46cf3c2239a6e89099b53cc7aa208fb9..38f52a5a61c55b42531c45dd336b88d87e7b12f5 100644
--- a/scripts/cmake/Functions.cmake
+++ b/scripts/cmake/Functions.cmake
@@ -1,11 +1,14 @@
 # Returns the current subdirectory in the sources directory.
 macro(GET_CURRENT_SOURCE_SUBDIRECTORY current_source_subdirectory)
-    string(REGEX REPLACE ".*/([^/]*)" "\\1" REGEX_RESULT "${CMAKE_CURRENT_SOURCE_DIR}" )
+    string(REGEX REPLACE ".*/([^/]*)" "\\1" REGEX_RESULT
+                         "${CMAKE_CURRENT_SOURCE_DIR}"
+    )
     set(${current_source_subdirectory} ${REGEX_RESULT})
 endmacro()
 
-# Returns a list of source files (*.h and *.cpp) in source_files and creates a Visual
-# Studio folder. A (relative) subdirectory can be passed as second parameter (optional).
+# Returns a list of source files (*.h and *.cpp) in source_files and creates a
+# Visual Studio folder. A (relative) subdirectory can be passed as second
+# parameter (optional).
 macro(GET_SOURCE_FILES source_files)
     if(${ARGC} EQUAL 2)
         set(DIR "${ARGV1}")
@@ -14,11 +17,20 @@ macro(GET_SOURCE_FILES source_files)
     endif()
 
     # Get all files in the directory
-    file(GLOB GET_SOURCE_FILES_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS ${DIR}/*.h)
-    file(GLOB GET_SOURCE_FILES_TEMPLATES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS ${DIR}/*.tpp)
-    file(GLOB GET_SOURCE_FILES_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS ${DIR}/*.cpp)
+    file(GLOB GET_SOURCE_FILES_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+         CONFIGURE_DEPENDS ${DIR}/*.h
+    )
+    file(GLOB GET_SOURCE_FILES_TEMPLATES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+         CONFIGURE_DEPENDS ${DIR}/*.tpp
+    )
+    file(GLOB GET_SOURCE_FILES_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+         CONFIGURE_DEPENDS ${DIR}/*.cpp
+    )
 
-    set(${source_files} ${GET_SOURCE_FILES_HEADERS} ${GET_SOURCE_FILES_TEMPLATES} ${GET_SOURCE_FILES_SOURCES})
+    set(${source_files}
+        ${GET_SOURCE_FILES_HEADERS} ${GET_SOURCE_FILES_TEMPLATES}
+        ${GET_SOURCE_FILES_SOURCES}
+    )
     list(LENGTH ${source_files} NUM_FILES)
     if(${NUM_FILES} EQUAL 0)
         message(FATAL_ERROR "No source files found in ${DIR}")
@@ -33,15 +45,17 @@ macro(GET_SOURCE_FILES source_files)
     endif()
 
     GET_CURRENT_SOURCE_SUBDIRECTORY(DIRECTORY)
-    source_group("${DIRECTORY}${DIR}" FILES
-        ${GET_SOURCE_FILES_HEADERS}
-        ${GET_SOURCE_FILES_SOURCES}
-        ${GET_SOURCE_FILES_TEMPLATES})
+    source_group(
+        "${DIRECTORY}${DIR}"
+        FILES ${GET_SOURCE_FILES_HEADERS} ${GET_SOURCE_FILES_SOURCES}
+              ${GET_SOURCE_FILES_TEMPLATES}
+    )
 
 endmacro()
 
-# Appends a list of source files (*.h and *.cpp) to source_files and creates a Visual
-# Studio folder. A (relative) subdirectory can be passed as second parameter (optional).
+# Appends a list of source files (*.h and *.cpp) to source_files and creates a
+# Visual Studio folder. A (relative) subdirectory can be passed as second
+# parameter (optional).
 macro(APPEND_SOURCE_FILES source_files)
     if(${ARGC} EQUAL 2)
         set(DIR "${ARGV1}")
@@ -53,15 +67,22 @@ macro(APPEND_SOURCE_FILES source_files)
     set(${source_files} ${${source_files}} ${TMP_SOURCES})
 endmacro()
 
-# Creates one ctest for each googletest found in source files passed as arguments
-# number two onwards. Argument one specifies the testrunner executable.
+# Creates one ctest for each googletest found in source files passed as
+# arguments number two onwards. Argument one specifies the testrunner
+# executable.
 macro(ADD_GOOGLE_TESTS executable)
     foreach(source ${ARGN})
         file(READ "${source}" contents)
-        string(REGEX MATCHALL "TEST_?F?\\(([A-Za-z_0-9 ,]+)\\)" found_tests ${contents})
+        string(REGEX MATCHALL "TEST_?F?\\(([A-Za-z_0-9 ,]+)\\)" found_tests
+                     ${contents}
+        )
         foreach(hit ${found_tests})
-            string(REGEX REPLACE ".*\\(([A-Za-z_0-9]+)[, ]*([A-Za-z_0-9]+)\\).*" "\\1.\\2" test_name ${hit})
-            add_test(${test_name} ${executable}  --gtest_output=xml --gtest_filter=${test_name} ${MI3CTestingDir})
+            string(REGEX REPLACE ".*\\(([A-Za-z_0-9]+)[, ]*([A-Za-z_0-9]+)\\).*"
+                                 "\\1.\\2" test_name ${hit}
+            )
+            add_test(${test_name} ${executable} --gtest_output=xml
+                     --gtest_filter=${test_name} ${MI3CTestingDir}
+            )
         endforeach()
     endforeach()
 endmacro()
@@ -71,28 +92,43 @@ endmacro()
 function(add_autogen_include target)
     get_property(IsMultiConfig GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
     if(IsMultiConfig)
-        target_include_directories(${target} PUBLIC
-            ${CMAKE_CURRENT_BINARY_DIR}/${target}_autogen/include_$<CONFIG>)
+        target_include_directories(
+            ${target}
+            PUBLIC
+                ${CMAKE_CURRENT_BINARY_DIR}/${target}_autogen/include_$<CONFIG>
+        )
     else()
-        target_include_directories(${target} PUBLIC
-            ${CMAKE_CURRENT_BINARY_DIR}/${target}_autogen/include)
+        target_include_directories(
+            ${target}
+            PUBLIC ${CMAKE_CURRENT_BINARY_DIR}/${target}_autogen/include
+        )
     endif()
 endfunction()
 
 # Replacement for add_library() for ogs targets
 function(ogs_add_library targetName)
     add_library(${targetName} ${ARGN})
-    target_compile_options(${targetName} PRIVATE
-        # OR does not work with cotire
-        # $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,
-            #    $<CXX_COMPILER_ID:GNU>>:-Wall -Wextra>
-        $<$<CXX_COMPILER_ID:Clang>:-Wall -Wextra -Wunreachable-code>
-        $<$<CXX_COMPILER_ID:AppleClang>:-Wall -Wextra -Wunreachable-code>
-        $<$<CXX_COMPILER_ID:GNU>:-Wall -Wextra -Wunreachable-code>
-        $<$<CXX_COMPILER_ID:MSVC>:/W3>)
+    target_compile_options(
+        ${targetName}
+        PRIVATE # OR does not work with cotire
+                # $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,
+                # $<CXX_COMPILER_ID:GNU>>:-Wall -Wextra>
+                $<$<CXX_COMPILER_ID:Clang>:-Wall
+                -Wextra
+                -Wunreachable-code>
+                $<$<CXX_COMPILER_ID:AppleClang>:-Wall
+                -Wextra
+                -Wunreachable-code>
+                $<$<CXX_COMPILER_ID:GNU>:-Wall
+                -Wextra
+                -Wunreachable-code>
+                $<$<CXX_COMPILER_ID:MSVC>:/W3>
+    )
 
     if(BUILD_SHARED_LIBS)
-        install(TARGETS ${targetName} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+        install(TARGETS ${targetName}
+                LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+        )
     endif()
 
     include(GenerateExportHeader)
@@ -100,14 +136,17 @@ function(ogs_add_library targetName)
     target_include_directories(${targetName} PUBLIC ${CMAKE_CURRENT_BINARY_DIR})
 
     if(${CMAKE_VERSION} VERSION_GREATER_EQUAL 3.16)
-        set_target_properties(${targetName} PROPERTIES
-            UNITY_BUILD ${OGS_USE_UNITY_BUILDS})
+        set_target_properties(
+            ${targetName} PROPERTIES UNITY_BUILD ${OGS_USE_UNITY_BUILDS}
+        )
     endif()
 endfunction()
 
 # Parses current directory into a list
 function(current_dir_as_list baseDir outList)
-    file(RELATIVE_PATH REL_DIR ${PROJECT_SOURCE_DIR}/${baseDir} ${CMAKE_CURRENT_LIST_DIR})
+    file(RELATIVE_PATH REL_DIR ${PROJECT_SOURCE_DIR}/${baseDir}
+         ${CMAKE_CURRENT_LIST_DIR}
+    )
     string(REPLACE "/" ";" DIR_LIST ${REL_DIR})
     set(${outList} ${DIR_LIST} PARENT_SCOPE)
 endfunction()
diff --git a/scripts/cmake/GCCSanitizer.cmake b/scripts/cmake/GCCSanitizer.cmake
index a5ceb68e26e87667e3201efc2478f0f6c8b23f38..f4bee80a022de9a32f1934fa77373d06d94516c7 100644
--- a/scripts/cmake/GCCSanitizer.cmake
+++ b/scripts/cmake/GCCSanitizer.cmake
@@ -1,5 +1,7 @@
 option(OGS_ADDRESS_SANITIZER OFF "Use GCCs AddressSanitizer")
-option(OGS_UNDEFINED_BEHAVIOR_SANITIZER OFF "Use GCCs UndefinedBehaviorSanitizer")
+option(OGS_UNDEFINED_BEHAVIOR_SANITIZER OFF
+       "Use GCCs UndefinedBehaviorSanitizer"
+)
 
 if(OGS_ADDRESS_SANITIZER)
     set(SANITIZE_FLAG_VALUE "address")
@@ -7,7 +9,9 @@ if(OGS_ADDRESS_SANITIZER)
 endif()
 
 if(OGS_UNDEFINED_BEHAVIOR_SANITIZER)
-    set(SANITIZE_FLAG_VALUE "${SANITIZE_FLAG_VALUE},undefined,unreachable,integer-divide-by-zero,vla-bound,bounds,null")
+    set(SANITIZE_FLAG_VALUE
+        "${SANITIZE_FLAG_VALUE},undefined,unreachable,integer-divide-by-zero,vla-bound,bounds,null"
+    )
 endif()
 
 if(DEFINED SANITIZE_FLAG_VALUE)
diff --git a/scripts/cmake/GitSetup.cmake b/scripts/cmake/GitSetup.cmake
index 8d1cf3f5e036ec5d6b3eb31b14f0610f569d12ef..21670a0bc59403b6721ab85ce709e76f2a6bae23 100644
--- a/scripts/cmake/GitSetup.cmake
+++ b/scripts/cmake/GitSetup.cmake
@@ -1,4 +1,4 @@
-### Git detection ###
+# Git detection
 find_package(Git REQUIRED)
 
 # cmake-lint: disable=W0106
@@ -10,19 +10,27 @@ elseif(DEFINED OGS_VERSION)
 endif()
 
 if(NOT _IS_GIT_REPO)
-    execute_process(COMMAND ${GIT_EXECUTABLE} status
+    execute_process(
+        COMMAND ${GIT_EXECUTABLE} status
         WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
         RESULT_VARIABLE _IS_GIT_REPO
-        OUTPUT_QUIET)
+        OUTPUT_QUIET
+    )
     if(_IS_GIT_REPO GREATER 0)
         set(_IS_GIT_REPO FALSE CACHE INTERNAL "")
         if(DEFINED OGS_VERSION)
-            message(WARNING "Using user-provided OGS_VERSION; Submodule setup is skipped!")
+            message(
+                WARNING
+                    "Using user-provided OGS_VERSION; Submodule setup is skipped!"
+            )
         else()
-            message(FATAL_ERROR "No git repository found at ${PROJECT_SOURCE_DIR}! "
-                "Please use git to obtain the source code! See "
-                "https://www.opengeosys.org/docs/devguide/getting-started/get-the-source-code/"
-                " OR manually set the OGS_VERSION variable.")
+            message(
+                FATAL_ERROR
+                    "No git repository found at ${PROJECT_SOURCE_DIR}! "
+                    "Please use git to obtain the source code! See "
+                    "https://www.opengeosys.org/docs/devguide/getting-started/get-the-source-code/"
+                    " OR manually set the OGS_VERSION variable."
+            )
         endif()
     else()
         set(_IS_GIT_REPO TRUE CACHE INTERNAL "")
@@ -72,19 +80,26 @@ if(_IS_GIT_REPO AND NOT OGS_VERSION)
 
         set(OGS_VERSION ${DESCRIBE_TAG})
         if(DESCRIBE_COMMIT_COUNT GREATER 0)
-            set(OGS_VERSION "${OGS_VERSION}-${DESCRIBE_COMMIT_COUNT}-${DESCRIBE_COMMIT_NAME}")
+            set(OGS_VERSION
+                "${OGS_VERSION}-${DESCRIBE_COMMIT_COUNT}-${DESCRIBE_COMMIT_NAME}"
+            )
         endif()
 
         if(DESCRIBE_DIRTY)
             set(OGS_VERSION "${OGS_VERSION}.dirty")
             if(DEFINED ENV{CI})
                 string(TIMESTAMP DESCRIBE_DIRTY_TIMESTAMP "%Y%m%d%H%M%S" UTC)
-                set(OGS_VERSION "${OGS_VERSION}.dirty.${DESCRIBE_DIRTY_TIMESTAMP}")
+                set(OGS_VERSION
+                    "${OGS_VERSION}.dirty.${DESCRIBE_DIRTY_TIMESTAMP}"
+                )
             endif()
         endif()
         message(STATUS "OGS VERSION: ${OGS_VERSION} (reported by git)")
     else()
-        message(WARNING "Git repository contains no tags! Please run: git fetch --tags")
+        message(
+            WARNING
+                "Git repository contains no tags! Please run: git fetch --tags"
+        )
     endif()
 
     # Get git commit
diff --git a/scripts/cmake/MSVCPaths.cmake b/scripts/cmake/MSVCPaths.cmake
deleted file mode 100644
index efc6911a518a0b122f8747c21dc0444f943723be..0000000000000000000000000000000000000000
--- a/scripts/cmake/MSVCPaths.cmake
+++ /dev/null
@@ -1,24 +0,0 @@
-# This set MSVC_INSTALL_PATHS cache variable to a list of possible Visual Studio
-# install directories.
-# Usage:
-#
-#  include(MSVCPaths)
-#    find_program(DUMPBIN_TOOL_PATH dumpbin DOC "Windows dependency analysis tool"
-#      PATHS MSVC_INSTALL_PATHS PATH_SUFFIXES VC/bin)
-
-if(MSVC)
-    if(MSVC_VERSION EQUAL 1700)
-        set(MSVC_NUMBER 11.0)
-    elseif(MSVC_VERSION EQUAL 1800)
-        set(MSVC_NUMBER 12.0)
-    endif()
-    get_filename_component(VS_DIR "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\${MSVC_NUMBER}\\Setup\\VS;ProductDir]" REALPATH)
-    get_filename_component(VS_EXPRESS_DIR "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\${MSVC_NUMBER}\\Setup\\VS;ProductDir]" REALPATH)
-
-    set(X86_TMP "ProgramFiles(x86)")
-    set(MSVC_INSTALL_PATHS
-        ${VS_DIR} ${VS_EXPRESS_DIR}
-        "$ENV{ProgramFiles}/Microsoft\ Visual\ Studio\ ${MSVC_NUMBER}"
-        "$ENV{${X86_TMP}}/Microsoft\ Visual\ Studio\ ${MSVC_NUMBER}"
-        CACHE STRING "" FORCE)
-endif()
diff --git a/scripts/cmake/MetisSetup.cmake b/scripts/cmake/MetisSetup.cmake
index 47a1ee837bfa911773674d5cebc471009615230c..f9300fa7941879c9360e476e4b394f25925e352a 100644
--- a/scripts/cmake/MetisSetup.cmake
+++ b/scripts/cmake/MetisSetup.cmake
@@ -1,5 +1,11 @@
-message( STATUS "The METIS package is copyrighted by the Regents of the University of Minnesota." )
-message( STATUS "Please read the license of the METIS package carefully before you use the METIS." )
+message(
+    STATUS
+        "The METIS package is copyrighted by the Regents of the University of Minnesota."
+)
+message(
+    STATUS
+        "Please read the license of the METIS package carefully before you use the METIS."
+)
 
 set(METIS_PATH ${metis_SOURCE_DIR})
 add_definitions(-DUSE_GKREGEX)
@@ -15,9 +21,8 @@ include(${GKLIB_PATH}/GKlibSystem.cmake)
 include_directories(${GKLIB_PATH})
 include_directories(${METIS_PATH}/include)
 
-# From ${METIS_PATH}/libmetis/CMakeLists.txt
-# Removed linking to conan
-# Add this directory for internal users.
+# From ${METIS_PATH}/libmetis/CMakeLists.txt Removed linking to conan Add this
+# directory for internal users.
 include_directories(BEFORE ${METIS_PATH}/libmetis)
 # Find sources.
 file(GLOB metis_sources ${METIS_PATH}/libmetis/*.c)
@@ -37,16 +42,14 @@ elseif(MSVC)
     generate_export_header(ogs_metis)
 endif()
 
-## Compile mpmetis
+# Compile mpmetis
 add_compile_definitions(IDXTYPEWIDTH=64)
 add_definitions(-DSVNINFO="")
 include_directories(${METIS_PATH}/libmetis)
 include_directories(${METIS_PATH}/programs)
 set(METIS_SOURCES
-    ${METIS_PATH}/programs/mpmetis.c
-    ${METIS_PATH}/programs/cmdline_mpmetis.c
-    ${METIS_PATH}/programs/io.c
-    ${METIS_PATH}/programs/stat.c
+    ${METIS_PATH}/programs/mpmetis.c ${METIS_PATH}/programs/cmdline_mpmetis.c
+    ${METIS_PATH}/programs/io.c ${METIS_PATH}/programs/stat.c
 )
 add_executable(mpmetis ${METIS_SOURCES})
 target_link_libraries(mpmetis ogs_metis)
diff --git a/scripts/cmake/ParseCMakeArgs.cmake b/scripts/cmake/ParseCMakeArgs.cmake
index c0df8647d1a19cc32d47c96bb68753a80bfa23a8..fbd99f7618d73b0983cf96e3fcaa7fcb9462a494 100644
--- a/scripts/cmake/ParseCMakeArgs.cmake
+++ b/scripts/cmake/ParseCMakeArgs.cmake
@@ -1,19 +1,17 @@
 # Implementation from https://stackoverflow.com/questions/10205986
 #
-# Captures not-yet cached CMake variables.
-# On first CMake run via cmake-cli this works as expected.
-# Once the variables are cached this will not work anymore (and is
-# therefore skipped).
+# Captures not-yet cached CMake variables. On first CMake run via cmake-cli this
+# works as expected. Once the variables are cached this will not work anymore
+# (and is therefore skipped).
 #
 # When running CMake -D.. passed args can be retrieved with by the
-# CACHE_VARIABLES CMake property. On sub-sequent CMake runs it is
-# no longer possible to differentiate between variables already cached
-# by option()-calls and variables passed to the CMake call with -D..
+# CACHE_VARIABLES CMake property. On sub-sequent CMake runs it is no longer
+# possible to differentiate between variables already cached by option()-calls
+# and variables passed to the CMake call with -D..
 #
-# A (cached) map data structure would solve this.
-# Tried the following map implementations without luck:
-# - https://github.com/toeb/cmakepp (not cached)
-# - https://github.com/j3lamp/mcl (did not work at all)
+# A (cached) map data structure would solve this. Tried the following map
+# implementations without luck: - https://github.com/toeb/cmakepp (not cached) -
+# https://github.com/j3lamp/mcl (did not work at all)
 
 if(EXISTS ${PROJECT_BINARY_DIR}/CMakeCache.txt)
     return()
@@ -22,18 +20,24 @@ endif()
 get_cmake_property(CACHE_VARS CACHE_VARIABLES)
 foreach(cache_var ${CACHE_VARS})
     get_property(CACHE_VAR_HELPSTRING CACHE ${cache_var} PROPERTY HELPSTRING)
-    if(CACHE_VAR_HELPSTRING STREQUAL "No help, variable specified on the command line.")
+    if(CACHE_VAR_HELPSTRING STREQUAL
+       "No help, variable specified on the command line."
+    )
         get_property(CACHE_VAR_TYPE CACHE ${cache_var} PROPERTY TYPE)
         if(CACHE_VAR_TYPE STREQUAL "UNINITIALIZED")
             set(CACHE_VAR_TYPE)
         else()
             set(CACHE_VAR_TYPE :${CACHE_VAR_TYPE})
         endif()
-        set(CMAKE_ARGS "${CMAKE_ARGS} -D${cache_var}${CACHE_VAR_TYPE}=\"${${cache_var}}\"")
+        set(CMAKE_ARGS
+            "${CMAKE_ARGS} -D${cache_var}${CACHE_VAR_TYPE}=\"${${cache_var}}\""
+        )
     endif()
 endforeach()
 
-set(CMAKE_ARGS "${CMAKE_ARGS} -DCMAKE_BUILD_TYPE=\"${CMAKE_BUILD_TYPE}\"" CACHE STRING "")
+set(CMAKE_ARGS "${CMAKE_ARGS} -DCMAKE_BUILD_TYPE=\"${CMAKE_BUILD_TYPE}\""
+    CACHE STRING ""
+)
 string(REPLACE "\"" "\\\"" CMAKE_ARGS_ESCAPED ${CMAKE_ARGS})
 set(CMAKE_ARGS_ESCAPED "${CMAKE_ARGS_ESCAPED}" CACHE STRING "")
 file(WRITE ${PROJECT_BINARY_DIR}/cmake-args "${CMAKE_ARGS}\n")
diff --git a/scripts/cmake/ProcessesSetup.cmake b/scripts/cmake/ProcessesSetup.cmake
index f12185f7314d21cc4f104b5e63664f8da69d9b4c..9030b7a7a03851aad1f6fc51c301292baa678f4c 100644
--- a/scripts/cmake/ProcessesSetup.cmake
+++ b/scripts/cmake/ProcessesSetup.cmake
@@ -22,21 +22,25 @@ set(_processes_list
     ThermoMechanicalPhaseField
     ThermoMechanics
     TwoPhaseFlowWithPP
-    TwoPhaseFlowWithPrho)
+    TwoPhaseFlowWithPrho
+)
 
 # Add a cmake option for each process.
 foreach(process ${_processes_list})
     option(OGS_BUILD_PROCESS_${process} "Build the ${process} process." ON)
 endforeach()
 
-set(OGS_BUILD_PROCESSES
-    ""
-    CACHE STRING "Semicolon-separated list of processes to build")
+set(OGS_BUILD_PROCESSES ""
+    CACHE STRING "Semicolon-separated list of processes to build"
+)
 if(NOT OGS_BUILD_CLI)
     set(OGS_BUILD_PROCESSES OFF "" CACHE STRING "" FORCE)
-    message(STATUS "ATTENTION: OGS_BUILD_CLI=OFF -> OGS_BUILD_PROCESSES is set to OFF too.\n"
-        "   If cli is switched on again, remember to switch processes back to on \n"
-        "   too with -DOGS_BUILD_PROCESSES=\"\"!")
+    message(
+        STATUS
+            "ATTENTION: OGS_BUILD_CLI=OFF -> OGS_BUILD_PROCESSES is set to OFF too.\n"
+            "   If cli is switched on again, remember to switch processes back to on \n"
+            "   too with -DOGS_BUILD_PROCESSES=\"\"!"
+    )
 endif()
 if(NOT "${OGS_BUILD_PROCESSES}" STREQUAL "")
     if(${OGS_BUILD_PROCESSES})
diff --git a/scripts/cmake/ProjectSetup.cmake b/scripts/cmake/ProjectSetup.cmake
index 49e93cae39c6164113f282cb5531af038679ed4a..3cc5260cbe1177e4954a1053c95e166bed7b616f 100644
--- a/scripts/cmake/ProjectSetup.cmake
+++ b/scripts/cmake/ProjectSetup.cmake
@@ -1,13 +1,25 @@
 # Set build directories
-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR})
-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
-set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
+    ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
+)
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY
+    ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
+)
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY
+    ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
+)
 if(OGS_USE_CONAN AND MSVC)
     foreach(outputconfig ${CMAKE_CONFIGURATION_TYPES})
         string(TOUPPER ${outputconfig} outputconfig)
-        set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${outputconfig} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-        set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${outputconfig} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
-        set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${outputconfig} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
+        set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${outputconfig}
+            ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
+        )
+        set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${outputconfig}
+            ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+        )
+        set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${outputconfig}
+            ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+        )
     endforeach()
 endif()
 
@@ -26,9 +38,8 @@ if(APPLE)
 else()
     set(BASEPOINT $ORIGIN)
 endif()
-file(RELATIVE_PATH relDir
-    ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
-    ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
+file(RELATIVE_PATH relDir ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
+     ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
 )
 set(CMAKE_INSTALL_RPATH ${BASEPOINT} ${BASEPOINT}/${relDir})
 set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
diff --git a/scripts/cmake/PythonSetup.cmake b/scripts/cmake/PythonSetup.cmake
index acf68936c54ea73d4d0c10a58bff74c72e176c22..cbc7f1e2b7c63bd1f4d186d7262b456ec6010d20 100644
--- a/scripts/cmake/PythonSetup.cmake
+++ b/scripts/cmake/PythonSetup.cmake
@@ -2,15 +2,21 @@
 if(OGS_USE_POETRY)
     find_program(POETRY poetry)
     if(POETRY)
-        configure_file(${PROJECT_SOURCE_DIR}/scripts/python/poetry.in.toml
-            ${PROJECT_BINARY_DIR}/poetry.toml COPYONLY)
+        configure_file(
+            ${PROJECT_SOURCE_DIR}/scripts/python/poetry.in.toml
+            ${PROJECT_BINARY_DIR}/poetry.toml COPYONLY
+        )
         if(NOT EXISTS ${PROJECT_BINARY_DIR}/pyproject.toml)
-            configure_file(${PROJECT_SOURCE_DIR}/scripts/python/pyproject.in.toml
-                ${PROJECT_BINARY_DIR}/pyproject.toml)
+            configure_file(
+                ${PROJECT_SOURCE_DIR}/scripts/python/pyproject.in.toml
+                ${PROJECT_BINARY_DIR}/pyproject.toml
+            )
         endif()
         if(NOT EXISTS ${PROJECT_BINARY_DIR}/.venv)
-            execute_process(COMMAND ${_CMD_COMMAND} poetry install
-                WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
+            execute_process(
+                COMMAND ${_CMD_COMMAND} poetry install
+                WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+            )
         endif()
         set(Python3_ROOT_DIR ${PROJECT_BINARY_DIR}/.venv)
         set(Python3_EXECUTABLE ${Python3_ROOT_DIR}/bin/python)
@@ -21,32 +27,39 @@ if(OGS_USE_POETRY)
 endif()
 
 if(OGS_USE_PYTHON)
-    find_package(Python3 ${ogs.minimum_version.python} COMPONENTS Interpreter Development REQUIRED)
+    find_package(
+        Python3 ${ogs.minimum_version.python} COMPONENTS Interpreter Development
+        REQUIRED
+    )
 else()
     find_package(Python3 ${ogs.minimum_version.python} COMPONENTS Interpreter)
 endif()
 if(POETRY)
     if(MSVC)
         file(TO_NATIVE_PATH "${Python3_ROOT_DIR}/Lib/site-packages"
-            Python3_VIRTUALENV_SITEPACKAGES)
+             Python3_VIRTUALENV_SITEPACKAGES
+        )
         string(REPLACE "\\" "\\\\" Python3_VIRTUALENV_SITEPACKAGES
-            ${Python3_VIRTUALENV_SITEPACKAGES})
+                       ${Python3_VIRTUALENV_SITEPACKAGES}
+        )
     else()
         set(Python3_VIRTUALENV_SITEPACKAGES
-            ${Python3_ROOT_DIR}/lib/python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}/site-packages)
+            ${Python3_ROOT_DIR}/lib/python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}/site-packages
+        )
     endif()
 endif()
 
-set(LOCAL_VIRTUALENV_BIN_DIRS
-    ${PROJECT_BINARY_DIR}/.venv/bin
-    ${PROJECT_BINARY_DIR}/.venv/Scripts
-    CACHE INTERNAL ""
+set(LOCAL_VIRTUALENV_BIN_DIRS ${PROJECT_BINARY_DIR}/.venv/bin
+                              ${PROJECT_BINARY_DIR}/.venv/Scripts CACHE INTERNAL
+                                                                        ""
 )
 
 if(POETRY)
     if(OGS_BUILD_TESTING)
         list(APPEND PYTHON_PACKAGES snakemake=${ogs.minimum_version.snakemake})
     endif()
-    execute_process(COMMAND ${_CMD_COMMAND} poetry add ${PYTHON_PACKAGES}
-        WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
+    execute_process(
+        COMMAND ${_CMD_COMMAND} poetry add ${PYTHON_PACKAGES}
+        WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+    )
 endif()
diff --git a/scripts/cmake/UnityBuildSettings.cmake b/scripts/cmake/UnityBuildSettings.cmake
index c469531a0f3fd9b299c439992b7ea102830beb8a..fc1a1816dfba5621603721a82df5658c27e97b40 100644
--- a/scripts/cmake/UnityBuildSettings.cmake
+++ b/scripts/cmake/UnityBuildSettings.cmake
@@ -7,7 +7,8 @@ set_target_properties(GeoLib PROPERTIES UNITY_BUILD_BATCH_SIZE 40)
 set_target_properties(MaterialLib PROPERTIES UNITY_BUILD_BATCH_SIZE 20)
 set_target_properties(MathLib PROPERTIES UNITY_BUILD_BATCH_SIZE 10)
 set_target_properties(MeshLib PROPERTIES UNITY_BUILD_BATCH_SIZE 20)
-# set_target_properties(ProcessLib PROPERTIES UNITY_BUILD_BATCH_SIZE 80) # breaks!
+# set_target_properties(ProcessLib PROPERTIES UNITY_BUILD_BATCH_SIZE 80) #
+# breaks!
 
 if(TARGET testrunner)
     set_target_properties(testrunner PROPERTIES UNITY_BUILD ON)
diff --git a/scripts/cmake/Versions.cmake b/scripts/cmake/Versions.cmake
index 7d256e618cdac3cada40f955fd5c3d24a6e87111..a80d804fc084862dfa91fa2a7daac348cf12e64a 100644
--- a/scripts/cmake/Versions.cmake
+++ b/scripts/cmake/Versions.cmake
@@ -7,8 +7,7 @@ CPMAddPackage(
 include("${json-cmake_SOURCE_DIR}/JSONParser.cmake")
 file(READ ${PROJECT_SOURCE_DIR}/web/data/versions.json jsonFileString)
 sbeParseJson(ogs jsonFileString)
-# Provides variables, e.g. ogs.minimum_version.gcc
-# Output all variables with
+# Provides variables, e.g. ogs.minimum_version.gcc. Output all variables with
 # ~~~
 #   foreach(var ${ogs})
 #     message("${var} = ${${var}}")
diff --git a/scripts/cmake/iphreeqc.cmake b/scripts/cmake/iphreeqc.cmake
index 0ff4c6e296bde6cf63e23980c052c9a74270e3a4..4995e45c63a18fbfcc0bae9099c4b9bfdd71e44f 100644
--- a/scripts/cmake/iphreeqc.cmake
+++ b/scripts/cmake/iphreeqc.cmake
@@ -85,19 +85,18 @@ set(SOURCES
 )
 
 # compile Var.c as c++
-SET_SOURCE_FILES_PROPERTIES(${iphreeqc_SOURCE_DIR}/src/Var.c PROPERTIES LANGUAGE CXX)
+SET_SOURCE_FILES_PROPERTIES(
+    ${iphreeqc_SOURCE_DIR}/src/Var.c PROPERTIES LANGUAGE CXX
+)
 
 add_library(iphreeqc STATIC ${SOURCES})
-target_include_directories(iphreeqc
-    PUBLIC
-        ${iphreeqc_SOURCE_DIR}/src/phreeqcpp/common
-        ${iphreeqc_SOURCE_DIR}/src/phreeqcpp/PhreeqcKeywords
-        ${iphreeqc_SOURCE_DIR}/src/phreeqcpp
-        ${iphreeqc_SOURCE_DIR}/src
-)
-target_compile_definitions(iphreeqc
-    PUBLIC LDBLE=double
+target_include_directories(
+    iphreeqc
+    PUBLIC ${iphreeqc_SOURCE_DIR}/src/phreeqcpp/common
+           ${iphreeqc_SOURCE_DIR}/src/phreeqcpp/PhreeqcKeywords
+           ${iphreeqc_SOURCE_DIR}/src/phreeqcpp ${iphreeqc_SOURCE_DIR}/src
 )
+target_compile_definitions(iphreeqc PUBLIC LDBLE=double)
 # Exclude iphreeqc target from clang-tidy tests because it handles the above
 # mentioned 'src/src/Var.c' file as c, not c++.
 set_target_properties(iphreeqc PROPERTIES CXX_CLANG_TIDY "")
diff --git a/scripts/cmake/packaging/ArchiveTestdata.cmake b/scripts/cmake/packaging/ArchiveTestdata.cmake
index 3cb44e44dbfb5260b345f94a07c51c95e20b7186..b0d2f41078bc45726d06a8ea6ccbd5f0dba66e0f 100644
--- a/scripts/cmake/packaging/ArchiveTestdata.cmake
+++ b/scripts/cmake/packaging/ArchiveTestdata.cmake
@@ -10,9 +10,11 @@ if(NOT REALPATH_TOOL_PATH OR NOT ZIP_TOOL_PATH)
     return()
 endif()
 
-add_custom_target(archive-data
+add_custom_target(
+    archive-data
     bash ${PROJECT_SOURCE_DIR}/scripts/packaging/archive-testdata.sh
     DEPENDS data
     WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
-    COMMENT "Packaging testdata to ogs6-data.tar.gz and ogs6-data.zip" VERBATIM
+    COMMENT "Packaging testdata to ogs6-data.tar.gz and ogs6-data.zip"
+    VERBATIM
 )
diff --git a/scripts/cmake/packaging/Pack.cmake b/scripts/cmake/packaging/Pack.cmake
index b9d4a04659e476cfac94e73b153f029af4d9928d..ddc52dddd66d8f0a8734b4774dee715cbec0bec0 100644
--- a/scripts/cmake/packaging/Pack.cmake
+++ b/scripts/cmake/packaging/Pack.cmake
@@ -1,10 +1,10 @@
 if(_IS_SUBPROJECT)
-    include (CPack)
+    include(CPack)
     return()
 endif()
 
-# Put ogs installs into its own component and then only install
-# this component (avoids third-party installs from CPM).
+# Put ogs installs into its own component and then only install this component
+# (avoids third-party installs from CPM).
 set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME ogs)
 set(CPACK_INSTALL_CMAKE_PROJECTS
     "${PROJECT_BINARY_DIR};${PROJECT_NAME};${CMAKE_INSTALL_DEFAULT_COMPONENT_NAME};/"
@@ -14,7 +14,7 @@ option(OGS_INSTALL_DEPENDENCIES "Package dependencies.")
 include(packaging/PackagingMacros)
 include(packaging/ArchiveTestdata)
 
-#### Packaging setup ####
+# Packaging setup
 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OGS-6 THM/C Simulator")
 set(CPACK_PACKAGE_VENDOR "OpenGeoSys Community (http://www.opengeosys.org)")
 set(CPACK_PACKAGE_INSTALL_DIRECTORY "OGS-${OGS_VERSION}")
@@ -42,28 +42,31 @@ if(APPLE)
     string(REGEX MATCH "(^[0-9]*)" TMP ${CMAKE_SYSTEM_VERSION})
     math(EXPR OSX_VERSION_MINOR "${CMAKE_MATCH_1} - 4")
     set(CPACK_PACKAGE_FILE_NAME
-        "ogs-${OGS_VERSION}-OSX-10.${OSX_VERSION_MINOR}-${SUFFIX}")
+        "ogs-${OGS_VERSION}-OSX-10.${OSX_VERSION_MINOR}-${SUFFIX}"
+    )
     set(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME})
 else()
     set(CPACK_PACKAGE_FILE_NAME "ogs-${OGS_VERSION}-${CMAKE_SYSTEM}-${SUFFIX}")
 endif()
 
-if (WIN32)
-    include (packaging/PackagingWin)
+if(WIN32)
+    include(packaging/PackagingWin)
 endif()
 if(UNIX)
     if(APPLE)
-        include (packaging/PackagingMac)
+        include(packaging/PackagingMac)
     else()
-        include (packaging/PackagingLinux)
+        include(packaging/PackagingLinux)
     endif()
 endif()
 
-include (CPack)
+include(CPack)
 
 if(OGS_USE_CONAN)
     # Install Qt platform shared libraries
-    install(DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/platforms DESTINATION bin OPTIONAL)
+    install(DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/platforms
+            DESTINATION bin OPTIONAL
+    )
 endif()
 
 if(OGS_USE_PYTHON)
@@ -79,16 +82,21 @@ endif()
 configure_file(Documentation/README.txt.in ${PROJECT_BINARY_DIR}/README.txt)
 install(FILES ${PROJECT_BINARY_DIR}/README.txt DESTINATION .)
 
-install(FILES ${PROJECT_BINARY_DIR}/CMakeCache.txt DESTINATION ${CMAKE_INSTALL_INFODIR})
+install(FILES ${PROJECT_BINARY_DIR}/CMakeCache.txt
+        DESTINATION ${CMAKE_INSTALL_INFODIR}
+)
 if(EXISTS ${PROJECT_BINARY_DIR}/cmake-args)
-    install(FILES ${PROJECT_BINARY_DIR}/cmake-args DESTINATION ${CMAKE_INSTALL_INFODIR})
+    install(FILES ${PROJECT_BINARY_DIR}/cmake-args
+            DESTINATION ${CMAKE_INSTALL_INFODIR}
+    )
 endif()
 
 # Install dependencies via GET_RUNTIME_DEPENDENCIES. Available since CMake 3.16.
 if(${CMAKE_VERSION} VERSION_LESS 3.16 OR NOT OGS_INSTALL_DEPENDENCIES)
     return()
 endif()
-install(CODE [[
+install(
+    CODE [[
   include(GNUInstallDirs)
   if(WIN32)
     set(INSTALL_DIR ${CMAKE_INSTALL_FULL_BINDIR})
@@ -109,4 +117,5 @@ install(CODE [[
   if("${_u_length}" GREATER 0)
     message(WARNING "Unresolved dependencies detected!\n${_u_deps}")
   endif()
-]])
+]]
+)
diff --git a/scripts/cmake/packaging/PackagingLinux.cmake b/scripts/cmake/packaging/PackagingLinux.cmake
index d5c4ecf17d4780e7b3de9956c7148bcae3928347..025aa4fd175176b9a7d49cb10577a76e37b13445 100644
--- a/scripts/cmake/packaging/PackagingLinux.cmake
+++ b/scripts/cmake/packaging/PackagingLinux.cmake
@@ -2,7 +2,8 @@ set(CPACK_GENERATOR TGZ)
 
 if(MODULE_CMD)
     message(STATUS "Found module cmd -> writing module file.")
-    execute_process(COMMAND ${MODULE_CMD} bash --terse list
+    execute_process(
+        COMMAND ${MODULE_CMD} bash --terse list
         ERROR_VARIABLE MODULE_LIST_OUTPUT
     )
     string(REPLACE "\n" ";" MODULE_LIST_OUTPUT ${MODULE_LIST_OUTPUT})
@@ -11,18 +12,22 @@ if(MODULE_CMD)
             set(MODULE_LOAD_STRING "${MODULE_LOAD_STRING}load(\"${line}\")\n")
         endif()
     endforeach()
-    configure_file(${PROJECT_SOURCE_DIR}/scripts/cmake/packaging/module.in
+    configure_file(
+        ${PROJECT_SOURCE_DIR}/scripts/cmake/packaging/module.in
         ${PROJECT_BINARY_DIR}/module.lua
     )
     if(OGS_MODULEFILE)
         get_filename_component(MODULE_DIR ${OGS_MODULEFILE} DIRECTORY)
         get_filename_component(MODULE_NAME ${OGS_MODULEFILE} NAME)
         install(FILES ${PROJECT_BINARY_DIR}/module.lua DESTINATION ${MODULE_DIR}
-            RENAME ${MODULE_NAME}.lua)
+                RENAME ${MODULE_NAME}.lua
+        )
     endif()
 else()
     if("${HOSTNAME}" MATCHES "frontend.*")
-        message(FATAL_ERROR "MODULE_CMD not found but required on eve frontends!")
+        message(
+            FATAL_ERROR "MODULE_CMD not found but required on eve frontends!"
+        )
     endif()
 endif()
 
diff --git a/scripts/cmake/packaging/PackagingMac.cmake b/scripts/cmake/packaging/PackagingMac.cmake
index 38f9e46e78558cbda1acc78dde42ca6ece723ab8..c37ecd0d527974b84d5f6520fce21350462a5432 100644
--- a/scripts/cmake/packaging/PackagingMac.cmake
+++ b/scripts/cmake/packaging/PackagingMac.cmake
@@ -1,6 +1,8 @@
 set(CPACK_GENERATOR TGZ)
 
-option(OGS_PACK_DMG "package targets creates a .dmg disk image instead of .tar.gz" FALSE)
+option(OGS_PACK_DMG
+       "package targets creates a .dmg disk image instead of .tar.gz" FALSE
+)
 if(OGS_PACK_DMG)
     if(NOT OGS_BUILD_GUI)
         message(WARNING "OGS_PACK_DMG requires OGS_BUILD_GUI=ON!")
@@ -10,23 +12,30 @@ endif()
 set(CPACK_DMG_FORMAT "UDBZ")
 
 # See http://stackoverflow.com/a/16662169/80480 how to create the DS_Store file.
-set(CPACK_DMG_BACKGROUND_IMAGE ${PROJECT_SOURCE_DIR}/Documentation/OpenGeoSys-Logo.png)
+set(CPACK_DMG_BACKGROUND_IMAGE
+    ${PROJECT_SOURCE_DIR}/Documentation/OpenGeoSys-Logo.png
+)
 set(CPACK_DMG_DS_STORE ${PROJECT_SOURCE_DIR}/scripts/packaging/.DS_Store)
 
 if(OGS_USE_CONAN)
-    file(GLOB MATCHED_FILES LIST_DIRECTORIES false "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/*.dylib*")
+    file(GLOB MATCHED_FILES LIST_DIRECTORIES false
+         "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/*.dylib*"
+    )
     install(FILES ${MATCHED_FILES} DESTINATION lib)
 
     # macOS frameworks are directories, exclude header files
-    file(GLOB MATCHED_DIRECTORIES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/*.framework")
-    install(DIRECTORY ${MATCHED_DIRECTORIES} DESTINATION bin
-        PATTERN "Headers" EXCLUDE)
+    file(GLOB MATCHED_DIRECTORIES
+         "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/*.framework"
+    )
+    install(DIRECTORY ${MATCHED_DIRECTORIES} DESTINATION bin PATTERN "Headers"
+                                                                     EXCLUDE
+    )
 endif()
 
 if(OGS_BUILD_GUI)
     install_qt5_plugin("Qt5::QCocoaIntegrationPlugin" QT_PLUGINS)
     file(WRITE "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf"
-        "[Paths]\nPlugins = ../${_qt_plugin_dir}\n")
-    install(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf"
-        DESTINATION bin)
+         "[Paths]\nPlugins = ../${_qt_plugin_dir}\n"
+    )
+    install(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf" DESTINATION bin)
 endif()
diff --git a/scripts/cmake/packaging/PackagingWin.cmake b/scripts/cmake/packaging/PackagingWin.cmake
index 485483693456f45bfee70345b9c93c66924fe10b..5bfface3e054c6e6d55a17dcdfb50d394745e962 100644
--- a/scripts/cmake/packaging/PackagingWin.cmake
+++ b/scripts/cmake/packaging/PackagingWin.cmake
@@ -11,10 +11,11 @@ set(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}")
 set(CPACK_NSIS_CONTACT "info@opengeosys.org")
 set(CPACK_NSIS_MODIFY_PATH OFF)
 set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON)
-set(CPACK_NSIS_HELP_LINK "http://docs.opengeosys.org/assets/files/Documentation/User_Manual.pdf")
+set(CPACK_NSIS_HELP_LINK
+    "http://docs.opengeosys.org/assets/files/Documentation/User_Manual.pdf"
+)
 set(CPACK_NSIS_MENU_LINKS
-    "bin" "Executables folder"
-    "http://www.opengeosys.org" "Website"
+    "bin" "Executables folder" "http://www.opengeosys.org" "Website"
     "https://github.com/ufz/ogs" "Source code on GitHub"
 )
 
@@ -26,7 +27,7 @@ endif()
 if(OGS_BUILD_GUI)
     install_qt5_plugin("Qt5::QWindowsIntegrationPlugin" QT_PLUGINS)
     file(WRITE "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf"
-        "[Paths]\nPlugins = ../${_qt_plugin_dir}\n")
-    install(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf"
-        DESTINATION bin)
+         "[Paths]\nPlugins = ../${_qt_plugin_dir}\n"
+    )
+    install(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf" DESTINATION bin)
 endif()
diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake
index acadcc8834afb4ca654be545233d08fbddce2527..b5afe2c108a365eece312cf517a8bdb334713825 100644
--- a/scripts/cmake/test/AddTest.cmake
+++ b/scripts/cmake/test/AddTest.cmake
@@ -51,28 +51,51 @@
 #         compared using the given absolute and relative tolerances.
 # ~~~
 # cmake-lint: disable=C0103,R0911,R0912,R0915
-function (AddTest)
+function(AddTest)
 
     # parse arguments
     set(options DISABLED)
-    set(oneValueArgs EXECUTABLE PATH NAME WRAPPER TESTER ABSTOL RELTOL RUNTIME DEPENDS WORKING_DIRECTORY)
-    set(multiValueArgs EXECUTABLE_ARGS DATA DIFF_DATA WRAPPER_ARGS REQUIREMENTS PYTHON_PACKAGES VIS)
-    cmake_parse_arguments(AddTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
+    set(oneValueArgs
+        EXECUTABLE
+        PATH
+        NAME
+        WRAPPER
+        TESTER
+        ABSTOL
+        RELTOL
+        RUNTIME
+        DEPENDS
+        WORKING_DIRECTORY
+    )
+    set(multiValueArgs
+        EXECUTABLE_ARGS
+        DATA
+        DIFF_DATA
+        WRAPPER_ARGS
+        REQUIREMENTS
+        PYTHON_PACKAGES
+        VIS
+    )
+    cmake_parse_arguments(
+        AddTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}
+    )
 
     set(AddTest_SOURCE_PATH "${Data_SOURCE_DIR}/${AddTest_PATH}")
     set(AddTest_BINARY_PATH "${Data_BINARY_DIR}/${AddTest_PATH}")
     file(MAKE_DIRECTORY ${AddTest_BINARY_PATH})
     file(TO_NATIVE_PATH "${AddTest_BINARY_PATH}" AddTest_BINARY_PATH_NATIVE)
-    set(AddTest_STDOUT_FILE_PATH "${AddTest_BINARY_PATH}/${AddTest_NAME}_stdout.log")
+    set(AddTest_STDOUT_FILE_PATH
+        "${AddTest_BINARY_PATH}/${AddTest_NAME}_stdout.log"
+    )
 
     # set defaults
     if(NOT DEFINED AddTest_EXECUTABLE)
         message(FATAL_ERROR "Test ${AddTest_NAME}: No EXECUTABLE set!")
     endif()
-    if (NOT DEFINED AddTest_REQUIREMENTS)
+    if(NOT DEFINED AddTest_REQUIREMENTS)
         set(AddTest_REQUIREMENTS TRUE)
     endif()
-    if (NOT DEFINED AddTest_RUNTIME)
+    if(NOT DEFINED AddTest_RUNTIME)
         set(AddTest_RUNTIME 1)
     endif()
     if(NOT DEFINED AddTest_WORKING_DIRECTORY)
@@ -80,8 +103,10 @@ function (AddTest)
     endif()
 
     if("${AddTest_EXECUTABLE}" STREQUAL "ogs")
-        set(AddTest_EXECUTABLE_ARGS -o ${AddTest_BINARY_PATH_NATIVE}
-            ${AddTest_SOURCE_PATH}/${AddTest_EXECUTABLE_ARGS})
+        set(AddTest_EXECUTABLE_ARGS
+            -o ${AddTest_BINARY_PATH_NATIVE}
+            ${AddTest_SOURCE_PATH}/${AddTest_EXECUTABLE_ARGS}
+        )
     endif()
 
     if(DEFINED OGS_CTEST_MAX_RUNTIME)
@@ -96,14 +121,20 @@ function (AddTest)
     # --- Implement wrappers ---
     # check if exe is part of build
     if(NOT TARGET ${AddTest_EXECUTABLE})
-        set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nTest exe ${AddTest_EXECUTABLE} not built! Disabling test ${AddTest_NAME}." CACHE INTERNAL "")
+        set(DISABLED_TESTS_LOG
+            "${DISABLED_TESTS_LOG}\nTest exe ${AddTest_EXECUTABLE} not built! Disabling test ${AddTest_NAME}."
+            CACHE INTERNAL ""
+        )
         return()
     endif()
     # check requirements, disable if not met
     if(${AddTest_REQUIREMENTS})
         message(DEBUG "Enabling test ${AddTest_NAME}.")
     else()
-        set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nRequirement ${AddTest_REQUIREMENTS} not met! Disabling test ${AddTest_NAME}." CACHE INTERNAL "")
+        set(DISABLED_TESTS_LOG
+            "${DISABLED_TESTS_LOG}\nRequirement ${AddTest_REQUIREMENTS} not met! Disabling test ${AddTest_NAME}."
+            CACHE INTERNAL ""
+        )
         return()
     endif()
 
@@ -111,36 +142,54 @@ function (AddTest)
         if(TIME_TOOL_PATH)
             set(WRAPPER_COMMAND time)
         else()
-            set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nDisabling time wrapper for ${AddTest_NAME} as time exe was not found!" CACHE INTERNAL "")
+            set(DISABLED_TESTS_LOG
+                "${DISABLED_TESTS_LOG}\nDisabling time wrapper for ${AddTest_NAME} as time exe was not found!"
+                CACHE INTERNAL ""
+            )
             set(AddTest_WRAPPER_ARGS "")
         endif()
     elseif(AddTest_WRAPPER STREQUAL "memcheck")
         if(VALGRIND_TOOL_PATH)
-            set(WRAPPER_COMMAND "${VALGRIND_TOOL_PATH} --tool=memcheck --log-file=${AddTest_SOURCE_PATH}/${AddTest_NAME}_memcheck.log -v --leak-check=full --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xff")
+            set(WRAPPER_COMMAND
+                "${VALGRIND_TOOL_PATH} --tool=memcheck --log-file=${AddTest_SOURCE_PATH}/${AddTest_NAME}_memcheck.log -v --leak-check=full --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xff"
+            )
             set(tester memcheck)
         else()
-            set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nDisabling memcheck wrapper for ${AddTest_NAME} as memcheck exe was not found!" CACHE INTERNAL "")
+            set(DISABLED_TESTS_LOG
+                "${DISABLED_TESTS_LOG}\nDisabling memcheck wrapper for ${AddTest_NAME} as memcheck exe was not found!"
+                CACHE INTERNAL ""
+            )
             set(AddTest_WRAPPER_ARGS "")
         endif()
     elseif(AddTest_WRAPPER STREQUAL "callgrind")
         if(VALGRIND_TOOL_PATH)
-            set(WRAPPER_COMMAND "${VALGRIND_TOOL_PATH} --tool=callgrind --branch-sim=yes --cache-sim=yes --dump-instr=yes --collect-jumps=yes")
+            set(WRAPPER_COMMAND
+                "${VALGRIND_TOOL_PATH} --tool=callgrind --branch-sim=yes --cache-sim=yes --dump-instr=yes --collect-jumps=yes"
+            )
             unset(tester)
         else()
-            set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nDisabling callgrind wrapper for ${AddTest_NAME} as callgrind exe was not found!" CACHE INTERNAL "")
+            set(DISABLED_TESTS_LOG
+                "${DISABLED_TESTS_LOG}\nDisabling callgrind wrapper for ${AddTest_NAME} as callgrind exe was not found!"
+                CACHE INTERNAL ""
+            )
             set(AddTest_WRAPPER_ARGS "")
         endif()
     elseif(AddTest_WRAPPER STREQUAL "mpirun")
         if(MPIRUN_TOOL_PATH)
             if("${HOSTNAME}" MATCHES "frontend.*")
-                set(AddTest_WRAPPER_ARGS ${AddTest_WRAPPER_ARGS} --mca btl_openib_allow_ib 1)
+                set(AddTest_WRAPPER_ARGS ${AddTest_WRAPPER_ARGS} --mca
+                                         btl_openib_allow_ib 1
+                )
             endif()
             set(WRAPPER_COMMAND ${MPIRUN_TOOL_PATH})
             if("${AddTest_WRAPPER_ARGS}" MATCHES "-np;([0-9]*)")
                 set(MPI_PROCESSORS ${CMAKE_MATCH_1})
             endif()
         else()
-            message(STATUS "ERROR: mpirun was not found but is required for ${AddTest_NAME}!")
+            message(
+                STATUS
+                    "ERROR: mpirun was not found but is required for ${AddTest_NAME}!"
+            )
             return()
         endif()
     endif()
@@ -166,11 +215,16 @@ function (AddTest)
     if(AddTest_DIFF_DATA)
         string(LENGTH "${AddTest_DIFF_DATA}" DIFF_DATA_LENGTH)
         if(${DIFF_DATA_LENGTH} GREATER 7500)
-            message(FATAL_ERROR "${AddTest_NAME}: DIFF_DATA to long! Consider using regex-syntax: TODO")
+            message(
+                FATAL_ERROR
+                    "${AddTest_NAME}: DIFF_DATA to long! Consider using regex-syntax: TODO"
+            )
         endif()
     endif()
 
-    if((AddTest_TESTER STREQUAL "diff" OR AddTest_TESTER STREQUAL "vtkdiff" OR AddTest_TESTER STREQUAL "xdmfdiff") AND NOT AddTest_DIFF_DATA)
+    if((AddTest_TESTER STREQUAL "diff" OR AddTest_TESTER STREQUAL "vtkdiff"
+        OR AddTest_TESTER STREQUAL "xdmfdiff") AND NOT AddTest_DIFF_DATA
+    )
         message(FATAL_ERROR "AddTest(): ${AddTest_NAME} - no DIFF_DATA given!")
     endif()
 
@@ -188,25 +242,31 @@ function (AddTest)
             get_filename_component(FILE_EXPECTED ${FILE} NAME)
             list(APPEND TESTER_COMMAND "${SELECTED_DIFF_TOOL_PATH} \
                 ${TESTER_ARGS} ${AddTest_SOURCE_PATH}/${FILE_EXPECTED} \
-                ${AddTest_BINARY_PATH}/${FILE}")
+                ${AddTest_BINARY_PATH}/${FILE}"
+            )
         endforeach()
-    elseif(AddTest_TESTER STREQUAL "vtkdiff" OR AddTest_TESTER STREQUAL "xdmfdiff")
+    elseif(AddTest_TESTER STREQUAL "vtkdiff" OR AddTest_TESTER STREQUAL
+                                                "xdmfdiff"
+    )
         list(LENGTH AddTest_DIFF_DATA DiffDataLength)
         math(EXPR DiffDataLengthMod4 "${DiffDataLength} % 4")
         math(EXPR DiffDataLengthMod6 "${DiffDataLength} % 6")
-        if (${DiffDataLengthMod4} EQUAL 0 AND NOT ${DiffDataLengthMod6} EQUAL 0)
+        if(${DiffDataLengthMod4} EQUAL 0 AND NOT ${DiffDataLengthMod6} EQUAL 0)
             message(WARNING "DEPRECATED AddTest call with four arguments.\
-Use six arguments version of AddTest with absolute and relative tolerances")
-            if (NOT AddTest_ABSTOL)
-                set (AddTest_ABSTOL 1e-16)
+Use six arguments version of AddTest with absolute and relative tolerances"
+            )
+            if(NOT AddTest_ABSTOL)
+                set(AddTest_ABSTOL 1e-16)
             endif()
-            if (NOT AddTest_RELTOL)
-                set (AddTest_RELTOL 1e-16)
+            if(NOT AddTest_RELTOL)
+                set(AddTest_RELTOL 1e-16)
             endif()
             set(TESTER_ARGS "--abs ${AddTest_ABSTOL} --rel ${AddTest_RELTOL}")
             math(EXPR DiffDataLastIndex "${DiffDataLength}-1")
             foreach(DiffDataIndex RANGE 0 ${DiffDataLastIndex} 4)
-                list(GET AddTest_DIFF_DATA "${DiffDataIndex}" REFERENCE_VTK_FILE)
+                list(GET AddTest_DIFF_DATA "${DiffDataIndex}"
+                     REFERENCE_VTK_FILE
+                )
                 math(EXPR DiffDataAuxIndex "${DiffDataIndex}+1")
                 list(GET AddTest_DIFF_DATA "${DiffDataAuxIndex}" VTK_FILE)
                 math(EXPR DiffDataAuxIndex "${DiffDataIndex}+2")
@@ -214,19 +274,28 @@ Use six arguments version of AddTest with absolute and relative tolerances")
                 math(EXPR DiffDataAuxIndex "${DiffDataIndex}+3")
                 list(GET AddTest_DIFF_DATA "${DiffDataAuxIndex}" NAME_B)
 
-                list(APPEND TESTER_COMMAND "${SELECTED_DIFF_TOOL_PATH} \
+                list(
+                    APPEND
+                    TESTER_COMMAND
+                    "${SELECTED_DIFF_TOOL_PATH} \
                 ${AddTest_SOURCE_PATH}/${REFERENCE_VTK_FILE} \
                 ${AddTest_BINARY_PATH}/${VTK_FILE} \
                 -a ${NAME_A} -b ${NAME_B} \
-                ${TESTER_ARGS}")
+                ${TESTER_ARGS}"
+                )
             endforeach()
-        elseif (${DiffDataLengthMod6} EQUAL 0)
-            if (${AddTest_ABSTOL} OR ${AddTest_RELTOL})
-                message(FATAL_ERROR "ABSTOL or RELTOL arguments must not be present.")
+        elseif(${DiffDataLengthMod6} EQUAL 0)
+            if(${AddTest_ABSTOL} OR ${AddTest_RELTOL})
+                message(
+                    FATAL_ERROR
+                        "ABSTOL or RELTOL arguments must not be present."
+                )
             endif()
             math(EXPR DiffDataLastIndex "${DiffDataLength}-1")
             foreach(DiffDataIndex RANGE 0 ${DiffDataLastIndex} 6)
-                list(GET AddTest_DIFF_DATA "${DiffDataIndex}" REFERENCE_VTK_FILE)
+                list(GET AddTest_DIFF_DATA "${DiffDataIndex}"
+                     REFERENCE_VTK_FILE
+                )
                 math(EXPR DiffDataAuxIndex "${DiffDataIndex}+1")
                 list(GET AddTest_DIFF_DATA "${DiffDataAuxIndex}" VTK_FILE)
                 math(EXPR DiffDataAuxIndex "${DiffDataIndex}+2")
@@ -239,19 +308,28 @@ Use six arguments version of AddTest with absolute and relative tolerances")
                 list(GET AddTest_DIFF_DATA "${DiffDataAuxIndex}" REL_TOL)
 
                 if("${REFERENCE_VTK_FILE}" STREQUAL "GLOB")
-                    list(APPEND TESTER_COMMAND "${VTK_FILE} ${NAME_A} ${NAME_B} ${ABS_TOL} ${REL_TOL}")
+                    list(APPEND TESTER_COMMAND
+                         "${VTK_FILE} ${NAME_A} ${NAME_B} ${ABS_TOL} ${REL_TOL}"
+                    )
                     set(GLOB_MODE TRUE)
                 else()
-                    list(APPEND TESTER_COMMAND "${SELECTED_DIFF_TOOL_PATH} \
+                    list(
+                        APPEND
+                        TESTER_COMMAND
+                        "${SELECTED_DIFF_TOOL_PATH} \
                     ${AddTest_SOURCE_PATH}/${REFERENCE_VTK_FILE} \
                     ${AddTest_BINARY_PATH}/${VTK_FILE} \
                     -a ${NAME_A} -b ${NAME_B} \
                     --abs ${ABS_TOL} --rel ${REL_TOL} \
-                    ${TESTER_ARGS}")
+                    ${TESTER_ARGS}"
+                    )
                 endif()
             endforeach()
-        else ()
-            message(FATAL_ERROR "For vtkdiff tester the number of diff data arguments must be a multiple of six.")
+        else()
+            message(
+                FATAL_ERROR
+                    "For vtkdiff tester the number of diff data arguments must be a multiple of six."
+            )
         endif()
     elseif(AddTest_TESTER STREQUAL "gmldiff")
         list(LENGTH AddTest_DIFF_DATA DiffDataLength)
@@ -269,18 +347,23 @@ Use six arguments version of AddTest with absolute and relative tolerances")
             else()
                 set(PY_EXE ${Python3_EXECUTABLE})
             endif()
-            list(APPEND TESTER_COMMAND
+            list(
+                APPEND
+                TESTER_COMMAND
                 "${PY_EXE} ${PROJECT_SOURCE_DIR}/scripts/test/gmldiff.py \
                 --abs ${ABS_TOL} --rel ${REL_TOL} \
                 ${TESTER_ARGS} \
                 ${AddTest_SOURCE_PATH}/${FILE_EXPECTED} \
-                ${AddTest_BINARY_PATH}/${GML_FILE}")
+                ${AddTest_BINARY_PATH}/${GML_FILE}"
+            )
         endforeach()
     elseif(AddTest_TESTER STREQUAL "memcheck")
-        set(TESTER_COMMAND "! ${GREP_TOOL_PATH} definitely ${AddTest_SOURCE_PATH}/${AddTest_NAME}_memcheck.log")
+        set(TESTER_COMMAND
+            "! ${GREP_TOOL_PATH} definitely ${AddTest_SOURCE_PATH}/${AddTest_NAME}_memcheck.log"
+        )
     endif()
 
-    ## -----------
+    # -----------
     if(TARGET ${AddTest_EXECUTABLE})
         set(AddTest_EXECUTABLE_PARSED $<TARGET_FILE:${AddTest_EXECUTABLE}>)
     else()
@@ -299,32 +382,36 @@ Use six arguments version of AddTest with absolute and relative tolerances")
     if(DEFINED AddTest_WRAPPER)
         set(AddTest_WRAPPER_STRING "-${AddTest_WRAPPER}")
     endif()
-    set(TEST_NAME "${AddTest_EXECUTABLE}-${AddTest_NAME}${AddTest_WRAPPER_STRING}")
+    set(TEST_NAME
+        "${AddTest_EXECUTABLE}-${AddTest_NAME}${AddTest_WRAPPER_STRING}"
+    )
     add_test(
         NAME ${TEST_NAME}
-        COMMAND ${CMAKE_COMMAND}
-        -DEXECUTABLE=${AddTest_EXECUTABLE_PARSED}
-        "-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS}" # Quoted because passed as list
-                                                       # see https://stackoverflow.com/a/33248574/80480
-        -DBINARY_PATH=${AddTest_BINARY_PATH}
-        -DWRAPPER_COMMAND=${WRAPPER_COMMAND}
-        "-DWRAPPER_ARGS=${AddTest_WRAPPER_ARGS}"
-        "-DFILES_TO_DELETE=${FILES_TO_DELETE}"
-        -DWORKING_DIRECTORY=${AddTest_WORKING_DIRECTORY}
-        -P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestWrapper.cmake
+        COMMAND
+            ${CMAKE_COMMAND} -DEXECUTABLE=${AddTest_EXECUTABLE_PARSED}
+            "-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS}" # Quoted because
+                                                           # passed as list see
+                                                           # https://stackoverflow.com/a/33248574/80480
+            -DBINARY_PATH=${AddTest_BINARY_PATH}
+            -DWRAPPER_COMMAND=${WRAPPER_COMMAND}
+            "-DWRAPPER_ARGS=${AddTest_WRAPPER_ARGS}"
+            "-DFILES_TO_DELETE=${FILES_TO_DELETE}"
+            -DWORKING_DIRECTORY=${AddTest_WORKING_DIRECTORY} -P
+            ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestWrapper.cmake
     )
     if(DEFINED AddTest_DEPENDS)
         set_tests_properties(${TEST_NAME} PROPERTIES DEPENDS ${AddTest_DEPENDS})
     endif()
     if(DEFINED MPI_PROCESSORS)
-        set_tests_properties(${TEST_NAME} PROPERTIES PROCESSORS ${MPI_PROCESSORS})
+        set_tests_properties(
+            ${TEST_NAME} PROPERTIES PROCESSORS ${MPI_PROCESSORS}
+        )
     endif()
 
     current_dir_as_list(ProcessLib DIR_LABELS)
-    set_tests_properties(${TEST_NAME} PROPERTIES
-        COST ${AddTest_RUNTIME}
-        DISABLED ${AddTest_DISABLED}
-        LABELS "${DIR_LABELS}"
+    set_tests_properties(
+        ${TEST_NAME} PROPERTIES COST ${AddTest_RUNTIME} DISABLED
+                                ${AddTest_DISABLED} LABELS "${DIR_LABELS}"
     )
 
     add_dependencies(ctest ${AddTest_EXECUTABLE})
@@ -332,20 +419,25 @@ Use six arguments version of AddTest with absolute and relative tolerances")
 
     if(AddTest_PYTHON_PACKAGES)
         if(POETRY)
-            file(WRITE ${PROJECT_BINARY_DIR}/tmp_poetry_add.bat "poetry add ${AddTest_PYTHON_PACKAGES}")
+            file(WRITE ${PROJECT_BINARY_DIR}/tmp_poetry_add.bat
+                 "poetry add ${AddTest_PYTHON_PACKAGES}"
+            )
             if(WIN32)
                 set(EXEC_CMD tmp_poetry_add.bat)
             else()
                 set(EXEC_CMD ${BASH_TOOL_PATH} tmp_poetry_add.bat)
             endif()
             execute_process(
-                    COMMAND ${EXEC_CMD}
-                    WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
+                COMMAND ${EXEC_CMD} WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+            )
         else()
-            message(STATUS "Warning: Benchmark ${AddTest_NAME} requires these "
-                "Python packages: ${AddTest_PYTHON_PACKAGES}!\n Make sure to "
-                "have them installed in your current Python environment OR "
-                "install the Poetry package manager for Python!")
+            message(
+                STATUS
+                    "Warning: Benchmark ${AddTest_NAME} requires these "
+                    "Python packages: ${AddTest_PYTHON_PACKAGES}!\n Make sure to "
+                    "have them installed in your current Python environment OR "
+                    "install the Poetry package manager for Python!"
+            )
         endif()
     endif()
 
@@ -357,23 +449,22 @@ Use six arguments version of AddTest with absolute and relative tolerances")
     set(TESTER_NAME "${TEST_NAME}-${AddTest_TESTER}")
     add_test(
         NAME ${TESTER_NAME}
-        COMMAND ${CMAKE_COMMAND}
-        -DSOURCE_PATH=${AddTest_SOURCE_PATH}
-        -DBINARY_PATH=${${AddTest_BINARY_PATH}}
-        -DSELECTED_DIFF_TOOL_PATH=${SELECTED_DIFF_TOOL_PATH}
-        "-DTESTER_COMMAND=${TESTER_COMMAND}"
-        -DVTKJS_CONVERTER=${VTKJS_CONVERTER}
-        -DBINARY_PATH=${AddTest_BINARY_PATH}
-        -DVTKJS_OUTPUT_PATH=${PROJECT_SOURCE_DIR}/web/static/vis/${AddTest_PATH}
-        "-DVIS_FILES=${AddTest_VIS}"
-        -DGLOB_MODE=${GLOB_MODE}
-        -P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
-        --debug-output
+        COMMAND
+            ${CMAKE_COMMAND} -DSOURCE_PATH=${AddTest_SOURCE_PATH}
+            -DBINARY_PATH=${${AddTest_BINARY_PATH}}
+            -DSELECTED_DIFF_TOOL_PATH=${SELECTED_DIFF_TOOL_PATH}
+            "-DTESTER_COMMAND=${TESTER_COMMAND}"
+            -DVTKJS_CONVERTER=${VTKJS_CONVERTER}
+            -DBINARY_PATH=${AddTest_BINARY_PATH}
+            -DVTKJS_OUTPUT_PATH=${PROJECT_SOURCE_DIR}/web/static/vis/${AddTest_PATH}
+            "-DVIS_FILES=${AddTest_VIS}" -DGLOB_MODE=${GLOB_MODE} -P
+            ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
+            --debug-output
         WORKING_DIRECTORY ${AddTest_SOURCE_PATH}
     )
-    set_tests_properties(${TESTER_NAME} PROPERTIES
-        DEPENDS ${TEST_NAME}
-        DISABLED ${AddTest_DISABLED}
+    set_tests_properties(
+        ${TESTER_NAME} PROPERTIES DEPENDS ${TEST_NAME} DISABLED
+                                  ${AddTest_DISABLED}
     )
 
 endfunction()
diff --git a/scripts/cmake/test/AddTestTester.cmake b/scripts/cmake/test/AddTestTester.cmake
index 595dd3fffa8d55bd55662927700f51f8e1def6f3..e940d227e919b92af9444b2b333983c7743b5222 100644
--- a/scripts/cmake/test/AddTestTester.cmake
+++ b/scripts/cmake/test/AddTestTester.cmake
@@ -3,7 +3,8 @@ if(VIS_FILES AND VTKJS_CONVERTER)
     execute_process(COMMAND cmake -E make_directory ${VTKJS_OUTPUT_PATH})
     foreach(file ${VIS_FILES})
         execute_process(
-            COMMAND ${VTKJS_CONVERTER} -e -i ${BINARY_PATH}/${file} -o ${VTKJS_OUTPUT_PATH}
+            COMMAND ${VTKJS_CONVERTER} -e -i ${BINARY_PATH}/${file} -o
+                    ${VTKJS_OUTPUT_PATH}
         )
     endforeach()
 endif()
@@ -27,10 +28,14 @@ foreach(cmd ${TESTER_COMMAND})
         list(GET cmd 4 REL_TOL)
         file(GLOB FILES RELATIVE ${SOURCE_PATH} ${GLOB})
         list(LENGTH FILES LENGTH)
-        message(STATUS "Glob expression '${GLOB}' (${NAME_A}) found ${LENGTH} files.")
+        message(
+            STATUS
+                "Glob expression '${GLOB}' (${NAME_A}) found ${LENGTH} files."
+        )
         if(${LENGTH} EQUAL 0)
             message(FATAL_ERROR "DIFF_DATA glob expression '${GLOB}' "
-                "did not match any files!")
+                                "did not match any files!"
+            )
         endif()
         foreach(file ${FILES})
             if("$ENV{HOSTNAME}" MATCHES "frontend.*")
@@ -40,7 +45,10 @@ foreach(cmd ${TESTER_COMMAND})
                 string(REPLACE "gpfs0" "../.." file ${file})
             endif()
             execute_process(
-                COMMAND ${SELECTED_DIFF_TOOL_PATH} ${SOURCE_PATH}/${file} ${BINARY_PATH}/${file} -a ${NAME_A} -b ${NAME_B} --abs ${ABS_TOL} --rel ${REL_TOL}
+                COMMAND
+                    ${SELECTED_DIFF_TOOL_PATH} ${SOURCE_PATH}/${file}
+                    ${BINARY_PATH}/${file} -a ${NAME_A} -b ${NAME_B} --abs
+                    ${ABS_TOL} --rel ${REL_TOL}
                 WORKING_DIRECTORY ${SOURCE_PATH}
                 RESULT_VARIABLE EXIT_CODE
                 OUTPUT_VARIABLE OUTPUT
@@ -66,8 +74,6 @@ foreach(cmd ${TESTER_COMMAND})
         endif()
     endif()
 endforeach()
-if (TEST_FAILED)
+if(TEST_FAILED)
     message(FATAL_ERROR "One of the tests failed.")
 endif()
-
-
diff --git a/scripts/cmake/test/AddTestWrapper.cmake b/scripts/cmake/test/AddTestWrapper.cmake
index 3d06833ab07aab48c00582e5ee4179150901b34e..28d21783ffdbe71645f639ce80e69395a85c98dd 100644
--- a/scripts/cmake/test/AddTestWrapper.cmake
+++ b/scripts/cmake/test/AddTestWrapper.cmake
@@ -1,11 +1,14 @@
 # IMPORTANT: multiple arguments in one variables have to be in list notation (;)
-# and have to be quoted when passed "-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS}"
+# and have to be quoted when passed
+# "-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS}"
 foreach(file ${FILES_TO_DELETE})
     file(REMOVE ${BINARY_PATH}/${file})
 endforeach()
 
-string(REPLACE ";" " " CMD_STRING "cd ${WORKING_DIRECTORY} && ${WRAPPER_COMMAND} "
-"${WRAPPER_ARGS} ${EXECUTABLE} ${EXECUTABLE_ARGS}")
+string(REPLACE ";" " " CMD_STRING
+               "cd ${WORKING_DIRECTORY} && ${WRAPPER_COMMAND} "
+               "${WRAPPER_ARGS} ${EXECUTABLE} ${EXECUTABLE_ARGS}"
+)
 message(STATUS "Test command cleaned:\n${CMD_STRING}")
 
 execute_process(
@@ -17,5 +20,7 @@ execute_process(
 )
 
 if(NOT EXIT_CODE STREQUAL "0")
-    message(FATAL_ERROR "Test wrapper exited with code: ${EXIT_CODE}\n${OUTPUT}")
+    message(
+        FATAL_ERROR "Test wrapper exited with code: ${EXIT_CODE}\n${OUTPUT}"
+    )
 endif()
diff --git a/scripts/cmake/test/CTestCustom.in.cmake b/scripts/cmake/test/CTestCustom.in.cmake
index 5f0056f42614b1bfb05c0cab31dc7eca26212516..141a37b4ba128949bdc5e92b9ca4f21fbe8d35f2 100644
--- a/scripts/cmake/test/CTestCustom.in.cmake
+++ b/scripts/cmake/test/CTestCustom.in.cmake
@@ -1,4 +1,4 @@
-file (STRINGS "@PROJECT_BINARY_DIR@/CTestTestfile.cmake" LINES)
+file(STRINGS "@PROJECT_BINARY_DIR@/CTestTestfile.cmake" LINES)
 
 # overwrite the file....
 file(WRITE "@PROJECT_BINARY_DIR@/CTestTestfile.cmake" "")
diff --git a/scripts/cmake/test/MeshTest.cmake b/scripts/cmake/test/MeshTest.cmake
index 080919847bec6b5e4e3ce0cc6359364b30da1280..0fe743d2185960ff9519e8370144386392f7c61b 100644
--- a/scripts/cmake/test/MeshTest.cmake
+++ b/scripts/cmake/test/MeshTest.cmake
@@ -18,7 +18,7 @@
 # )
 # ~~~
 # cmake-lint: disable=C0103,R0912,R0915
-function (MeshTest)
+function(MeshTest)
     if(NOT OGS_BUILD_TESTING)
         return()
     endif()
@@ -26,19 +26,23 @@ function (MeshTest)
     set(options NONE)
     set(oneValueArgs EXECUTABLE PATH NAME WRAPPER RUNTIME WORKING_DIRECTORY)
     set(multiValueArgs EXECUTABLE_ARGS DATA DIFF_DATA WRAPPER_ARGS REQUIREMENTS)
-    cmake_parse_arguments(MeshTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
+    cmake_parse_arguments(
+        MeshTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}
+    )
 
     set(MeshTest_SOURCE_PATH "${Data_SOURCE_DIR}/${MeshTest_PATH}")
     set(MeshTest_BINARY_PATH "${Data_BINARY_DIR}/${MeshTest_PATH}")
     file(MAKE_DIRECTORY ${MeshTest_BINARY_PATH})
     file(TO_NATIVE_PATH "${MeshTest_BINARY_PATH}" MeshTest_BINARY_PATH_NATIVE)
-    set(MeshTest_STDOUT_FILE_PATH "${MeshTest_BINARY_PATH}/${MeshTest_NAME}_stdout.log")
+    set(MeshTest_STDOUT_FILE_PATH
+        "${MeshTest_BINARY_PATH}/${MeshTest_NAME}_stdout.log"
+    )
 
     # set defaults
-    if (NOT DEFINED MeshTest_REQUIREMENTS)
+    if(NOT DEFINED MeshTest_REQUIREMENTS)
         set(MeshTest_REQUIREMENTS TRUE)
     endif()
-    if (NOT DEFINED MeshTest_RUNTIME)
+    if(NOT DEFINED MeshTest_RUNTIME)
         set(MeshTest_RUNTIME 1)
     endif()
     if(NOT DEFINED MeshTest_WORKING_DIRECTORY)
@@ -50,7 +54,10 @@ function (MeshTest)
     if(${MeshTest_REQUIREMENTS})
         # message(STATUS "Enabling test ${MeshTest_NAME}.")
     else()
-        set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nRequirement ${MeshTest_REQUIREMENTS} not met! Disabling test ${MeshTest_NAME}." CACHE INTERNAL "")
+        set(DISABLED_TESTS_LOG
+            "${DISABLED_TESTS_LOG}\nRequirement ${MeshTest_REQUIREMENTS} not met! Disabling test ${MeshTest_NAME}."
+            CACHE INTERNAL ""
+        )
         return()
     endif()
 
@@ -58,49 +65,70 @@ function (MeshTest)
         if(TIME_TOOL_PATH)
             set(WRAPPER_COMMAND time)
         else()
-            set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nDisabling time wrapper for ${MeshTest_NAME} as time exe was not found!" CACHE INTERNAL "")
+            set(DISABLED_TESTS_LOG
+                "${DISABLED_TESTS_LOG}\nDisabling time wrapper for ${MeshTest_NAME} as time exe was not found!"
+                CACHE INTERNAL ""
+            )
             set(MeshTest_WRAPPER_ARGS "")
         endif()
     elseif(MeshTest_WRAPPER STREQUAL "memcheck")
         if(VALGRIND_TOOL_PATH)
-            set(WRAPPER_COMMAND "${VALGRIND_TOOL_PATH} --tool=memcheck --log-file=${MeshTest_SOURCE_PATH}/${MeshTest_NAME}_memcheck.log -v --leak-check=full --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xff")
+            set(WRAPPER_COMMAND
+                "${VALGRIND_TOOL_PATH} --tool=memcheck --log-file=${MeshTest_SOURCE_PATH}/${MeshTest_NAME}_memcheck.log -v --leak-check=full --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xff"
+            )
             set(tester memcheck)
         else()
-            set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nDisabling memcheck wrapper for ${MeshTest_NAME} as memcheck exe was not found!" CACHE INTERNAL "")
+            set(DISABLED_TESTS_LOG
+                "${DISABLED_TESTS_LOG}\nDisabling memcheck wrapper for ${MeshTest_NAME} as memcheck exe was not found!"
+                CACHE INTERNAL ""
+            )
             set(MeshTest_WRAPPER_ARGS "")
         endif()
     elseif(MeshTest_WRAPPER STREQUAL "callgrind")
         if(VALGRIND_TOOL_PATH)
-            set(WRAPPER_COMMAND "${VALGRIND_TOOL_PATH} --tool=callgrind --branch-sim=yes --cache-sim=yes --dump-instr=yes --collect-jumps=yes")
+            set(WRAPPER_COMMAND
+                "${VALGRIND_TOOL_PATH} --tool=callgrind --branch-sim=yes --cache-sim=yes --dump-instr=yes --collect-jumps=yes"
+            )
             unset(tester)
         else()
-            set(DISABLED_TESTS_LOG "${DISABLED_TESTS_LOG}\nDisabling callgrind wrapper for ${MeshTest_NAME} as callgrind exe was not found!" CACHE INTERNAL "")
+            set(DISABLED_TESTS_LOG
+                "${DISABLED_TESTS_LOG}\nDisabling callgrind wrapper for ${MeshTest_NAME} as callgrind exe was not found!"
+                CACHE INTERNAL ""
+            )
             set(MeshTest_WRAPPER_ARGS "")
         endif()
     elseif(MeshTest_WRAPPER STREQUAL "mpirun")
         if(MPIRUN_TOOL_PATH)
             set(WRAPPER_COMMAND ${MPIRUN_TOOL_PATH})
         else()
-            message(STATUS "ERROR: mpirun was not found but is required for ${MeshTest_NAME}!")
+            message(
+                STATUS
+                    "ERROR: mpirun was not found but is required for ${MeshTest_NAME}!"
+            )
             return()
         endif()
     endif()
 
     # --- Implement testers ---
     if(NOT MeshTest_DIFF_DATA)
-        message(FATAL_ERROR "MeshTest(): ${MeshTest_NAME} - no DIFF_DATA given!")
+        message(
+            FATAL_ERROR "MeshTest(): ${MeshTest_NAME} - no DIFF_DATA given!"
+        )
     endif()
 
     string(LENGTH "${MeshTest_DIFF_DATA}" DIFF_DATA_LENGTH)
     if(${DIFF_DATA_LENGTH} GREATER 7500)
-        message(FATAL_ERROR "${MeshTest_NAME}: DIFF_DATA to long! Consider using regex-syntax: TODO")
+        message(
+            FATAL_ERROR
+                "${MeshTest_NAME}: DIFF_DATA to long! Consider using regex-syntax: TODO"
+        )
     endif()
 
     set(SELECTED_DIFF_TOOL_PATH $<TARGET_FILE:vtkdiff>)
 
     list(LENGTH MeshTest_DIFF_DATA DiffDataLength)
     math(EXPR DiffDataLengthMod3 "${DiffDataLength} % 3")
-    if (${DiffDataLengthMod3} EQUAL 0)
+    if(${DiffDataLengthMod3} EQUAL 0)
         math(EXPR DiffDataLastIndex "${DiffDataLength}-1")
         foreach(DiffDataIndex RANGE 0 ${DiffDataLastIndex} 4)
             list(GET MeshTest_DIFF_DATA "${DiffDataIndex}" REFERENCE_VTK_FILE)
@@ -109,17 +137,22 @@ function (MeshTest)
             math(EXPR DiffDataAuxIndex "${DiffDataIndex}+2")
             list(GET MeshTest_DIFF_DATA "${DiffDataAuxIndex}" ABS_TOLERANCE)
 
-            list(APPEND TESTER_COMMAND "${SELECTED_DIFF_TOOL_PATH} -m \
+            list(
+                APPEND
+                TESTER_COMMAND
+                "${SELECTED_DIFF_TOOL_PATH} -m \
             ${MeshTest_SOURCE_PATH}/${REFERENCE_VTK_FILE} \
             ${MeshTest_BINARY_PATH}/${VTK_FILE} \
-            --abs ${ABS_TOLERANCE}")
+            --abs ${ABS_TOLERANCE}"
+            )
         endforeach()
-    else ()
+    else()
         message(FATAL_ERROR "The number of diff data arguments must be a
-        multiple of three: expected.vtu output.vtu absolute_tolerance.")
+        multiple of three: expected.vtu output.vtu absolute_tolerance."
+        )
     endif()
 
-    ## -----------
+    # -----------
     if(TARGET ${MeshTest_EXECUTABLE})
         set(MeshTest_EXECUTABLE_PARSED $<TARGET_FILE:${MeshTest_EXECUTABLE}>)
     else()
@@ -138,20 +171,23 @@ function (MeshTest)
     if(DEFINED MeshTest_WRAPPER)
         set(MeshTest_WRAPPER_STRING "-${MeshTest_WRAPPER}")
     endif()
-    set(TEST_NAME "${MeshTest_EXECUTABLE}-${MeshTest_NAME}${MeshTest_WRAPPER_STRING}")
+    set(TEST_NAME
+        "${MeshTest_EXECUTABLE}-${MeshTest_NAME}${MeshTest_WRAPPER_STRING}"
+    )
     add_test(
         NAME ${TEST_NAME}
-        COMMAND ${CMAKE_COMMAND}
-        -DEXECUTABLE=${MeshTest_EXECUTABLE_PARSED}
-        "-DEXECUTABLE_ARGS=${MeshTest_EXECUTABLE_ARGS}" # Quoted because passed as list
-                                                        # see https://stackoverflow.com/a/33248574/80480
-        -DBINARY_PATH=${MeshTest_BINARY_PATH}
-        -DWRAPPER_COMMAND=${WRAPPER_COMMAND}
-        "-DWRAPPER_ARGS=${MeshTest_WRAPPER_ARGS}"
-        "-DFILES_TO_DELETE=${FILES_TO_DELETE}"
-        -DSTDOUT_FILE_PATH=${MeshTest_STDOUT_FILE_PATH}
-        -DWORKING_DIRECTORY=${MeshTest_WORKING_DIRECTORY}
-        -P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestWrapper.cmake
+        COMMAND
+            ${CMAKE_COMMAND} -DEXECUTABLE=${MeshTest_EXECUTABLE_PARSED}
+            "-DEXECUTABLE_ARGS=${MeshTest_EXECUTABLE_ARGS}" # Quoted because
+                                                            # passed as list see
+                                                            # https://stackoverflow.com/a/33248574/80480
+            -DBINARY_PATH=${MeshTest_BINARY_PATH}
+            -DWRAPPER_COMMAND=${WRAPPER_COMMAND}
+            "-DWRAPPER_ARGS=${MeshTest_WRAPPER_ARGS}"
+            "-DFILES_TO_DELETE=${FILES_TO_DELETE}"
+            -DSTDOUT_FILE_PATH=${MeshTest_STDOUT_FILE_PATH}
+            -DWORKING_DIRECTORY=${MeshTest_WORKING_DIRECTORY} -P
+            ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestWrapper.cmake
     )
     set_tests_properties(${TEST_NAME} PROPERTIES COST ${MeshTest_RUNTIME})
 
@@ -165,18 +201,17 @@ function (MeshTest)
     set(TESTER_NAME "${TEST_NAME}-${MeshTest_TESTER}")
     add_test(
         NAME ${TESTER_NAME}
-        COMMAND ${CMAKE_COMMAND}
-        -DSOURCE_PATH=${MeshTest_SOURCE_PATH}
-        -DBINARY_PATH=${${MeshTest_BINARY_PATH}}
-        -DSELECTED_DIFF_TOOL_PATH=${SELECTED_DIFF_TOOL_PATH}
-        "-DTESTER_COMMAND=${TESTER_COMMAND}"
-        -DVTKJS_CONVERTER=${VTKJS_CONVERTER}
-        -DBINARY_PATH=${MeshTest_BINARY_PATH}
-        -DVTKJS_OUTPUT_PATH=${PROJECT_SOURCE_DIR}/web/static/vis/${MeshTest_PATH}
-        "-DVIS_FILES=${MeshTest_VIS}"
-        -DGLOB_MODE=${GLOB_MODE}
-        -P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
-        --debug-output
+        COMMAND
+            ${CMAKE_COMMAND} -DSOURCE_PATH=${MeshTest_SOURCE_PATH}
+            -DBINARY_PATH=${${MeshTest_BINARY_PATH}}
+            -DSELECTED_DIFF_TOOL_PATH=${SELECTED_DIFF_TOOL_PATH}
+            "-DTESTER_COMMAND=${TESTER_COMMAND}"
+            -DVTKJS_CONVERTER=${VTKJS_CONVERTER}
+            -DBINARY_PATH=${MeshTest_BINARY_PATH}
+            -DVTKJS_OUTPUT_PATH=${PROJECT_SOURCE_DIR}/web/static/vis/${MeshTest_PATH}
+            "-DVIS_FILES=${MeshTest_VIS}" -DGLOB_MODE=${GLOB_MODE} -P
+            ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
+            --debug-output
         WORKING_DIRECTORY ${MeshTest_SOURCE_PATH}
     )
     set_tests_properties(${TESTER_NAME} PROPERTIES DEPENDS ${TEST_NAME})
diff --git a/scripts/cmake/test/OgsTest.cmake b/scripts/cmake/test/OgsTest.cmake
index 9b44e38c9b60819b94167af97c1af0e57d7efc02..44459eb41ba9ccd3079b5a0a6a19341522ea86f6 100644
--- a/scripts/cmake/test/OgsTest.cmake
+++ b/scripts/cmake/test/OgsTest.cmake
@@ -1,5 +1,5 @@
 # cmake-lint: disable=C0103
-function (OgsTest)
+function(OgsTest)
 
     if(NOT OGS_BUILD_CLI OR NOT OGS_BUILD_TESTING)
         return()
@@ -7,18 +7,22 @@ function (OgsTest)
     set(options DISABLED)
     set(oneValueArgs PROJECTFILE RUNTIME)
     set(multiValueArgs WRAPPER)
-    cmake_parse_arguments(OgsTest "${options}" "${oneValueArgs}"
-        "${multiValueArgs}" ${ARGN})
+    cmake_parse_arguments(
+        OgsTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}
+    )
 
     get_filename_component(OgsTest_DIR "${OgsTest_PROJECTFILE}" DIRECTORY)
     get_filename_component(OgsTest_NAME "${OgsTest_PROJECTFILE}" NAME)
     get_filename_component(OgsTest_NAME_WE "${OgsTest_PROJECTFILE}" NAME_WE)
 
-    if (OgsTest_UNPARSED_ARGUMENTS)
-        message(FATAL_ERROR "Unparsed argument(s) '${OgsTest_UNPARSED_ARGUMENTS}' to OgsTest call.")
+    if(OgsTest_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+                "Unparsed argument(s) '${OgsTest_UNPARSED_ARGUMENTS}' to OgsTest call."
+        )
     endif()
 
-    if (NOT DEFINED OgsTest_RUNTIME)
+    if(NOT DEFINED OgsTest_RUNTIME)
         set(OgsTest_RUNTIME 1)
     endif()
 
@@ -38,28 +42,33 @@ function (OgsTest)
 
     set(TEST_NAME "ogs-${OgsTest_DIR}/${OgsTest_NAME_WE}")
     # Add wrapper postfix (-mpi for mpirun).
-    if (OgsTest_WRAPPER)
+    if(OgsTest_WRAPPER)
         string(REGEX MATCH "^[^ ]+" WRAPPER ${OgsTest_WRAPPER})
-        if (WRAPPER STREQUAL "mpirun")
+        if(WRAPPER STREQUAL "mpirun")
             set(TEST_NAME "${TEST_NAME}-mpi")
         endif()
     endif()
 
     add_test(
-        NAME ${TEST_NAME}
-        WORKING_DIRECTORY "${OgsTest_BINARY_DIR}"
-        COMMAND ${OgsTest_WRAPPER} $<TARGET_FILE:ogs> -r ${OgsTest_SOURCE_DIR} ${OgsTest_SOURCE_DIR}/${OgsTest_NAME})
-    # For debugging:
-    #message("Adding test with
-    #    NAME ${TEST_NAME}
-    #    WORKING_DIRECTORY ${OgsTest_BINARY_DIR}
-    #    COMMAND ${OgsTest_WRAPPER} $<TARGET_FILE:ogs> -r ${OgsTest_SOURCE_DIR} ${OgsTest_SOURCE_DIR}/${OgsTest_NAME})
+        NAME ${TEST_NAME} WORKING_DIRECTORY "${OgsTest_BINARY_DIR}"
+        COMMAND ${OgsTest_WRAPPER} $<TARGET_FILE:ogs> -r ${OgsTest_SOURCE_DIR}
+                ${OgsTest_SOURCE_DIR}/${OgsTest_NAME}
+    )
+    # For debugging: message("Adding test with NAME ${TEST_NAME}
+    # WORKING_DIRECTORY ${OgsTest_BINARY_DIR} COMMAND ${OgsTest_WRAPPER}
+    # $<TARGET_FILE:ogs> -r ${OgsTest_SOURCE_DIR}
+    # ${OgsTest_SOURCE_DIR}/${OgsTest_NAME})
 
     current_dir_as_list(ProcessLib DIR_LABELS)
-    set_tests_properties(${TEST_NAME} PROPERTIES
-        ENVIRONMENT VTKDIFF_EXE=$<TARGET_FILE:vtkdiff>
-        COST ${OgsTest_RUNTIME}
-        DISABLED ${OgsTest_DISABLED}
-        LABELS "${DIR_LABELS}"
+    set_tests_properties(
+        ${TEST_NAME}
+        PROPERTIES ENVIRONMENT
+                   VTKDIFF_EXE=$<TARGET_FILE:vtkdiff>
+                   COST
+                   ${OgsTest_RUNTIME}
+                   DISABLED
+                   ${OgsTest_DISABLED}
+                   LABELS
+                   "${DIR_LABELS}"
     )
 endfunction()
diff --git a/scripts/cmake/test/Test.cmake b/scripts/cmake/test/Test.cmake
index 881fc11e731a15350a59b114a53acb47343f7515..a26a61b0f75b969beec8b5f8723fc65d4e39694f 100644
--- a/scripts/cmake/test/Test.cmake
+++ b/scripts/cmake/test/Test.cmake
@@ -7,22 +7,40 @@ find_program(VALGRIND_TOOL_PATH valgrind)
 find_program(MPIRUN_TOOL_PATH mpirun)
 
 if(NOT TIME_TOOL_PATH)
-    message(STATUS "time-command is required for time wrapper but was not found! All corresponding tests are disabled.")
+    message(
+        STATUS
+            "time-command is required for time wrapper but was not found! All corresponding tests are disabled."
+    )
 endif()
 if(NOT VALGRIND_TOOL_PATH)
-    message(STATUS "Valgrind is required for memcheck wrapper but was not found! All corresponding tests are disabled.")
+    message(
+        STATUS
+            "Valgrind is required for memcheck wrapper but was not found! All corresponding tests are disabled."
+    )
 endif()
 if(NOT VALGRIND_TOOL_PATH)
-    message(STATUS "Valgrind is required for callgrind wrapper but was not found! All corresponding tests are disabled.")
+    message(
+        STATUS
+            "Valgrind is required for callgrind wrapper but was not found! All corresponding tests are disabled."
+    )
 endif()
 if(NOT MPIRUN_TOOL_PATH)
-    message(STATUS "mpirun is required for mpirun wrapper but was not found! All corresponding tests are disabled.")
+    message(
+        STATUS
+            "mpirun is required for mpirun wrapper but was not found! All corresponding tests are disabled."
+    )
 endif()
 if(NOT DIFF_TOOL_PATH)
-    message(STATUS "diff-command is required for diff tester but was not found! All corresponding tests are disabled.")
+    message(
+        STATUS
+            "diff-command is required for diff tester but was not found! All corresponding tests are disabled."
+    )
 endif()
 if(NOT GREP_TOOL_PATH)
-    message(STATUS "grep-command is required for memcheck tester but was not found! All corresponding tests are disabled.")
+    message(
+        STATUS
+            "grep-command is required for memcheck tester but was not found! All corresponding tests are disabled."
+    )
 endif()
 
 enable_testing() # Enable CTest
@@ -37,42 +55,43 @@ endif()
 add_custom_target(ctest-cleanup ${CMAKE_COMMAND} -E remove -f Tests/ctest.log)
 
 if(OGS_BUILD_UTILS)
-    list(APPEND test_dependencies
-        generateStructuredMesh
-    )
+    list(APPEND test_dependencies generateStructuredMesh)
 endif()
 
 add_custom_target(
     ctest
-    COMMAND ${CMAKE_CTEST_COMMAND} -T Test
-    --force-new-ctest-process
-    --output-on-failure --output-log Tests/ctest.log
-    --exclude-regex LARGE
-    ${CONFIG_PARAMETER}
-    --timeout 900 # 15 minutes
+    COMMAND
+        ${CMAKE_CTEST_COMMAND} -T Test --force-new-ctest-process
+        --output-on-failure --output-log Tests/ctest.log --exclude-regex LARGE
+        ${CONFIG_PARAMETER} --timeout 900 # 15 minutes
     DEPENDS ${test_dependencies} ctest-cleanup
     USES_TERMINAL
 )
 
-add_custom_target(ctest-large-cleanup ${CMAKE_COMMAND} -E remove -f Tests/ctest-large.log)
+add_custom_target(
+    ctest-large-cleanup ${CMAKE_COMMAND} -E remove -f Tests/ctest-large.log
+)
 
 add_custom_target(
     ctest-large
-    COMMAND ${CMAKE_CTEST_COMMAND} -T Test
-    --force-new-ctest-process
-    --output-on-failure --output-log Tests/ctest-large.log
-    --tests-regex LARGE
-    ${CONFIG_PARAMETER}
-    --timeout 5400 # 90 minutes
+    COMMAND
+        ${CMAKE_CTEST_COMMAND} -T Test --force-new-ctest-process
+        --output-on-failure --output-log Tests/ctest-large.log --tests-regex
+        LARGE ${CONFIG_PARAMETER} --timeout 5400 # 90 minutes
     DEPENDS ${test_dependencies} ctest-large-cleanup
     USES_TERMINAL
 )
 
-set_directory_properties(PROPERTIES
-    ADDITIONAL_MAKE_CLEAN_FILES ${PROJECT_BINARY_DIR}/Tests/Data
+set_directory_properties(
+    PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${PROJECT_BINARY_DIR}/Tests/Data
 )
 
-set_target_properties(ctest ctest-large ctest-cleanup ctest-large-cleanup
-    PROPERTIES FOLDER Testing)
+set_target_properties(
+    ctest ctest-large ctest-cleanup ctest-large-cleanup PROPERTIES FOLDER
+                                                                   Testing
+)
 
-configure_file(${PROJECT_SOURCE_DIR}/scripts/test/buildinfo.in.yaml ${PROJECT_BINARY_DIR}/buildinfo.yaml)
+configure_file(
+    ${PROJECT_SOURCE_DIR}/scripts/test/buildinfo.in.yaml
+    ${PROJECT_BINARY_DIR}/buildinfo.yaml
+)
diff --git a/scripts/hooks/pre-commit-cmake-format.sh b/scripts/hooks/pre-commit-cmake-format.sh
deleted file mode 100755
index 785a6cb5b6a1d5c64fe413895fd17d039aaa9dec..0000000000000000000000000000000000000000
--- a/scripts/hooks/pre-commit-cmake-format.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/usr/bin/env bash
-
-EXE=$(command -v cmake-format)
-if [ -z "$EXE" ]; then
-    echo "cmake-format not found; skipping check."
-    exit 0
-fi
-
-
-MOD_FILES=""
-
-MOD_FILES=()
-for FILE in "$@"
-do
-    cmake-format -i "$FILE"
-    MODIFIED=$(git status --porcelain "$FILE" | head -c 2 | tail -c 1)
-    # echo $FILE: $MODIFIED
-    if [ "$MODIFIED" = "M" ]; then
-        MOD_FILES+=("$FILE")
-        echo "Fixed $FILE"
-    fi
-done
-
-if [ -z "$MOD_FILES" ]; then
-    exit 0
-fi
-
-echo "CMake files have been modified."
-echo "Add them to the commit!"
-exit 1