# Sphinx tries to keep track of which docs need to be built on its
# own. We could do better, but we would have to duplicate all of the
-# information that we already gave Sphinx to make it work.
+# information that we already gave Sphinx to make it work. Thus the
+# "doc" target will unconditionally invoke sphinx.
.PHONY: doc
doc:
cd doc && $(MAKE) html
+# Run the doctests contained in the sphinx documentation, which aren't
+# run as part of the normal test suite (because nobody wants to wait
+# for sphinx to run).
.PHONY: doctest
doctest:
cd doc && $(MAKE) doctest
+# Run the test suite once.
.PHONY: check
check:
PYTHONPATH="." test/__main__.py
+# Run the test suite forever, but only the parts of it that are
+# randomized.
.PHONY: checkloop
checkloop:
PYTHONPATH="." test/__main__.py --no-doctests --loop
+# Run pylint to obtain some unconstructive criticism on my coding style.
.PHONY: lint
lint:
pylint --rcfile=./.pylintrc $(SRCS)
+# Delete urrythang.
.PHONY: clean
clean:
rm -rf $(PN)/__pycache__ test/__pycache__ doc/build