
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
a2p= jcabc2ps
U= http://trillian.mit.edu/~jc/music/abc/anthem

all: \
	HailToTheChief Internationale NA NA_Australia NA_Finland NA_Germany NA_Hungary \
	NA_Israel NA_New_Zealand NA_Philipines NA_USA NA_Wales 

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #

neat:         ; /bin/rm -f *-
clean:    neat; /bin/rm -f *.out *.ps *.pdf new.*
	find new/ -name '*.abc' -mtime +30 -exec ls -l {} ';' -exec /bin/rm {} ';'
clobber: clean
	/bin/rm -f core *.core core.*

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
# Commands to fill in the new/ directory, and combine the tunes there into a 
# printable collection.

new: */*.abc # new.abc new.ps new.pdf
	find */ -mtime -30 -name '*.abc' | xargs tonew
	make new.abc new.ps new.pdf
new.abc: new/*.abc
	abcjoin +R +S new new/*.abc > new.abc
new.ps: new.abc fmt/new.fmt
	$(a2p) new.abc +x +Ffmt/new \
	|PShdr %P "NEW ANTHEMS" %P \
	|PSftr %D $U/new/ %D >new.ps
new.pdf: new.ps
	ps2pdf new.ps

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #

# jj
jj= tune/jj_1.abc tune/jj_2.abc
jj: jj.abc jj.ps jj.pdf
jj.abc: $(jj)
	abcjoin +s $(jj) >jj.abc
jj.ps: jj.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 jj.abc \
	| PShdr jj '' jj \
	| PSftr %D $U %D >jj.ps
jj.pdf: jj.ps
	ps2pdf jj.ps jj.pdf

# mh Prototype for a medley with a .hdr file:
mh: mh.abc mh.ps mh.pdf
mh= _1.abc _2.abc _3.abc
mh.abc: hdr/mh.hdr $(mh)
	abcmedley mh $(mh) >mh.abc
mh.ps: mh.abc mh.fmt
	$(a2p) +Fmh mh.abc \
	| PShdr mh '' mh \
	| PSftr %D $U %D >mh.ps
mh.pdf: mh.ps
	ps2pdf mh.ps mh.pdf

# mm Prototype for a medley without a .hdr file:
mm: mm.abc mm.ps mm.pdf
mm= _1.abc _2.abc _3.abc
mm.abc: $(mm)
	abcmedley "____" $(mm) >mm.abc
mm.ps: mm.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 mm.abc \
	| PShdr mm '' mm \
	| PSftr %D $U %D >mm.ps
mm.pdf: mm.ps
	ps2pdf mm.ps mm.pdf

# tt
tt: tt.abc tt.ps tt.pdf
tt.ps: tt.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 -p tt \
	| PShdr tt '' tt \
	| PSftr %D $U %D >tt.ps
tt.pdf: tt.ps
	ps2pdf tt.ps tt.pdf

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
# National anthems:
NA: \
	NA_Finland NA_Germany NA_Hungary NA_Israel NA_New_Zealand NA_Philipines NA_USA \
	NA_Wales 

# National anthem: Australia
NA_Australia= song/Advance_Australia_Fair-C-20-5w.abc tune/Advance_Australia_Fair-D-20-2.abc
NA_Australia: NA_Australia.abc NA_Australia.ps NA_Australia.pdf
NA_Australia.abc: $(NA_Australia)
	abcjoin +s $(NA_Australia) >NA_Australia.abc
NA_Australia.ps: NA_Australia.abc fmt/NA_Australia.fmt
	$(a2p) +Ffmt/NA_Australia.fmt NA_Australia.abc \
	| PShdr NA:Australia '' NA:Australia \
	| PSftr %D $U %D >NA_Australia.ps
NA_Australia.pdf: NA_Australia.ps
	ps2pdf NA_Australia.ps NA_Australia.pdf

# National anthem: Finland
NA_Finland= tune/Maamme-A-20-3.abc
NA_Finland: NA_Finland.abc NA_Finland.ps NA_Finland.pdf
NA_Finland.abc: $(NA_Finland)
	abcjoin +s $(NA_Finland) >NA_Finland.abc
NA_Finland.ps: NA_Finland.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 NA_Finland.abc \
	| PShdr NA:Finland '' NA:Finland \
	| PSftr %D $U %D >NA_Finland.ps
NA_Finland.pdf: NA_Finland.ps
	ps2pdf NA_Finland.ps NA_Finland.pdf

# National anthem: Germany
NA_Germany= song/Deutschland_Lied_F.abc
NA_Germany: NA_Germany.abc NA_Germany.ps NA_Germany.pdf
NA_Germany.abc: $(NA_Germany)
	abcjoin +s $(NA_Germany) >NA_Germany.abc
NA_Germany.ps: NA_Germany.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 NA_Germany.abc \
	| PShdr NA:Germany '' NA:Germany \
	| PSftr %D $U %D >NA_Germany.ps
NA_Germany.pdf: NA_Germany.ps
	ps2pdf NA_Germany.ps NA_Germany.pdf

# National Anthem: Hungary
NA_Hungary= song/NA_Hungary-Bb-22-6W.abc
NA_Hungary: NA_Hungary.abc NA_Hungary.ps NA_Hungary.pdf
NA_Hungary.abc: $(NA_Hungary)
	abcjoin +s $(NA_Hungary) >NA_Hungary.abc
NA_Hungary.ps: NA_Hungary.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 NA_Hungary.abc \
	| PShdr NA:Hungary '' NA:Hungary \
	| PSftr %D $U %D >NA_Hungary.ps
NA_Hungary.pdf: NA_Hungary.ps
	ps2pdf NA_Hungary.ps NA_Hungary.pdf

# National Anthem: Israel
NA_Israel= song/Hatikva-Dm-20-5w.abc
NA_Israel: NA_Israel.abc NA_Israel.ps NA_Israel.pdf
NA_Israel.abc: $(NA_Israel)
	abcjoin +s $(NA_Israel) >NA_Israel.abc
NA_Israel.ps: NA_Israel.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 NA_Israel.abc \
	| PShdr NA_Israel '' NA_Israel \
	| PSftr %D $U %D >NA_Israel.ps
NA_Israel.pdf: NA_Israel.ps
	ps2pdf NA_Israel.ps NA_Israel.pdf

# National anthem: New Zealand
NA_New_Zealand= song/NA_New_Zealand-G-16-4w.abc
NA_New_Zealand: NA_New_Zealand.abc NA_New_Zealand.ps NA_New_Zealand.pdf
NA_New_Zealand.abc: $(NA_New_Zealand)
	abcjoin +s $(NA_New_Zealand) >NA_New_Zealand.abc
NA_New_Zealand.ps: NA_New_Zealand.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 NA_New_Zealand.abc \
	| PShdr NA:NZ '' NA:NZ | PSftr %D $U %D >NA_New_Zealand.ps
NA_New_Zealand.pdf: NA_New_Zealand.ps
	ps2pdf NA_New_Zealand.ps NA_New_Zealand.pdf

# National anthem: Philipines
NA_Philipines= tune/Lupang_Hinirang-G-32-4.abc
NA_Philipines: NA_Philipines.abc NA_Philipines.ps NA_Philipines.pdf
NA_Philipines.abc: $(NA_Philipines)
	abcjoin +s $(NA_Philipines) >NA_Philipines.abc
NA_Philipines.ps: NA_Philipines.abc fmt/_75.fmt
	abcm2ps -F fmt/_75.fmt NA_Philipines.abc -O tmp.ps
	<tmp.ps \
	PShdr NA:Philipines '' NA:Philipines |\
	PSftr %D $U %D >NA_Philipines.ps
	rm tmp.ps
NA_Philipines.pdf: NA_Philipines.ps
	ps2pdf NA_Philipines.ps NA_Philipines.pdf

# National anthem: USA
NA_USA= song/Star_Spangled_Banner_Bbw_4v.abc
NA_USA: NA_USA.abc NA_USA.ps NA_USA.pdf
NA_USA.abc: $(NA_USA)
	abcjoin +s $(NA_USA) >NA_USA.abc
NA_USA.ps: NA_USA.abc fmt/_75.fmt
	abcm2ps -F fmt/_75.fmt NA_USA.abc -O tmp.ps
	<tmp.ps \
	PShdr NA:USA '' NA:USA |\
	PSftr %D $U %D >NA_USA.ps
	rm tmp.ps
NA_USA.pdf: NA_USA.ps
	ps2pdf NA_USA.ps NA_USA.pdf

# National anthem: Wales
NA_Wales= tune/Hen_Wlad_Fy_Nhadau-C-29-3.abc
NA_Wales: NA_Wales.abc NA_Wales.ps NA_Wales.pdf
NA_Wales.abc: $(NA_Wales)
	abcjoin +s $(NA_Wales) >NA_Wales.abc
NA_Wales.ps: NA_Wales.abc fmt/_75.fmt
	abcm2ps -F fmt/_75.fmt NA_Wales.abc -O tmp.ps
	PShdr NA:Wales '' NA:Wales <tmp.ps | PSftr %D $U %D >NA_Wales.ps
	rm tmp.ps
NA_Wales.pdf: NA_Wales.ps
	ps2pdf NA_Wales.ps NA_Wales.pdf

# Deutschland Lied F
DeutschlandLied: DeutschlandLied_F

# Hail to the Chief F
DeutschlandLied_F: DeutschlandLied_F.abc DeutschlandLied_F.ps DeutschlandLied_F.pdf
DeutschlandLied_F.ps: DeutschlandLied_F.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 -p DeutschlandLied_F \
	| PShdr DeutschlandLied_F '' DeutschlandLied_F \
	| PSftr %F $U %F >DeutschlandLied_F.ps
DeutschlandLied_F.pdf: DeutschlandLied_F.ps
	ps2pdf DeutschlandLied_F.ps DeutschlandLied_F.pdf

# Hail to the Chief D
HailToTheChief: HailToTheChief_D

# Hail to the Chief D
HailToTheChief_D: HailToTheChief_D.abc HailToTheChief_D.ps HailToTheChief_D.pdf
HailToTheChief_D.ps: HailToTheChief_D.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 -p HailToTheChief_D \
	| PShdr HailToTheChief_D '' HailToTheChief_D \
	| PSftr %D $U %D >HailToTheChief_D.ps
HailToTheChief_D.pdf: HailToTheChief_D.ps
	ps2pdf HailToTheChief_D.ps HailToTheChief_D.pdf

# Internationale
Internationale: Internationale.abc Internationale.ps Internationale.pdf
Internationale.ps: Internationale.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 -p Internationale \
	| PShdr Internationale '' Internationale \
	| PSftr %D $U %D >Internationale.ps
Internationale.pdf: Internationale.ps
	ps2pdf Internationale.ps Internationale.pdf

# NkosiSikeleliAfrika
NkosiSikeleliAfrika: NkosiSikeleliAfrika.abc NkosiSikeleliAfrika.ps NkosiSikeleliAfrika.pdf
NkosiSikeleliAfrika.ps: NkosiSikeleliAfrika.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 -p NkosiSikeleliAfrika \
	| PShdr NkosiSikeleliAfrika '' NkosiSikeleliAfrika \
	| PSftr %D $U %D >NkosiSikeleliAfrika.ps
NkosiSikeleliAfrika.pdf: NkosiSikeleliAfrika.ps
	ps2pdf NkosiSikeleliAfrika.ps NkosiSikeleliAfrika.pdf

## National Anthem: New Zealand
#NA_New_Zealand= song/NA_New_Zealand-G-16-4w.abc
#NA_New_Zealand: NA_New_Zealand.abc NA_New_Zealand.ps NA_New_Zealand.pdf
#NA_New_Zealand.abc: $(NA_New_Zealand)
#	abcmedley NA_New_Zealand $(NA_New_Zealand) >NA_New_Zealand.abc
#NA_New_Zealand.ps: NA_New_Zealand.abc fmt/_75.fmt $(NA_New_Zealand)
#	jcabc2ps +F fmt/_75 NA_New_Zealand.abc > NA_New_Zealand.ps
#NA_New_Zealand.pdf: NA_New_Zealand.ps
#	ps2pdf NA_New_Zealand.ps NA_New_Zealand.pdf

# National Anthem: Ukraine
NA_Ukraine= Ukraine_Natl_Anthem-F-32-6w.abc Ukraine_Natl_Anthem-F-32-3w.abc
NA_Ukraine: NA_Ukraine.abc NA_Ukraine.ps NA_Ukraine.pdf
NA_Ukraine.abc: $(NA_Ukraine)
	abcjoin NA_Ukraine $(NA_Ukraine) >NA_Ukraine.abc
NA_Ukraine.ps: NA_Ukraine.abc fmt/_75.fmt $(NA_Ukraine)
	jcabc2ps +F fmt/_75 NA_Ukraine.abc > NA_Ukraine.ps
NA_Ukraine.pdf: NA_Ukraine.ps
	ps2pdf NA_Ukraine.ps NA_Ukraine.pdf

# Star_Spangled_Banner-Bb,C-32-8w8
Star_Spangled_Banner-Bb,C-32-8w8= song/Star_Spangled_Banner_Cw.abc tune/Star_Spangled_Banner_D.abc
Star_Spangled_Banner-Bb,C-32-8w8: \
	Star_Spangled_Banner-Bb,C-32-8w8.abc \
	Star_Spangled_Banner-Bb,C-32-8w8.ps \
	Star_Spangled_Banner-Bb,C-32-8w8.pdf
Star_Spangled_Banner-Bb,C-32-8w8.abc: $(Star_Spangled_Banner-Bb,C-32-8w8)
	abcjoin +C +S2 $(Star_Spangled_Banner-Bb,C-32-8w8) >Star_Spangled_Banner-Bb,C-32-8w8.abc
Star_Spangled_Banner-Bb,C-32-8w8.ps: Star_Spangled_Banner-Bb,C-32-8w8.abc fmt/_75.fmt
	$(a2p) +Ffmt/_75 Star_Spangled_Banner-Bb,C-32-8w8.abc \
	| PShdr Star_Spangled_Banner-Bb,C-32-8w8 '' Star_Spangled_Banner-Bb,C-32-8w8 \
	| PSftr %D $U %D >Star_Spangled_Banner-Bb,C-32-8w8.ps
Star_Spangled_Banner-Bb,C-32-8w8.pdf: Star_Spangled_Banner-Bb,C-32-8w8.ps
	ps2pdf Star_Spangled_Banner-Bb,C-32-8w8.ps Star_Spangled_Banner-Bb,C-32-8w8.pdf
