test: .PHONY: test clean refresh help help: @cat make/help.txt export SBY_WORKDIR_GITIGNORE=1 export SBY_MAIN=$(realpath $(dir $(firstword $(MAKEFILE_LIST)))/../sbysrc/sby.py) make/rules/collect.mk: make/collect_tests.py python3 make/collect_tests.py make/rules/test/%.mk: python3 make/test_rules.py $< ifneq (help,$(MAKECMDGOALS)) # This should run every time but only trigger anything depending on it whenever # the script overwrites make/rules/found_tools. This doesn't really match how # make targets usually work, so we manually shell out here. FIND_TOOLS := $(shell python3 make/required_tools.py || echo error) ifneq (,$(findstring error,$(FIND_TOOLS))) $(error could not run 'python3 make/required_tools.py') endif ifneq (,$(FIND_TOOLS)) $(warning $(FIND_TOOLS)) endif include make/rules/collect.mk endif