1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
### Makefile - for DOCUMENTATION (./doc) of ESS distribution.
###
## Before making changes here, please take a look at Makeconf
include ../Makeconf
# program to convert .texi{nfo} to .html
#MM: use makeinfo (i.e. MAKEHTML from above) which is more
#-- standardized than texi2html which exists in
#MM at least two widely differing versions (TeX vs GNU):
#MM TEXI2HTML = LANG=C texi2html -verbose -iso
#MM SPLITCHAP = -split_chapter -menu -glossary
##
TEXI2DVI = LANG=C texi2dvi
TEXI2PDF = LANG=C texi2dvi --pdf
# To obtain sorted indices run: "texindex ess.??".
#### no user servicable parts beyond this point ####
TEXISRC = announc.texi authors.texi bugrept.texi bugs.texi bugs-ms.texi \
credits.texi currfeat.texi ess.texi ess-defs.texi getting.texi \
help-s.texi help-sas.texi inst_svn.texi unixlike.texi windows.texi \
license.texi mailing.texi onewfeat.texi \
newfeat.texi readme.texi requires.texi stabilty.texi help-bugs.texi \
help-jags.texi ../VERSION Makefile
ESSINFONODE1='* ESS: (ess).'
ESSINFONODE2=' Emacs Speaks Statistics'
ESSINFONODE3=' (S/S+/R, SAS, BUGS, Stata, XLisp-Stat).'
### Targets --
PDFs = ess.pdf readme.pdf refcard/refcard.pdf
DVIs = ess.dvi readme.dvi
TXTs = ../README ../ANNOUNCE
all : info text html dvi pdf
docs : info text html
info : info/ess.info
text : $(TXTs) ../NEWS ../ONEWS
html : html/ess.html html/readme.html
dvi : $(DVIs)
pdf : $(PDFs)
ps : ess.ps readme.ps
ess.dvi : $(TEXISRC); $(TEXI2DVI) ess.texi
ess.pdf : $(TEXISRC); $(TEXI2PDF) ess.texi
ess.ps : ess.dvi; LANG=C dvips $^ -o $@
readme.dvi : $(TEXISRC); $(TEXI2DVI) readme.texi
readme.pdf : $(TEXISRC); $(TEXI2PDF) readme.texi
readme.ps : readme.dvi; dvips $^ -o $@
cleanaux:
-@rm -f *.aux *.cp *.cps *.fn *.fns *.ky *.kys *.log *.out \
*.pg *.pgs *.ps *.ps-2 *.tmp *.toc *.tp *.vr *.vrs
## this shall remove *exactly* those things that are *not* in version control:
clean: cleanaux
-@rm -f $(PDFs) $(DVIs) info/*.info*
## this removes also things in VC (when they are remade by "make"):
distclean : clean
-@rm -f $(TXTs) ../NEWS ../ONEWS html/*
../README: $(TEXISRC)
$(MAKETXT) readme.texi \
| perl -pe 'last if /^Concept Index/;' \
> ../README
# | perl -pe 'last if /^Concept Index/; print "For INSTALLATION, see way below.\n\n" if /^\s*ESS grew out of/' \
../ANNOUNCE: $(TEXISRC)
$(MAKETXT) announc.texi \
| perl -pe 'last if /^Concept Index/;' > ../ANNOUNCE
README.Microsoft : README.Microsoft.texi
$(MAKETXT) README.Microsoft.texi \
| perl -pe 'last if /^Concept Index/;' > README.Microsoft
../NEWS: Makefile ess-defs.texi newfeat.texi news.texi
$(MAKETXT) news.texi > ../NEWS
../ONEWS: Makefile ess-defs.texi onewfeat.texi onews.texi
$(MAKETXT) onews.texi > ../ONEWS
### File Dependencies
info/ess.info: $(TEXISRC)
@echo "making Info documentation..."
$(MAKEINFO) ess.texi
mv -f ess.info info
install: install-info install-other-docs
install-info : info/ess.info
-$(INSTALLDIR) $(INFODIR)
$(INSTALL) info/ess.info $(INFODIR)
test -f $(INFODIR)/dir || $(INSTALL) dir.txt $(INFODIR)/dir
grep $(ESSINFONODE1) $(INFODIR)/dir || \
(echo >> $(INFODIR)/dir; echo 'Emacs' >> $(INFODIR)/dir; \
echo $(ESSINFONODE1) $(ESSINFONODE2) >> $(INFODIR)/dir; \
echo $(ESSINFONODE3) >> $(INFODIR)/dir)
install-other-docs: pdf html
-$(INSTALLDIR) $(DOCDIR)
$(INSTALL) ess.dvi ess.pdf readme.dvi readme.pdf ../README ../ANNOUNCE $(DOCDIR)
$(INSTALL) html/ess.html html/readme.html $(DOCDIR)
$(INSTALL) refcard/refcard.pdf $(DOCDIR)
## TO DO: ess_toc.html & readme_toc.html should be merged into index.html
html/ess.html: $(TEXISRC)
@echo "making HTML documentation..."
$(MAKEHTML) ess.texi && mv -f ess.html html
#MM $(TEXI2HTML) $(SPLITCHAP) ess.texi
#MM test -d ess && cp -p ess/ess_toc.html html/index.html || cp -p ess_toc.html html/index.html
#MM test -d ess && mv -f ess/*.html html || mv -f *.html html
html/readme.html: $(TEXISRC)
$(MAKEHTML) --no-validate readme.texi
## ^^^^^^^^^^^^^ (design bug: "FIXME" in ess.texi)
#MM $(TEXI2HTML) readme.texi
mv -f readme.html html
refcard/refcard.pdf: refcard/refcard.tex
(cd refcard ; pdflatex refcard)
|