xref: /openbmc/qemu/python/Makefile (revision 6f84d726)
1.PHONY: help pipenv check-pipenv check clean distclean develop
2
3help:
4	@echo "python packaging help:"
5	@echo ""
6	@echo "make check-pipenv:"
7	@echo "    Run tests in pipenv's virtual environment."
8	@echo "    These tests use the oldest dependencies."
9	@echo "    Requires: Python 3.6 and pipenv."
10	@echo "    Hint (Fedora): 'sudo dnf install python3.6 pipenv'"
11	@echo ""
12	@echo "make develop:    Install deps for 'make check', and"
13	@echo "                 the qemu libs in editable/development mode."
14	@echo ""
15	@echo "make check:      run linters using the current environment."
16	@echo ""
17	@echo "make check-tox:  run linters using multiple python versions."
18	@echo ""
19	@echo "make pipenv"
20	@echo "    Creates pipenv's virtual environment (.venv)"
21	@echo ""
22	@echo "make clean:      remove package build output."
23	@echo ""
24	@echo "make distclean:  remove venv files, qemu package forwarder,"
25	@echo "                 built distribution files, and everything"
26	@echo "                 from 'make clean'."
27
28pipenv: .venv
29.venv: Pipfile.lock
30	@PIPENV_VENV_IN_PROJECT=1 pipenv sync --dev --keep-outdated
31	@touch .venv
32
33check-pipenv: pipenv
34	@pipenv run make check
35
36develop:
37	pip3 install -e .[devel]
38
39check:
40	@avocado --config avocado.cfg run tests/
41
42check-tox:
43	@tox
44
45clean:
46	python3 setup.py clean --all
47
48distclean: clean
49	rm -rf qemu.egg-info/ .venv/ .tox/ dist/
50