Build/delete PDF files
[krb5.git] / doc / Makefile
1 SRCDIR=../src
2 DVI=texi2dvi
3 DVIPS=dvips -o "$@"
4 PSPDF=ps2pdf
5 INFO=makeinfo
6 HTML=makeinfo --html
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)/appl/gssftp/ftp/ftp.M $(SRCDIR)/clients/kdestroy/kdestroy.M $(SRCDIR)/clients/kinit/kinit.M $(SRCDIR)/clients/klist/klist.M $(SRCDIR)/clients/ksu/ksu.M $(SRCDIR)/appl/bsd/rcp.M $(SRCDIR)/appl/bsd/rlogin.M $(SRCDIR)/appl/bsd/rsh.M $(SRCDIR)/appl/telnet/telnet/telnet.1 $(SRCDIR)/kadmin/passwd/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 KRB425_INCLUDES=definitions.texinfo copyright.texinfo
30 KRB425_DEPS=krb425.texinfo $(KRB425_INCLUDES)
31
32 .PHONY: all
33 all:: admin-guide-full install-guide-full user-guide-full krb425-guide-full clean-temp-ps clean-tex
34
35 .PHONY: admin-guide-full
36 admin-guide-full:: admin-guide admin-guide-info admin-guide-html
37
38 .PHONY: admin-guide
39 admin-guide:: admin-guide.ps
40
41 admin-guide.ps: $(ADMIN_DEPS)
42         $(DVI) admin.texinfo
43         $(DVIPS) admin
44
45 admin-guide.pdf: admin-guide.ps
46         $(PSPDF) admin-guide.ps admin-guide.pdf
47
48 .PHONY: admin-guide-html
49 admin-guide-html:: admin.html
50
51 admin.html: $(ADMIN_DEPS)
52         $(HTML) admin.texinfo
53
54 .PHONY: admin-guide-info
55 admin-guide-info:: krb5-admin.info
56
57 krb5-admin.info: $(ADMIN_DEPS)
58         $(INFO) admin.texinfo
59
60 .PHONY: install-guide-full
61 install-guide-full:: install-guide install-guide-info install-guide-html
62
63 .PHONY: install-guide
64 install-guide:: install-guide.ps
65
66 install-guide.ps: $(INSTALL_DEPS)
67         $(DVI) install.texinfo
68         $(DVIPS) install
69
70 install-guide.pdf: install-guide.ps
71         $(PSPDF) install-guide.ps install-guide.pdf
72
73 .PHONY: install-guide-html
74 install-guide-html:: install.html
75
76 install.html:: $(INSTALL_DEPS)
77         $(HTML) install.texinfo         
78
79 .PHONY: install-guide-info
80 install-guide-info:: krb5-install.info
81
82 krb5-install.info: $(INSTALL_DEPS)
83         $(INFO) install.texinfo
84
85 .PHONY: user-guide-full
86 user-guide-full:: user-guide user-guide-info user-guide-html
87
88 .PHONY: user-guide
89 user-guide:: user-guide.ps
90
91 user-guide.ps: $(USER_GUIDE_DEPS)
92         $(DVI) user-guide.texinfo
93         $(MANPS) $(MANPAGES)
94         $(DVIPS) user-guide
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)/appl/gssftp/ftp/ftp.M | $(MANHTML) > ftp.html
107         $(MANTXT) $(SRCDIR)/clients/kdestroy/kdestroy.M | $(MANHTML) > kdestroy.html
108         $(MANTXT) $(SRCDIR)/clients/kinit/kinit.M | $(MANHTML) > kinit.html
109         $(MANTXT) $(SRCDIR)/clients/klist/klist.M | $(MANHTML) > klist.html
110         $(MANTXT) $(SRCDIR)/clients/ksu/ksu.M | $(MANHTML) > ksu.html
111         $(MANTXT) $(SRCDIR)/appl/bsd/rcp.M | $(MANHTML) > rcp.html
112         $(MANTXT) $(SRCDIR)/appl/bsd/rlogin.M | $(MANHTML) > rlogin.html
113         $(MANTXT) $(SRCDIR)/appl/bsd/rsh.M | $(MANHTML) > rsh.html
114         $(MANTXT) $(SRCDIR)/appl/telnet/telnet/telnet.1 | $(MANHTML) > telnet.html
115         $(MANTXT) $(SRCDIR)/kadmin/passwd/kpasswd.M | $(MANHTML) > kpasswd.html
116         $(HTML) user-guide.texinfo              
117
118 .PHONY: krb425-guide-full
119 krb425-guide-full:: krb425-guide krb425-guide-info krb425-guide-html
120
121 .PHONY: krb425-guide
122 krb425-guide:: krb425-guide.ps
123
124 krb425-guide.ps: $(KRB425_DEPS)
125         $(DVI) krb425.texinfo
126         $(DVIPS) krb425
127
128 .PHONY: krb425-guide-html
129 krb425-guide-html:: krb425.html
130
131 krb425.html:: $(KRB425_DEPS)
132         $(HTML) krb425.texinfo          
133
134 .PHONY: krb425-guide-info
135 krb425-guide-info:: krb425.info
136
137 krb425.info: $(KRB425_DEPS)
138         $(INFO) krb425.texinfo
139
140 .PHONY: clean
141 clean:: clean-all
142
143 .PHONY: clean-all
144 clean-all:: clean-tex clean-backup clean-final clean-tarfiles
145
146 .PHONY: clean-final
147 clean-final::
148         $(RM) *.ps *.info *.info-? *.html *.pdf
149
150 .PHONY: clean-tex
151 clean-tex::
152         $(RM) *.aux *.cp *.dvi *.fn *.ky *.log *.pg *.toc *.tp *.vr
153
154 .PHONY: clean-backup
155 clean-backup::
156         $(RM) *~ #*
157
158 .PHONY: clean-tarfiles
159 clean-tarfiles::
160         $(RM) *.tar *.tar.gz *.tgz
161
162 .PHONY: clean-temp-ps
163 clean-temp-ps::
164         $(RM) ftp?.ps kinit?.ps klist?.ps kdestroy?.ps ksu?.ps rlogin?.ps \
165                 rcp?.ps rsh?.ps telnet?.ps kpasswd?.ps
166
167 .PHONY: tgz
168 tgz::
169         $(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
170         $(GZIP) krb5-docs.tar
171         $(MV) krb5-docs.tar.gz krb5-docs.tgz