diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000000000000000000000000000000000000..68578e26096539d7bc3f33e0bb87e17c4b17e18b
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "libdap"]
+	path = libdap
+	url = https://github.com/cellframe/libdap.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..29eeafccafae66e88825529e0be9137cab0496a1
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,24 @@
+project(dap-python C)
+cmake_minimum_required(VERSION 2.8)
+
+set(CMAKE_VERBOSE_MAKEFILE ON)
+set(CMAKE_COLOR_MAKEFILE   ON)
+set(CMAKE_C_STANDARD 11)
+#set(SUBMODULES_NO_BUILD ON)
+
+add_subdirectory(libdap)
+
+file(GLOB CORE_SRCS src/*.c)
+file(GLOB CORE_HEADERS src/*.h)
+
+set(Python_ADDITIONAL_VERSIONS 2.7)
+find_package (PythonLibs)
+include_directories(${PYTHON_INCLUDE_DIR})
+
+add_library(${PROJECT_NAME} STATIC ${CORE_SRCS} ${CORE_UNIX_SRCS})
+
+if(BUILD_DAP_TESTS)
+    enable_testing()
+    add_subdirectory(test)
+endif()
+
diff --git a/libdap b/libdap
new file mode 160000
index 0000000000000000000000000000000000000000..d37b2aa26d2a7cc068529db343a87fd728904d33
--- /dev/null
+++ b/libdap
@@ -0,0 +1 @@
+Subproject commit d37b2aa26d2a7cc068529db343a87fd728904d33
diff --git a/src/libdap-python.c b/src/libdap-python.c
new file mode 100644
index 0000000000000000000000000000000000000000..e40c1e8049b9dbd195c60d8195ffb58d92c57c7d
--- /dev/null
+++ b/src/libdap-python.c
@@ -0,0 +1,5 @@
+#include "libdap-python.h"
+int main(void)
+{
+	return -1;
+}
diff --git a/src/libdap-python.h b/src/libdap-python.h
new file mode 100644
index 0000000000000000000000000000000000000000..605f9fc523112e3e5c7cf70812e2816ca725d6d0
--- /dev/null
+++ b/src/libdap-python.h
@@ -0,0 +1,2 @@
+#define PY_SSIZE_T_CLEAN
+#include <Python.h>