Synch to No Gnus 200503300817.
[elisp/gnus.git-] / texi / Makefile.in
1 infodir = @info_dir@
2 prefix = @prefix@
3 srcdir = @srcdir@
4 subdir = texi
5 top_srcdir = @top_srcdir@
6
7 @SET_MAKE@
8 VPATH=$(srcdir)
9 TEXI2DVI=texi2dvi
10 TEXI2PDF=texi2pdf
11 MAKEINFO=@MAKEINFO@
12 EMACS=@EMACS@
13 EMACSCOMP=$(EMACS) -batch -q -no-site-file
14 EMACSINFO=$(EMACSCOMP) -l $(srcdir)/infohack.el -f batch-makeinfo
15 PDFLATEX=pdflatex
16 LATEX=@LATEX@
17 DVIPS=dvips
18 INSTALL = @INSTALL@
19 INSTALL_DATA = @INSTALL_DATA@
20 SHELL = /bin/sh
21 PAPERTYPE=a4
22 INFO_DEPS=gnus message emacs-mime sieve
23 INFO_DEPS_JA=gnus-ja message-ja
24 INFO_DEPS_INFO=gnus.info message.info emacs-mime.info sieve.info
25 INFO_DEPS_JA_INFO=gnus-ja.info message-ja.info
26 REFCARD=gnus-refcard
27 LOGO=gnus-logo
28
29 all: $(INFO_DEPS)
30 all-info: $(INFO_DEPS_INFO)
31
32 gnus.info: gnus.texi gnus-faq.texi
33 message.info: message.texi
34 emacs-mime.info: emacs-mime.texi
35 sieve.info: sieve.texi
36
37 ja: $(INFO_DEPS_JA)
38 ja-info: $(INFO_DEPS_JA_INFO)
39
40 gnus-ja.info: gnus-ja.texi gnus-faq-ja.texi
41 message-ja.info: message-ja.texi
42
43 most: texi2latex.elc latex latexps
44
45 %-ja: %-ja.texi
46         rm -f $@
47         $(EMACSINFO) $<
48
49 %-ja.info: %-ja.texi
50         rm -f $@
51         $(EMACSINFO) $< t
52
53 %.info: %.texi
54         @if test "x$(MAKEINFO)" = "xno" \
55           -o "$<" = "gnus-ja.texi" \
56           -o "$<" = "message-ja.texi"; then \
57           echo "rm -f $@"; echo "$(EMACSINFO) $< t"; \
58           rm -f $@; \
59           $(EMACSINFO) $< t; \
60         else \
61           echo "LC_ALL=C" \
62             "$(MAKEINFO) -I $(srcdir) --enable-encoding -o $@ $<"; \
63           LC_ALL=C $(MAKEINFO) -I $(srcdir) --enable-encoding -o $@ $<; \
64         fi
65
66 .SUFFIXES: .texi .dvi .ps .pdf .latexi .dvi-x .pdf-x
67
68 .texi:
69         @if test "x$(MAKEINFO)" = "xno" \
70           -o "$<" = "gnus-ja.texi" \
71           -o "$<" = "message-ja.texi"; then \
72           echo "rm -f $@"; echo "$(EMACSINFO) $<"; \
73           rm -f $@; \
74           $(EMACSINFO) $<; \
75         else \
76           echo "LC_ALL=C" \
77             "$(MAKEINFO) -I $(srcdir) --enable-encoding -o $* $<"; \
78           LC_ALL=C $(MAKEINFO) -I $(srcdir) --enable-encoding -o $* $<; \
79         fi
80
81 # Files included in gnus.texi
82 gnus.texi: gnus-faq.texi gnus-news.texi
83
84 # FIXME: A cvs commit script could automatically create it.
85 GNUS-NEWS:      gnus-news.texi gnus-news.el
86         $(EMACSCOMP) -l $(srcdir)/gnus-news.el -f batch-gnus-news $< $@
87         mv $@ ../$@
88
89 dvi: gnus.dvi message.dvi $(REFCARD).dvi emacs-mime.dvi sieve.dvi
90
91 pdf: gnus.pdf message.pdf $(REFCARD).pdf emacs-mime.pdf sieve.pdf
92
93 .texi.dvi :
94         sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmp.texi
95         $(TEXI2DVI) -I $(srcdir) gnustmp.texi
96         cp gnustmp.dvi $*.dvi
97         rm -f gnustmp.*
98
99 .dvi.ps :
100         TEXPICTS=$(srcdir) $(DVIPS) -t $(PAPERTYPE) -f $< > $@
101
102 .texi.pdf :
103         sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmp.texi
104         $(TEXI2PDF) -I $(srcdir) gnustmp.texi
105         cp gnustmp.pdf $*.pdf
106         rm -f gnustmp.*
107
108 $(LOGO).pdf:    $(LOGO).eps
109         epstopdf $< --outfile=$@
110
111 $(REFCARD).dvi: $(REFCARD).tex $(LOGO).eps
112         TEXINPUTS=$(srcdir):$$TEXINPUTS:: $(LATEX) $(REFCARD).tex
113
114 $(REFCARD).pdf: $(REFCARD).tex $(LOGO).pdf
115         TEXINPUTS=$(srcdir):$$TEXINPUTS:: $(PDFLATEX) $(REFCARD).tex
116
117 gnus-booklet.dvi: $(REFCARD).tex $(LOGO).eps
118         if [ "$(PAPERTYPE)" == a4 ]; then \
119           TEXINPUTS=$(srcdir):$$TEXINPUTS:: \
120           $(LATEX) '\def\booklettrue{}\input{$(REFCARD)}' && \
121           mv $(REFCARD).dvi $@ ;\
122         else \
123           TEXINPUTS=$(srcdir):$$TEXINPUTS:: \
124           $(LATEX) '\def\booklettrue{}\def\letterpapertrue{}\input{$(REFCARD)}' && \
125           mv $(REFCARD).dvi $@ ;\
126         fi
127
128 gnus-booklet.pdf: $(REFCARD).tex  $(LOGO).pdf
129         if [ "$(PAPERTYPE)" == a4 ]; then \
130           TEXINPUTS=$(srcdir):$$TEXINPUTS:: \
131           $(PDFLATEX) '\def\booklettrue{}\input{$(REFCARD)}' && \
132           mv -v $(REFCARD).pdf $@ ;\
133         else \
134           TEXINPUTS=$(srcdir):$$TEXINPUTS:: \
135           $(PDFLATEX) '\def\booklettrue{}\def\letterpapertrue{}\input{$(REFCARD)}' && \
136           mv -v $(REFCARD).pdf $@ ;\
137         fi
138
139 gnus-faq-full-update:  gnus-faq-clean gnus-faq.texi
140
141 gnus-faq.xml:
142         cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/gnus \
143           co -p gnus-faq/src/gnus-faq.xml > $@.tmp
144         head -n 1 $@.tmp | grep '^<.xml version' || \
145           { echo "Update of $@ failed."; : rm $@.tmp; exit 1; }
146         mv $@.tmp $@
147
148 gnus-faq.texi: gnus-faq.xml xml2texi.sh xml2texi.scm
149         ./xml2texi.sh $< $@.tmp
150         @echo
151 # FIXME: This should be done in xml2texi.scm or gnus-faq.xml should be
152 # changed:
153         sed '/[$$]Id:.*[$$]/d' < $@.tmp > $@
154
155 gnus-faq-clean:
156         rm -f gnus-faq.xml gnus-faq.*.tmp gnus-faq.texi
157
158 clean:
159         rm -f *.[cgk]idx *.aux *.cp *.cps *.dvi *.dvi-x *.fn *.ky       \
160         *.kys *.latexi *.log *.orig *.pdf *.pdf-x *.pg *.rej            \
161         *.tmplatexi *.toc *.tp *.vr gnus.*.bak gnus.[cgk]ind gnus.idx   \
162         gnus.ilg gnus.ind gnus.latexi*~* gnus.out gnus.tmplatexi1       \
163         gnustmp.texi picons.tex smiley.tex texput.log thumb*.png        \
164         thumbdta.tex xface.tex *.tpt gnus-manual-*.pdf gnus-manual-*.ps.gz
165
166 makeinfo:
167         LC_ALL=C makeinfo --enable-encoding -o gnus gnus.texi
168         LC_ALL=C makeinfo --enable-encoding -o message message.texi
169
170 texi2latex.elc: texi2latex.el
171         srcdir=$(srcdir)/../lisp $(EMACSCOMP) -l $(srcdir)/../lisp/dgnushack.el --eval '(byte-compile-file "$(srcdir)/texi2latex.el")'
172
173 latex: gnus.latexi gnus-faq.latexi message.latexi emacs-mime.latexi sieve.latexi gnus-news.latexi
174
175 gnus.latexi gnus-faq.latexi message.latexi emacs-mime.latexi sieve.latexi gnus-news.latexi: $(srcdir)/gnus.texi $(srcdir)/gnus-faq.texi $(srcdir)/message.texi $(srcdir)/emacs-mime.texi $(srcdir)/sieve.texi $(srcdir)/gnus-news.texi texi2latex.elc
176         srcdir=$(srcdir) $(EMACSCOMP) -l ./texi2latex.elc -f latexi-translate
177
178 .latexi.dvi-x:
179         make gnusconfig.tex
180         make tmps
181         rm -f gnus.aux gnus.toc
182         cp $< gnus.tmplatexi
183         TEXINPUTS=$(srcdir):$$TEXINPUTS $(LATEX) gnus.tmplatexi
184         $(srcdir)/splitindex
185         makeindex -o gnus.kind gnus.kidx
186         makeindex -o gnus.cind gnus.cidx
187         makeindex -o gnus.gind gnus.gidx
188         sed 's/\\char 5E\\relax {}/\\symbol{"5E}/' < gnus.kind > gnus.tmpkind
189         mv gnus.tmpkind gnus.kind
190         egrep -v "end\{document\}" $< > gnus.tmplatexi
191         cat $(srcdir)/postamble.tex >> gnus.tmplatexi
192         TEXINPUTS=$(srcdir):$$TEXINPUTS $(LATEX) gnus.tmplatexi
193         TEXINPUTS=$(srcdir):$$TEXINPUTS $(LATEX) gnus.tmplatexi
194         mv gnus.dvi $@
195
196 .latexi.pdf-x:
197         make gnusconfig.tex
198         make tmps
199         cd ps; make pdf
200         rm -f gnus.aux gnus.toc
201         cp $< gnus.tmplatexi
202         TEXINPUTS=$(srcdir):$$TEXINPUTS $(PDFLATEX) gnus.tmplatexi
203         $(srcdir)/splitindex
204         makeindex -o gnus.kind gnus.kidx
205         makeindex -o gnus.cind gnus.cidx
206         makeindex -o gnus.gind gnus.gidx
207         sed 's/\\char 5E\\relax {}/\\symbol{"5E}/' < gnus.kind > gnus.tmpkind
208         mv gnus.tmpkind gnus.kind
209         egrep -v "end\{document\}" $< > gnus.tmplatexi
210         cat $(srcdir)/postamble.tex >> gnus.tmplatexi
211         TEXINPUTS=$(srcdir):$$TEXINPUTS $(PDFLATEX) gnus.tmplatexi
212         #thumbpdf gnus.pdf
213         #TEXINPUTS=$(srcdir):$$TEXINPUTS $(PDFLATEX) gnus.tmplatexi
214         mv gnus.pdf $@
215
216 latexps: gnus.dvi-x
217         TEXPICTS=$(srcdir) $(DVIPS) -t a4 -f $< > gnus.ps
218
219 latexpdf: gnus.pdf-x
220         mv gnus.pdf-x gnus.pdf
221
222 gnus-manual-a4.latexi: gnus.latexi
223         cp $< $@
224
225 gnus-manual-standard.latexi: gnus.latexi
226         sed 's/,a4paper/,letterpaper/' $< > $@
227
228 gnus-manual-a4.ps.gz: gnus-manual-a4.dvi-x
229         TEXPICTS=$(srcdir) $(DVIPS) -t a4 -f $< | gzip -c > $@
230
231 gnus-manual-standard.ps.gz: gnus-manual-standard.dvi-x
232         TEXPICTS=$(srcdir) $(DVIPS) -t letter -f $< | gzip -c > $@
233
234 pdfs: gnus-manual-a4.pdf-x gnus-manual-standard.pdf-x
235         mv gnus-manual-a4.pdf-x gnus-manual-a4.pdf
236         mv gnus-manual-standard.pdf-x gnus-manual-standard.pdf
237
238 pss: latexps
239
240 complete: pss
241
242 psout: latexboth out
243
244 latexboth: gnus-manual-a4.ps.gz gnus-manual-standard.ps.gz
245
246 out:
247         scp gnus-manual-*.ps.gz gnus-manual-*.pdf www@quimby:html/gnus/documents
248
249 veryclean: clean
250         rm -f gnus.dvi gnus.ps texi2latex.elc
251         rm -f gnus-manual-a4.* gnus-manual-standard.*
252
253 distclean: veryclean
254         rm -f *.orig *.rej *.elc *~ gnus-[0-9] gnus-[0-9][0-9] Makefile
255         rm -f message-[0-9]
256         rm -f $(INFO_DEPS)
257         rm -f gnus-ja-[0-9] gnus-ja-[0-9][0-9] message-ja-[0-9]
258         rm -f gnus.info-[0-9] gnus.info-[0-9][0-9] message.info-[0-9]
259         rm -f gnus-ja.info-[0-9] gnus-ja.info-[0-9][0-9] message-ja.info-[0-9]
260         rm -f $(INFO_DEPS_JA) $(INFO_DEPS_INFO) $(INFO_DEPS_JA_INFO)
261         rm -f gnusconfig.tex
262         rm -f gnus-faq.xml gnus-faq.*.tmp
263
264 install: $(INFO_DEPS)
265         $(SHELL) $(top_srcdir)/mkinstalldirs $(infodir)
266         @list='$(INFO_DEPS)'; \
267         for file in $$list; do \
268           for ifile in `echo $$file $$file-[0-9] $$file-[0-9][0-9]`; do \
269             if test -f $$ifile; then \
270               echo " $(INSTALL_DATA) $$ifile $(infodir)/$$ifile"; \
271               $(INSTALL_DATA) $$ifile $(infodir)/$$ifile; \
272             else : ; fi; \
273           done; \
274         done
275         @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
276           list='$(INFO_DEPS)'; \
277           for file in $$list; do \
278             echo " install-info --info-dir=$(infodir) $(infodir)/$$file";\
279             install-info --info-dir=$(infodir) $(infodir)/$$file || :;\
280           done; \
281         else : ; fi
282
283 uninstall:
284         @list='$(INFO_DEPS)'; \
285         list=$$list' $(INFO_DEPS_JA) $(INFO_DEPS_INFO) $(INFO_DEPS_JA_INFO)'; \
286         for file in $$list; do \
287           for ifile in `echo $$file $$file-[0-9] $$file-[0-9][0-9]`; do \
288             rm -f $(infodir)/$$ifile; \
289           done; \
290         done
291         @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
292           list='$(INFO_DEPS)'; \
293           for file in $$list; do \
294             echo " install-info --delete --info-dir=$(infodir) $(infodir)/$$file";\
295             install-info --delete --info-dir=$(infodir) $(infodir)/$$file || :;\
296           done; \
297         else : ; fi
298
299 install-ja: $(INFO_DEPS_JA)
300         $(MAKE) INFO_DEPS='$(INFO_DEPS_JA)' EMACS="$(EMACS)" \
301                 infodir="$(infodir)" install
302
303 install-info: $(INFO_DEPS_INFO)
304         $(MAKE) INFO_DEPS='$(INFO_DEPS_INFO)' EMACS="$(EMACS)" \
305                 infodir="$(infodir)" install
306
307 install-ja-info: $(INFO_DEPS_JA_INFO)
308         $(MAKE) INFO_DEPS='$(INFO_DEPS_JA_INFO)' EMACS="$(EMACS)" \
309                 infodir="$(infodir)" install
310
311 tmps:
312         cd ps; make all
313         for j in ps/picons-*.ps; do \
314                 i=ps/`basename $$j .ps`; \
315                 echo "\\gnuspicon{$$i}"; done > picons.tex
316         for j in ps/xface-*.ps; do \
317                 i=ps/`basename $$j .ps`; \
318                 if [ -n "$$a" ]; then a=""; echo "{$$i}"; else \
319                 a="h"; echo -n "\\gnusxface{$$i}"; fi done > xface.tex; \
320                 if [ -n "$$a" ]; then echo "{$$i}" >> xface.tex; fi
321         for j in ps/smiley-*.ps; do \
322                 i=ps/`basename $$j .ps`; \
323                 if [ -n "$$a" ]; then a=""; echo "{$$i}"; else \
324                 a="h"; echo -n "\\gnussmiley{$$i}"; fi done > smiley.tex; \
325                 if [ -n "$$a" ]; then echo "{$$i}" >> smiley.tex; fi
326 pspackage:
327         cd ps; make clean
328         tar czvf pspackage.tar.gz gnus-faq.texi gnus.texi herds misc pagestyle.sty picons pixidx.sty postamble.tex ps screen smilies splitindex texi2latex.el xface Makefile README etc
329
330 Makefile: $(srcdir)/Makefile.in ../config.status
331         cd .. \
332           && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
333
334 gnusconfig.tex: $(srcdir)/gnusconfig.tex.in ../config.status
335         cd .. \
336           && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
337
338 # Tell versions [3.59,3.63) of GNU make to not export all variables.
339 # Otherwise a system limit (for SysV at least) may be exceeded.
340 .NOEXPORT: