diff --git a/SuperBuild/CMake/External_shark.cmake b/SuperBuild/CMake/External_shark.cmake
index b34c00c96b65ebe6ce9972257843f5980628f10f..218497aca386e498973c32851de5b6c9ebb8ea34 100644
--- a/SuperBuild/CMake/External_shark.cmake
+++ b/SuperBuild/CMake/External_shark.cmake
@@ -1,38 +1,28 @@
-if(NOT __EXTERNAL_SHARK__)
-set(__EXTERNAL_SHARK__ 1)
+INCLUDE_ONCE_MACRO(SHARK)
 
-if(USE_SYSTEM_SHARK)
-  message(STATUS "  Using system version of SHARK")
-else()
-  SETUP_SUPERBUILD(PROJECT SHARK)
-  cmake_minimum_required(VERSION 3.1)
-  message(STATUS "  Using SuperBuild version of SHARK")
+SETUP_SUPERBUILD(SHARK)
 
-  # declare dependencies
-  ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(SHARK BOOST)
+# declare dependencies
+ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(SHARK BOOST)
 
-  ADD_SUPERBUILD_CMAKE_VAR(SHARK Boost_INCLUDE_DIR)
-  ADD_SUPERBUILD_CMAKE_VAR(SHARK Boost_LIBRARY_DIR)
+ADD_SUPERBUILD_CMAKE_VAR(SHARK Boost_INCLUDE_DIR)
+ADD_SUPERBUILD_CMAKE_VAR(SHARK Boost_LIBRARY_DIR)
 
-  ExternalProject_Add(SHARK
-    PREFIX SHARK
-    URL "https://github.com/Shark-ML/Shark/archive/349f29bd71c370e0f88f7fc9aa66fa5c4768fcb0.zip"
-    URL_MD5 d6e4310f943e8dda4a0151612b5c62ce
-    SOURCE_DIR ${SHARK_SB_SRC}
-    BINARY_DIR ${SHARK_SB_BUILD_DIR}
-    INSTALL_DIR ${SB_INSTALL_PREFIX}
-    DOWNLOAD_DIR ${DOWNLOAD_LOCATION}
-    CMAKE_CACHE_ARGS
-      -DCMAKE_INSTALL_PREFIX:STRING=${SB_INSTALL_PREFIX}
-      -DCMAKE_PREFIX_PATH:STRING=${SB_INSTALL_PREFIX};${CMAKE_PREFIX_PATH}
-      -DCMAKE_BUILD_TYPE:STRING=Release
-      -DBUILD_SHARED_LIBS:BOOL=ON
-      -DBUILD_DOCS:BOOL=OFF
-      -DBUILD_EXAMPLES:BOOL=OFF
-      -DBUILD_TESTING:BOOL=OFF
-      -DENABLE_HDF5:BOOL=OFF
-      CMAKE_COMMAND ${SB_CMAKE_COMMAND}
-    )
-  set(_SB_SHARK_DIR ${SB_INSTALL_PREFIX}/share/SHARK)
-endif()
-endif()
+ExternalProject_Add(SHARK
+  PREFIX SHARK
+  URL "https://github.com/Shark-ML/Shark/archive/349f29bd71c370e0f88f7fc9aa66fa5c4768fcb0.zip"
+  URL_MD5 d6e4310f943e8dda4a0151612b5c62ce
+  SOURCE_DIR ${SHARK_SB_SRC}
+  BINARY_DIR ${SHARK_SB_BUILD_DIR}
+  INSTALL_DIR ${SB_INSTALL_PREFIX}
+  DOWNLOAD_DIR ${DOWNLOAD_LOCATION}
+  DEPENDS ${SHARK_DEPENDENCIES}
+  CMAKE_CACHE_ARGS
+  -DBUILD_DOCS:BOOL=OFF
+  -DBUILD_EXAMPLES:BOOL=OFF
+  -DBUILD_TESTING:BOOL=OFF
+  -DENABLE_HDF5:BOOL=OFF
+  CMAKE_COMMAND ${SB_CMAKE_COMMAND}
+  )
+
+set(_SB_SHARK_DIR ${SB_INSTALL_PREFIX}/share/SHARK)