Implement a secure ICS protocol targeting LoRa Node151 microcontroller for controlling irrigation.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

45 lines
1.2 KiB

  1. .MAIN: all
  2. .PHONY: all
  3. PROGEXT = .elf
  4. .for i in $(PROGS)
  5. ALLTGTS+= $(i)$(PROGEXT) $(i).list
  6. ASRCS.$(i) = $(SRCS) $(SRCS.$(i))
  7. OBJS.$(i) = $(ASRCS.$(i):C/.c$/.o/)
  8. DEPENDS += .arm_deps
  9. .arm_deps: $(ASRCS.$(i))
  10. .arm_deps:
  11. $(ARMCC) $(ARMTARGET) $(CFLAGS) $(.ALLSRC) -MM > $@ || (rm -f $@ && false)
  12. .PHONY: depend
  13. depend: $(DEPENDS)
  14. $(i)$(PROGEXT) $(i).map: $(OBJS.$(i))
  15. $(ARMCC) $(ARMTARGET) -o $(i)$(PROGEXT) $(.ALLSRC) -T$(LINKER_SCRIPT) --specs=nosys.specs -Wl,-Map="$(i).map" -Wl,--gc-sections -static --specs=nano.specs -Wl,--start-group -lc -lm -Wl,--end-group
  16. $(i).list: $(i)$(PROGEXT)
  17. $(ARMOBJDUMP) -h -S $(.ALLSRC) > $@ || (rm -f $@ && false)
  18. .endfor
  19. .for i in $(DEPENDS)
  20. .sinclude "$i"
  21. .endfor
  22. all: $(ALLTGTS)
  23. .PHONY: runbuild
  24. runbuild: $(SRCS) Makefile mk/*.mk
  25. for i in $(.MAKEFILE_LIST) $(.ALLSRC) $$(cat $(DEPENDS) | gsed ':x; /\\$$/ { N; s/\\\n//; tx }' | sed -e 's/^[^:]*://'); do if [ "$$i" != ".." ]; then echo $$i; fi; done | sort -u | entr -d sh -c 'echo starting...; cd $(.CURDIR) && $(MAKE) $(.MAKEFLAGS) depend && $(MAKE) $(.MAKEFLAGS) all'
  26. # native objects
  27. .SUFFIXES: .no
  28. .c.no:
  29. $(CC) $(CFLAGS) -c $< -o $@
  30. .c.o:
  31. $(ARMCC) $(ARMTARGET) $(CFLAGS) -c $< -o $@