diff --git a/CMakeLists.txt b/CMakeLists.txt
index 496712d..f4801a8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 cmake_policy(SET CMP0012 NEW)
 include(TestBigEndian)
 find_package(PythonInterp 3.6)
diff --git a/gr2fonttest/CMakeLists.txt b/gr2fonttest/CMakeLists.txt
index f995dd3..885f4cb 100644
--- a/gr2fonttest/CMakeLists.txt
+++ b/gr2fonttest/CMakeLists.txt
@@ -1,4 +1,4 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 
 project(gr2fonttest)
 
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b6ac26b..07dae70 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -19,7 +19,7 @@
 #    Suite 500, Boston, MA 02110-1335, USA or visit their web page on the
 #    internet at http://www.fsf.org/licenses/lgpl.html.
 
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 project(graphite2_core)
 cmake_policy(SET CMP0012 NEW)
 INCLUDE(CheckCXXSourceCompiles)
diff --git a/tests/bittwiddling/CMakeLists.txt b/tests/bittwiddling/CMakeLists.txt
index 372b4ac..7a69a6e 100644
--- a/tests/bittwiddling/CMakeLists.txt
+++ b/tests/bittwiddling/CMakeLists.txt
@@ -1,4 +1,4 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 project(bits)
 include(Graphite)
 include_directories(${graphite2_core_SOURCE_DIR})
diff --git a/tests/json/CMakeLists.txt b/tests/json/CMakeLists.txt
index ae33427..bc1f181 100644
--- a/tests/json/CMakeLists.txt
+++ b/tests/json/CMakeLists.txt
@@ -1,4 +1,4 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 project(jsontest)
 include(Graphite)
 include_directories(${graphite2_core_SOURCE_DIR})
diff --git a/tests/sparsetest/CMakeLists.txt b/tests/sparsetest/CMakeLists.txt
index 3bfdc0c..adb81bd 100644
--- a/tests/sparsetest/CMakeLists.txt
+++ b/tests/sparsetest/CMakeLists.txt
@@ -1,4 +1,4 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 project(sparsetest)
 include(Graphite)
 include_directories(${graphite2_core_SOURCE_DIR})
diff --git a/tests/utftest/CMakeLists.txt b/tests/utftest/CMakeLists.txt
index dc50ca4..91d781a 100644
--- a/tests/utftest/CMakeLists.txt
+++ b/tests/utftest/CMakeLists.txt
@@ -1,4 +1,4 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
 project(utftest)
 include(Graphite)
 include_directories(${graphite2_core_SOURCE_DIR})
