Version 1.0.3
[linpy.git] / Makefile
index 4ab5d2a..a65c0de 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,18 +1,41 @@
 PYTHON=python3
+SETUP=$(PYTHON) setup.py
 RM=rm -rf
 
 .PHONY: default
 default:
-       @echo "pypol - A polyhedral library based on ISL"
+       @echo "LinPy – A polyhedral library based on isl"
        @echo
        @echo "Makefile usage:"
+       @echo "  make build            build the extension modules"
        @echo "  make test             run the test suite"
+       @echo "  make doc              generate the documentation"
+       @echo "  make view_doc         open the documentation index"
        @echo "  make clean            remove the generated files"
+       @echo "  make upload           upload the module on PyPI"
+
+.PHONY: build
+build:
+       $(SETUP) build_ext --inplace
 
 .PHONY: test
-test:
-       $(PYTHON) -m unittest
+test: build
+       $(PYTHON) -m unittest -v
+
+.PHONY: doc
+doc:
+       $(MAKE) -C doc html
+
+.PHONY: view_doc
+view_doc: doc
+       xdg-open doc/_build/html/index.html >/dev/null 2>&1
 
 .PHONY: clean
 clean:
-       $(RM) build dist MANIFEST pypol/__pycache__ tests/__pycache__
+       $(RM) build dist MANIFEST LinPy.egg-info linpy/_islhelper.*.so
+       find . -name __pycache__ | xargs $(RM)
+       $(MAKE) -C doc $@
+
+.PHONY: upload
+upload:
+       $(SETUP) register sdist upload