]> git.donarmstrong.com Git - lilypond.git/blob - make/Rules.make
release: 0.0.56
[lilypond.git] / make / Rules.make
1 #
2 # project  LilyPond -- the musical typesetter
3 # title    generic make rules
4 # file     make/Rules.make
5 #
6 # Copyright (c) 1997 by    
7 #       Jan Nieuwenhuizen <jan@digicash.com>
8 #       Han-Wen Nienhuys <hanwen@stack.nl>
9
10 # this is supposed to clear all suffixes:
11 .SUFFIXES:
12
13 # so why does make still consider xx.y : RCS/xx.y,v ?
14 # there is no suffix ,v anymore!
15 .SUFFIXES: .cc .o .hh .y .l .pod .txt .1 .dep .html
16
17
18 # compile rules:
19 #
20 $(outdir)/%.o: %.cc
21         $(DO_CXX_COMPILE)
22
23 $(outdir)/%.o: $(outdir)/%.cc
24         $(DO_CXX_COMPILE)
25
26 $(outdir)/%.cc: %.y
27 #       $(BISON) -d $<
28         $(BISON) $<
29 #       mv $(shell basename $@ .cc ).tab.h $(include-lib)/$(shell basename $@ .cc).hh
30 #       mv $(shell basename $@ .cc ).tab.h $(outdir)/$(shell basename $@ .cc).hh
31         mv $(shell basename $@ .cc ).tab.c $@
32
33 $(outdir)/%.hh: %.y
34         $(BISON) -d $<
35         mv $(shell basename $@ .hh ).tab.h $@
36         mv $(shell basename $@ .hh ).tab.c $(outdir)/$(shell basename $@ .hh).cc
37
38 $(outdir)/%.cc: %.l
39         $(FLEX) -Cfe -p -p -t $< > $@
40
41 $(outdir)/%.text: $(outdir)/%.1
42         groff -man -Tascii $< > $@
43
44 $(depth)/%.text: $(outdir)/%.text
45         cp $< $@
46
47 $(outdir)/%.html: %.pod
48         $(pod2html)  $<
49         mv $(notdir $@) $(outdir)/
50
51 $(outdir)/%.5: %.pod
52         $(pod2groff)
53 $(outdir)/%.1: %.pod
54         $(pod2groff)
55
56
57
58 #
59
60 # outdirs:
61 #
62 # ?$(outdir)/%.dep:
63 %.dep:
64         touch $@
65
66
67 # build and config stuff: (could make this generic default rule...)
68 #
69 %/.build:
70         echo 0 > $@
71
72
73 $(depth)/%.text: check-doc-deps
74         rm -f $@
75         ln `find ${depth}/Documentation -name $@|head -1` .
76