5 # intentionally want to rebuild drc and bom on every invocation
6 all: drc partslist partslist.csv pcb
8 drc: lipocharger.sch Makefile
9 -gnetlist -g drc2 lipocharger.sch -o lipocharger.drc
11 partslist: lipocharger.sch Makefile
12 gnetlist -g bom -o lipocharger.unsorted lipocharger.sch
13 head -n1 lipocharger.unsorted > partslist
14 tail -n+2 lipocharger.unsorted | sort >> partslist
15 rm -f lipocharger.unsorted
17 partslist.csv: lipocharger.sch Makefile
18 gnetlist -L $(SCHEME) -g partslistgag \
19 -o lipocharger.unsorted lipocharger.sch
20 head -n1 lipocharger.unsorted > partslist.csv
21 tail -n+2 lipocharger.unsorted | sort -t \, -k 8 >> partslist.csv
22 rm -f lipocharger.unsorted
24 partslist.dk: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm
25 gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=digikey -o $@ $(PROJECT).sch
27 pcb: lipocharger.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 lipocharger.xy: lipocharger.pcb
46 pcb -x bom lipocharger.pcb
48 lipocharger.bottom.gbr: lipocharger.pcb
49 pcb -x gerber lipocharger.pcb
51 zip: lipocharger.bottom.gbr lipocharger.bottommask.gbr lipocharger.fab.gbr lipocharger.top.gbr lipocharger.topmask.gbr lipocharger.toppaste.gbr lipocharger.topsilk.gbr lipocharger.plated-drill.cnc lipocharger.xy Makefile # lipocharger.xls
52 zip lipocharger.zip lipocharger.*.gbr lipocharger.*.cnc lipocharger.xy # lipocharger.xls
54 oshpark: lipocharger.bottom.gbr lipocharger.bottommask.gbr lipocharger.top.gbr lipocharger.topmask.gbr lipocharger.plated-drill.cnc
55 mv lipocharger.bottom.gbr bottom\ layer.ger
56 mv lipocharger.bottommask.gbr bottom\ solder\ mask.ger
57 mv lipocharger.bottomsilk.gbr bottom\ silk\ screen.ger
58 mv lipocharger.outline.gbr board\ outline.ger
59 mv lipocharger.top.gbr top\ layer.ger
60 mv lipocharger.topmask.gbr top\ solder\ mask.ger
61 mv lipocharger.plated-drill.cnc drills.xln
62 zip lipocharger-oshpark.zip *.ger *.xln
64 stencil: lipocharger.bottom.gbr lipocharger.toppaste.gbr lipocharger.outline.gbr
65 zip lipocharger-stencil.zip lipocharger.toppaste.gbr lipocharger.outline.gbr
68 rm -f *.bom *.drc *.log *~ lipocharger.ps *.gbr *.cnc *bak* *- *.zip
69 rm -f *.net *.xy *.cmd *.png partslist partslist.csv *.ger *.xln
70 rm -f *.partslist *.new.pcb *.unsorted lipocharger.xls muffin-5267.pdf
73 muffins: partslist.csv $(AM)/glabels/muffin-short-5267.glabels
74 glabels-3-batch $(AM)/glabels/muffin-short-5267.glabels \
75 -i partslist.csv -o muffin-5267.ps >/dev/null && \
76 ps2pdf muffin-5267.ps && rm muffin-5267.ps