X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2FMakefile;h=f96968f9015943f797d3ec73891c31ce2c0e5386;hp=7912810fee643088021bfeb2807b0650e963d518;hb=7f0437503bbadfd341193513f78df8fb1751da54;hpb=2f150be975db20a127c21351bf6cb4b8d3c12511 diff --git a/firmware/Makefile b/firmware/Makefile index 7912810..f96968f 100644 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -1,13 +1,80 @@ -PORT=/dev/ttyUSB0 -BSL=tos-bsl --invert-reset --invert-test -c $(PORT) +#include `uname`.mak +#GOODFET?=/dev/ttyUSB0 -CC=msp430-gcc -g -mmcu=msp430x1611 -DGCC -app=blink -install: $(app) - $(BSL) -e -p $(app) - $(BSL) -P $(app) -g 0x4000 +#For tos-bsl, use --invert-reset --invert-test +BSL?=goodfet.bsl --speed=38400 + + +#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: + ../client/goodfet.msp430 test + +install: $(app).hex + $(BSL) -e -p $(app).hex + 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 +m4s: $(app).hex + msp430-objdump -D -m msp430 $(app).hex | m4s init erase: $(BSL) -e +clean: + 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