1 # intentionally want to rebuild drc and bom on every invocation
2 all: drc partslist partslist.csv pcb
4 drc: telebt.sch Makefile
5 -gnetlist -g drc2 telebt.sch -o telebt.drc
7 partslist: telebt.sch Makefile
8 gnetlist -g bom -o telebt.unsorted telebt.sch
9 head -n1 telebt.unsorted > partslist
10 tail -n+2 telebt.unsorted | sort >> partslist
13 partslist.csv: telebt.sch Makefile
14 gnetlist -L ../altusmetrum/scheme -g partslistgag \
15 -o telebt.unsorted telebt.sch
16 head -n1 telebt.unsorted > partslist.csv
17 tail -n+2 telebt.unsorted | sort -t \, -k 8 >> partslist.csv
20 pcb: telebt.sch project Makefile
23 # note that 'gschlas -e foo.sch' will embed all symbols in the schematic, this
24 # might be a really good idea for publishing designs to the web that others
25 # might review? Like this example from DJ:
28 # for i in channel.sch ethernet.sch power.sch mcu.sch; do \
30 # gschlas -e tmp.sch ; \
31 # mv tmp.sch ${WEB}/$$i; \
34 # this shoves local work out to the git.gag.com repository
41 telebt.bottom.gbr: telebt.pcb
42 pcb -x gerber telebt.pcb
44 zip: telebt.bottom.gbr telebt.bottommask.gbr telebt.fab.gbr telebt.top.gbr telebt.topmask.gbr telebt.bottompaste.gbr telebt.topsilk.gbr telebt.plated-drill.cnc telebt.xy Makefile # telebt.xls
45 zip telebt.zip telebt.*.gbr telebt.*.cnc telebt.xy # telebt.xls
47 dorkbot: telebt.bottom.gbr telebt.bottommask.gbr telebt.top.gbr telebt.topmask.gbr telebt.topsilk.gbr telebt.plated-drill.cnc
48 mv telebt.bottom.gbr bottom\ layer.ger
49 mv telebt.bottommask.gbr bottom\ solder\ mask.ger
50 mv telebt.bottomsilk.gbr bottom\ silk\ screen.ger
51 mv telebt.outline.gbr board\ outline.ger
52 mv telebt.top.gbr top\ layer.ger
53 mv telebt.topmask.gbr top\ solder\ mask.ger
54 mv telebt.topsilk.gbr top\ silk\ screen.ger
55 mv telebt.plated-drill.cnc drills.xln
56 zip telebt-dorkbot.zip *.ger *.xln
59 rm -f *.bom *.drc *.log *~ telebt.ps *.gbr *.cnc *bak* *- *.zip
60 rm -f *.net *.xy *.cmd *.png partslist partslist.csv
61 rm -f *.partslist *.new.pcb *.unsorted telebt.xls *.ger *.xln