# Makefile for updating BuildStream's requirements files. | |
# | |
REQUIREMENTS_IN := $(wildcard *.in) | |
REQUIREMENTS_TXT := $(REQUIREMENTS_IN:.in=.txt) | |
PYTHON := python3 | |
VENV := $(PYTHON) -m venv | |
VENV_PIP = $(VENVDIR)/bin/pip | |
.PHONY: all FORCE | |
all: $(REQUIREMENTS_TXT) | |
%.txt: %.in FORCE | |
$(eval VENVDIR := $(shell mktemp -d $(CURDIR)/.bst-venv.XXXXXX)) | |
$(VENV) $(VENVDIR) | |
$(VENV_PIP) install -r $< | |
$(VENV_PIP) freeze -r $< | grep -v pkg-resources > $@ | |
rm -rf $(VENVDIR) | |
FORCE: |