diff --git a/cmake/modules/AddGstatFileLinks.cmake b/cmake/modules/AddGstatFileLinks.cmake
index f9ac2cfe2d8bed05cddcf4eed1dc594c7a79ac72..4ef1052da109b60d7d487ffc4ee095afa99d1582 100644
--- a/cmake/modules/AddGstatFileLinks.cmake
+++ b/cmake/modules/AddGstatFileLinks.cmake
@@ -1,4 +1,6 @@
 # Creates symbolic links to all gstat files in the source directory
+include_guard(GLOBAL)
+
 macro(add_gstat_file_links)
   FILE(GLOB gstat_files gstat*.txt *.gstat)
   foreach(VAR ${gstat_files})
diff --git a/cmake/modules/AddInputFileLinks.cmake b/cmake/modules/AddInputFileLinks.cmake
index 9f2312c16b69614fa6f913b580c9bee54cdbd91e..a509342632c3db0b8cb093b1414aa21cbc36f269 100644
--- a/cmake/modules/AddInputFileLinks.cmake
+++ b/cmake/modules/AddInputFileLinks.cmake
@@ -1,4 +1,6 @@
 # Creates symbolic links to all input files in the source directory
+include_guard(GLOBAL)
+
 macro(add_input_file_links)
   FILE(GLOB input_files *.input)
   foreach(VAR ${input_files})
diff --git a/cmake/modules/DumuxDoxygen.cmake b/cmake/modules/DumuxDoxygen.cmake
index f9d6be18138e09e471046e1308974aeb2eca897a..cc4e734bebaa7bca60d45b01956a06cfb7b118d3 100644
--- a/cmake/modules/DumuxDoxygen.cmake
+++ b/cmake/modules/DumuxDoxygen.cmake
@@ -1,6 +1,8 @@
 # add_dumux_doxgen_target
 #
 # make sure, that the doxygen links to todo list, bibliography, etc. are correct
+include_guard(GLOBAL)
+
 MACRO (add_dumux_doxygen_target)
   if(DOXYGEN_FOUND)
     add_doxygen_target()
diff --git a/cmake/modules/DumuxTestMacros.cmake b/cmake/modules/DumuxTestMacros.cmake
index b484dd5f82b429e604e2f3ce404d6fd94deb2b38..e4b8cc77f5c10418c27d891c617a55229420c5b7 100644
--- a/cmake/modules/DumuxTestMacros.cmake
+++ b/cmake/modules/DumuxTestMacros.cmake
@@ -199,6 +199,7 @@
 #       Example: Write CMAKE_GUARD dune-foo_FOUND if you want to set a variable
 #       that is only true if the module dune-foo has been found.
 #
+include_guard(GLOBAL)
 
 # Note: This forwards to dune_add_test but enables another layer in case we need to support
 # future Dune features with older Dune versions supported by Dumux
diff --git a/cmake/modules/FindGLPK.cmake b/cmake/modules/FindGLPK.cmake
index 7e1e38da14d946f1a0e4f1254fcfd98044181c98..9a7ef3f141ced0ff7148ab300c878ca1c8d2ded0 100644
--- a/cmake/modules/FindGLPK.cmake
+++ b/cmake/modules/FindGLPK.cmake
@@ -10,6 +10,7 @@
 # GLPK_INCLUDE_DIRS    Path to the GLPK include dirs.
 # GLPK_LIBRARIES       Name to the GLPK library.
 #
+include_guard(GLOBAL)
 
 # look for header files, only at positions given by the user
 find_path(GLPK_INCLUDE_DIR
diff --git a/cmake/modules/FindGmsh.cmake b/cmake/modules/FindGmsh.cmake
index 5fa395e0a4d89b43c0c6439a893c3d3bf89fb1b4..0d0ac8c132ceec1136ddc3b1db62191db303daa6 100644
--- a/cmake/modules/FindGmsh.cmake
+++ b/cmake/modules/FindGmsh.cmake
@@ -22,6 +22,7 @@
 #   for the gmsh library in the given path before inspecting
 #   system paths.
 #
+include_guard(GLOBAL)
 
 # look for header files, only at positions given by the user
 find_program(GMSH_EXECUTABLE
diff --git a/cmake/modules/FindGstat.cmake b/cmake/modules/FindGstat.cmake
index 8931f20a67af2308e5bb1fe07c78304d863cb9c5..a55ce868831d27a65d0bb36ffda24f6ca96046a0 100644
--- a/cmake/modules/FindGstat.cmake
+++ b/cmake/modules/FindGstat.cmake
@@ -22,6 +22,7 @@
 #   for the gstat library in the given path before inspecting
 #   system paths.
 #
+include_guard(GLOBAL)
 
 # look for header files, only at positions given by the user
 find_program(GSTAT_EXECUTABLE
diff --git a/cmake/modules/FindNLOPT.cmake b/cmake/modules/FindNLOPT.cmake
index 7163be70bb950a44aa08b807b38fa4a24453f9eb..39148f70fed14dacba1ce7ae38b3f6b0a0ef8914 100644
--- a/cmake/modules/FindNLOPT.cmake
+++ b/cmake/modules/FindNLOPT.cmake
@@ -10,6 +10,7 @@
 # NLOPT_INCLUDE_DIRS    Path to the NLOPT include dirs.
 # NLOPT_LIBRARIES       Name to the NLOPT library.
 #
+include_guard(GLOBAL)
 
 # look for header files, only at positions given by the user
 find_path(NLOPT_INCLUDE_DIR
diff --git a/cmake/modules/FindPVPython.cmake b/cmake/modules/FindPVPython.cmake
index 1ed2751f02013650f40aa2efd05b6e6d3821cd8e..a11941dacf029237d42ffd0747a5247a818d7736 100644
--- a/cmake/modules/FindPVPython.cmake
+++ b/cmake/modules/FindPVPython.cmake
@@ -22,6 +22,7 @@
 #   for the pvpython library in the given path before inspecting
 #   system paths.
 #
+include_guard(GLOBAL)
 
 # look for header files, only at positions given by the user
 find_program(PVPYTHON_EXECUTABLE