Makefile 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. export FW_MAJOR := 0
  2. export FW_MINOR := 2
  3. PROJ = Greaseweazle
  4. VER := v$(FW_MAJOR).$(FW_MINOR)
  5. SUBDIRS += src bootloader
  6. .PHONY: all clean dist mrproper flash start serial
  7. ifneq ($(RULES_MK),y)
  8. export ROOT := $(CURDIR)
  9. all:
  10. $(MAKE) -f $(ROOT)/Rules.mk $@
  11. clean:
  12. rm -f *.hex *.upd scripts/greaseweazle/*.pyc
  13. find . -name __pycache__ | xargs rm -rf
  14. $(MAKE) -f $(ROOT)/Rules.mk $@
  15. dist:
  16. rm -rf $(PROJ)-*
  17. mkdir -p $(PROJ)-$(VER)/scripts/greaseweazle
  18. $(MAKE) clean
  19. $(MAKE) all
  20. cp -a $(PROJ)-$(VER).hex $(PROJ)-$(VER)/
  21. cp -a $(PROJ)-$(VER).upd $(PROJ)-$(VER)/
  22. $(MAKE) clean
  23. cp -a COPYING $(PROJ)-$(VER)/
  24. cp -a README.md $(PROJ)-$(VER)/
  25. cp -a gw.py $(PROJ)-$(VER)/
  26. cp -a scripts/49-greaseweazle.rules $(PROJ)-$(VER)/scripts/
  27. cp -a scripts/gw.py $(PROJ)-$(VER)/scripts/
  28. cp -a scripts/greaseweazle/*.py $(PROJ)-$(VER)/scripts/greaseweazle/
  29. cp -a RELEASE_NOTES $(PROJ)-$(VER)/
  30. zip -r $(PROJ)-$(VER).zip $(PROJ)-$(VER)
  31. mrproper: clean
  32. rm -rf $(PROJ)-*
  33. else
  34. all: scripts/greaseweazle/version.py
  35. $(MAKE) -C src -f $(ROOT)/Rules.mk $(PROJ).elf $(PROJ).bin $(PROJ).hex
  36. bootloader=y $(MAKE) -C bootloader -f $(ROOT)/Rules.mk \
  37. Bootloader.elf Bootloader.bin Bootloader.hex
  38. srec_cat bootloader/Bootloader.hex -Intel src/$(PROJ).hex -Intel \
  39. -o $(PROJ)-$(VER).hex -Intel
  40. $(PYTHON) ./scripts/mk_update.py src/$(PROJ).bin $(PROJ)-$(VER).upd
  41. scripts/greaseweazle/version.py: Makefile
  42. echo "major = $(FW_MAJOR)" >$@
  43. echo "minor = $(FW_MINOR)" >>$@
  44. endif
  45. BAUD=115200
  46. DEV=/dev/ttyUSB0
  47. flash: all
  48. sudo stm32flash -b $(BAUD) -w $(PROJ)-$(VER).hex $(DEV)
  49. start:
  50. sudo stm32flash -b $(BAUD) -g 0 $(DEV)
  51. serial:
  52. sudo miniterm.py $(DEV) 3000000