diff --git a/make/svg.mk b/make/svg.mk index 1a511696..4d580e91 100644 --- a/make/svg.mk +++ b/make/svg.mk @@ -1,8 +1,9 @@ -SVG ?= $(wildcard *.svg) +SVG ?= $(filter-out copied-%,$(wildcard *.svg)) +COPIED_SVG = $(addprefix copied-,$(notdir $(SVG))) GENERATED_WIDTHS ?= 50 100 200 300 400 500 600 700 800 546 GENERATED_PNG_WIDTHS ?= $(GENERATED_WIDTHS) GENERATED_PNGS = \ - $(foreach w, $(GENERATED_PNG_WIDTHS),$(patsubst %.svg,%-$w.png,$(SVG))) + $(foreach w, $(GENERATED_PNG_WIDTHS),$(patsubst %.svg,%-$w.png,$(notdir $(SVG)))) GENERATED_IMAGES = $(GENERATED_PNGS) all: $(GENERATED_IMAGES) @@ -11,10 +12,14 @@ clean: clean.images distclean: clean.images: - rm -f $(GENERATED_IMAGES) + rm -f $(GENERATED_IMAGES) $(COPIED_SVG) -%.png: $(SVG) +%.png: $(COPIED_SVG) inkscape -w $(shell echo $* | sed 's/.*-//') \ - --export-png=$@ $(shell echo $* | sed 's/-[0-9]\+$$//').svg + --export-png=$@ copied-$(shell echo $* | sed 's/-[0-9]\+$$//').svg +copied-%.svg: $(SVG) + @echo $^ + cp $(filter %$*.svg, $^) $@.tmp + mv $@.tmp $@