6 all: for-pic panel3.pcb
8 o=>$@.new && mv -f $@.new $@
10 netlists: reversers.net detectors.net \
11 reversers.hole-rep detectors.hole-rep \
12 both.hole-rep panel3.hole-rep
14 # print from pcb(1) as follows:
15 # File / Print Layout / ...
16 # select media and offsets: A4
19 # (If `... exists, use anyway?', Sequence OK)
22 # make {reversers,detectors}.oprints{-l,-lpr}
23 # for f in *.oprint-*.ps; do gv -scale -1 -media A4 $f; done
26 OPRINTS= %.oprint-copper.ps \
28 %.pcb.output_frontsilk.ps \
31 %.hole-rep: %.pcb hole-report.pl
32 ./hole-report.pl <$< $o
34 include reversers.layers.dep
35 include detectors.layers.dep
36 include panel3.layers.dep
38 %.zip: layers.txt.tmpl Makefile
39 rm -rf $@.d; mkdir -p $@.d
40 set -e; exec <$<; cd $@.d; perl -pe ' \
41 m/^(\S+)\s+(\w+)\s+(\w+)\s+(\S.*)$$/ or die; \
42 system "cp ../$*.pcb.output_$$1.$$3 $$2.$$3"; \
44 $$_= sprintf "%-20s %s\n", "$$2.$$3", $$4; \
50 PANEL3_PCBS= reversers.pcb detectors.pcb detectors.pcb
52 panel3.pcb: pcb-panelise $(PANEL3_PCBS) Makefile
53 ./$< -g100 $(PANEL3_PCBS) $o
55 $*.zip: $*.pcb.output_$$1.$$2/ or die' \
58 GZIP=-9v tar zvcf $@.gz $*.pcb.output_*.ps
60 %.layers.dep: layers.txt.tmpl Makefile
62 's/^(\S+)\s+\w+\s+(\w+)\s.*/$*.zip: $*.pcb.output_$$1.$$2/ or die' \
65 both.hole-rep: hole-report.pl reversers.pcb detectors.pcb
71 %.oprints-l: $(OPRINTS) %.oprints Makefile
74 pcboprints: reversers.oprints-l detectors.oprints-l
76 %.oprints-lpr: %.oprints-l
77 set -ex; for f in `cat $^`; do lpr $$f; done
82 %.oprint-copper.ps: %.pcb.output_back.distilled.ps \
83 %.pcb.output_front.distilled.ps
86 pstops '2:0(-50mm,0mm)+1(50mm,0mm)' <$@-2.tmp $o
88 %.oprint-copper.ps: Makefile
90 %.oprint-assembly.ps: %.pcb.output_assembly.ps Makefile
91 pstops -pa4 '0@2(-109mm,-290mm)' <$< $o
94 sed -e '/^\#/d' <$< $o
96 %.net-info: %.net-spec netlist-expand
97 ./netlist-expand $< $o
99 %.net-spec: generate-netspec.pl
102 points-pin-alloc.lout: points-pin-alloc-sheet detectors.net-spec reversers.net-spec
103 ./$< reversers:4 detectors:4 $o
112 -rm -f *.hole-rep *.net *.net-info *.net-spec
113 -rm -f *.layers.dep panel3.pcb
115 .PRECIOUS: %.net-info %.net-spec
116 .PRECIOUS: $(OPRINTS)