lose the "pad" in the GPS patch footprint
[hw/telemetrum] / Makefile
1 AM=../altusmetrum
2 SCHEME=$(AM)/scheme
3 PROJECT=telemetrum
4
5 # intentionally want to rebuild drc and bom on every invocation
6 all:    drc partslist partslist.csv pcb
7
8 drc:    telemetrum.sch Makefile
9         -gnetlist -g drc2 telemetrum.sch -o telemetrum.drc
10
11 partslist:      telemetrum.sch Makefile
12         gnetlist -g bom -o telemetrum.unsorted telemetrum.sch
13         head -n1 telemetrum.unsorted > partslist
14         tail -n+2 telemetrum.unsorted | sort >> partslist
15         rm -f telemetrum.unsorted
16
17 partslist.csv:  telemetrum.sch Makefile
18         gnetlist -L $(SCHEME) -g partslistgag \
19                 -o telemetrum.unsorted telemetrum.sch
20         head -n1 telemetrum.unsorted > partslist.csv
21         tail -n+2 telemetrum.unsorted | sort -t \, -k 8 >> partslist.csv
22         rm -f telemetrum.unsorted
23
24 partslist.dk: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm
25         gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=digikey -o $@ $(PROJECT).sch
26
27 partslist.mouser: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm
28         gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=mouser -o $@ $(PROJECT).sch
29
30 pcb:    telemetrum.sch project Makefile
31         gsch2pcb project
32
33 # note that 'gschlas -e foo.sch' will embed all symbols in the schematic, this
34 # might be a really good idea for publishing designs to the web that others
35 # might review?  Like this example from DJ:
36 #
37 #web :
38 #        for i in channel.sch ethernet.sch power.sch mcu.sch; do \
39 #          cp $$i tmp.sch ; \
40 #          gschlas -e tmp.sch ; \
41 #          mv tmp.sch ${WEB}/$$i; \
42 #        done
43
44 # this shoves local work out to the git.gag.com repository
45 push:   
46         git push --mirror
47
48 telemetrum.xy:  telemetrum.pcb
49         pcb -x bom telemetrum.pcb
50
51 telemetrum.bottom.gbr:  telemetrum.pcb
52         pcb -x gerber telemetrum.pcb
53
54 zip:    telemetrum.bottom.gbr telemetrum.bottommask.gbr telemetrum.fab.gbr telemetrum.top.gbr telemetrum.topmask.gbr telemetrum.toppaste.gbr telemetrum.topsilk.gbr telemetrum.group2.gbr telemetrum.group3.gbr telemetrum.plated-drill.cnc telemetrum.xy  Makefile # telemetrum.xls
55         zip telemetrum.zip telemetrum.*.gbr telemetrum.*.cnc telemetrum.xy # telemetrum.xls
56
57 oshpark: telemetrum.bottom.gbr telemetrum.bottommask.gbr telemetrum.top.gbr telemetrum.topmask.gbr telemetrum.topsilk.gbr telemetrum.plated-drill.cnc
58         mv telemetrum.bottom.gbr bottom\ layer.ger
59         mv telemetrum.bottommask.gbr bottom\ solder\ mask.ger
60         mv telemetrum.bottomsilk.gbr bottom\ silk\ screen.ger
61         mv telemetrum.outline.gbr board\ outline.ger
62         mv telemetrum.top.gbr top\ layer.ger
63         mv telemetrum.topmask.gbr top\ solder\ mask.ger
64         mv telemetrum.topsilk.gbr top\ silk\ screen.ger
65         mv telemetrum.plated-drill.cnc drills.xln
66         mv telemetrum.group2.gbr internal\ plane\ 1.ger
67         mv telemetrum.group3.gbr internal\ plane\ 2.ger
68         zip telemetrum-oshpark.zip *.ger *.xln
69
70 stencil:        telemetrum.bottom.gbr telemetrum.toppaste.gbr telemetrum.outline.gbr
71         zip telemetrum-stencil.zip telemetrum.toppaste.gbr telemetrum.outline.gbr
72
73 clean:
74         rm -f *.bom *.drc *.log *~ telemetrum.ps *.gbr *.cnc *bak* *- *.zip 
75         rm -f *.net *.xy *.cmd *.png partslist partslist.csv *.ger *.xln
76         rm -f *.partslist *.new.pcb *.unsorted telemetrum.xls muffin-5267.pdf
77
78 muffins: partslist.csv $(AM)/glabels/muffin-short-5267.glabels
79         glabels-3-batch $(AM)/glabels/muffin-short-5267.glabels \
80                 -i partslist.csv -o muffin-5267.ps >/dev/null && \
81                 ps2pdf muffin-5267.ps && rm muffin-5267.ps
82