.PHONY: all clean norm help VENV := .venv PY := $(VENV)/bin/python PIP := $(VENV)/bin/pip all: build search build: @echo "Building project..." emacs -Q --script build-site.el search: $(VENV) @echo "Generating search index" $(PY) search-index-json.py $(VENV): @echo "Generating virtual environment" python3 -m venv $(VENV) $(PIP) install -r requirements.txt clean: @echo "Cleaning output directory..." rm -rf output/ rm -rf $(VENV) norm: @echo "sorting out the backups..." find . -path ./backups -prune -o -type f -name '*~' -exec mv {} backups/ \; # Show help message help: @echo "Available targets:" @echo " make - Full rebuild" @echo " make build - Rebuild the output directory" @echo " make clean - Remove output directory" @echo " make norm - Move all files that end with ~ to the backup folder" @echo " make search - creates the search index" @echo " make help - Show this help message"