6b02872dd437210f6db7f7d2c616fd022e912a88
[SymbiYosys.git] / tests / Makefile
1 test:
2
3 .PHONY: test clean refresh help
4
5 TOOL_LIST := \
6 btorsim \
7 yices \
8 aigbmc \
9 avy \
10 bitwuzla \
11 boolector \
12 btormc \
13 cvc4 \
14 mathsat \
15 pono \
16 suprove \
17 yices-smt2 \
18 yices \
19 yosys-abc \
20 z3
21
22 help:
23 @cat make/help.txt
24
25 export SBY_WORKDIR_GITIGNORE=1
26 export SBY_MAIN=$(realpath $(dir $(firstword $(MAKEFILE_LIST)))/../sbysrc/sby.py)
27
28 make/rules/collect.mk: make/collect_tests.py
29 python3 make/collect_tests.py
30
31 make/rules/test/%.mk:
32 python3 make/test_rules.py $<
33
34 ifdef NOSKIP
35 SKIP_COMMAND := echo "NOSKIP was set, treating this as an error"; echo; false
36 else
37 SKIP_COMMAND := echo
38 endif
39
40 ifneq (help,$(MAKECMDGOALS))
41
42 # This should run every time but only trigger anything depending on it whenever
43 # the script overwrites make/rules/found_tools. This doesn't really match how
44 # make targets usually work, so we manually shell out here.
45
46 FIND_TOOLS := $(shell python3 make/required_tools.py || echo error)
47
48 ifneq (,$(findstring error,$(FIND_TOOLS)))
49 $(error could not run 'python3 make/required_tools.py')
50 endif
51
52 ifneq (,$(FIND_TOOLS))
53 $(warning $(FIND_TOOLS))
54 endif
55
56 include make/rules/collect.mk
57
58 endif