diff --git a/CMakeLists.txt b/CMakeLists.txt
index c632e92cbfbf9219b2c9c380d7a343c85a10528d..8f8461db3c382204db09feb098682ae9eae9e53b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,4 @@
-# We require version CMake version 3.1 to prevent issues
-# with dune_enable_all_packages and older CMake versions.
-cmake_minimum_required(VERSION 3.1)
+cmake_minimum_required(VERSION 3.13)
 project(dune-scalarbasis CXX)
 
 if(NOT (dune-common_DIR OR dune-common_ROOT OR
@@ -20,12 +18,9 @@ include(DuneMacros)
 # start a dune project with information from dune.module
 dune_project()
 
-dune_enable_all_packages()
-
 add_subdirectory(src)
 add_subdirectory(dune)
 add_subdirectory(doc)
-add_subdirectory(cmake/modules)
 
 # finalize the dune project, e.g. generating config.h etc.
 finalize_dune_project(GENERATE_CONFIG_H_CMAKE)
diff --git a/README b/README
index b7f657711a432ecc4c798e2d8e52031873862860..06718dbd5c3df85cde1924feb942d29f20701da6 100644
--- a/README
+++ b/README
@@ -4,7 +4,7 @@ Preparing the Sources
 Additional to the software mentioned in README you'll need the
 following programs installed on your system:
 
-  cmake >= 2.8.12
+  cmake >= 3.13
 
 Getting started
 ---------------
@@ -31,9 +31,9 @@ An example options file might look like this:
 
 #use this options to configure and make if no other options are given
 CMAKE_FLAGS=" \
--DCMAKE_CXX_COMPILER=g++-5 \
+-DCMAKE_CXX_COMPILER=g++-7 \
 -DCMAKE_CXX_FLAGS='-Wall -pedantic' \
--DCMAKE_INSTALL_PREFIX=/install/path" #Force g++-5 and set compiler flags
+-DCMAKE_INSTALL_PREFIX=/install/path" #Force g++-7 and set compiler flags
 
 If you save this information into example.opts you can pass the opts file to
 dunecontrol via the --opts option, e. g.
diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
deleted file mode 100644
index 57484ea2064d580eafacbff4fb85eda4505a18bf..0000000000000000000000000000000000000000
--- a/cmake/modules/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-set(modules "DuneScalarbasisMacros.cmake")
-
-install(FILES ${modules} DESTINATION ${DUNE_INSTALL_MODULEDIR})
diff --git a/cmake/modules/DuneScalarbasisMacros.cmake b/cmake/modules/DuneScalarbasisMacros.cmake
deleted file mode 100644
index 613dfb664b75999b008f0003a4d7c409cbf409ad..0000000000000000000000000000000000000000
--- a/cmake/modules/DuneScalarbasisMacros.cmake
+++ /dev/null
@@ -1 +0,0 @@
-# File for module specific CMake tests.
diff --git a/dune.module b/dune.module
index 3f36ab38b3700ae62367c25d66ce4a3de9771fb5..f791b76b49c1a1dae6f480f001bba25a96cd7d5b 100644
--- a/dune.module
+++ b/dune.module
@@ -4,7 +4,7 @@
 
 #Name of the module
 Module: dune-scalarbasis
-Version: 0.1
+Version: 2.9-git
 Maintainer: simon.praetorius@tu-dresden.de
 #depending on
-Depends: dune-functions
+Depends: dune-functions (>= 2.9)
diff --git a/dune/functions/functionspacebases/scalarbasis.hh b/dune/functions/functionspacebases/scalarbasis.hh
index 4a272ccc3ad5c09a9567ed4513b79c38f513f38f..7077816473ffbe6b78fd696c43ab95e614b46f14 100644
--- a/dune/functions/functionspacebases/scalarbasis.hh
+++ b/dune/functions/functionspacebases/scalarbasis.hh
@@ -79,6 +79,7 @@ public:
   }
 
   /// \brief Return number of possible values for next position in multi index
+  template<class SizePrefix>
   size_type size(const SizePrefix prefix) const
   {
     assert(prefix.size() == 0 || prefix.size() == 1);
diff --git a/src/poisson.cc b/src/poisson.cc
index 7acf042da0d2b3797aa345204eadaf90e8456d8b..fd1afba97e2b8870206ff4ba18aae7d665e32ed0 100644
--- a/src/poisson.cc
+++ b/src/poisson.cc
@@ -5,7 +5,6 @@
 #include <array>
 #include <vector>
 
-#include <dune/common/function.hh>
 #include <dune/common/indices.hh>
 
 #include <dune/geometry/quadraturerules.hh>
diff --git a/src/stokes.cc b/src/stokes.cc
index 139c428ff3b5ff84fbc7ae3817b619c966acb31c..a383f8d7c1ecc9c685a946fca87431049da96cd3 100644
--- a/src/stokes.cc
+++ b/src/stokes.cc
@@ -5,7 +5,6 @@
 #include <array>
 #include <vector>
 
-#include <dune/common/function.hh>
 #include <dune/common/indices.hh>
 
 #include <dune/geometry/quadraturerules.hh>