|
From: | Craig Dabelstein |
Subject: | makefile problems |
Date: | Tue, 30 Dec 2014 23:27:20 +0000 |
LILY_CMD = lilypond -ddelete-intermediate-files \
-dno-point-and-click -djob-count=$(CPU_CORES)
.SUFFIXES: .ly .ily .pdf .midi
# Input and output files are searched in the directories listed in
# the VPATH variable. All of them are subdirectories of the current
# directory (given by the GNU make variable `CURDIR').
#CURDIR = $(shell pwd)
VPATH = \
$(CURDIR)/Scores \
$(CURDIR)/PDF \
$(CURDIR)/Parts \
$(CURDIR)/Notes
# The pattern rule to create PDF and MIDI files from a LY input file.
# The .pdf output files are put into the `PDF' subdirectory, and the
# .midi files go into the `MIDI' subdirectory.
%.pdf %.midi: %.ly
$(LILY_CMD) $<; \
if test -f "$*.pdf"; then \
mv "$*.pdf" PDF/; \
fi; \
if test -f "$*.midi"; then \
mv "$*.midi" MIDI/; \
fi
notes = \
fluteOne.ily \
fluteTwo.ily \
oboeOne.ily \
oboeTwo.ily \
clarinetOne.ily \
clarinetTwo.ily \
clarinetThree.ily \
bassclarinet.ily \
bassoonOne.ily \
bassoonTwo.ily \
altosaxOne.ily \
altosaxTwo.ily \
tenorsax.ily \
barisax.ily \
hornOne.ily \
hornTwo.ily \
hornThree.ily \
hornFour.ily \
trumpetOne.ily \
trumpetTwo.ily \
trumpetThree.ily \
tromboneOne.ily \
tromboneTwo.ily \
tromboneThree.ily \
euphoniumOne.ily \
euphoniumTwo.ily \
tuba.ily \
timpani.ily \
snardrum.ily \
bassdrum.ily \
cymbals.ily \
tamtam.ily
# The dependencies of the movements.
$(piece)I.pdf: $(piece)I.ly $(notes)
$(piece)II.pdf: $(piece)II.ly $(notes)
$(piece)III.pdf: $(piece)III.ly $(notes)
$(piece)IV.pdf: $(piece)IV.ly $(notes)
$(piece)V.pdf: $(piece)V.ly $(notes)
# The dependencies of the full score.
$(piece).pdf: $(piece).ly $(notes)
# The dependencies of the parts.
$(piece)-fluteOne.pdf: $(piece)-fluteOne.ly fluteOne.ily
$(piece)-fluteTwo.pdf: $(piece)-fluteTwo.ly fluteTwo.ily
$(piece)-oboeOne.pdf: $(piece)-oboeOne.ly oboeOne.ily
$(piece)-oboeTwo.pdf: $(piece)-oboeTwo.ly oboeTwo.ily
$(piece)-clarinetOne.pdf: $(piece)-clarinetOne.ly clarinetOne.ily
$(piece)-clarinetTwo.pdf: $(piece)-clarinetTwo.ly clarinetTwo.ily
$(piece)-clarinetThree.pdf: $(piece)-clarinetThree.ly clarinetThree.ily
$(piece)-bassclarinet.pdf: $(piece)-bassclarinet.ly bassclarinet.ily
$(piece)-bassoonOne.pdf: $(piece)-bassoonOne.ly bassoonOne.ily
$(piece)-bassoonTwo.pdf: $(piece)-bassoonTwo.ly bassoonTwo.ily
$(piece)-altosaxOne.pdf: $(piece)-altosaxOne.ly altosaxOne.ily
$(piece)-altosaxTwo.pdf: $(piece)-altosaxTwo.ly altosaxTwo.ily
$(piece)-tenorsax.pdf: $(piece)-tenorsax.ly tenorsax.ily
$(piece)-barisax.pdf: $(piece)-barisax.ly barisax.ily
$(piece)-hornOne.pdf: $(piece)-hornOne.ly hornOne.ily
$(piece)-hornTwo.pdf: $(piece)-hornTwo.ly hornTwo.ily
$(piece)-hornThree.pdf: $(piece)-hornThree.ly hornThree.ily
$(piece)-hornFour.pdf: $(piece)-hornFour.ly hornFour.ily
$(piece)-trumpetOne.pdf: $(piece)-trumpetOne.ly trumpetOne.ily
$(piece)-trumpetTwo.pdf: $(piece)-trumpetTwo.ly trumpetTwo.ily
$(piece)-trumpetThree.pdf: $(piece)-trumpetThree.ly trumpetThree.ily
$(piece)-tromboneOne.pdf: $(piece)-tromboneOne.ly tromboneOne.ily
$(piece)-tromboneTwo.pdf: $(piece)-tromboneTwo.ly tromboneTwo.ily
$(piece)-tromboneThree.pdf: $(piece)-tromboneThree.ly tromboneThree.ily
$(piece)-euphoniumOne.pdf: $(piece)-euphoniumOne.ly euphoniumOne.ily
$(piece)-euphoniumTwo.pdf: $(piece)-euphoniumTwo.ly euphoniumTwo.ily
$(piece)-tuba.pdf: $(piece)-tuba.ly tuba.ily
$(piece)-timpani.pdf: $(piece)-timpani.ly timpani.ily
$(piece)-snaredrum.pdf: $(piece)-snaredrum.ly snaredrum.ily
$(piece)-bassdrum.pdf: $(piece)-bassdrum.ly bassdrum.ily
$(piece)-cymbals.pdf: $(piece)-cymbals.ly cymbals.ily
$(piece)-tamtam.pdf: $(piece)-tamtam.ly tamtam.ily
# Type `make score' to generate the full score of all four
# movements as one file.
.PHONY: score
score: $(piece).pdf
# Type `make parts' to generate all parts.
# Type `make foo.pdf' to generate the part for instrument `foo'.
# Example: `make symphony-cello.pdf'.
.PHONY: parts
parts: \
$(piece)-fluteOne.pdf \
$(piece)-fluteTwo.pdf \
$(piece)-oboeOne.pdf \
$(piece)-oboeTwo.pdf \
$(piece)-clarinetOne.pdf \
$(piece)-clarinetTwo.pdf \
$(piece)-clarinetThree.pdf \
$(piece)-bassclarinet.pdf \
$(piece)-bassoonOne.pdf \
$(piece)-bassoonTwo.pdf \
$(piece)-altosaxOne.pdf \
$(piece)-altosaxTwo.pdf \
$(piece)-tenorsax.pdf \
$(piece)-barisax.pdf \
$(piece)-hornOne.pdf \
$(piece)-hornTwo.pdf \
$(piece)-hornThree.pdf \
$(piece)-hornFour.pdf \
$(piece)-trumpetOne.pdf \
$(piece)-trumpetTwo.pdf \
$(piece)-trumpetThree.pdf \
$(piece)-tromboneOne.pdf \
$(piece)-tromboneTwo.pdf \
$(piece)-tromboneThree.pdf \
$(piece)-euphoniumOne.pdf \
$(piece)-euphoniumTwo.pdf \
$(piece)-tuba.pdf \
$(piece)-timpani.pdf \
$(piece)-snaredrum.pdf \
$(piece)-bassdrum.pdf \
$(piece)-cymbals.pdf \
$(piece)-tamtam.pdf
# Type `make movements' to generate files for the
# four movements separately.
.PHONY: movements
movements: $(piece)I.pdf \
$(piece)II.pdf \
$(piece)III.pdf \
$(piece)IV.pdf \
$(piece)V.pdf
all: score parts movements
archive:
tar -cvvf symphony2.tar \ # this line begins with a tab
--exclude=*pdf --exclude=*~ \
--exclude=*midi --exclude=*.tar \
../Symphony2/*
[Prev in Thread] | Current Thread | [Next in Thread] |