PROJECT=teleterra # intentionally want to rebuild drc and bom on every invocation all: hw hw: drc partslist partslist.csv partslist.dk partslist.mouser CC= sdcc CFLAGS= -mpic14 -p16f886 LDFLAGS= drc: teleterra.sch -gnetlist -g drc2 teleterra.sch -o teleterra.drc partslist: teleterra.sch gnetlist -g bom -o teleterra.unsorted teleterra.sch head -n1 teleterra.unsorted > partslist tail -n+2 teleterra.unsorted | sort >> partslist rm -f teleterra.unsorted partslist.csv: teleterra.sch Makefile gnetlist -L ../altusmetrum/scheme -g partslistgag \ -o teleterra.unsorted teleterra.sch head -n1 teleterra.unsorted > partslist.csv tail -n+2 teleterra.unsorted | sort -t \, -k 8 >> partslist.csv rm -f teleterra.unsorted partslist.dk: $(PROJECT).sch Makefile gnetlist -L ../altusmetrum/scheme -g partslist-bom -Ovendor=digikey -o $@ $(PROJECT).sch partslist.mouser: $(PROJECT).sch Makefile gnetlist -L ../altusmetrum/scheme -g partslist-bom -Ovendor=mouser -o $@ $(PROJECT).sch pcb: teleterra.sch project gsch2pcb project # note that 'gschlas -e foo.sch' will embed all symbols in the schematic, this # might be a really good idea for publishing designs to the web that others # might review? Like this example from DJ: # #web : # for i in channel.sch ethernet.sch power.sch mcu.sch; do \ # cp $$i tmp.sch ; \ # gschlas -e tmp.sch ; \ # mv tmp.sch ${WEB}/$$i; \ # done # this shoves local work out to the git.gag.com repository push: git push --mirror teleterra.xy: teleterra.pcb pcb -x bom teleterra.pcb teleterra.bottom.gbr: teleterra.pcb pcb -x gerber teleterra.pcb zip: teleterra.bottom.gbr teleterra.bottommask.gbr teleterra.fab.gbr teleterra.top.gbr teleterra.topmask.gbr teleterra.toppaste.gbr teleterra.topsilk.gbr teleterra.plated-drill.cnc zip teleterra.zip *.gbr *.cnc oshpark: teleterra.bottom.gbr teleterra.bottommask.gbr teleterra.top.gbr teleterra.topmask.gbr teleterra.topsilk.gbr teleterra.plated-drill.cnc mv teleterra.bottom.gbr bottom\ layer.ger mv teleterra.bottommask.gbr bottom\ solder\ mask.ger mv teleterra.bottomsilk.gbr bottom\ silk\ screen.ger mv teleterra.outline.gbr board\ outline.ger mv teleterra.top.gbr top\ layer.ger mv teleterra.topmask.gbr top\ solder\ mask.ger mv teleterra.topsilk.gbr top\ silk\ screen.ger mv teleterra.plated-drill.cnc drills.xln zip teleterra-oshpark.zip *.ger *.xln stencil: teleterra.bottom.gbr teleterra.toppaste.gbr teleterra.outline.gbr zip teleterra-stencil.zip teleterra.toppaste.gbr teleterra.outline.gbr clean: rm -f *.bom *.drc *.log *~ teleterra.ps *.gbr *.cnc *bak* *- *.zip rm -f *.net *.xy *.cmd *.png partslist partslist.csv rm -f *.partslist *.new.pcb *.unsorted rm -f *.hex *.cod *.lst *.ps *.o *.asm rm -f *.ger *.xln *.dk *.mouser