#
# Makefile for converting svg files
# to something else: png, pdf, eps
#
# 10-Oct-2012 - Philippe Chauvat / Bacula Systems
#
INKSCAPE=inkscape
INKSCAPE_FLAGS=-z
INKSCAPE_OUTPUT=>>./inkscape.log 2>&1
SVG_TO_PDF=-A
SVG_TO_EPS=-E
SVG_TO_PNG=-e
PDFDIR=../pdf
PNGDIR=../png
EPSDIR=../eps

SVGS=$(wildcard *.svg)
PDFS=$(SVGS:.svg=.pdf)
EPSS=$(SVGS:.svg=.eps)
PNGS=$(SVGS:.svg=.png)

vpath %.eps $(EPSDIR)

first_rule:

all: pdf png eps

.SUFFIXES:
.PHONY:
.DONTCARE:
#
# PDF images creation
pdf: $(PDFS)
$(PDFS): | $(PDFDIR)
$(PDFDIR):
	@echo "Creating PDF images directory..."
	@mkdir $(PDFDIR)
	@echo "Done"
%.pdf: %.svg
	${INKSCAPE} ${INKSCAPE_FLAGS} ${SVG_TO_PDF} $(PDFDIR)/$@ $< $(INKSCAPE_OUTPUT)
#
# EPS images creation
vpath %.pdf $(PDFDIR)
eps: $(EPSS)
$(EPSS): | $(EPSDIR)
$(EPSDIR):
	@echo "Creating EPS images directory..."
	@mkdir $(EPSDIR)
	@echo "Done"
%.eps: %.svg
	${INKSCAPE} ${INKSCAPE_FLAGS} ${SVG_TO_EPS} $(EPSDIR)/$@ $< $(INKSCAPE_OUTPUT)
#
# PNG images creation
vpath %.png $(PNGDIR)
png: $(PNGS)
$(PNGS): | $(PNGDIR)
$(PNGDIR):
	@echo "Creating PNG images directory..."
	@mkdir $(PNGDIR)
	@echo "Done"
%.png: %.svg
	${INKSCAPE} ${INKSCAPE_FLAGS} ${SVG_TO_PNG} $(PNGDIR)/$@ $< $(INKSCAPE_OUTPUT)

clean:
	@echo " "
	@echo "Cleaning all generated images..."
	@rm -rf $(PDFDIR)
	@rm -rf $(PNGDIR)
	@rm -rf $(EPSDIR)
	@echo "All generated images cleaned."
	@echo "Deleting log files"
	@rm -f *.log
	@echo "Everything cleaned up"

distclean: clean
