xref: /openbmc/qemu/python/Makefile (revision 6f84d726f3fe5e0f8c3b8dd36100ed9ab446ce1e)
1*6f84d726SJohn Snow.PHONY: help pipenv check-pipenv check clean distclean develop
26560379fSJohn Snow
36560379fSJohn Snowhelp:
46560379fSJohn Snow	@echo "python packaging help:"
56560379fSJohn Snow	@echo ""
6*6f84d726SJohn Snow	@echo "make check-pipenv:"
7*6f84d726SJohn Snow	@echo "    Run tests in pipenv's virtual environment."
8*6f84d726SJohn Snow	@echo "    These tests use the oldest dependencies."
9*6f84d726SJohn Snow	@echo "    Requires: Python 3.6 and pipenv."
10*6f84d726SJohn Snow	@echo "    Hint (Fedora): 'sudo dnf install python3.6 pipenv'"
116560379fSJohn Snow	@echo ""
126560379fSJohn Snow	@echo "make develop:    Install deps for 'make check', and"
136560379fSJohn Snow	@echo "                 the qemu libs in editable/development mode."
146560379fSJohn Snow	@echo ""
156560379fSJohn Snow	@echo "make check:      run linters using the current environment."
166560379fSJohn Snow	@echo ""
173c8de38cSJohn Snow	@echo "make check-tox:  run linters using multiple python versions."
183c8de38cSJohn Snow	@echo ""
19*6f84d726SJohn Snow	@echo "make pipenv"
20*6f84d726SJohn Snow	@echo "    Creates pipenv's virtual environment (.venv)"
21*6f84d726SJohn Snow	@echo ""
226560379fSJohn Snow	@echo "make clean:      remove package build output."
236560379fSJohn Snow	@echo ""
246560379fSJohn Snow	@echo "make distclean:  remove venv files, qemu package forwarder,"
256560379fSJohn Snow	@echo "                 built distribution files, and everything"
266560379fSJohn Snow	@echo "                 from 'make clean'."
276560379fSJohn Snow
28*6f84d726SJohn Snowpipenv: .venv
296560379fSJohn Snow.venv: Pipfile.lock
306560379fSJohn Snow	@PIPENV_VENV_IN_PROJECT=1 pipenv sync --dev --keep-outdated
316560379fSJohn Snow	@touch .venv
326560379fSJohn Snow
33*6f84d726SJohn Snowcheck-pipenv: pipenv
346560379fSJohn Snow	@pipenv run make check
356560379fSJohn Snow
366560379fSJohn Snowdevelop:
376560379fSJohn Snow	pip3 install -e .[devel]
386560379fSJohn Snow
396560379fSJohn Snowcheck:
406560379fSJohn Snow	@avocado --config avocado.cfg run tests/
416560379fSJohn Snow
423c8de38cSJohn Snowcheck-tox:
433c8de38cSJohn Snow	@tox
443c8de38cSJohn Snow
456560379fSJohn Snowclean:
466560379fSJohn Snow	python3 setup.py clean --all
476560379fSJohn Snow
486560379fSJohn Snowdistclean: clean
493c8de38cSJohn Snow	rm -rf qemu.egg-info/ .venv/ .tox/ dist/
50