c118e45a59ff14103375b6ce2f27706407bd449a
[YACASL2.git] / doc / Makefile
1 MANUAL = manual
2 INSTALLDOC = install
3 MANUALSRC = $(MANUAL).texi
4 MANUALINFO = yacasl2.info
5 INSTALLDOCSRC = $(INSTALLDOC).texi
6 CSS = style.css
7 MANUALHTMLDIR = manual_html
8
9 MV ?= mv
10 CP ?= cp
11 MKDIR ?= mkdir
12 RMRF ?= rm -rf
13 PTEX ?= ptex
14 TEXI2DVI ?= texi2dvi
15 DVI2PDF ?= dvipdfmx
16 MAKEINFO ?= gmakeinfo
17 INSTALL ?= install
18 INSTALL-INFO ?= ginstall-info
19 GZIP = gzip
20
21 prefix ?= ~
22 infodir ?= $(prefix)/share/info
23
24 .PHONY: all info html install-info uninstall-info clean clean-manual clean-installdoc clean-textmp
25
26 .INTERMEDIATE: $(MANUAL).dvi
27
28 all: info html $(MANUAL).pdf ../INSTALL
29
30 info: $(MANUALINFO)
31
32 $(MANUALINFO): $(MANUALSRC)
33         $(MAKEINFO) -o $(MANUALINFO) $(MANUALSRC)
34
35 html: $(MANUAL).html $(MANUALHTMLDIR) $(INSTALLDOC).html
36
37 $(MANUAL).html: $(MANUALSRC) $(CSS)
38         $(MAKEINFO) -o $@ --no-split --html --css-include=$(CSS) $<
39
40 $(MANUALHTMLDIR): $(MANUALSRC) $(CSS)
41         $(INSTALL) -d $@
42         $(INSTALL) $(CSS) $@/
43         $(MAKEINFO) -o $@ --html --css-ref=$(CSS) $<
44
45 $(MANUAL).pdf: $(MANUAL).dvi
46         $(DVI2PDF) $<
47
48 $(MANUAL).dvi: $(MANUALSRC)
49         TEX=$(PTEX) $(TEXI2DVI) -q --texinfo=@afourpaper -o $@ $<
50         @$(MAKE) clean-textmp
51
52 $(MANUAL).txt: $(MANUALSRC)
53         $(MAKEINFO) --no-headers --disable-encoding -o $@ $(MANUALSRC)
54
55 install-info: $(MANUAL).info
56         $(INSTALL) -d $(infodir)
57         $(INSTALL) $(MANUALINFO) $(infodir)/
58         $(INSTALL-INFO) $(infodir)/$(MANUALINFO) $(infodir)/dir
59         $(GZIP) -f $(infodir)/$(MANUALINFO)
60
61 uninstall-info: $(MANUAL).info
62         $(INSTALL-INFO) --delete $(infodir)/$(MANUAL) $(infodir)/dir
63         $(RM) $(infodir)/$(MANUAL)*
64
65 $(INSTALLDOC).html: $(INSTALLDOCSRC) $(CSS)
66         $(MAKEINFO) -o $@ --no-split --html --css-include=$(CSS) $<
67
68 ../INSTALL: $(INSTALLDOCSRC)
69         $(MAKEINFO) -o $@ --no-headers --disable-encoding $<
70
71 clean: clean-manual clean-installdoc clean-textmp
72
73 clean-manual:
74         @$(RMRF) html $(MANUALHTMLDIR) $(MANUAL).info $(MANUAL).pdf $(MANUAL).html $(MANUAL).txt 
75
76 clean-textmp:
77         @$(RMRF) $(MANUAL).aux $(MANUAL).cp $(MANUAL).cps $(MANUAL).fn $(MANUAL).ky $(MANUAL).log $(MANUAL).pg $(MANUAL).pgs $(MANUAL).tmp $(MANUAL).toc $(MANUAL).tp $(MANUAL).vr
78
79 clean-installdoc:
80         @$(RMRF) install.html ../INSTALL