webroot := /var/www include $(webroot)/makefile.generic sources := $(wildcard ly/*.ly) scores := $(patsubst ly/%.ly,%,$(sources)) pses := $(patsubst ly/%.ly,postscript/%.ps.gz,$(sources)) pdfs := $(patsubst ly/%.ly,pdf/%.pdf,$(sources)) midis := $(patsubst ly/%.ly,midi/%.midi,$(sources)) mp3s := $(patsubst ly/%.ly,mp3/%.mp3,$(sources)) previews := $(patsubst ly/%.ly,previews/%.preview.png,$(sources)) archive := $(score).tar.gz all: ly postscript pdf midi mp3 previews $(pses) $(pdfs) $(midis) $(mp3s) $(previews) $(archive) cleanup HEADER.html: $(previews) postscript/%.ps.gz: ly/%.ly lilypond --ps $< make cleanup pdf/%.pdf: ly/%.ly lilypond --pdf $< make cleanup midi/%.midi: ly/%.ly lilypond $< make cleanup mp3/%.mp3: midi/%.midi miditompeg.sh $< `basename $< .midi` make cleanup previews/%.preview.png: ly/%.ly lilypond --png --preview $< make cleanup $(archive): $(sources) @cp -a ly $(score) @tar czvf $(score).tar.gz $(score) --exclude=$(score)/RCS @rm -rf $(score) cleanup: @(mv *.ps postscript/ || true) > /dev/null 2>&1 @(mv *.pdf pdf/ || true) > /dev/null 2>&1 @(mv *.midi midi/ || true) > /dev/null 2>&1 @(mv *.mp3 mp3/ || true) > /dev/null 2>&1 @(mv *.png previews/ || true) > /dev/null 2>&1 @(gzip -f postscript/*.ps || true) > /dev/null 2>&1 @/bin/rm -f *.dvi *.tex *.log *.eps *.bbox postscript/*.preview.* pdf/*.preview.* previews/*-page[0-9]* ly: mkdir ly postscript: mkdir postscript pdf: mkdir pdf midi: mkdir midi mp3: mkdir mp3 previews: mkdir previews viewps: $(pses) gv --watch $(pses) & play: $(midis) timidity -is $(midis) convert: convert-ly -e $(sources) clean: rm -f postscript/* pdf/* midi/* mp3/* previews/*