diff --git a/aql2/CMakeLists.txt b/aql2/CMakeLists.txt
index 2354f94aff335a7d7568bd64ac2ba0aad53663ed..1a2f809958f7159138e5b09fbfe2898eb68b3b83 100644
--- a/aql2/CMakeLists.txt
+++ b/aql2/CMakeLists.txt
@@ -29,3 +29,11 @@ if(FETCH_NEW_TCLAP)
 	target_include_directories(aql2 SYSTEM PUBLIC ${CMAKE_BINARY_DIR}/tclap-src/include/) # There are many warnings inside tclap, use -isystem instead of -I
 endif()
 # hack end
+
+# stdlib
+set(STDLIB_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/src/stdlib")
+configure_file(
+	${CMAKE_CURRENT_SOURCE_DIR}/src/aql.h.in
+	${CMAKE_CURRENT_BINARY_DIR}/aql.h
+	)
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
diff --git a/aql2/src/aql.h.in b/aql2/src/aql.h.in
new file mode 100644
index 0000000000000000000000000000000000000000..8fb03c9f3050c141041b296ab9aaaa6d3993bf45
--- /dev/null
+++ b/aql2/src/aql.h.in
@@ -0,0 +1,4 @@
+#pragma once
+
+#define STDLIB_DIRECTORY "@STDLIB_DIRECTORY@"
+
diff --git a/aql2/src/stdlib/.gitkeep b/aql2/src/stdlib/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391