thhor_crs/gerber/gerber.makefile

43 lines
883 B
Text
Raw Permalink Normal View History

2026-01-06 17:41:41 +01:00
# PROJ = …
# VERSION = v01
2026-05-18 12:12:05 +02:00
HERE = ..
PCBDIR = $(HERE)/..
2026-01-06 17:41:41 +01:00
GERBERS = $(PROJ).plated-drill.cnc
2026-05-18 12:12:05 +02:00
GVP2MAKE = $(HERE)/gvp2make.py
2026-01-06 17:41:41 +01:00
GV_OPT = -D600
default: zip bom png
png: $(patsubst %.gvp, %.png, $(wildcard $(PROJ)*.gvp))
%.png: %.gvp $(GERBERS)
$(GVP2MAKE) -o $@ $< -w -B0 -w --background=#ffffff -A group=1.0 -X $(GV_OPT)
zip: $(PROJ)_$(VERSION).zip
GERBER_AWK = '/- +[-a-z_]+\.[-a-z]+\.[-a-z]+ +[a-z]/{print $$2}'
%_$(VERSION).zip: README.md %.plated-drill.cnc
rm -fv $@
zip $@ $< $$(awk $(GERBER_AWK) $<)
2026-05-18 12:12:05 +02:00
%.plated-drill.cnc: $(PCBDIR)/%.pcb
2026-01-06 17:41:41 +01:00
pcb -x gerber --gerberfile $* --name-style single $<
bom: $(PROJ)_bom.pdf
2026-05-18 12:12:05 +02:00
%.bom: $(PCBDIR)/%.pcb
2026-01-06 17:41:41 +01:00
pcb -x bom --bomfile $@ $<
%_bom.txt: %.bom
bom.py -h $< > $@
2026-05-18 12:12:05 +02:00
%_bom.pdf: %.bom $(HERE)/bom.py
$(word 2,$^) -h $< | utf82pdf > $@
2026-01-06 17:41:41 +01:00
.PRECIOUS: %.plated-drill.cnc %.png
2026-05-18 12:32:14 +02:00
clean:
rm -f *.png *.pdf *.bom *.gbr *.cnc