98e22dca89cb0dcc2ffe73c62d2fcd7d781aee87
[gnus] / texi / Makefile
1 TEXI2DVI=texi2dvi
2 EMACS=emacs
3 MAKEINFO=$(EMACS) -batch -q -no-site-file
4 INFOSWI=-l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer
5 XINFOSWI=-l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer
6 LATEX=latex
7 DVIPS=dvips
8 PERL=perl
9
10 all: gnus message custom widget
11
12 most: texi2latexi.elc latex latexps
13
14 gnus: gnus.texi
15         $(MAKEINFO) -eval '(find-file "gnus.texi")' $(XINFOSWI)
16
17 custom: custom.texi
18         $(MAKEINFO) -eval '(find-file "custom.texi")' $(XINFOSWI)
19
20 widget: widget.texi
21         $(MAKEINFO) -eval '(find-file "widget.texi")' $(XINFOSWI)
22
23 message: message.texi
24         $(MAKEINFO) -eval '(find-file "message.texi")' $(XINFOSWI)
25
26 dvi: gnus.dvi message.dvi
27
28 .texi.dvi :
29         $(PERL) -n -e 'print unless (/\@iflatex/ .. /\@end iflatex/)' $< > gnustmp.texi
30         $(TEXI2DVI) gnustmp.texi
31         cp gnustmp.dvi $*.dvi
32         rm gnustmp.*
33
34 refcard.dvi: refcard.tex gnuslogo.refcard gnusref.tex
35         $(LATEX) refcard.tex
36
37 sclean:
38         rm -f gnus.*.bak *.ky *.cp *.fn *.cps *.kys *.log *.aux *.dvi *.vr \
39         *.tp *.toc \
40         *.pg gnus.latexi *.aux *.[cgk]idx \
41         gnus.ilg gnus.ind gnus.[cgk]ind gnus.idx \
42         gnus.tmptexi gnus.tmplatexi gnus.tmplatexi1 texput.log *.orig *.rej \
43         gnus.latexi*~*
44
45 clean:
46         make sclean 
47         rm -f *.latexi 
48
49 makeinfo: 
50         makeinfo -o gnus gnus.texi      
51         makeinfo -o message message.texi        
52         makeinfo -o widget widget.texi  
53         makeinfo -o custom custom.texi  
54
55 texi2latexi.elc:
56         $(EMACS) -batch -l bytecomp -f batch-byte-recompile-directory
57
58 latex: gnus.texi
59         $(EMACS) -batch -q -no-site-file gnus.texi -l ./texi2latex.elc -f latexi-translate
60
61 latexps: 
62         egrep -v "label.*Index|chapter.*Index" gnus.latexi > gnus.tmplatexi1
63         $(LATEX) gnus.tmplatexi1
64         splitindex
65         makeindex -o gnus.kind gnus.kidx
66         makeindex -o gnus.cind gnus.cidx
67         makeindex -o gnus.gind gnus.gidx
68         egrep -v "end{document}" gnus.tmplatexi1 > gnus.tmplatexi
69         cat postamble.tex >> gnus.tmplatexi
70         $(LATEX) gnus.tmplatexi 
71         $(LATEX) gnus.tmplatexi 
72         $(DVIPS) -f gnus.dvi > gnus.ps
73
74 pss:    
75         make latex
76         make latexps
77
78 psout:
79         make latex
80         make latexboth
81         make out
82
83 latexboth: 
84         rm -f gnus-manual-a4.ps.gz gnus-manual-standard.ps.gz 
85         make latexps
86         mv gnus.ps gnus-manual-a4.ps
87         gzip gnus-manual-a4.ps 
88         sed 's/,a4paper//' gnus.latexi > gnus-standard.latexi 
89         make latexps
90         mv gnus.ps gnus-manual-standard.ps 
91         gzip gnus-manual-standard.ps 
92
93 out:
94         cp gnus-manual-standard.ps.gz gnus-manual-a4.ps.gz \
95         /local/ftp/pub/emacs/gnus/manual
96         mv gnus-manual-standard.ps.gz gnus-manual-a4.ps.gz \
97         /hom/larsi/www_docs/gnus/manual
98
99 veryclean:
100         make clean
101         rm -f gnus.dvi gnus.ps
102
103 distclean:
104         make clean
105         rm -f *.orig *.rej *.elc *~ gnus gnus-[0-9] gnus-[0-9][0-9]
106         rm -f message message-[0-9] widget custom