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