## run_tests Run regression tests
.PHONY: run_tests
-run_tests: devel/testenv
+run_tests: devel/testenv dist
if [ -x $(PYENV_BIN)/pyenv ] ; then \
(set -e ; \
export PYENV_ROOT=$(PYENV_INSTALLATION) ; \
# Development related targets
+DEVEL_DEPS := setup.py pyproject.toml MANIFEST.in
# Run linters
.PHONY: run-linters
[ -e .yamllint.yaml ] && devel/pytest/bin/yamllint --strict .
# Re-create development environment when build environment changes
-devel: setup.py pyproject.toml MANIFEST.in
+devel: $(DEVEL_DEPS)
rm -rf devel ${TOX_STUFF}
mkdir -p devel
# virtualenv for package building
-devel/buildenv: devel
+devel/buildenv: $(DEVEL_DEPS)
+ mkdir -p devel
[ -d devel/buildenv ] \
|| ( ${VIRTUALENV} devel/buildenv ; \
devel/buildenv/bin/pip install --upgrade pip ; \
)
# virtualenv for development
-devel/testenv: devel
+devel/testenv: $(DEVEL_DEPS)
+ mkdir -p devel
[ -d devel/testenv ] \
|| ( ${VIRTUALENV} devel/testenv ; \
devel/testenv/bin/pip install --upgrade pip ; \
)
# virtualenv for pytest and other code tests
-devel/pytest: devel dist
+devel/pytest: $(DEVEL_DEPS)
+ mkdir -p devel
if [ ! -d devel/pytest ] ; then \
( ${VIRTUALENV} devel/pytest ; \
devel/pytest/bin/pip install --upgrade pip ; \
fi
# virtualenv for pudb
-devel/pudb: devel dist
+devel/pudb: $(DEVEL_DEPS)
+ mkdir -p devel
if [ ! -d devel/pudb ] ; then \
( ${VIRTUALENV} devel/pudb ; \
devel/pudb/bin/pip install --upgrade pip ; \