diff --git a/Makefile b/Makefile index 0e54353..821bd67 100644 --- a/Makefile +++ b/Makefile @@ -21,12 +21,20 @@ define version_rule endef $(foreach EXT,$(VERSIONED_EXT),$(eval $(call version_rule,$(EXT)))) -all: ${NAME}.sch.pdf ${NAME}.brd-top.png ${NAME}.brd-bot.png ${NAME}.bom.csv +FABRICATION_DIR := fabrication +IBOM := ${FABRICATION_DIR}/ibom.html + +all: ${NAME}.sch.pdf ${NAME}.brd-top.png ${NAME}.brd-bot.png ${NAME}.bom.csv fab + +fab: ${FABRICATION_DIR} ${IBOM} # generate fabrication files (gerbers/drill/BoM/PnP) -FABRICATION_DIR := fabrication -fabrication: ${NAME}.versioned.kicad_sch ${NAME}.versioned.kicad_pcb - kikit fab jlcpcb --drc --assembly --schematic $^ ${FABRICATION_DIR} +${FABRICATION_DIR}: ${NAME}.versioned.kicad_sch ${NAME}.versioned.kicad_pcb + kikit fab jlcpcb --drc --assembly --schematic $^ $@ + +# generate interactive BoM +${IBOM}: ${NAME}.versioned.kicad_pcb + $(IBOMGEN) --no-browser --dest-dir `dirname $@` --name-format `basename $@ ".html"` --show-fields "Value" $< &>/dev/null # generate symbols and footprints from parts lib: @@ -64,6 +72,7 @@ clean: rm -f $(foreach EXT,$(VERSIONED_EXT),${NAME}.versioned.$(EXT)) rm -f ${NAME}.sch.pdf ${NAME}.brd-top.png ${NAME}.brd-bot.png ${NAME}.versioned.xml ${NAME}.bom.csv rm -f ${NAME}.versioned.kicad_prl ${NAME}.versioned.kicad_pro-bak ${NAME}.versioned.xml ${NAME}.versioned.csv + rm -f ${IBOM} rm -rf ${FABRICATION_DIR} rm -f panel.kicad_pcb panel.kicad_pro rm -rf ${PANEL_DIR}