blob: a08426538a67bb24cb09e7dbd38a7603326cbf91 [file] [log] [blame] [edit]
SHELL := bash
PYTHON ?= $(shell command -v python3)
PYTHON ?= $(shell command -v python)
ifndef PYTHON
$(error Can't find 'python3'. Set PYTHON=/path/to/bin/python3)
endif
ifeq (,$(shell $(PYTHON) --version | grep -E 'Python 3\.([6789]|1[0-9])\.' || true))
$(error Unsupported python version. Needs 3.6+)
endif
VENV ?= .venv
export PATH := $(VENV)/bin:$(PATH)
o ?=
.DELETE_ON_ERROR:
default:
test: venv
PYYAML_FORCE_LIBYAML=0 pytest $o
test-ext: venv
PYYAML_FORCE_LIBYAML=1 pytest $o
build: venv
python setup.py build $o
build-ext: venv
python setup.py --with-libyaml build $o
install: venv
python setup.py install $o
installext: venv
python setup.py --with-libyaml install $o
clean:
$(RM) -r \
.pytest_cache/ \
build/ \
lib/PyYAML.egg-info/ \
lib/yaml/__pycache__/ \
tests/__pycache__/ \
tests/legacy_tests/__pycache__/
$(RM) yaml/_yaml.c \
lib/yaml/_yaml.cpython-*
distclean: clean
$(RM) -r $(VENV)
venv: $(VENV)
$(VENV):
$(PYTHON) -m venv $@
pip install --upgrade pip
pip install pytest
pip install -e .