]> git.donarmstrong.com Git - lilypond.git/blob - GNUmakefile.in
ef6ea571a0db23e2792bb55b9a3a3d6d992282df
[lilypond.git] / GNUmakefile.in
1 # -*-Makefile-*-
2 # title    specific top level makefile for LilyPond  
3
4 # subdir level:
5 #
6 depth = .
7 #
8
9 # descent order into subdirectories
10
11 SUBDIRS = buildscripts scripts flower lily \
12         mf ly tex ps scm \
13         modules midi2ly po make intl \
14         debian $(builddir)/stepmake \
15         Documentation input \
16         mutopia ports
17 #
18
19 SCRIPTS = configure aclocal.m4
20 README_FILES =  CHANGES COPYING DEDICATION NEWS README.mandrake ROADMAP
21 README_TXT_FILES = AUTHORS.txt README.txt INSTALL.txt FAQ.txt
22 IN_FILES := $(wildcard *.in)
23 EXTRA_DIST_FILES = lilypond-font-lock.el lilypond-mode.el lilypond-init.el vimrc VERSION $(README_FILES)  $(SCRIPTS) $(IN_FILES)  emacsclient.patch mktexnam.patch lexer-gcc-3.0.patch
24 NON_ESSENTIAL_DIST_FILES = $(README_TXT_FILES)
25 INSTALLATION_DIR=$(datadir)
26 INSTALLATION_FILES=$(configuration) VERSION
27
28 # bootstrap stepmake:
29 #
30 STEPMAKE_TEMPLATES=toplevel po install
31 include $(depth)/make/stepmake.make 
32 #
33
34 footify:
35         $(footify) --index=./ `$(FIND) . -maxdepth 1 -name '*.html' -print`
36         $(footify-all-command)
37
38 fonts:
39         $(MAKE) -C $(depth)/mf
40
41 doc: lily fonts
42         $(MAKE) -C Documentation
43
44 web-doc: 
45         $(MAKE) out=www -C Documentation WWW
46         $(MAKE) footify
47
48 # KPATHSEA=0: Hack for compiling without kpathsea -- not recommended
49 my_tfm_path = $(TFM_PATH) /tmp /tmp /tmp /tmp /tmp /tmp 
50
51
52 local-install:
53         mkdir -p $(datadir)
54 ifeq ($(KPATHSEA),0)
55         $(foreach i, 1 2 3 4 5, rm -f $(datadir)/tfm.$(i); $(LN_S) $(word $(i), $(my_tfm_path)) $(datadir)/tfm.$(i) ; )
56 endif
57
58
59 TOP_HTMLS = index.html short-examples.html long-examples.html
60
61 index: web-doc
62
63 short-examples:
64         $(MAKE) out=www -C input WWW
65         $(PYTHON) $(buildscript-dir)/mutopia-index.py -o short-examples.html input/
66
67
68 long-examples:
69         $(MAKE) out=www -C mutopia WWW
70         $(PYTHON) $(buildscript-dir)/mutopia-index.py -o long-examples.html mutopia/
71
72 lily: lily/$(outdir)/lilypond
73
74 lily/$(outdir)/lilypond:
75         $(MAKE) -C lily
76
77 local-web: fonts lily $(TOP_HTMLS:%.html=%) footify do-top-doc top-web
78
79 top-web:
80         rm -f `find . -name \*.html~ -print`
81         find `find Documentation input mutopia *.png index.html -type d -name 'out-www'` \
82                 -not -name '*.dvi' -not -name '*ly' -not -name '*.tex' \
83                 -not -name '*.ps' -not -name '*.eps' -not -name '*pk' \
84                 -not -name '*.aux' -not -name '*.cp' -not -name '*.fn' \
85                 -not -name '*.vr' -not -name '*.yp' -not -name '*.ky' \
86                 -not -name '*.pg' -not -name '*.tmp' -not -name '*.toc' \
87                 -not -name '*.fns' -not -name '*.cps' -not -name '*.nexi' \
88                 -not -name '*.texi' -not -name '*.texidoc' -not -name '*.tp' \
89                 -not -name '*.log' -not -name 'out-www' -not -name '*.dep' \
90             > $(outdir)/weblist
91         ls *.png *.html >> $(outdir)/weblist
92         cat $(outdir)/weblist | GZIP=-9v tar -czf $(outdir)/web.tar.gz  -T -
93
94 #WWW: local-WWW
95
96 web: local-web
97
98 local-WWW-clean: top-WWW-clean
99
100 WWW-clean:
101         $(MAKE) -C Documentation WWW-clean
102         $(MAKE) -C input WWW-clean
103         $(MAKE) -C mutopia WWW-clean
104
105 top-WWW-clean:
106         rm -f $(TOP_HTMLS) lily-[0-9]*.png
107         $(SHELL) $(buildscript-dir)/clean-fonts.sh
108
109
110
111 WWW: