diff --git a/docs/Makefile b/docs/Makefile
index af23b91da9975a9cebb3d8ff9f9f20c44ed97fcc..6c3277311a0ff8271812118fc8e5e4fb35056196 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -12,7 +12,10 @@ BUILDDIR      = _build
 help:
 	@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
 
-.PHONY: help Makefile
+.PHONY: help Makefile gen_rst env_setup clean
+
+gen_rst:
+	find .. -name src -exec sphinx-apidoc -e -M -f --ext-autodoc -o source/api {} \;
 
 env_setup:
 	pip3 install -r requirements.txt
@@ -21,3 +24,6 @@ env_setup:
 # "make mode" option.  $(O) is meant as a shortcut for $(SPHINXOPTS).
 %: Makefile env_setup
 	@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+clean:
+	rm -rf $(BUILDDIR)