Makefile 617 B

12345678910111213141516171819202122232425262728293031323334353637
  1. MAKEFLAGS += -R -r
  2. SUBDIRS := esp32 tools rv32 fpga
  3. REVISIONS := v1 v2
  4. all clean spotless :
  5. $(MAKE) local.$@ $(SUBDIRS) goal=$@
  6. prefpga:
  7. $(MAKE) local.all $(filter-out fpga,$(SUBDIRS)) goal=all
  8. $(REVISIONS): prefpga
  9. $(MAKE) -C fpga $@
  10. .PHONY: $(SUBDIRS)
  11. $(SUBDIRS):
  12. $(MAKE) -C $@ $(goal)
  13. rv32: | tools
  14. fpga: | rv32 esp32
  15. local.all:
  16. local.clean:
  17. rm -f *~ ./\#* \# *.bak
  18. local.spotless: local.clean
  19. # Obsolete target, need version
  20. program flash:
  21. @echo 'Please specify one of: $(foreach rev,$(REVISIONS),$@-$(rev))' 1>&2
  22. @false
  23. # FPGA-specific targets
  24. program-% flash-%: prefpga
  25. $(MAKE) -C fpga $@