diff --git a/CMakeLists.txt b/CMakeLists.txt
index b5b046f438cff17e50f2a3adf15c1fd323d8ca5f..91a4111b4d10696b032de113f5b8300ce857bc70 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,7 +10,9 @@ set(
 	CACHE
 	FILEPATH "Default toolchain"
 	)
-
+set(CMAKE_CXX_STANDARD 17 CACHE STRING "C++ standard")
+set(CMAKE_CXX_STANDARD_REQUIRED ON CACHE BOOL "Require C++ standard to be supported")
+set(CMAKE_POSITION_INDEPENDENT_CODE ON CACHE BOOL "compile as PIC by default")
 
 option(HUNTER_ENABLED "Enable Hunter package manager" OFF)
 include("cmake/HunterGate.cmake")