blob: 6a0f5edc34ce830c906d82d76593012f7e1ec3d6 [file] [log] [blame] [edit]
all: work
touch .stamp
clean::
rm -f .stamp
define template
work:: $(addprefix $(1)/.stamp_,sim falsify $(2))
$(1)/.stamp_sim:
bash run.sh $(1) sim
touch $$@
$(1)/.stamp_falsify: $(1)/.stamp_sim
bash run.sh $(1) falsify
touch $$@
$(1)/.stamp_%: $(1)/.stamp_sim
bash run.sh $(1) $$*
touch $$@
clean::
rm -rf $(1)/.stamp_* $(1)/work_*
rm -f $(1)_{cmos,ice40,falsify,ecp5,xilinx}{,_abc9}.status
endef
$(eval $(call template,navre,cmos ice40 ice40_abc9 ecp5 ecp5_abc9 xilinx xilinx_abc9))
ifeq ($(ENABLE_HEAVY_TESTS),1)
$(eval $(call template,picorv32,cmos ice40 ice40_abc9 ecp5 ecp5_abc9 xilinx xilinx_abc9))
endif
.PHONY: all clean