make, scripts: Add support for static Python typechecking

This commit adds support for static typechecking with mypy.

Notable additions:

  - A new target "check" which does the type checking

  - Py-mods.mk, meant to be included from a directory containing python modules
    in subdirectories, but not being a python module itself. It makes the all
    target depend on check only if PY_RUN_CHECK_AFTER_BUILD is defined and
    true.  That's because pypy is under heavy development, and the Ubuntu 18.04
    version is too old to work for lots of the code.

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2020-04-10 12:13:12 +00:00
commit a404be15b9
4 changed files with 25 additions and 3 deletions

14
make/py-mods.mk Normal file
View file

@ -0,0 +1,14 @@
include $(JWBDIR)/make/defs.mk
include $(JWBDIR)/make/py-defs.mk
include $(JWBDIR)/make/dirs.mk
include $(JWBDIR)/make/dev-utils.mk
include $(JWBDIR)/make/py-rules.mk
all:
install:
clean:
distclean:
ifeq ($(PY_RUN_CHECK_AFTER_BUILD),true)
all: check
endif