move to common scheme library
[hw/audio] / Makefile
1 # intentionally want to rebuild drc and bom on every invocation
2 #all:   drc partslist partslist.csv pcb
3 all:    drc partslist partslist.csv
4
5 drc:    amp.sch
6         -gnetlist -g drc2 amp.sch -o amp.drc
7
8 partslist:      amp.sch
9         gnetlist -g bom -o amp.unsorted amp.sch
10         head -n1 amp.unsorted > partslist
11         tail -n+2 amp.unsorted | sort >> partslist
12         rm -f amp.unsorted
13
14 partslist.csv:  amp.sch Makefile
15         gnetlist -L ../altusmetrum/scheme -g partslistgag \
16                 -o amp.unsorted amp.sch
17         head -n1 amp.unsorted > partslist.csv
18         tail -n+2 amp.unsorted | sort -t \, -k 8 >> partslist.csv
19         rm -f amp.unsorted
20
21 pcb:    amp.sch project
22         gsch2pcb project
23
24 # note that 'gschlas -e foo.sch' will embed all symbols in the schematic, this
25 # might be a really good idea for publishing designs to the web that others
26 # might review?  Like this example from DJ:
27 #
28 #web :
29 #        for i in channel.sch ethernet.sch power.sch mcu.sch; do \
30 #          cp $$i tmp.sch ; \
31 #          gschlas -e tmp.sch ; \
32 #          mv tmp.sch ${WEB}/$$i; \
33 #        done
34
35 # this shoves local work out to the git.gag.com repository
36 push:   
37         git push --mirror
38
39 zip:    amp.back.gbr amp.backmask.gbr amp.fab.gbr amp.front.gbr amp.frontmask.gbr amp.frontpaste.gbr amp.frontsilk.gbr amp.outline.gbr amp.plated-drill.cnc amp.xy
40         zip amp.zip amp.*.gbr amp.*.cnc amp.xy
41
42 clean:
43         rm -f *.bom *.drc *.log *~ amp.ps *.gbr *.cnc *bak* *- *.zip 
44         rm -f *.net *.xy *.cmd *.png partslist partslist.csv
45         rm -f *.partslist *.new.pcb *.unsorted amp.xy
46