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