PROJECT=telemini AM=../altusmetrum SCHEME=$(AM)/scheme # intentionally want to rebuild drc and bom on every invocation all: drc partslist partslist.csv pcb drc: telemini.sch Makefile -gnetlist -g drc2 telemini.sch -o telemini.drc partslist: telemini.sch Makefile gnetlist -g bom -o telemini.unsorted telemini.sch head -n1 telemini.unsorted > partslist tail -n+2 telemini.unsorted | sort >> partslist rm -f telemini.unsorted partslist.csv: telemini.sch Makefile gnetlist -L $(SCHEME) -g partslistgag -o $(PROJECT).csvtmp $(PROJECT).sch (head -n1 $(PROJECT).csvtmp; tail -n+2 $(PROJECT).csvtmp | sort -t \, -k 8) > $@ && rm -f $(PROJECT).csvtmp partslist.dk: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=digikey -o $@ $(PROJECT).sch partslist.mouser: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=mouser -o $@ $(PROJECT).sch pcb: telemini.sch project Makefile 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 telemini.xy: telemini.pcb pcb -x bom telemini.pcb telemini.bottom.gbr: telemini.pcb pcb -x gerber telemini.pcb zip: telemini.bottom.gbr telemini.bottommask.gbr telemini.fab.gbr telemini.top.gbr telemini.topmask.gbr telemini.toppaste.gbr telemini.plated-drill.cnc telemini.xy Makefile # telemini.xls zip telemini.zip telemini.*.gbr telemini.*.cnc telemini.xy # telemini.xls zip -d telemini.zip telemini.topsilk.gbr clean: rm -f *.bom *.drc *.log *~ telemini.ps *.gbr *.cnc *bak* *- *.zip rm -f *.net *.xy *.cmd *.png partslist partslist.csv rm -f *.partslist *.new.pcb *.unsorted telemini.xls muffin-5267.pdf muffins: partslist.csv $(AM)/glabels/muffin-5267.glabels glabels-3-batch $(AM)/glabels/muffin-5267.glabels \ -i partslist.csv -o muffin-5267.ps >/dev/null && \ ps2pdf muffin-5267.ps && rm muffin-5267.ps