5 # intentionally want to rebuild drc and bom on every invocation
6 all: drc partslist partslist.csv pcb
8 drc: telemini.sch Makefile
9 -gnetlist -g drc2 telemini.sch -o telemini.drc
11 partslist: telemini.sch Makefile
12 gnetlist -g bom -o telemini.unsorted telemini.sch
13 head -n1 telemini.unsorted > partslist
14 tail -n+2 telemini.unsorted | sort >> partslist
15 rm -f telemini.unsorted
17 partslist.csv: telemini.sch Makefile
18 gnetlist -L $(SCHEME) -g partslistgag -o $(PROJECT).csvtmp $(PROJECT).sch
19 (head -n1 $(PROJECT).csvtmp; tail -n+2 $(PROJECT).csvtmp | sort -t \, -k 8) > $@ && rm -f $(PROJECT).csvtmp
21 partslist.dk: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm
22 gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=digikey -o $@ $(PROJECT).sch
24 partslist.mouser: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm
25 gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=mouser -o $@ $(PROJECT).sch
27 pcb: telemini.sch project Makefile
30 # note that 'gschlas -e foo.sch' will embed all symbols in the schematic, this
31 # might be a really good idea for publishing designs to the web that others
32 # might review? Like this example from DJ:
35 # for i in channel.sch ethernet.sch power.sch mcu.sch; do \
37 # gschlas -e tmp.sch ; \
38 # mv tmp.sch ${WEB}/$$i; \
41 # this shoves local work out to the git.gag.com repository
45 telemini.xy: telemini.pcb
46 pcb -x bom telemini.pcb
48 telemini.bottom.gbr: telemini.pcb
49 pcb -x gerber telemini.pcb
51 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
52 zip telemini.zip telemini.*.gbr telemini.*.cnc telemini.xy # telemini.xls
53 zip -d telemini.zip telemini.topsilk.gbr
56 rm -f *.bom *.drc *.log *~ telemini.ps *.gbr *.cnc *bak* *- *.zip
57 rm -f *.net *.xy *.cmd *.png partslist partslist.csv
58 rm -f *.partslist *.new.pcb *.unsorted telemini.xls muffin-5267.pdf
60 muffins: partslist.csv $(AM)/glabels/muffin-5267.glabels
61 glabels-3-batch $(AM)/glabels/muffin-5267.glabels \
62 -i partslist.csv -o muffin-5267.ps >/dev/null && \
63 ps2pdf muffin-5267.ps && rm muffin-5267.ps