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