pull up r24555 from trunk
[krb5.git] / doc / Makefile
1 SRCDIR=../src
2 DVI=texi2dvi4a2ps       # texi2dvi
3 DVIPS=dvips -o "$@"
4 PSPDF=ps2pdf
5 INFO=makeinfo
6 HTML=makeinfo --html --no-split
7 RM=rm -f
8 TAR=tar -chvf
9 GZIP=gzip -9
10 MANPS=./man2ps
11 MANTXT=nroff -man 
12 MANHTML=./man2html
13
14 ADMIN_INCLUDES=definitions.texinfo copyright.texinfo document-list.texinfo \
15         glossary.texinfo support-enc.texinfo salts.texinfo krb5conf.texinfo \
16         kdcconf.texinfo dnstxt.texinfo dnssrv.texinfo send-pr.texinfo
17 ADMIN_DEPS=admin.texinfo $(ADMIN_INCLUDES)
18
19 INSTALL_INCLUDES=definitions.texinfo copyright.texinfo document-list.texinfo \
20         dnstxt.texinfo dnssrv.texinfo build.texinfo bug-report.texinfo \
21         krb5conf.texinfo kdcconf.texinfo send-pr.texinfo
22 INSTALL_DEPS=install.texinfo $(INSTALL_INCLUDES)
23
24 MANPAGES=$(SRCDIR)/clients/kdestroy/kdestroy.M $(SRCDIR)/clients/kinit/kinit.M $(SRCDIR)/clients/klist/klist.M $(SRCDIR)/clients/ksu/ksu.M $(SRCDIR)/clients/kpasswd/kpasswd.M
25
26 USER_GUIDE_INCLUDES=definitions.texinfo copyright.texinfo glossary.texinfo
27 USER_GUIDE_DEPS=user-guide.texinfo $(USER_GUIDE_INCLUDES)
28
29 .PHONY: all
30 all:: admin-guide-full install-guide-full user-guide-full clean-temp-ps clean-tex
31
32 .PHONY: admin-guide-full
33 admin-guide-full:: admin-guide admin-guide-info admin-guide-html
34
35 .PHONY: admin-guide
36 admin-guide:: admin-guide.ps
37
38 admin-guide.ps: $(ADMIN_DEPS)
39         $(DVI) admin.texinfo
40         $(DVIPS) admin
41
42 admin-guide.pdf: admin-guide.ps
43         $(PSPDF) admin-guide.ps admin-guide.pdf
44
45 .PHONY: admin-guide-html
46 admin-guide-html:: admin.html
47
48 admin.html: $(ADMIN_DEPS)
49         $(HTML) admin.texinfo
50
51 .PHONY: admin-guide-info
52 admin-guide-info:: krb5-admin.info
53
54 krb5-admin.info: $(ADMIN_DEPS)
55         $(INFO) admin.texinfo
56
57 .PHONY: install-guide-full
58 install-guide-full:: install-guide install-guide-info install-guide-html
59
60 .PHONY: install-guide
61 install-guide:: install-guide.ps
62
63 install-guide.ps: $(INSTALL_DEPS)
64         $(DVI) install.texinfo
65         $(DVIPS) install
66
67 install-guide.pdf: install-guide.ps
68         $(PSPDF) install-guide.ps install-guide.pdf
69
70 .PHONY: install-guide-html
71 install-guide-html:: install.html
72
73 install.html:: $(INSTALL_DEPS)
74         $(HTML) install.texinfo         
75
76 .PHONY: install-guide-info
77 install-guide-info:: krb5-install.info
78
79 krb5-install.info: $(INSTALL_DEPS)
80         $(INFO) install.texinfo
81
82 .PHONY: user-guide-full
83 user-guide-full:: user-guide user-guide-info user-guide-html
84
85 .PHONY: user-guide
86 user-guide:: user-guide.ps
87
88 user-guide.ps: $(USER_GUIDE_DEPS)
89         $(DVI) user-guide.texinfo
90         $(MANPS) $(MANPAGES)
91         $(DVIPS) user-guide
92
93 user-guide.pdf: user-guide.ps
94         $(PSPDF) user-guide.ps user-guide.pdf
95
96 .PHONY: user-guide-info
97 user-guide-info:: krb5-user.info
98
99 krb5-user.info: $(USER_GUIDE_DEPS)
100         $(INFO) user-guide.texinfo
101
102 .PHONY: user-guide-html
103 user-guide-html:: user-guide.html
104
105 user-guide.html: $(USER_GUIDE_DEPS)
106         $(MANTXT) $(SRCDIR)/clients/kdestroy/kdestroy.M | $(MANHTML) > kdestroy.html
107         $(MANTXT) $(SRCDIR)/clients/kinit/kinit.M | $(MANHTML) > kinit.html
108         $(MANTXT) $(SRCDIR)/clients/klist/klist.M | $(MANHTML) > klist.html
109         $(MANTXT) $(SRCDIR)/clients/ksu/ksu.M | $(MANHTML) > ksu.html
110         $(MANTXT) $(SRCDIR)/clients/kpasswd/kpasswd.M | $(MANHTML) > kpasswd.html
111         $(HTML) user-guide.texinfo              
112
113 .PHONY: implementor.ps implementor.pdf implementor.info
114 implementor.pdf: implementor.ps
115         $(PSPDF) implementor.ps
116 implementor.ps: implementor.texinfo
117         $(DVI) implementor.texinfo
118         $(DVIPS) implementor
119 implementor.info: implementor.texinfo
120         $(INFO) implementor.texinfo
121
122 .PHONY: clean
123 clean:: clean-all
124
125 .PHONY: clean-all
126 clean-all:: clean-tex clean-backup clean-final clean-tarfiles
127
128 .PHONY: clean-final
129 clean-final::
130         $(RM) *.ps *.info *.info-? *.html *.pdf
131
132 .PHONY: clean-tex
133 clean-tex::
134         $(RM) *.aux *.cp *.dvi *.fn *.ky *.log *.pg *.toc *.tp *.vr *.fns *.vrs *.tps
135
136 .PHONY: clean-backup
137 clean-backup::
138         $(RM) *~ #*
139
140 .PHONY: clean-tarfiles
141 clean-tarfiles::
142         $(RM) *.tar *.tar.gz *.tgz
143
144 .PHONY: clean-temp-ps
145 clean-temp-ps::
146         $(RM) ftp?.ps kinit?.ps klist?.ps kdestroy?.ps ksu?.ps rlogin?.ps \
147                 rcp?.ps rsh?.ps telnet?.ps kpasswd?.ps
148
149 .PHONY: tgz
150 tgz::
151         $(TAR) krb5-docs.tar admin.texinfo build.texinfo copyright.texinfo definitions.texinfo document-list.texinfo glossary.texinfo install.texinfo texinfo.tex user-guide.texinfo *-guide.ps *.info *.info-? *.html
152         $(GZIP) krb5-docs.tar
153         $(MV) krb5-docs.tar.gz krb5-docs.tgz
154
155 ../NOTICE: notice.texinfo definitions.texinfo copyright.texinfo
156         makeinfo --plaintext -o $@ notice.texinfo