X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2FMakefile;h=f96968f9015943f797d3ec73891c31ce2c0e5386;hp=8e7d7ffaff875906d72b99e048777f24cf9bb506;hb=7f0437503bbadfd341193513f78df8fb1751da54;hpb=3e900862cd87255c698e516c37078163ce343e77 diff --git a/firmware/Makefile b/firmware/Makefile index 8e7d7ff..f96968f 100644 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -1,21 +1,56 @@ -PORT=/dev/ttyUSB0 -BSL=msp430-bsl --invert-reset --invert-test -c $(PORT) --speed=38400 +#include `uname`.mak +#GOODFET?=/dev/ttyUSB0 -#mcu=msp430x1611 -mcu=msp430x1612 -#ldscript is wonky -GCCINC=-T ldscripts/161x.x -CC=msp430-gcc -g -mmcu=$(mcu) -DGCC $(GCCINC) -I include +#For tos-bsl, use --invert-reset --invert-test +BSL?=goodfet.bsl --speed=38400 -apps= apps/monitor/monitor.o apps/spi/spi.o apps/i2c/i2c.o apps/chipcon/chipcon.o apps/jtag/jtag.o apps/jtag/jtag430.o -libs= lib/msp430f1612.o lib/command.o -app=goodfet + +#One of these should be defined explicitly. +#Default removed because of confusion. + +#mcu=msp430x2274 +#mcu=msp430x2618 +#mcu?=msp430x1612 +mcu?=RUNCONFIG + +#platform=goodfet +#platform=telosb +#platform=z1 +platform?=goodfet + +#N.B., gcc WILL NOT BITCH if this file doesn't exist. +#GCCINC=-T ldscripts/161x.x +GCCINC=-T ldscripts/$(mcu).x + +CCEXTRA?= +CC=msp430-gcc -Wall -Os -g -mmcu=$(mcu) -D$(mcu) -D$(platform) -Dplatform=$(platform) -DGCC $(GCCINC) -I include $(CCEXTRA) + +#Define extra modules here. +#moreapps?=apps/i2c/i2c.o apps/glitch/glitch.o apps/jtag/sbw.o apps/smartcard/smartcard.o apps/jtag/ejtag.o apps/jtag/jtagxscale.o +moreapps?=apps/jtag/sbw.o apps/glitch/glitch.o +# should include apps/jtag/jtagarm7tdmi.o to build jtag for ARM7 +# should include apps/pic/dspic33f.o to build support for PIC24H/dsPIC33F + +apps= $(moreapps) apps/chipcon/chipcon.o apps/radios/nrf.o apps/radios/ccspi.o apps/monitor/monitor.o apps/spi/spi.o apps/jtag/jtag.o apps/jtag/jtag430.o apps/jtag/jtag430x2.o apps/avr/avr.o + +#apps/chipcon/chipconasm.o removed +libs= lib/$(mcu).o lib/command.o apps/jtag/jtag430asm.o lib/dco_calib.o + +app= goodfet all: $(app).hex +lib/.o: config + ./configure + false +lib/RUNCONFIG.o: + ./configure + false +config: + cp platforms/$(platform).h include/config.h goodfet.hex: goodfet run: @@ -23,7 +58,12 @@ run: install: $(app).hex $(BSL) -e -p $(app).hex - #$(BSL) -P $(app).hex -r + ls info.txt && $(BSL) -P $(app).hex -p info.txt || true #MSP430F2xx targets only, inelegant. +verify: + $(BSL) -P $(app).hex -v $(app).hex +dumpinfo: + $(BSL) --dumpinfo +$(app).c: config $(app): $(app).c $(libs) $(apps) $(app).hex: $(app) msp430-objcopy goodfet -O ihex goodfet.hex @@ -32,4 +72,9 @@ m4s: $(app).hex erase: $(BSL) -e clean: - rm -f $(app) $(app).hex $(libs) $(apps) + rm -f $(app) $(app).hex $(libs) $(apps) include/config.h +docs: + doxygen +pushdocs: docs + rsync --exclude .svn -ave ssh doc/html/* travisutk,goodfet@web.sourceforge.net:htdocs/docs/ +.FAKE: docs