| # 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 | |
| all: $(REQUIREMENTS_TXT) | |
| %.txt: %.in | |
| $(eval VENVDIR := $(shell mktemp -d $(CURDIR)/.bst-venv.XXXXXX)) | |
| $(VENV) $(VENVDIR) | |
| $(VENV_PIP) install -r $^ | |
| $(VENV_PIP) freeze -r $^ > $@ | |
| rm -rf $(VENVDIR) |