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 -L scheme -g partslistgag \
15 -o telescience.unsorted telescience.sch
16 head -n1 telescience.unsorted > partslist.csv
17 tail -n+2 telescience.unsorted | sort -t \, -k 8 >> partslist.csv
18 rm -f telescience.unsorted
20 pcb: telescience.sch project
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
38 telescience.xy: telescience.pcb
39 pcb -x bom telescience.pcb
41 telescience.bottom.gbr: telescience.pcb
42 pcb -x gerber telescience.pcb
44 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
45 zip telescience.zip *.gbr *.cnc
47 oshpark: telescience.bottom.gbr telescience.bottommask.gbr telescience.top.gbr telescience.topmask.gbr telescience.topsilk.gbr telescience.plated-drill.cnc
48 mv telescience.bottom.gbr bottom\ layer.ger
49 mv telescience.bottommask.gbr bottom\ solder\ mask.ger
50 mv telescience.bottomsilk.gbr bottom\ silk\ screen.ger
51 mv telescience.outline.gbr board\ outline.ger
52 mv telescience.top.gbr top\ layer.ger
53 mv telescience.topmask.gbr top\ solder\ mask.ger
54 mv telescience.topsilk.gbr top\ silk\ screen.ger
55 mv telescience.plated-drill.cnc drills.xln
56 mv telescience.group2.gbr internal\ plane\ 1.ger
57 mv telescience.group3.gbr internal\ plane\ 2.ger
58 zip telescience-oshpark.zip *.ger *.xln
61 rm -f *.bom *.drc *.log *~ telescience.ps *.gbr *.cnc *bak* *- *.zip
62 rm -f *.net *.xy *.cmd *.png partslist partslist.csv *.ger *.xln
63 rm -f *.partslist *.new.pcb *.unsorted