diff --git a/doc/meson.build b/doc/meson.build
new file mode 100644
index 0000000000000000000000000000000000000000..ef1996020b0ef1b6722ca9b30a002289a53c7070
--- /dev/null
+++ b/doc/meson.build
@@ -0,0 +1,30 @@
+python_doc = py_mod.find_installation(
+  'python3',
+  modules: ['sphinx'],
+  required: false
+)
+
+if not python_doc.found()
+  subdir_done()
+endif
+
+doc_files = files(
+  'index.rst',
+  'discretization.rst',
+  'conf.py',
+)
+
+custom_target('doc',
+  command: [python_doc, '-msphinx',
+    '-q',                       # quiet
+    '-E',                       # rebuild from scratch
+    '-j', 'auto',               # parallel build
+    '-d', '@PRIVATE_DIR@',      # doctrees dir
+    '@CURRENT_SOURCE_DIR@',     # source dir
+    '@OUTPUT@',                 # output dir
+  ],
+  depend_files: doc_files,
+  depends: [usadelndsoc_pymod],
+  output: 'html',
+  build_by_default: true,
+)