Makefile 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. PYTHON = python
  2. PYLINT = pylint
  3. SETUP = $(PYTHON) setup.py
  4. PYDOCTOR ?= pydoctor
  5. ifeq ($(shell $(PYTHON) -c "import sys; print(sys.version_info >= (2, 7))"),True)
  6. TESTRUNNER ?= unittest
  7. else
  8. TESTRUNNER ?= unittest2.__main__
  9. endif
  10. RUNTEST = PYTHONPATH=.:$(PYTHONPATH) $(PYTHON) -m $(TESTRUNNER)
  11. DESTDIR=/
  12. all: build
  13. doc:: pydoctor
  14. pydoctor::
  15. $(PYDOCTOR) --make-html -c dulwich.cfg
  16. build::
  17. $(SETUP) build
  18. $(SETUP) build_ext -i
  19. install::
  20. $(SETUP) install --root="$(DESTDIR)"
  21. check:: build
  22. $(RUNTEST) dulwich.tests.test_suite
  23. check-tutorial:: build
  24. $(RUNTEST) dulwich.tests.tutorial_test_suite
  25. check-nocompat:: build
  26. $(RUNTEST) dulwich.tests.nocompat_test_suite
  27. check-compat:: build
  28. $(RUNTEST) dulwich.tests.compat_test_suite
  29. check-pypy:: clean
  30. $(MAKE) check-noextensions PYTHON=pypy
  31. check-noextensions:: clean
  32. $(RUNTEST) dulwich.tests.test_suite
  33. check-all: check check-pypy check-noextensions
  34. clean::
  35. $(SETUP) clean --all
  36. rm -f dulwich/*.so
  37. lint::
  38. $(PYLINT) --rcfile=.pylintrc --msg-template="{path}:{line}: [{msg_id}({symbol}), {obj}] {msg}" dulwich