X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=makefile;h=122096547f336f92ad28e6f97d795559c41cb78d;hb=dd58b25641f37f52b7327b1b779a606c33e230eb;hp=e48e9a07212c0d09448c2a40cf4967da1586ded7;hpb=6344038e97380527bef52ba48ba54cc9180c7a82;p=dunshire.git diff --git a/makefile b/makefile index e48e9a0..1220965 100644 --- a/makefile +++ b/makefile @@ -1,23 +1,48 @@ PN := dunshire -SRCDIR := src/$(PN) -TESTDIR := src/test -SRCS := $(SRCDIR)/*.py +SRCS := $(PN)/*.py test/*.py -doc: $(SRCS) doc/source/conf.py doc/makefile +# 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. 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=src python $(TESTDIR)/suite.py + 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) +# Create a source distribution tarball. First we clean up, to make +# sure no junk gets added to the distribution. Then we build the docs +# so that users will get some usable HTML documentation and not just +# the source files. +.PHONY: dist +dist: clean doc + python setup.py sdist + +# Delete urrythang. .PHONY: clean clean: - rm -rf $(SRCDIR)/__pycache__ $(TESTDIR)/__pycache__ doc/build + rm -rf $(PN)/__pycache__ test/__pycache__ doc/build + rm -rf $(PN).egg-info + rm -rf dist